diff options
author | Brad King <brad.king@kitware.com> | 2013-06-28 16:12:08 -0400 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-06-28 18:13:14 -0400 |
commit | 77ac9b8b9c56927617aeaabe01b5e8d22eaf4858 (patch) | |
tree | 9b199a18ef3869e92aed15618db630337a0c9cea /Tests | |
parent | 5dd8c01429da90a7417b72f17e784cc98f70f57c (diff) | |
download | cmake-77ac9b8b9c56927617aeaabe01b5e8d22eaf4858.tar.gz |
VS12: Add Visual Studio 12 generator (#14251)
Copy cmGlobalVisualStudio11Generator to cmGlobalVisualStudio12Generator
and update version numbers accordingly. Add the VS12 enumeration value.
Add module CMakeVS12FindMake to find MSBuild. Look for MSBuild in its
now-dedicated Windows Registry entry. Teach the platform module
Windows-MSVC to set MSVC12 and document the variable. Teach module
InstallRequiredSystemLibraries to look for the VS 12 runtime libraries.
Teach tests CheckCompilerRelatedVariables, Preprocess, VSExternalInclude,
and RunCMake.GeneratorToolset to treat VS 12 as they do VS 10 and 11.
Inspired-by: Minmin Gong <minmin.gong@gmail.com>
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/CheckCompilerRelatedVariables/CMakeLists.txt | 4 | ||||
-rw-r--r-- | Tests/Preprocess/CMakeLists.txt | 6 | ||||
-rw-r--r-- | Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake | 2 | ||||
-rw-r--r-- | Tests/VSExternalInclude/CMakeLists.txt | 4 |
4 files changed, 12 insertions, 4 deletions
diff --git a/Tests/CheckCompilerRelatedVariables/CMakeLists.txt b/Tests/CheckCompilerRelatedVariables/CMakeLists.txt index 20001e6ed4..69cfdb8e3d 100644 --- a/Tests/CheckCompilerRelatedVariables/CMakeLists.txt +++ b/Tests/CheckCompilerRelatedVariables/CMakeLists.txt @@ -37,6 +37,9 @@ endif() if(DEFINED MSVC11) math(EXPR msvc_total "${msvc_total} + 1") endif() +if(DEFINED MSVC12) + math(EXPR msvc_total "${msvc_total} + 1") +endif() echo_var(MSVC) echo_var(MSVC60) @@ -46,6 +49,7 @@ echo_var(MSVC80) echo_var(MSVC90) echo_var(MSVC10) echo_var(MSVC11) +echo_var(MSVC12) echo_var(MSVC_IDE) if(MSVC) diff --git a/Tests/Preprocess/CMakeLists.txt b/Tests/Preprocess/CMakeLists.txt index 78746e7b8a..ad119cc683 100644 --- a/Tests/Preprocess/CMakeLists.txt +++ b/Tests/Preprocess/CMakeLists.txt @@ -40,6 +40,9 @@ endif() if("${CMAKE_GENERATOR}" MATCHES "Visual Studio 11") set(PP_VS110 1) endif() +if("${CMAKE_GENERATOR}" MATCHES "Visual Studio 12") + set(PP_VS120 1) +endif() # Some tests below check the PP_* variables set above. They are meant # to test the case that the build tool is at fault. Other tests below @@ -55,7 +58,8 @@ endif() # must not have it escaped inside the configured header. set(STRING_EXTRA "") -if(NOT BORLAND AND NOT PP_VS70 AND NOT PP_VS100 AND NOT PP_VS110) +if(NOT BORLAND AND NOT PP_VS70 + AND NOT PP_VS100 AND NOT PP_VS110 AND NOT PP_VS120) # Borland, VS70 IDE: ; # The Borland compiler will simply not accept a non-escaped semicolon # on the command line. If it is escaped \; then the escape character diff --git a/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake b/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake index 09375d9a70..1ccc1adb2a 100644 --- a/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake +++ b/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake @@ -3,7 +3,7 @@ include(RunCMake) set(RunCMake_GENERATOR_TOOLSET "") run_cmake(NoToolset) -if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[01]|Xcode" AND NOT XCODE_BELOW_3) +if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[012]|Xcode" AND NOT XCODE_BELOW_3) set(RunCMake_GENERATOR_TOOLSET "Test Toolset") run_cmake(TestToolset) else() diff --git a/Tests/VSExternalInclude/CMakeLists.txt b/Tests/VSExternalInclude/CMakeLists.txt index 5ce15e05da..8fc2871456 100644 --- a/Tests/VSExternalInclude/CMakeLists.txt +++ b/Tests/VSExternalInclude/CMakeLists.txt @@ -6,7 +6,7 @@ if(${CMAKE_GENERATOR} MATCHES "Visual Studio 6") else() set(PROJECT_EXT vcproj) endif() -if(${CMAKE_GENERATOR} MATCHES "Visual Studio 1[01]") +if(${CMAKE_GENERATOR} MATCHES "Visual Studio 1[012]") set(PROJECT_EXT vcxproj) endif() @@ -54,7 +54,7 @@ add_dependencies(VSExternalInclude lib2) # and the sln file can no longer be the only source # of that depend. So, for VS 10 make the executable # depend on lib1 and lib2 -if(${CMAKE_GENERATOR} MATCHES "Visual Studio 1[01]") +if(${CMAKE_GENERATOR} MATCHES "Visual Studio 1[012]") add_dependencies(VSExternalInclude lib1) endif() |