summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-11-17 14:44:52 (GMT)
committerBrad King <brad.king@kitware.com>2014-11-17 14:44:52 (GMT)
commit598a316154922f27f987d0f7a78b28ab78a85be6 (patch)
tree860a0c9a49e23963e0f8c77bbcdc68b6c25ba457
parentec34b4b8f732c06b9dd43a401f5513033bd6198d (diff)
parentf5afb90d7c0ff756dedc3d473c0fb60dee004d82 (diff)
downloadCMake-598a316154922f27f987d0f7a78b28ab78a85be6.zip
CMake-598a316154922f27f987d0f7a78b28ab78a85be6.tar.gz
CMake-598a316154922f27f987d0f7a78b28ab78a85be6.tar.bz2
Merge branch 'vs14-is-2015' into release
-rw-r--r--Help/generator/Visual Studio 14 2015.rst (renamed from Help/generator/Visual Studio 14.rst)10
-rw-r--r--Help/manual/cmake-generators.7.rst2
-rw-r--r--Help/release/3.1.0.rst2
-rw-r--r--Source/cmGlobalVisualStudio14Generator.cxx40
-rw-r--r--Source/cmake.cxx2
5 files changed, 38 insertions, 18 deletions
diff --git a/Help/generator/Visual Studio 14.rst b/Help/generator/Visual Studio 14 2015.rst
index d621b7e..b35997a 100644
--- a/Help/generator/Visual Studio 14.rst
+++ b/Help/generator/Visual Studio 14 2015.rst
@@ -1,7 +1,7 @@
-Visual Studio 14
-----------------
+Visual Studio 14 2015
+---------------------
-Generates Visual Studio 14 project files.
+Generates Visual Studio 14 (VS 2015) project files.
The :variable:`CMAKE_GENERATOR_PLATFORM` variable may be set
to specify a target platform name.
@@ -9,8 +9,8 @@ to specify a target platform name.
For compatibility with CMake versions prior to 3.1, one may specify
a target platform name optionally at the end of this generator name:
-``Visual Studio 14 Win64``
+``Visual Studio 14 2015 Win64``
Specify target platform ``x64``.
-``Visual Studio 14 ARM``
+``Visual Studio 14 2015 ARM``
Specify target platform ``ARM``.
diff --git a/Help/manual/cmake-generators.7.rst b/Help/manual/cmake-generators.7.rst
index 4bc8c5f..bda7eef 100644
--- a/Help/manual/cmake-generators.7.rst
+++ b/Help/manual/cmake-generators.7.rst
@@ -64,7 +64,7 @@ one may launch CMake from any environment.
/generator/Visual Studio 10 2010
/generator/Visual Studio 11 2012
/generator/Visual Studio 12 2013
- /generator/Visual Studio 14
+ /generator/Visual Studio 14 2015
/generator/Xcode
Extra Generators
diff --git a/Help/release/3.1.0.rst b/Help/release/3.1.0.rst
index 65aae00..101c29d 100644
--- a/Help/release/3.1.0.rst
+++ b/Help/release/3.1.0.rst
@@ -18,7 +18,7 @@ New Features
Generators
----------
-* A :generator:`Visual Studio 14` generator was added.
+* The :generator:`Visual Studio 14 2015` generator was added.
Windows Phone and Windows Store
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/Source/cmGlobalVisualStudio14Generator.cxx b/Source/cmGlobalVisualStudio14Generator.cxx
index d001f93..fe702c0 100644
--- a/Source/cmGlobalVisualStudio14Generator.cxx
+++ b/Source/cmGlobalVisualStudio14Generator.cxx
@@ -13,21 +13,36 @@
#include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h"
-static const char vs14generatorName[] = "Visual Studio 14";
+static const char vs14generatorName[] = "Visual Studio 14 2015";
+
+// Map generator name without year to name with year.
+static const char* cmVS14GenName(const std::string& name, std::string& genName)
+{
+ if(strncmp(name.c_str(), vs14generatorName,
+ sizeof(vs14generatorName)-6) != 0)
+ {
+ return 0;
+ }
+ const char* p = name.c_str() + sizeof(vs14generatorName) - 6;
+ if(cmHasLiteralPrefix(p, " 2015"))
+ {
+ p += 5;
+ }
+ genName = std::string(vs14generatorName) + p;
+ return p;
+}
class cmGlobalVisualStudio14Generator::Factory
: public cmGlobalGeneratorFactory
{
public:
virtual cmGlobalGenerator* CreateGlobalGenerator(
- const std::string& genName) const
+ const std::string& name) const
{
- if(strncmp(genName.c_str(), vs14generatorName,
- sizeof(vs14generatorName) - 1) != 0)
- {
- return 0;
- }
- const char* p = genName.c_str() + sizeof(vs14generatorName) - 1;
+ std::string genName;
+ const char* p = cmVS14GenName(name, genName);
+ if(!p)
+ { return 0; }
if(!*p)
{
return new cmGlobalVisualStudio14Generator(
@@ -51,7 +66,7 @@ public:
virtual void GetDocumentation(cmDocumentationEntry& entry) const
{
entry.Name = vs14generatorName;
- entry.Brief = "Generates Visual Studio 14 project files.";
+ entry.Brief = "Generates Visual Studio 14 (VS 2015) project files.";
}
virtual void GetGenerators(std::vector<std::string>& names) const
@@ -85,7 +100,12 @@ bool
cmGlobalVisualStudio14Generator::MatchesGeneratorName(
const std::string& name) const
{
- return name == this->GetName();
+ std::string genName;
+ if(cmVS14GenName(name, genName))
+ {
+ return genName == this->GetName();
+ }
+ return false;
}
//----------------------------------------------------------------------------
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 09d270d..36a0645 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -1403,7 +1403,7 @@ int cmake::ActualConfigure()
{"10.0", "Visual Studio 10 2010"},
{"11.0", "Visual Studio 11 2012"},
{"12.0", "Visual Studio 12 2013"},
- {"14.0", "Visual Studio 14"},
+ {"14.0", "Visual Studio 14 2015"},
{0, 0}};
for(int i=0; version[i].MSVersion != 0; i++)
{