浏览代码

Merge topic 'test-speedup-RunCMake.include_directories'

9998d78d Tests: Speed up RunCMake.include_directories test
6eee5d74 Tests: Drop broken and now unused RunCMake_TEST_FILE option
f0f15b93 Tests: Refactor RunCMake.include_directories to drop RunCMake_TEST_FILE
8707814e Tests: Refactor RunCMake.File_Generate to drop RunCMake_TEST_FILE
Brad King 11 年之前
父节点
当前提交
623123aaa0

+ 4 - 1
Tests/RunCMake/File_Generate/CMakeLists.txt

@@ -1,3 +1,6 @@
 cmake_minimum_required(VERSION 2.8.4)
 project(${RunCMake_TEST} NONE)
-include(${RunCMake_TEST}.cmake)
+if(NOT TEST_FILE)
+  set(TEST_FILE ${RunCMake_TEST}.cmake)
+endif()
+include(${TEST_FILE})

+ 1 - 1
Tests/RunCMake/File_Generate/EmptyCondition1-stderr.txt

@@ -1,4 +1,4 @@
 CMake Error at EmptyCondition1.cmake:2 \(file\):
   file Incorrect arguments to GENERATE subcommand.
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)

+ 1 - 1
Tests/RunCMake/File_Generate/EmptyCondition2-stderr.txt

@@ -1,4 +1,4 @@
 CMake Error at EmptyCondition2.cmake:2 \(file\):
   file CONDITION of sub-command GENERATE must not be empty if specified.
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)

+ 2 - 2
Tests/RunCMake/File_Generate/RunCMakeTest.cmake

@@ -12,10 +12,10 @@ run_cmake(DebugEvaluate)
 set(timeformat "%Y%j%H%M%S")
 
 file(REMOVE "${RunCMake_BINARY_DIR}/WriteIfDifferent-build/output_file.txt")
-set(RunCMake_TEST_FILE "WriteIfDifferent")
+set(RunCMake_TEST_OPTIONS "-DTEST_FILE=WriteIfDifferent.cmake")
 set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/WriteIfDifferent-build")
 run_cmake(WriteIfDifferent-prepare)
-unset(RunCMake_TEST_FILE)
+unset(RunCMake_TEST_OPTIONS)
 unset(RunCMake_TEST_BINARY_DIR)
 file(TIMESTAMP "${RunCMake_BINARY_DIR}/WriteIfDifferent-build/output_file.txt" timestamp ${timeformat})
 if(NOT timestamp)

+ 1 - 4
Tests/RunCMake/RunCMake.cmake

@@ -38,9 +38,6 @@ function(run_cmake test)
   if(NOT DEFINED RunCMake_TEST_OPTIONS)
     set(RunCMake_TEST_OPTIONS "")
   endif()
-  if (NOT RunCMake_TEST_FILE)
-    set(RunCMake_TEST_FILE "${test}")
-  endif()
   if(APPLE)
     list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_POLICY_DEFAULT_CMP0025=NEW)
   endif()
@@ -57,7 +54,7 @@ function(run_cmake test)
       COMMAND ${CMAKE_COMMAND} "${RunCMake_TEST_SOURCE_DIR}"
                 -G "${RunCMake_GENERATOR}"
                 -T "${RunCMake_GENERATOR_TOOLSET}"
-                -DRunCMake_TEST=${RunCMake_TEST_FILE}
+                -DRunCMake_TEST=${test}
                 --no-warn-unused-cli
                 ${RunCMake_TEST_OPTIONS}
       WORKING_DIRECTORY "${RunCMake_TEST_BINARY_DIR}"

+ 1 - 1
Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake

@@ -1,5 +1,5 @@
 
-project(BinaryDirectoryInInterface)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo")

+ 5 - 2
Tests/RunCMake/include_directories/CMakeLists.txt

@@ -1,3 +1,6 @@
 cmake_minimum_required(VERSION 3.0)
-project(${RunCMake_TEST} CXX)
-include(${RunCMake_TEST}.cmake)
+project(${RunCMake_TEST} NONE)
+if(NOT TEST_FILE)
+  set(TEST_FILE ${RunCMake_TEST}.cmake)
+endif()
+include(${TEST_FILE})

+ 6 - 6
Tests/RunCMake/include_directories/DebugIncludes-stderr.txt

@@ -5,7 +5,7 @@ CMake Debug Log at DebugIncludes.cmake:8 \(include_directories\):
    \* .*/Tests/RunCMake/include_directories/two
 
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)
 +
 CMake Debug Log at DebugIncludes.cmake:13 \(set_property\):
   Used includes for target lll:
@@ -13,7 +13,7 @@ CMake Debug Log at DebugIncludes.cmake:13 \(set_property\):
    \* .*/Tests/RunCMake/include_directories/three
 
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)
 +
 CMake Debug Log at DebugIncludes.cmake:18 \(include_directories\):
   Used includes for target lll:
@@ -21,7 +21,7 @@ CMake Debug Log at DebugIncludes.cmake:18 \(include_directories\):
    \* .*/Tests/RunCMake/include_directories/four
 
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)
 +
 CMake Debug Log at DebugIncludes.cmake:33 \(set_property\):
   Used includes for target lll:
@@ -33,7 +33,7 @@ CMake Debug Log at DebugIncludes.cmake:33 \(set_property\):
 Call Stack \(most recent call first\):
   DebugIncludes.cmake:44 \(some_macro\)
   DebugIncludes.cmake:47 \(some_function\)
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)
 +
 CMake Debug Log at DebugIncludes.cmake:30 \(target_link_libraries\):
   Used includes for target lll:
@@ -41,7 +41,7 @@ CMake Debug Log at DebugIncludes.cmake:30 \(target_link_libraries\):
    \* .*/Tests/RunCMake/include_directories/eight
 
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)
 +
 CMake Debug Log at DebugIncludes.cmake:55 \(set_property\):
   Used includes for target lll:
