summaryrefslogtreecommitdiff
path: root/Tests/RunCMake/CMP0022
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-11-06 22:57:31 +0100
committerStephen Kelly <steveire@gmail.com>2013-11-06 22:57:31 +0100
commit53b10fdad70c31dc5eb3b187833b8bcb498210e2 (patch)
tree44ef6001674b5feb9d57d6aa7a20499fcf86f7f7 /Tests/RunCMake/CMP0022
parent6f98d7768c40e18aae2353124e0bd540ccae5308 (diff)
downloadcmake-53b10fdad70c31dc5eb3b187833b8bcb498210e2.tar.gz
Genex: Add a test for the LINK_ONLY expression.
Commit 239b0c6b (Don't add invalid content to static lib INTERFACE_LINK_LIBRARIES., 2013-10-20) extended a test which excercised the logic of the LINK_ONLY generator expression. Commit ef10b87c (CMP0022: Plain target_link_libraries must populate link interface, 2013-11-02) removed the instance of LINK_ONLY which was excercised by that test. Add a new test which excercises the other instance of LINK_ONLY by setting the CMP0022 policy to NEW and consuming the contents of the INTERFACE_LINK_LIBRARIES target property.
Diffstat (limited to 'Tests/RunCMake/CMP0022')
-rw-r--r--Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt1
-rw-r--r--Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW.cmake14
-rw-r--r--Tests/RunCMake/CMP0022/CMP0022-NOWARN-static.cmake6
-rw-r--r--Tests/RunCMake/CMP0022/RunCMakeTest.cmake1
4 files changed, 17 insertions, 5 deletions
diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt
new file mode 100644
index 0000000000..10f32932ee
--- /dev/null
+++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt
@@ -0,0 +1 @@
+^$
diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW.cmake b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW.cmake
new file mode 100644
index 0000000000..3fee15d8b9
--- /dev/null
+++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW.cmake
@@ -0,0 +1,14 @@
+
+project(CMP0022-NOWARN-static-NEW)
+
+cmake_policy(SET CMP0022 NEW)
+
+add_library(foo STATIC empty_vs6_1.cpp)
+add_library(bar STATIC empty_vs6_2.cpp)
+add_library(bat STATIC empty_vs6_3.cpp)
+target_link_libraries(foo bar)
+# The last element here needs to contain a space so that it is a single
+# element which is not a valid target name. As bar is a STATIC library,
+# this tests that the LINK_ONLY generator expression is not used for
+# that element, creating an error.
+target_link_libraries(bar LINK_PRIVATE bat "-lz -lm")
diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static.cmake b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static.cmake
index ad3b8df74e..3e4144fcd5 100644
--- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static.cmake
+++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static.cmake
@@ -5,8 +5,4 @@ add_library(foo STATIC empty_vs6_1.cpp)
add_library(bar STATIC empty_vs6_2.cpp)
add_library(bat STATIC empty_vs6_3.cpp)
target_link_libraries(foo bar)
-# The last element here needs to contain a space so that it is a single
-# element which is not a valid target name. As bar is a STATIC library,
-# this tests that the LINK_ONLY generator expression is not used for
-# that element, creating an error.
-target_link_libraries(bar bat "-lz -lm")
+target_link_libraries(bar bat)
diff --git a/Tests/RunCMake/CMP0022/RunCMakeTest.cmake b/Tests/RunCMake/CMP0022/RunCMakeTest.cmake
index 2781d20940..4c1099607a 100644
--- a/Tests/RunCMake/CMP0022/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CMP0022/RunCMakeTest.cmake
@@ -7,6 +7,7 @@ run_cmake(CMP0022-WARN-empty-old)
run_cmake(CMP0022-NOWARN-exe)
run_cmake(CMP0022-NOWARN-shared)
run_cmake(CMP0022-NOWARN-static)
+run_cmake(CMP0022-NOWARN-static-NEW)
run_cmake(CMP0022-NOWARN-static-link_libraries)
run_cmake(CMP0022-export)
run_cmake(CMP0022-export-exe)