Pārlūkot izejas kodu

Tests/ObjectLibrary: add shortened path tests

John Parent 6 mēneši atpakaļ
vecāks
revīzija
cce31527f8

+ 2 - 0
Tests/RunCMake/ObjectLibrary/Dependencies.cmake

@@ -1,3 +1,5 @@
+set(CMAKE_INTERMEDIATE_DIR_STRATEGY FULL CACHE STRING "" FORCE)
+
 add_library(myobj OBJECT ${CMAKE_BINARY_DIR}/depends_obj.c)
 add_library(mylib STATIC $<TARGET_OBJECTS:myobj> depends_lib.c)
 add_executable(myexe depends_main.c)

+ 9 - 0
Tests/RunCMake/ObjectLibrary/DependenciesShort.cmake

@@ -0,0 +1,9 @@
+set(CMAKE_INTERMEDIATE_DIR_STRATEGY SHORT CACHE STRING "" FORCE)
+
+add_library(myobj OBJECT ${CMAKE_BINARY_DIR}/depends_obj.c)
+add_library(mylib STATIC $<TARGET_OBJECTS:myobj> depends_lib.c)
+add_executable(myexe depends_main.c)
+target_link_libraries(myexe mylib)
+
+enable_testing()
+add_test(NAME myexe COMMAND $<TARGET_FILE:myexe>)

+ 13 - 11
Tests/RunCMake/ObjectLibrary/RunCMakeTest.cmake

@@ -67,9 +67,8 @@ run_cmake(PostBuild)
 run_cmake(PreBuild)
 run_cmake(PreLink)
 
-
-function(run_Dependencies)
-  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/Dependencies-build)
+function(run_Dependencies suffix)
+  set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/Dependencies${suffix}-build)
   set(RunCMake_TEST_NO_CLEAN 1)
 
   file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
@@ -82,13 +81,16 @@ function(run_Dependencies)
     set(fs_delay 1.125)
   endif()
 
-  run_cmake_command(Dependencies-build ${CMAKE_COMMAND} -E copy ${RunCMake_SOURCE_DIR}/depends_obj1.c ${RunCMake_TEST_BINARY_DIR}/depends_obj.c)
-  run_cmake(Dependencies)
-  run_cmake_command(Dependencies-build ${CMAKE_COMMAND} --build . --config Debug)
-  run_cmake_command(Dependencies-build ${CMAKE_COMMAND} -E sleep ${fs_delay})
-  run_cmake_command(Dependencies-build ${CMAKE_COMMAND} -E copy ${RunCMake_SOURCE_DIR}/depends_obj0.c ${RunCMake_TEST_BINARY_DIR}/depends_obj.c)
-  run_cmake_command(Dependencies-build ${CMAKE_COMMAND} --build . --config Debug)
-  run_cmake_command(Dependencies-build ${CMAKE_CTEST_COMMAND} -C Debug -V)
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_COMMAND} -E copy ${RunCMake_SOURCE_DIR}/depends_obj1.c ${RunCMake_TEST_BINARY_DIR}/depends_obj.c)
+  run_cmake_with_options(Dependencies${suffix})
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_COMMAND} --build . --config Debug)
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_COMMAND} -E sleep ${fs_delay})
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_COMMAND} -E copy ${RunCMake_SOURCE_DIR}/depends_obj0.c ${RunCMake_TEST_BINARY_DIR}/depends_obj.c)
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_COMMAND} --build . --config Debug)
+  run_cmake_command(Dependencies${suffix}-build ${CMAKE_CTEST_COMMAND} -C Debug -V)
 endfunction()
 
-run_Dependencies()
+run_Dependencies("")
+if (CMAKE_GENERATOR MATCHES "NONE")
+  run_Dependencies(Short)
+endif ()