@@ -50,4 +50,4 @@ CMake Debug Log at DebugIncludes.cmake:55 \(set_property\):
    \* .*/Tests/RunCMake/include_directories/ten
 
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)

+ 1 - 1
Tests/RunCMake/include_directories/DebugIncludes.cmake

@@ -1,5 +1,5 @@
 
-project(DebugIncludes)
+enable_language(CXX)
 
 set(CMAKE_DEBUG_TARGET_PROPERTIES INCLUDE_DIRECTORIES)
 

+ 1 - 1
Tests/RunCMake/include_directories/DirInInstallPrefix.cmake

@@ -1,4 +1,4 @@
-
+enable_language(CXX)
 add_library(testTarget empty.cpp)
 target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir")
 

+ 1 - 1
Tests/RunCMake/include_directories/ImportedTarget.cmake

@@ -1,5 +1,5 @@
 
-project(ImportedTarget)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 

+ 1 - 1
Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake

@@ -1,5 +1,5 @@
 
-project(InstallPrefixInInterface)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/foo")

+ 1 - 1
Tests/RunCMake/include_directories/RelativePathInGenex.cmake

@@ -1,5 +1,5 @@
 
-project(RelativePathInInterface)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>")

+ 1 - 1
Tests/RunCMake/include_directories/RelativePathInInterface.cmake

@@ -1,5 +1,5 @@
 
-project(RelativePathInInterface)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo")

+ 24 - 16
Tests/RunCMake/include_directories/RunCMakeTest.cmake

@@ -31,19 +31,22 @@ configure_file(
   "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake"
   COPYONLY
 )
-set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix")
-set(RunCMake_TEST_FILE "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface")
+set(RunCMake_TEST_OPTIONS
+  "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix"
+  "-DTEST_FILE=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake"
+  )
 set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/copy")
 run_cmake(InstallInSrcDir)
 unset(RunCMake_TEST_SOURCE_DIR)
-unset(RunCMake_TEST_FILE)
 
 set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix")
+set(RunCMake_TEST_OPTIONS
+  "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix"
+  "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake"
+  )
 set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/InstallInBinDir-build")
-set(RunCMake_TEST_FILE "${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface")
 run_cmake(InstallInBinDir)
 unset(RunCMake_TEST_BINARY_DIR)
-unset(RunCMake_TEST_FILE)
 
 configure_file(
   "${RunCMake_SOURCE_DIR}/CMakeLists.txt"
@@ -68,22 +71,25 @@ foreach(policyStatus "" NEW OLD)
     unset(policyOption)
     set(policyStatus WARN)
   endif()
-  set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption})
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
+    "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake"
+    )
   # Set the RunCMake_TEST_SOURCE_DIR here to the copy too. This is needed to run
   # the test suite in-source properly.  Otherwise the install directory would be
   # a subdirectory or the source directory, which is allowed and tested separately
   # below.
   set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src")
   set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build")
-  set(RunCMake_TEST_FILE "${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface")
   run_cmake(BinInInstallPrefix-CMP0052-${policyStatus})
   unset(RunCMake_TEST_BINARY_DIR)
-  unset(RunCMake_TEST_FILE)
 
-  set(RunCMake_TEST_FILE "${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface")
+  set(RunCMake_TEST_OPTIONS
+    "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
+    "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake"
+    )
   run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus})
   unset(RunCMake_TEST_SOURCE_DIR)
-  unset(RunCMake_TEST_FILE)
 endforeach()
 
 set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix")
@@ -104,12 +110,13 @@ configure_file(
   "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake"
   COPYONLY
 )
-set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix")
-set(RunCMake_TEST_FILE "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface")
+set(RunCMake_TEST_OPTIONS
+  "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix"
+  "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake"
+  )
 set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc")
 run_cmake(InstallToPrefixInSrcDirOutOfSource)
 unset(RunCMake_TEST_SOURCE_DIR)
-unset(RunCMake_TEST_FILE)
 
 
 file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc")
@@ -131,12 +138,13 @@ configure_file(
   COPYONLY
 )
 
-set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix")
-set(RunCMake_TEST_FILE "${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface")
+set(RunCMake_TEST_OPTIONS
+  "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix"
+  "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake"
+  )
 set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc")
 set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc")
 run_cmake(InstallToPrefixInSrcDirInSource)
 unset(RunCMake_TEST_SOURCE_DIR)
 unset(RunCMake_TEST_BINARY_DIR)
-unset(RunCMake_TEST_FILE)
 unset(RunCMake_TEST_NO_CLEAN)

+ 1 - 1
Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake

@@ -1,5 +1,5 @@
 
-project(SourceDirectoryInInterface)
+enable_language(CXX)
 
 add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp")
 target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo")

+ 1 - 1
Tests/RunCMake/include_directories/TID-bad-target-stderr.txt

@@ -1,4 +1,4 @@
 CMake Error at TID-bad-target.cmake:6 \(target_include_directories\):
   target_include_directories called with non-compilable target type
 Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
+  CMakeLists.txt:[0-9]+ \(include\)

+ 1 - 1
Tests/RunCMake/include_directories/export-NOWARN.cmake

@@ -1,4 +1,4 @@
-
+enable_language(CXX)
 add_library(foo empty.cpp)
 set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir)
 set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<INSTALL_PREFIX>/include/subdir)

+ 1 - 1
Tests/RunCMake/include_directories/incomplete-genex.cmake

@@ -1,4 +1,4 @@
-project(incomplete-genex)
+enable_language(CXX)
 
 cmake_policy(SET CMP0022 NEW)
 cmake_policy(SET CMP0023 NEW)