summaryrefslogtreecommitdiffstats
path: root/Tests/InterfaceLibrary/CMakeLists.txt
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-07-09 17:11:38 (GMT)
committerBrad King <brad.king@kitware.com>2014-07-14 13:09:32 (GMT)
commitaffe9d56a2e17683dc87c457c27cad7f39b0ad56 (patch)
tree47df80de0c25aa6e4d7e79ee503100a52dcb32d1 /Tests/InterfaceLibrary/CMakeLists.txt
parent55d3e88fb7eb5cfdb58c5617133dfaf70d3b0547 (diff)
downloadCMake-affe9d56a2e17683dc87c457c27cad7f39b0ad56.zip
CMake-affe9d56a2e17683dc87c457c27cad7f39b0ad56.tar.gz
CMake-affe9d56a2e17683dc87c457c27cad7f39b0ad56.tar.bz2
Allow INTERFACE_SOURCES to specify $<TARGET_OBJECTS> (#14970)
Fix cmTarget::GetSourceFiles to set EvaluateForBuildsystem on the $<TARGET_PROPERTY:...,INTERFACE_SOURCES> generator expression so that the $<TARGET_OBJECTS> generator expression is allowed within an INTERFACE_SOURCES value. Extend the InterfaceLibrary test to cover this case. Extend the RunCMake.TargetObjects test to cover failure of $<TARGET_OBJECTS> when used through $<TARGET_PROPERTY:...,INTERFACE_SOURCES> in a non-buildsystem context.
Diffstat (limited to 'Tests/InterfaceLibrary/CMakeLists.txt')
-rw-r--r--Tests/InterfaceLibrary/CMakeLists.txt6
1 files changed, 5 insertions, 1 deletions
diff --git a/Tests/InterfaceLibrary/CMakeLists.txt b/Tests/InterfaceLibrary/CMakeLists.txt
index d4f49c2..fe202dd 100644
--- a/Tests/InterfaceLibrary/CMakeLists.txt
+++ b/Tests/InterfaceLibrary/CMakeLists.txt
@@ -18,8 +18,12 @@ set_property(TARGET imp::iface APPEND PROPERTY COMPATIBLE_INTERFACE_BOOL SOMEPRO
set_property(TARGET imp::iface PROPERTY INTERFACE_SOMEPROP OFF)
set_property(TARGET imp::iface PROPERTY INTERFACE_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/does_not_exist.cpp)
+add_library(objlib OBJECT obj.cpp)
+add_library(iface_objlib INTERFACE)
+target_sources(iface_objlib INTERFACE $<TARGET_OBJECTS:objlib>)
+
add_executable(InterfaceLibrary definetestexe.cpp)
-target_link_libraries(InterfaceLibrary iface_nodepends headeriface subiface)
+target_link_libraries(InterfaceLibrary iface_nodepends headeriface subiface iface_objlib)
add_subdirectory(libsdir)