mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-31 10:50:16 -06:00
Deprecate Visual Studio 12 2013 generator
Update documentation to mark the generator deprecated. Add a warning at the end of generation plus an option to turn off the warning.
This commit is contained in:
@@ -3,6 +3,6 @@ Visual Studio 10 2010
|
||||
|
||||
Removed. This once generated Visual Studio 10 2010 project files, but
|
||||
the generator has been removed since CMake 3.25. It is still possible
|
||||
to build with VS 10 2010 tools using the :generator:`Visual Studio 12 2013`
|
||||
to build with VS 10 2010 tools using the :generator:`Visual Studio 14 2015`
|
||||
(or above) generator with :variable:`CMAKE_GENERATOR_TOOLSET` set to
|
||||
``v100``, or by using the :generator:`NMake Makefiles` generator.
|
||||
|
||||
@@ -3,6 +3,6 @@ Visual Studio 11 2012
|
||||
|
||||
Removed. This once generated Visual Studio 11 2012 project files, but
|
||||
the generator has been removed since CMake 3.28. It is still possible
|
||||
to build with VS 11 2012 tools using the :generator:`Visual Studio 12 2013`
|
||||
to build with VS 11 2012 tools using the :generator:`Visual Studio 14 2015`
|
||||
(or above) generator with :variable:`CMAKE_GENERATOR_TOOLSET` set to ``v110``,
|
||||
or by using the :generator:`NMake Makefiles` generator.
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
Visual Studio 12 2013
|
||||
---------------------
|
||||
|
||||
Generates Visual Studio 12 (VS 2013) project files.
|
||||
Deprecated. Generates Visual Studio 12 (VS 2013) project files.
|
||||
|
||||
.. note::
|
||||
This generator is deprecated and will be removed in a future version
|
||||
of CMake. It will still be possible to build with VS 12 2013 tools
|
||||
using the :generator:`Visual Studio 14 2015` (or above) generator
|
||||
with :variable:`CMAKE_GENERATOR_TOOLSET` set to ``v120``, or by
|
||||
using the :generator:`NMake Makefiles` generator.
|
||||
|
||||
For compatibility with CMake versions prior to 3.0, one may specify this
|
||||
generator using the name "Visual Studio 12" without the year component.
|
||||
|
||||
@@ -6,7 +6,7 @@ Deprecated. Generates Visual Studio 9 2008 project files.
|
||||
.. note::
|
||||
This generator is deprecated and will be removed in a future version
|
||||
of CMake. It will still be possible to build with VS 9 2008 tools
|
||||
using the :generator:`Visual Studio 12 2013` generator (or above,
|
||||
using the :generator:`Visual Studio 14 2015` generator (or above,
|
||||
and with VS 10 2010 also installed) with
|
||||
:variable:`CMAKE_GENERATOR_TOOLSET` set to ``v90``,
|
||||
or by using the :generator:`NMake Makefiles` generator.
|
||||
|
||||
5
Help/release/dev/vs12-deprecate.rst
Normal file
5
Help/release/dev/vs12-deprecate.rst
Normal file
@@ -0,0 +1,5 @@
|
||||
vs12-deprecate
|
||||
--------------
|
||||
|
||||
* The :generator:`Visual Studio 12 2013` generator is now deprecated
|
||||
and will be removed in a future version of CMake.
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
cmDocumentationEntry GetDocumentation() const override
|
||||
{
|
||||
return { std::string(vs12generatorName) + " [arch]",
|
||||
"Generates Visual Studio 2013 project files. "
|
||||
"Deprecated. Generates Visual Studio 2013 project files. "
|
||||
"Optional [arch] can be \"Win64\" or \"ARM\"." };
|
||||
}
|
||||
|
||||
|
||||
@@ -329,6 +329,26 @@ void cmGlobalVisualStudio7Generator::Generate()
|
||||
"Add CMAKE_WARN_VS9=OFF to the cache to disable this warning.");
|
||||
}
|
||||
}
|
||||
|
||||
if (this->Version == VSVersion::VS12 &&
|
||||
!this->CMakeInstance->GetIsInTryCompile()) {
|
||||
std::string cmakeWarnVS12;
|
||||
if (cmValue cached = this->CMakeInstance->GetState()->GetCacheEntryValue(
|
||||
"CMAKE_WARN_VS12")) {
|
||||
this->CMakeInstance->MarkCliAsUsed("CMAKE_WARN_VS12");
|
||||
cmakeWarnVS12 = *cached;
|
||||
} else {
|
||||
cmSystemTools::GetEnv("CMAKE_WARN_VS12", cmakeWarnVS12);
|
||||
}
|
||||
if (cmakeWarnVS12.empty() || !cmIsOff(cmakeWarnVS12)) {
|
||||
this->CMakeInstance->IssueMessage(
|
||||
MessageType::WARNING,
|
||||
"The \"Visual Studio 12 2013\" generator is deprecated "
|
||||
"and will be removed in a future version of CMake."
|
||||
"\n"
|
||||
"Add CMAKE_WARN_VS12=OFF to the cache to disable this warning.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void cmGlobalVisualStudio7Generator::OutputSLNFile(
|
||||
|
||||
@@ -42,6 +42,8 @@ endif()
|
||||
# Suppress generator deprecation warnings in test suite.
|
||||
if(CMAKE_GENERATOR MATCHES "^Visual Studio 9 2008")
|
||||
set(TEST_WARN_VS_CODE "set(ENV{CMAKE_WARN_VS9} OFF)")
|
||||
elseif(CMAKE_GENERATOR MATCHES "^Visual Studio 12 2013")
|
||||
set(TEST_WARN_VS_CODE "set(ENV{CMAKE_WARN_VS12} OFF)")
|
||||
else()
|
||||
set(TEST_WARN_VS_CODE "")
|
||||
endif()
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
^CMake Warning:
|
||||
The "Visual Studio 12 2013" generator is deprecated and will be removed in
|
||||
a future version of CMake.
|
||||
|
||||
Add CMAKE_WARN_VS12=OFF to the cache to disable this warning.$
|
||||
@@ -1118,3 +1118,10 @@ if(RunCMake_GENERATOR MATCHES "^Visual Studio 9 2008")
|
||||
run_cmake(DeprecateVS9-WARN-ON)
|
||||
run_cmake_with_options(DeprecateVS9-WARN-OFF -DCMAKE_WARN_VS9=OFF)
|
||||
endif()
|
||||
|
||||
if(RunCMake_GENERATOR MATCHES "^Visual Studio 12 2013")
|
||||
run_cmake_with_options(DeprecateVS12-WARN-ON -DCMAKE_WARN_VS12=ON)
|
||||
unset(ENV{CMAKE_WARN_VS12})
|
||||
run_cmake(DeprecateVS12-WARN-ON)
|
||||
run_cmake_with_options(DeprecateVS12-WARN-OFF -DCMAKE_WARN_VS12=OFF)
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user