diff options
author | Stephen Kelly <steveire@gmail.com> | 2015-02-22 20:41:06 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2015-03-10 23:12:56 (GMT) |
commit | ec428fafcf9f50c54b163dd16f68063cc387f779 (patch) | |
tree | e489512690971e71aacbaf2edc506802eeab1b33 | |
parent | 082b6a9d78c6198dc7a9891615930c40a5c3b967 (diff) | |
download | CMake-ec428fafcf9f50c54b163dd16f68063cc387f779.zip CMake-ec428fafcf9f50c54b163dd16f68063cc387f779.tar.gz CMake-ec428fafcf9f50c54b163dd16f68063cc387f779.tar.bz2 |
Genex: Extend cmGeneratorExpressionContext constructor.
Initialize the members in the appropriate place.
-rw-r--r-- | Source/cmGeneratorExpression.cxx | 17 | ||||
-rw-r--r-- | Source/cmGeneratorExpressionContext.cxx | 20 | ||||
-rw-r--r-- | Source/cmGeneratorExpressionContext.h | 8 |
3 files changed, 29 insertions, 16 deletions
diff --git a/Source/cmGeneratorExpression.cxx b/Source/cmGeneratorExpression.cxx index a4990dc..2d795cb 100644 --- a/Source/cmGeneratorExpression.cxx +++ b/Source/cmGeneratorExpression.cxx @@ -72,19 +72,10 @@ const char *cmCompiledGeneratorExpression::Evaluate( cmGeneratorExpressionDAGChecker *dagChecker, std::string const& language) const { - cmGeneratorExpressionContext context; - context.Makefile = mf; - context.Config = config; - context.Quiet = quiet; - context.HadError = false; - context.HadContextSensitiveCondition = false; - context.HadHeadSensitiveCondition = false; - context.SourceSensitiveTargets.clear(); - context.HeadTarget = headTarget; - context.EvaluateForBuildsystem = this->EvaluateForBuildsystem; - context.CurrentTarget = currentTarget ? currentTarget : headTarget; - context.Backtrace = this->Backtrace; - context.Language = language; + cmGeneratorExpressionContext context(mf, config, quiet, headTarget, + currentTarget ? currentTarget : headTarget, + this->EvaluateForBuildsystem, + this->Backtrace, language); return this->EvaluateWithContext(context, dagChecker); } diff --git a/Source/cmGeneratorExpressionContext.cxx b/Source/cmGeneratorExpressionContext.cxx index 4ed8ff2..947015e 100644 --- a/Source/cmGeneratorExpressionContext.cxx +++ b/Source/cmGeneratorExpressionContext.cxx @@ -12,7 +12,23 @@ #include "cmGeneratorExpressionContext.h" -cmGeneratorExpressionContext::cmGeneratorExpressionContext(); - : Backtrace(NULL) +cmGeneratorExpressionContext::cmGeneratorExpressionContext( + cmMakefile* mf, std::string const& config, + bool quiet, cmTarget const* headTarget, + cmTarget const* currentTarget, + bool evaluateForBuildsystem, + cmListFileBacktrace const& backtrace, + std::string const& language) + : Backtrace(backtrace), + Makefile(mf), + Config(config), + Language(language), + HeadTarget(headTarget), + CurrentTarget(currentTarget), + Quiet(quiet), + HadError(false), + HadContextSensitiveCondition(false), + HadHeadSensitiveCondition(false), + EvaluateForBuildsystem(evaluateForBuildsystem) { } diff --git a/Source/cmGeneratorExpressionContext.h b/Source/cmGeneratorExpressionContext.h index ce6f376..ed83509 100644 --- a/Source/cmGeneratorExpressionContext.h +++ b/Source/cmGeneratorExpressionContext.h @@ -23,7 +23,13 @@ class cmTarget; //---------------------------------------------------------------------------- struct cmGeneratorExpressionContext { - cmGeneratorExpressionContext(); + cmGeneratorExpressionContext(cmMakefile* mf, std::string const& config, + bool quiet, cmTarget const* headTarget, + cmTarget const* currentTarget, + bool evaluateForBuildsystem, + cmListFileBacktrace const& backtrace, + std::string const& language); + cmListFileBacktrace Backtrace; std::set<cmTarget*> DependTargets; |