summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/PositionIndependentCode/Conflict3.cmake
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2012-11-05 11:46:26 (GMT)
committerBrad King <brad.king@kitware.com>2013-01-10 14:54:52 (GMT)
commit3581b96caa1d7bd6c02e85baf72ce28b5128e5e7 (patch)
tree048d95ad2d6d1071982b1a35c6ce87d35831cc81 /Tests/RunCMake/PositionIndependentCode/Conflict3.cmake
parent042ecf0471be84ce6c3e6c32dae526fdbd9a3a14 (diff)
downloadCMake-3581b96caa1d7bd6c02e85baf72ce28b5128e5e7.zip
CMake-3581b96caa1d7bd6c02e85baf72ce28b5128e5e7.tar.gz
CMake-3581b96caa1d7bd6c02e85baf72ce28b5128e5e7.tar.bz2
Process the INTERFACE_PIC property from linked dependencies
This allows a dependee to inform a target that it should have its POSITION_INDEPENDENT_CODE property set to ON, or OFF. The value of the POSITION_INDEPENDENT_CODE property, if set, must be consistent with any INTERFACE_POSITION_INDEPENDENT_CODE properties on dependees. Add a test covering the consistency checks on platforms where they run.
Diffstat (limited to 'Tests/RunCMake/PositionIndependentCode/Conflict3.cmake')
-rw-r--r--Tests/RunCMake/PositionIndependentCode/Conflict3.cmake12
1 files changed, 12 insertions, 0 deletions
diff --git a/Tests/RunCMake/PositionIndependentCode/Conflict3.cmake b/Tests/RunCMake/PositionIndependentCode/Conflict3.cmake
new file mode 100644
index 0000000..bf669bf
--- /dev/null
+++ b/Tests/RunCMake/PositionIndependentCode/Conflict3.cmake
@@ -0,0 +1,12 @@
+
+add_library(picoff UNKNOWN IMPORTED)
+
+add_library(picon UNKNOWN IMPORTED)
+set_property(TARGET picon PROPERTY INTERFACE_POSITION_INDEPENDENT_CODE ON)
+
+add_executable(conflict "main.cpp")
+target_link_libraries(conflict picon)
+set_property(TARGET conflict APPEND PROPERTY
+ LINK_LIBRARIES
+ $<$<NOT:$<BOOL:$<TARGET_PROPERTY:POSITION_INDEPENDENT_CODE>>>:picoff>
+)