diff options
author | Stephen Kelly <steveire@gmail.com> | 2014-03-20 14:37:12 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2014-04-02 21:12:57 (GMT) |
commit | 5de63265e3a22d9a8aa5ad437a5030ccfcbcd02d (patch) | |
tree | 558694f9724c696198c6be2faff1a06f98fe6de6 /Source/cmGeneratorExpressionEvaluator.cxx | |
parent | aa0a3562dd47bdd6d9ca3058bd1dfd525e79d36d (diff) | |
download | CMake-5de63265e3a22d9a8aa5ad437a5030ccfcbcd02d.zip CMake-5de63265e3a22d9a8aa5ad437a5030ccfcbcd02d.tar.gz CMake-5de63265e3a22d9a8aa5ad437a5030ccfcbcd02d.tar.bz2 |
Genex: Only evaluate TARGET_OBJECTS to determine target sources.
The output of this expression may contain macros for IDEs to replace
such as $(Configuration), $(CURRENT_ARCH) etc. To avoid generating
content which is not usable in other contexts, report an error if
there is an attempt to use it in other contexts.
This commit may be reverted in the future if a solution to the
above difference is implemented.
Diffstat (limited to 'Source/cmGeneratorExpressionEvaluator.cxx')
-rw-r--r-- | Source/cmGeneratorExpressionEvaluator.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx index 669694c..95227d2 100644 --- a/Source/cmGeneratorExpressionEvaluator.cxx +++ b/Source/cmGeneratorExpressionEvaluator.cxx @@ -1251,6 +1251,16 @@ static const struct TargetObjectsNode : public cmGeneratorExpressionNode const GeneratorExpressionContent *content, cmGeneratorExpressionDAGChecker *) const { + if (!context->EvaluateForBuildsystem) + { + cmOStringStream e; + e << "The evaluation of the TARGET_OBJECTS generator expression " + "is only suitable for consumption by CMake. It is not suitable " + "for writing out elsewhere."; + reportError(context, content->GetOriginalExpression(), e.str()); + return std::string(); + } + std::string tgtName = parameters.front(); cmGeneratorTarget* gt = context->Makefile->FindGeneratorTargetToUse(tgtName.c_str()); |