diff options
-rw-r--r-- | Tests/CMakeLists.txt | 27 | ||||
-rw-r--r-- | Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 23 | ||||
-rw-r--r-- | Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake | 8 | ||||
-rw-r--r-- | Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake | 2 | ||||
-rw-r--r-- | Tests/VSExternalInclude/CMakeLists.txt | 14 |
5 files changed, 30 insertions, 44 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index a3a7589..705f71f 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -2225,7 +2225,7 @@ if(BUILD_TESTING) ADD_TEST_MACRO(VSMASM VSMASM) endif() - if(${CMAKE_GENERATOR} MATCHES "Visual Studio") + if(CMAKE_GENERATOR MATCHES "Visual Studio") if(NOT MSVC60) ADD_TEST_MACRO(SBCS SBCS) endif() @@ -2287,20 +2287,17 @@ if(BUILD_TESTING) list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSExcludeFromDefaultBuild") endif() - if(CMAKE_GENERATOR MATCHES "Visual Studio ([0-5]|[6-9][0-9])") - # This is Visual Studio 10 or above, so the default build tool is MSBuild. - add_test(NAME VSProjectInSubdir COMMAND ${CMAKE_CTEST_COMMAND} - --build-and-test - "${CMake_SOURCE_DIR}/Tests/VSProjectInSubdir" - "${CMake_BINARY_DIR}/Tests/VSProjectInSubdir" - --build-two-config - --build-generator ${CMAKE_GENERATOR} - --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}" - --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}" - --build-project VSProjectInSubdir - --build-target test) - list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSProjectInSubdir") - endif() + add_test(NAME VSProjectInSubdir COMMAND ${CMAKE_CTEST_COMMAND} + --build-and-test + "${CMake_SOURCE_DIR}/Tests/VSProjectInSubdir" + "${CMake_BINARY_DIR}/Tests/VSProjectInSubdir" + --build-two-config + --build-generator ${CMAKE_GENERATOR} + --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}" + --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}" + --build-project VSProjectInSubdir + --build-target test) + list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSProjectInSubdir") endif() get_filename_component(ntver "[HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion;CurrentVersion]" NAME) diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index 8e5bffe..3ffcc2e 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -382,21 +382,18 @@ function(run_EnvironmentGenerator) run_cmake_command(Envgen-bad-help ${CMAKE_COMMAND} --help) unset(ENV{CMAKE_GENERATOR}) - if(RunCMake_GENERATOR MATCHES "Visual Studio.*") + if(RunCMake_GENERATOR MATCHES "Visual Studio") set(ENV{CMAKE_GENERATOR} "${RunCMake_GENERATOR}") run_cmake_command(Envgen ${CMAKE_COMMAND} ${source_dir}) - # Toolset is available since VS 2010. - if(RunCMake_GENERATOR MATCHES "Visual Studio [1-9][0-9]") - set(ENV{CMAKE_GENERATOR_TOOLSET} "invalid") - # Envvar shouldn't affect existing build tree - run_cmake_command(Envgen-toolset-existing ${CMAKE_COMMAND} -E chdir .. - ${CMAKE_COMMAND} --build Envgen-build) - run_cmake_command(Envgen-toolset-invalid ${CMAKE_COMMAND} ${source_dir}) - # Command line -G implies -T"" - run_cmake_command(Envgen-G-implicit-toolset ${CMAKE_COMMAND} -G "${RunCMake_GENERATOR}" ${source_dir}) - run_cmake_command(Envgen-T-toolset ${CMAKE_COMMAND} -T "fromcli" ${source_dir}) - unset(ENV{CMAKE_GENERATOR_TOOLSET}) - endif() + set(ENV{CMAKE_GENERATOR_TOOLSET} "invalid") + # Envvar shouldn't affect existing build tree + run_cmake_command(Envgen-toolset-existing ${CMAKE_COMMAND} -E chdir .. + ${CMAKE_COMMAND} --build Envgen-build) + run_cmake_command(Envgen-toolset-invalid ${CMAKE_COMMAND} ${source_dir}) + # Command line -G implies -T"" + run_cmake_command(Envgen-G-implicit-toolset ${CMAKE_COMMAND} -G "${RunCMake_GENERATOR}" ${source_dir}) + run_cmake_command(Envgen-T-toolset ${CMAKE_COMMAND} -T "fromcli" ${source_dir}) + unset(ENV{CMAKE_GENERATOR_TOOLSET}) # Platform can be set only if not in generator name. if(RunCMake_GENERATOR MATCHES "^Visual Studio [0-9]+ [0-9]+$") set(ENV{CMAKE_GENERATOR_PLATFORM} "invalid") diff --git a/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake b/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake index b86c481..80d1d5e 100644 --- a/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake +++ b/Tests/RunCMake/GeneratorToolset/RunCMakeTest.cmake @@ -1,6 +1,6 @@ include(RunCMake) -if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[0124567]") +if("${RunCMake_GENERATOR}" MATCHES "Visual Studio") run_cmake(VsNormal) include("${RunCMake_BINARY_DIR}/VsNormal-build/defaults.cmake" OPTIONAL) message(STATUS "VsNormal: platform='${VsNormal_Platform}' toolset='${VsNormal_Toolset}'") @@ -9,7 +9,7 @@ endif() set(RunCMake_GENERATOR_TOOLSET "") run_cmake(NoToolset) -if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[0124567]") +if("${RunCMake_GENERATOR}" MATCHES "Visual Studio") set(RunCMake_GENERATOR_TOOLSET "Test Toolset") run_cmake(TestToolset) set(RunCMake_GENERATOR_TOOLSET "Test Toolset,cuda=0.0") @@ -49,7 +49,7 @@ if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[0124567]") run_cmake(TestToolsetFortranIFX) set(RunCMake_GENERATOR_TOOLSET "fortran=bad") run_cmake(BadToolsetFortran) - if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[24567]") + if("${RunCMake_GENERATOR}" MATCHES "Visual Studio") set(RunCMake_GENERATOR_TOOLSET "Test Toolset,host=x64") run_cmake(TestToolsetHostArchBoth) set(RunCMake_GENERATOR_TOOLSET ",host=x64") @@ -119,7 +119,7 @@ set(RunCMake_TEST_OPTIONS -T "Test Toolset" -T "Extra Toolset") run_cmake(TwoToolsets) unset(RunCMake_TEST_OPTIONS) -if("${RunCMake_GENERATOR}" MATCHES "Visual Studio 1[0124567]|Xcode") +if("${RunCMake_GENERATOR}" MATCHES "Visual Studio|Xcode") set(RunCMake_TEST_OPTIONS -DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/TestToolset-toolchain.cmake) run_cmake(TestToolsetToolchain) unset(RunCMake_TEST_OPTIONS) diff --git a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake index 801abae..f29697c 100644 --- a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake +++ b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake @@ -53,7 +53,7 @@ elseif(RunCMake_GENERATOR MATCHES "Make") set(RunCMake-check-file ExcludeFromAll/check-sub.cmake) set(RunCMake_TEST_COMMAND_WORKING_DIRECTORY ${RunCMake_BINARY_DIR}/ExcludeFromAll-build/ExcludeFromAll) run_cmake_command(ExcludeFromAll-build-sub "${RunCMake_MAKE_PROGRAM}") -elseif(RunCMake_GENERATOR MATCHES "^Visual Studio [1-9][0-9]") +elseif(RunCMake_GENERATOR MATCHES "Visual Studio") set(RunCMake-check-file ExcludeFromAll/check-sub.cmake) run_cmake_command(ExcludeFromAll-build-sub ${CMAKE_COMMAND} --build ExcludeFromAll --config Debug) elseif(RunCMake_GENERATOR STREQUAL "Xcode") diff --git a/Tests/VSExternalInclude/CMakeLists.txt b/Tests/VSExternalInclude/CMakeLists.txt index a44988e..ce5d57b 100644 --- a/Tests/VSExternalInclude/CMakeLists.txt +++ b/Tests/VSExternalInclude/CMakeLists.txt @@ -1,12 +1,6 @@ cmake_minimum_required (VERSION 3.5) project(VSExternalInclude) -if(${CMAKE_GENERATOR} MATCHES "Visual Studio 1[0124567]") - set(PROJECT_EXT vcxproj) -else() - set(PROJECT_EXT vcproj) -endif() - # make sure directories exists set(LIB1_BINARY_DIR ${VSExternalInclude_BINARY_DIR}/Lib1) make_directory("${LIB1_BINARY_DIR}") @@ -37,9 +31,9 @@ execute_process( message("CMAKE Ran with the following output:\n\"${OUT}\"") -include_external_msproject(lib1 ${VSExternalInclude_BINARY_DIR}/Lib1/LIB1.${PROJECT_EXT}) +include_external_msproject(lib1 ${VSExternalInclude_BINARY_DIR}/Lib1/LIB1.vcxproj) # lib2 depends on lib1 -include_external_msproject(lib2 ${VSExternalInclude_BINARY_DIR}/Lib2/LIB2.${PROJECT_EXT} lib1) +include_external_msproject(lib2 ${VSExternalInclude_BINARY_DIR}/Lib2/LIB2.vcxproj lib1) include_directories(${VSExternalInclude_SOURCE_DIR}/Lib2 ${VSExternalInclude_SOURCE_DIR}/Lib1) @@ -55,9 +49,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[0124567]") - add_dependencies(VSExternalInclude lib1) -endif() +add_dependencies(VSExternalInclude lib1) # Interaction testing between the FOLDER target property and # INCLUDE_EXTERNAL_MSPROJECT targets: |