diff options
Diffstat (limited to 'Tests/RunCMake')
26 files changed, 129 insertions, 17 deletions
diff --git a/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-result.txt b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-result.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-result.txt @@ -0,0 +1 @@ +0 diff --git a/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-stderr.txt new file mode 100644 index 0000000..6d519f0 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-stderr.txt @@ -0,0 +1,17 @@ +CMake Warning \(dev\) in CMakeLists.txt: + Policy CMP0022 is not set: INTERFACE_LINK_LIBRARIES defines the link + interface. Run "cmake --help-policy CMP0022" for policy details. Use the + cmake_policy command to set the policy and suppress this warning. + + Target "bar" has a INTERFACE_LINK_LIBRARIES property which differs from its + LINK_INTERFACE_LIBRARIES properties. + + INTERFACE_LINK_LIBRARIES: + + foo + + LINK_INTERFACE_LIBRARIES: + + \(empty\) + +This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old.cmake b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old.cmake new file mode 100644 index 0000000..c5d3c29 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old.cmake @@ -0,0 +1,10 @@ + +project(CMP0022-WARN-empty-old) + +add_library(foo SHARED empty_vs6_1.cpp) +add_library(bar SHARED empty_vs6_2.cpp) + +set_property(TARGET bar PROPERTY INTERFACE_LINK_LIBRARIES foo) + +add_library(user empty.cpp) +target_link_libraries(user bar) diff --git a/Tests/RunCMake/CMP0022/CMP0022-export-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-export-stderr.txt index ae7627e..405dd8d 100644 --- a/Tests/RunCMake/CMP0022/CMP0022-export-stderr.txt +++ b/Tests/RunCMake/CMP0022/CMP0022-export-stderr.txt @@ -1,4 +1,4 @@ -CMake Error at CMP0022-export.cmake:11 \(export\): +CMake Error in CMakeLists.txt: Target "cmp0022NEW" has policy CMP0022 enabled, but also has old-style LINK_INTERFACE_LIBRARIES properties populated, but it was exported without the EXPORT_LINK_INTERFACE_LIBRARIES to export the old-style properties diff --git a/Tests/RunCMake/CMP0022/RunCMakeTest.cmake b/Tests/RunCMake/CMP0022/RunCMakeTest.cmake index dcef0f5..8e5824a 100644 --- a/Tests/RunCMake/CMP0022/RunCMakeTest.cmake +++ b/Tests/RunCMake/CMP0022/RunCMakeTest.cmake @@ -3,6 +3,7 @@ include(RunCMake) run_cmake(CMP0022-WARN) run_cmake(CMP0022-WARN-tll) run_cmake(CMP0022-WARN-static) +run_cmake(CMP0022-WARN-empty-old) run_cmake(CMP0022-NOWARN-static) run_cmake(CMP0022-NOWARN-static-link_libraries) run_cmake(CMP0022-export) diff --git a/Tests/RunCMake/CMP0027/CMP0027-NEW-result.txt b/Tests/RunCMake/CMP0027/CMP0027-NEW-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-NEW-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CMP0027/CMP0027-NEW-stderr.txt b/Tests/RunCMake/CMP0027/CMP0027-NEW-stderr.txt new file mode 100644 index 0000000..5948ec8 --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-NEW-stderr.txt @@ -0,0 +1,13 @@ +CMake Error in CMakeLists.txt: + Imported target "testTarget" includes non-existent path + + "/does/not/exist" + + in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: + + \* The path was deleted, renamed, or moved to another location. + + \* An install or uninstall procedure did not complete successfully. + + \* The installation package was faulty and references files it does not + provide. diff --git a/Tests/RunCMake/CMP0027/CMP0027-NEW.cmake b/Tests/RunCMake/CMP0027/CMP0027-NEW.cmake new file mode 100644 index 0000000..8245085 --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-NEW.cmake @@ -0,0 +1,10 @@ + +enable_language(CXX) + +cmake_policy(SET CMP0027 NEW) + +add_library(testTarget UNKNOWN IMPORTED) +set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "/does/not/exist") + +add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +target_link_libraries(userTarget PRIVATE $<1:testTarget>) diff --git a/Tests/RunCMake/CMP0027/CMP0027-OLD-result.txt b/Tests/RunCMake/CMP0027/CMP0027-OLD-result.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-OLD-result.txt @@ -0,0 +1 @@ +0 diff --git a/Tests/RunCMake/CMP0027/CMP0027-OLD-stderr.txt b/Tests/RunCMake/CMP0027/CMP0027-OLD-stderr.txt new file mode 100644 index 0000000..4c2b300 --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-OLD-stderr.txt @@ -0,0 +1,13 @@ +CMake Warning \(dev\) in CMakeLists.txt: + Imported target "testTarget" includes non-existent path + + "/does/not/exist" + + in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: + + \* The path was deleted, renamed, or moved to another location. + + \* An install or uninstall procedure did not complete successfully. + + \* The installation package was faulty and references files it does not + provide. diff --git a/Tests/RunCMake/CMP0027/CMP0027-OLD.cmake b/Tests/RunCMake/CMP0027/CMP0027-OLD.cmake new file mode 100644 index 0000000..404217d --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-OLD.cmake @@ -0,0 +1,10 @@ + +enable_language(CXX) + +cmake_policy(SET CMP0027 OLD) + +add_library(testTarget UNKNOWN IMPORTED) +set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "/does/not/exist") + +add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +target_link_libraries(userTarget PRIVATE $<1:testTarget>) diff --git a/Tests/RunCMake/CMP0027/CMP0027-WARN-result.txt b/Tests/RunCMake/CMP0027/CMP0027-WARN-result.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-WARN-result.txt @@ -0,0 +1 @@ +0 diff --git a/Tests/RunCMake/CMP0027/CMP0027-WARN-stderr.txt b/Tests/RunCMake/CMP0027/CMP0027-WARN-stderr.txt new file mode 100644 index 0000000..9bcec3c --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-WARN-stderr.txt @@ -0,0 +1,18 @@ +CMake Warning \(dev\) in CMakeLists.txt: + Policy CMP0027 is not set: Conditionally linked imported targets with + missing include directories. Run "cmake --help-policy CMP0027" for policy + details. Use the cmake_policy command to set the policy and suppress this + warning. + + Imported target "testTarget" includes non-existent path + + "/does/not/exist" + + in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: + + \* The path was deleted, renamed, or moved to another location. + + \* An install or uninstall procedure did not complete successfully. + + \* The installation package was faulty and references files it does not + provide. diff --git a/Tests/RunCMake/CMP0027/CMP0027-WARN.cmake b/Tests/RunCMake/CMP0027/CMP0027-WARN.cmake new file mode 100644 index 0000000..8e5f9b5 --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMP0027-WARN.cmake @@ -0,0 +1,8 @@ + +enable_language(CXX) + +add_library(testTarget UNKNOWN IMPORTED) +set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "/does/not/exist") + +add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +target_link_libraries(userTarget PRIVATE $<1:testTarget>) diff --git a/Tests/RunCMake/CMP0027/CMakeLists.txt b/Tests/RunCMake/CMP0027/CMakeLists.txt new file mode 100644 index 0000000..8f85fbf --- /dev/null +++ b/Tests/RunCMake/CMP0027/CMakeLists.txt @@ -0,0 +1,3 @@ +cmake_minimum_required(VERSION 2.8.4) +project(${RunCMake_TEST} NONE) +include(${RunCMake_TEST}.cmake NO_POLICY_SCOPE) diff --git a/Tests/RunCMake/CMP0027/RunCMakeTest.cmake b/Tests/RunCMake/CMP0027/RunCMakeTest.cmake new file mode 100644 index 0000000..1017f01 --- /dev/null +++ b/Tests/RunCMake/CMP0027/RunCMakeTest.cmake @@ -0,0 +1,5 @@ +include(RunCMake) + +run_cmake(CMP0027-NEW) +run_cmake(CMP0027-OLD) +run_cmake(CMP0027-WARN) diff --git a/Tests/RunCMake/CMP0027/empty.cpp b/Tests/RunCMake/CMP0027/empty.cpp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Tests/RunCMake/CMP0027/empty.cpp diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 6d5b07b..52c8667 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -54,6 +54,7 @@ endif() add_RunCMake_test(CMP0019) add_RunCMake_test(CMP0022) add_RunCMake_test(CMP0026) +add_RunCMake_test(CMP0027) add_RunCMake_test(CTest) if(UNIX AND "${CMAKE_TEST_GENERATOR}" MATCHES "Unix Makefiles") add_RunCMake_test(CompilerChange) diff --git a/Tests/RunCMake/ExportWithoutLanguage/NoLanguage-stderr.txt b/Tests/RunCMake/ExportWithoutLanguage/NoLanguage-stderr.txt index 67a0ae3..5658d85 100644 --- a/Tests/RunCMake/ExportWithoutLanguage/NoLanguage-stderr.txt +++ b/Tests/RunCMake/ExportWithoutLanguage/NoLanguage-stderr.txt @@ -1,6 +1,4 @@ CMake Error: CMake can not determine linker language for target: NoLanguage -CMake Error at NoLanguage.cmake:2 \(export\): +CMake Error in CMakeLists.txt: Exporting the target "NoLanguage" is not allowed since its linker language cannot be determined -Call Stack \(most recent call first\): - CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/ExportWithoutLanguage/header.h b/Tests/RunCMake/ExportWithoutLanguage/header.h new file mode 100644 index 0000000..0c803ed --- /dev/null +++ b/Tests/RunCMake/ExportWithoutLanguage/header.h @@ -0,0 +1,2 @@ + +enum some_compilers { need_more_than_nothing }; diff --git a/Tests/RunCMake/include/CMP0024-NEW-stderr.txt b/Tests/RunCMake/include/CMP0024-NEW-stderr.txt index 182c67a..059d7e4 100644 --- a/Tests/RunCMake/include/CMP0024-NEW-stderr.txt +++ b/Tests/RunCMake/include/CMP0024-NEW-stderr.txt @@ -1,15 +1,12 @@ -CMake Error at CMP0024-NEW.cmake:9 \(include\): +CMake Error at subdir2/CMakeLists.txt:2 \(include\): Policy CMP0024 is not set: Disallow include export result. Run "cmake --help-policy CMP0024" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The file - .*/Tests/RunCMake/include/CMP0024-NEW-build/theTargets.cmake + .*/Tests/RunCMake/include/CMP0024-NEW-build/subdir1/theTargets.cmake was generated by the export\(\) command. It may not be used as the argument to the include\(\) command. Use ALIAS targets instead to refer to targets by alternative names. - -Call Stack \(most recent call first\): - CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/include/CMP0024-NEW.cmake b/Tests/RunCMake/include/CMP0024-NEW.cmake index 0685d6c..0e03d2a 100644 --- a/Tests/RunCMake/include/CMP0024-NEW.cmake +++ b/Tests/RunCMake/include/CMP0024-NEW.cmake @@ -5,5 +5,5 @@ cmake_policy(SET CMP0024 NEW) add_library(foo SHARED empty.cpp) -export(TARGETS foo FILE "${CMAKE_CURRENT_BINARY_DIR}/theTargets.cmake") -include("${CMAKE_CURRENT_BINARY_DIR}/theTargets.cmake") +add_subdirectory(subdir1) +add_subdirectory(subdir2) diff --git a/Tests/RunCMake/include/CMP0024-WARN-stderr.txt b/Tests/RunCMake/include/CMP0024-WARN-stderr.txt index 2b36f17..9c79007 100644 --- a/Tests/RunCMake/include/CMP0024-WARN-stderr.txt +++ b/Tests/RunCMake/include/CMP0024-WARN-stderr.txt @@ -1,16 +1,14 @@ -CMake Warning \(dev\) at CMP0024-WARN.cmake:7 \(include\): +CMake Warning \(dev\) at subdir2/CMakeLists.txt:2 \(include\): Policy CMP0024 is not set: Disallow include export result. Run "cmake --help-policy CMP0024" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The file - .*/Tests/RunCMake/include/CMP0024-WARN-build/theTargets.cmake + .*/Tests/RunCMake/include/CMP0024-WARN-build/subdir1/theTargets.cmake was generated by the export\(\) command. It should not be used as the argument to the include\(\) command. Use ALIAS targets instead to refer to targets by alternative names. -Call Stack \(most recent call first\): - CMakeLists.txt:3 \(include\) This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/include/CMP0024-WARN.cmake b/Tests/RunCMake/include/CMP0024-WARN.cmake index 583c7d4..783cf78 100644 --- a/Tests/RunCMake/include/CMP0024-WARN.cmake +++ b/Tests/RunCMake/include/CMP0024-WARN.cmake @@ -3,5 +3,5 @@ enable_language(CXX) add_library(foo SHARED empty.cpp) -export(TARGETS foo FILE "${CMAKE_CURRENT_BINARY_DIR}/theTargets.cmake") -include("${CMAKE_CURRENT_BINARY_DIR}/theTargets.cmake") +add_subdirectory(subdir1) +add_subdirectory(subdir2) diff --git a/Tests/RunCMake/include/subdir1/CMakeLists.txt b/Tests/RunCMake/include/subdir1/CMakeLists.txt new file mode 100644 index 0000000..11a76d1 --- /dev/null +++ b/Tests/RunCMake/include/subdir1/CMakeLists.txt @@ -0,0 +1,2 @@ + +export(TARGETS foo FILE "${CMAKE_CURRENT_BINARY_DIR}/theTargets.cmake") diff --git a/Tests/RunCMake/include/subdir2/CMakeLists.txt b/Tests/RunCMake/include/subdir2/CMakeLists.txt new file mode 100644 index 0000000..7361f9c --- /dev/null +++ b/Tests/RunCMake/include/subdir2/CMakeLists.txt @@ -0,0 +1,2 @@ + +include("${CMAKE_CURRENT_BINARY_DIR}/../subdir1/theTargets.cmake") |