summaryrefslogtreecommitdiff
path: root/Source/cmTarget.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-07-09 13:11:38 -0400
committerBrad King <brad.king@kitware.com>2014-07-14 09:09:32 -0400
commitaffe9d56a2e17683dc87c457c27cad7f39b0ad56 (patch)
tree47df80de0c25aa6e4d7e79ee503100a52dcb32d1 /Source/cmTarget.cxx
parent55d3e88fb7eb5cfdb58c5617133dfaf70d3b0547 (diff)
downloadcmake-affe9d56a2e17683dc87c457c27cad7f39b0ad56.tar.gz
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 'Source/cmTarget.cxx')
-rw-r--r--Source/cmTarget.cxx1
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 0a7724cb8b..667c2a4d2e 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -6375,6 +6375,7 @@ void cmTargetInternals::AddInterfaceEntries(
"$<TARGET_PROPERTY:" + *it + "," + prop + ">";
cmGeneratorExpression ge(&it->Backtrace);
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(genex);
+ cge->SetEvaluateForBuildsystem(true);
entries.push_back(
new cmTargetInternals::TargetPropertyEntry(cge, *it));
}