VS: Rename VS 15 generator to 'Visual Studio 15 2017'

The final name of this VS version was announced:

 https://blogs.msdn.microsoft.com/visualstudio/2016/11/16/visual-studio-2017-rc/

Add the year to the generator name accordingly.  For convenience, map
the name without the year to the name with the year.
This commit is contained in:
Roman Wüger 2016-11-29 13:50:21 +01:00 committed by Brad King
parent 37966a5799
commit d639620e14
5 changed files with 17 additions and 14 deletions

View File

@ -1,7 +1,7 @@
Visual Studio 15 Visual Studio 15 2017
---------------- ---------------------
Generates Visual Studio 15 project files. Generates Visual Studio 15 (VS 2017) project files.
The :variable:`CMAKE_GENERATOR_PLATFORM` variable may be set The :variable:`CMAKE_GENERATOR_PLATFORM` variable may be set
to specify a target platform name (architecture). to specify a target platform name (architecture).
@ -9,8 +9,8 @@ to specify a target platform name (architecture).
For compatibility with CMake versions prior to 3.1, one may specify For compatibility with CMake versions prior to 3.1, one may specify
a target platform name optionally at the end of this generator name: a target platform name optionally at the end of this generator name:
``Visual Studio 15 Win64`` ``Visual Studio 15 2017 Win64``
Specify target platform ``x64``. Specify target platform ``x64``.
``Visual Studio 15 ARM`` ``Visual Studio 15 2017 ARM``
Specify target platform ``ARM``. Specify target platform ``ARM``.

View File

@ -82,7 +82,7 @@ Visual Studio Generators
/generator/Visual Studio 11 2012 /generator/Visual Studio 11 2012
/generator/Visual Studio 12 2013 /generator/Visual Studio 12 2013
/generator/Visual Studio 14 2015 /generator/Visual Studio 14 2015
/generator/Visual Studio 15 /generator/Visual Studio 15 2017
Other Generators Other Generators
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^

View File

@ -31,9 +31,9 @@ Generators
This is equivalent to ``cd sub/dir; make {test,install,package}`` This is equivalent to ``cd sub/dir; make {test,install,package}``
with :ref:`Makefile Generators`. with :ref:`Makefile Generators`.
* The :generator:`Visual Studio 15` generator was added. This is * The :generator:`Visual Studio 15 2017` generator was added. This is
experimental and based on Preview 5 because this version of VS experimental and based on "Visual Studio 2017 RC" because this version
has not been released. of VS has not been released.
* :ref:`Visual Studio Generators` for VS 2010 and above learned to * :ref:`Visual Studio Generators` for VS 2010 and above learned to
place ``.natvis`` source files into VS project files properly. place ``.natvis`` source files into VS project files properly.

View File

@ -6,16 +6,19 @@
#include "cmLocalVisualStudio10Generator.h" #include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h" #include "cmMakefile.h"
static const char vs15generatorName[] = "Visual Studio 15"; static const char vs15generatorName[] = "Visual Studio 15 2017";
// Map generator name without year to name with year. // Map generator name without year to name with year.
static const char* cmVS15GenName(const std::string& name, std::string& genName) static const char* cmVS15GenName(const std::string& name, std::string& genName)
{ {
if (strncmp(name.c_str(), vs15generatorName, if (strncmp(name.c_str(), vs15generatorName,
sizeof(vs15generatorName) - 1) != 0) { sizeof(vs15generatorName) - 6) != 0) {
return 0; return 0;
} }
const char* p = name.c_str() + sizeof(vs15generatorName) - 1; const char* p = name.c_str() + sizeof(vs15generatorName) - 6;
if (cmHasLiteralPrefix(p, " 2017")) {
p += 5;
}
genName = std::string(vs15generatorName) + p; genName = std::string(vs15generatorName) + p;
return p; return p;
} }
@ -50,7 +53,7 @@ public:
virtual void GetDocumentation(cmDocumentationEntry& entry) const virtual void GetDocumentation(cmDocumentationEntry& entry) const
{ {
entry.Name = std::string(vs15generatorName) + " [arch]"; entry.Name = std::string(vs15generatorName) + " [arch]";
entry.Brief = "Generates Visual Studio 15 project files. " entry.Brief = "Generates Visual Studio 2017 project files. "
"Optional [arch] can be \"Win64\" or \"ARM\"."; "Optional [arch] can be \"Win64\" or \"ARM\".";
} }

View File

@ -1334,7 +1334,7 @@ int cmake::ActualConfigure()
{ "11.0", "Visual Studio 11 2012" }, { "11.0", "Visual Studio 11 2012" },
{ "12.0", "Visual Studio 12 2013" }, { "12.0", "Visual Studio 12 2013" },
{ "14.0", "Visual Studio 14 2015" }, { "14.0", "Visual Studio 14 2015" },
{ "15.0", "Visual Studio 15" }, { "15.0", "Visual Studio 15 2017" },
{ 0, 0 } { 0, 0 }
}; };
for (int i = 0; version[i].MSVersion != 0; i++) { for (int i = 0; version[i].MSVersion != 0; i++) {