Deprecate Visual Studio 7 generator (.NET 2002)

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:
Brad King 2015-04-15 09:20:12 -04:00
parent 85c2626bab
commit 7b8e7c4ac3
8 changed files with 43 additions and 2 deletions

View File

@ -1,4 +1,10 @@
Visual Studio 7
---------------
Generates Visual Studio .NET 2002 project files.
Deprected. Generates Visual Studio .NET 2002 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 7.0 tools using the
:generator:`NMake Makefiles` generator.

View File

@ -0,0 +1,5 @@
vs70-deprecate
--------------
* The :generator:`Visual Studio 7` generator (.NET 2002) is now
deprecated and will be removed in a future version of CMake.

View File

@ -351,6 +351,23 @@ void cmGlobalVisualStudio7Generator::Generate()
{
this->CallVisualStudioMacro(MacroReload);
}
if (!this->CMakeInstance->GetIsInTryCompile() &&
this->GetName() == "Visual Studio 7")
{
const char* cmakeWarnVS70 =
this->CMakeInstance->GetState()->GetCacheEntryValue("CMAKE_WARN_VS70");
if (!cmakeWarnVS70 || !cmSystemTools::IsOff(cmakeWarnVS70))
{
this->CMakeInstance->IssueMessage(
cmake::WARNING,
"The \"Visual Studio 7\" generator is deprecated "
"and will be removed in a future version of CMake."
"\n"
"Add CMAKE_WARN_VS70=OFF to the cache to disable this warning."
);
}
}
}
void cmGlobalVisualStudio7Generator
@ -983,7 +1000,7 @@ void cmGlobalVisualStudio7Generator
::GetDocumentation(cmDocumentationEntry& entry)
{
entry.Name = cmGlobalVisualStudio7Generator::GetActualName();
entry.Brief = "Generates Visual Studio .NET 2002 project files.";
entry.Brief = "Deprecated. Generates Visual Studio .NET 2002 project files.";
}
//----------------------------------------------------------------------------

View File

@ -0,0 +1,5 @@
^CMake Warning:
The "Visual Studio 7" generator is deprecated and will be removed in a
future version of CMake.
Add CMAKE_WARN_VS70=OFF to the cache to disable this warning.$

View File

@ -45,6 +45,11 @@ if(RunCMake_GENERATOR STREQUAL "Visual Studio 6")
run_cmake(DeprecateVS6-WARN-ON)
unset(RunCMake_WARN_VS6)
run_cmake(DeprecateVS6-WARN-OFF)
elseif(RunCMake_GENERATOR STREQUAL "Visual Studio 7")
set(RunCMake_WARN_VS70 1)
run_cmake(DeprecateVS70-WARN-ON)
unset(RunCMake_WARN_VS70)
run_cmake(DeprecateVS70-WARN-OFF)
endif()
if(UNIX)

View File

@ -54,6 +54,9 @@ function(run_cmake test)
if(RunCMake_GENERATOR STREQUAL "Visual Studio 6" AND NOT RunCMake_WARN_VS6)
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_WARN_VS6=OFF)
endif()
if(RunCMake_GENERATOR STREQUAL "Visual Studio 7" AND NOT RunCMake_WARN_VS70)
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_WARN_VS70=OFF)
endif()
if(RunCMake_MAKE_PROGRAM)
list(APPEND RunCMake_TEST_OPTIONS "-DCMAKE_MAKE_PROGRAM=${RunCMake_MAKE_PROGRAM}")
endif()