summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorExpressionEvaluator.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2012-11-05 13:48:42 (GMT)
committerStephen Kelly <steveire@gmail.com>2013-01-08 19:38:16 (GMT)
commitbf5ece51c3827dc05018128fefe8270da88cfefb (patch)
tree1e12a12d0348c68446748e72fa5c49274b53cf9c /Source/cmGeneratorExpressionEvaluator.cxx
parenta9f1bf438054227e989ad1706b785b978e18455c (diff)
downloadCMake-bf5ece51c3827dc05018128fefe8270da88cfefb.zip
CMake-bf5ece51c3827dc05018128fefe8270da88cfefb.tar.gz
CMake-bf5ece51c3827dc05018128fefe8270da88cfefb.tar.bz2
Keep track of properties used to determine linker libraries.
Those properties can't later be implicitly defined by the interface of those link libraries.
Diffstat (limited to 'Source/cmGeneratorExpressionEvaluator.cxx')
-rw-r--r--Source/cmGeneratorExpressionEvaluator.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index 82becaf..f4e4131 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -380,6 +380,14 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
}
}
+ if (target == context->HeadTarget)
+ {
+ // Keep track of the properties seen while processing.
+ // The evaluation of the LINK_LIBRARIES generator expressions
+ // will check this to ensure that properties form a DAG.
+ context->SeenTargetProperties.insert(propertyName);
+ }
+
if (propertyName.empty())
{
reportError(context, content->GetOriginalExpression(),