VS15: Add Visual Studio 15 generator

Call the generator "Visual Studio 15" without any year because the
preview version of VS 15 does not provide a year in the product name.

Copy cmGlobalVisualStudio14Generator to cmGlobalVisualStudio15Generator
and update version numbers accordingly.  Add the VS15 enumeration value.
Note that we do not need to add a MSVC15 variable or v150 toolset
because Visual Studio 15 comes with an updated version of the v140
toolset and remains ABI-compatible.

Teach tests VSExternalInclude, RunCMake.GeneratorPlatform, and
RunCMake.GeneratorToolset to treat VS 15 as they do VS 10-14.

Closes: #16143
This commit is contained in:
Brad King
2016-09-02 16:15:11 -04:00
parent a8936656fa
commit bdc679a8ae
15 changed files with 259 additions and 8 deletions
+12
View File
@@ -163,6 +163,18 @@ std::string cmGlobalVisualStudio7Generator::FindDevEnvCommand()
}
}
// Search where VS15Preview places it.
vskey = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7;";
vskey += this->GetIDEVersion();
if (cmSystemTools::ReadRegistryValue(vskey.c_str(), vscmd,
cmSystemTools::KeyWOW64_32)) {
cmSystemTools::ConvertToUnixSlashes(vscmd);
vscmd += "/Common7/IDE/devenv.com";
if (cmSystemTools::FileExists(vscmd, true)) {
return vscmd;
}
}
vscmd = "devenv.com";
return vscmd;
}