Genex: Store a backtrace, not a pointer to one.
The storage of a pointer means that the ownership and lifetime are externally determined, which is harder to reason about. It also imposes API constraints, requiring APIs to return references to backtraces. This pointer storage was introduced in commit v3.1.0-rc1~425^2~3 (genex: remove the need for backtraces, 2014-05-23). As backtraces are now cheap to copy around, just do that instead.
This commit is contained in:
parent
4dc4570734
commit
fc1c7cf85d
@ -21,7 +21,7 @@ cmCustomCommandGenerator::cmCustomCommandGenerator(
|
|||||||
cmCustomCommand const& cc, const std::string& config, cmMakefile* mf):
|
cmCustomCommand const& cc, const std::string& config, cmMakefile* mf):
|
||||||
CC(cc), Config(config), Makefile(mf),
|
CC(cc), Config(config), Makefile(mf),
|
||||||
OldStyle(cc.GetEscapeOldStyle()), MakeVars(cc.GetEscapeAllowMakeVars()),
|
OldStyle(cc.GetEscapeOldStyle()), MakeVars(cc.GetEscapeAllowMakeVars()),
|
||||||
GE(new cmGeneratorExpression(&cc.GetBacktrace())), DependsDone(false)
|
GE(new cmGeneratorExpression(cc.GetBacktrace())), DependsDone(false)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3565,11 +3565,11 @@ void cmFileCommand::AddEvaluationFile(const std::string &inputName,
|
|||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
|
|
||||||
cmGeneratorExpression outputGe(&lfbt);
|
cmGeneratorExpression outputGe(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> outputCge
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> outputCge
|
||||||
= outputGe.Parse(outputExpr);
|
= outputGe.Parse(outputExpr);
|
||||||
|
|
||||||
cmGeneratorExpression conditionGe(&lfbt);
|
cmGeneratorExpression conditionGe(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> conditionCge
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> conditionCge
|
||||||
= conditionGe.Parse(condition);
|
= conditionGe.Parse(condition);
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
cmGeneratorExpression::cmGeneratorExpression(
|
cmGeneratorExpression::cmGeneratorExpression(
|
||||||
cmListFileBacktrace const* backtrace):
|
const cmListFileBacktrace& backtrace):
|
||||||
Backtrace(backtrace)
|
Backtrace(backtrace)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -33,9 +33,7 @@ cmsys::auto_ptr<cmCompiledGeneratorExpression>
|
|||||||
cmGeneratorExpression::Parse(std::string const& input)
|
cmGeneratorExpression::Parse(std::string const& input)
|
||||||
{
|
{
|
||||||
return cmsys::auto_ptr<cmCompiledGeneratorExpression>(
|
return cmsys::auto_ptr<cmCompiledGeneratorExpression>(
|
||||||
new cmCompiledGeneratorExpression(
|
new cmCompiledGeneratorExpression(this->Backtrace, input));
|
||||||
this->Backtrace ? *this->Backtrace : cmListFileBacktrace(),
|
|
||||||
input));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
@ -42,7 +42,8 @@ class cmGeneratorExpression
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/** Construct. */
|
/** Construct. */
|
||||||
cmGeneratorExpression(cmListFileBacktrace const* backtrace = NULL);
|
cmGeneratorExpression(
|
||||||
|
cmListFileBacktrace const& backtrace = cmListFileBacktrace());
|
||||||
~cmGeneratorExpression();
|
~cmGeneratorExpression();
|
||||||
|
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> Parse(
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> Parse(
|
||||||
@ -71,7 +72,7 @@ private:
|
|||||||
cmGeneratorExpression(const cmGeneratorExpression &);
|
cmGeneratorExpression(const cmGeneratorExpression &);
|
||||||
void operator=(const cmGeneratorExpression &);
|
void operator=(const cmGeneratorExpression &);
|
||||||
|
|
||||||
cmListFileBacktrace const* Backtrace;
|
cmListFileBacktrace Backtrace;
|
||||||
};
|
};
|
||||||
|
|
||||||
class cmCompiledGeneratorExpression
|
class cmCompiledGeneratorExpression
|
||||||
|
@ -152,7 +152,7 @@ void cmGeneratorExpressionEvaluationFile::Generate()
|
|||||||
}
|
}
|
||||||
|
|
||||||
cmListFileBacktrace lfbt = this->OutputFileExpr->GetBacktrace();
|
cmListFileBacktrace lfbt = this->OutputFileExpr->GetBacktrace();
|
||||||
cmGeneratorExpression contentGE(&lfbt);
|
cmGeneratorExpression contentGE(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> inputExpression
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> inputExpression
|
||||||
= contentGE.Parse(inputContent);
|
= contentGE.Parse(inputContent);
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ std::string cmGeneratorExpressionNode::EvaluateDependentExpression(
|
|||||||
cmTarget const* headTarget, cmTarget const* currentTarget,
|
cmTarget const* headTarget, cmTarget const* currentTarget,
|
||||||
cmGeneratorExpressionDAGChecker *dagChecker)
|
cmGeneratorExpressionDAGChecker *dagChecker)
|
||||||
{
|
{
|
||||||
cmGeneratorExpression ge(&context->Backtrace);
|
cmGeneratorExpression ge(context->Backtrace);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(prop);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(prop);
|
||||||
cge->SetEvaluateForBuildsystem(context->EvaluateForBuildsystem);
|
cge->SetEvaluateForBuildsystem(context->EvaluateForBuildsystem);
|
||||||
std::string result = cge->Evaluate(makefile,
|
std::string result = cge->Evaluate(makefile,
|
||||||
|
@ -878,7 +878,7 @@ cmTargetTraceDependencies
|
|||||||
{
|
{
|
||||||
// Transform command names that reference targets built in this
|
// Transform command names that reference targets built in this
|
||||||
// project to corresponding target-level dependencies.
|
// project to corresponding target-level dependencies.
|
||||||
cmGeneratorExpression ge(&cc.GetBacktrace());
|
cmGeneratorExpression ge(cc.GetBacktrace());
|
||||||
|
|
||||||
// Add target-level dependencies referenced by generator expressions.
|
// Add target-level dependencies referenced by generator expressions.
|
||||||
std::set<cmTarget*> targets;
|
std::set<cmTarget*> targets;
|
||||||
|
@ -44,7 +44,7 @@ cmInstalledFile::Property::~Property()
|
|||||||
void cmInstalledFile::SetName(cmMakefile* mf, const std::string& name)
|
void cmInstalledFile::SetName(cmMakefile* mf, const std::string& name)
|
||||||
{
|
{
|
||||||
cmListFileBacktrace backtrace = mf->GetBacktrace();
|
cmListFileBacktrace backtrace = mf->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&backtrace);
|
cmGeneratorExpression ge(backtrace);
|
||||||
|
|
||||||
this->Name = name;
|
this->Name = name;
|
||||||
this->NameExpression = ge.Parse(name).release();
|
this->NameExpression = ge.Parse(name).release();
|
||||||
@ -81,7 +81,7 @@ void cmInstalledFile::AppendProperty(cmMakefile const* mf,
|
|||||||
const std::string& prop, const char* value, bool /*asString*/)
|
const std::string& prop, const char* value, bool /*asString*/)
|
||||||
{
|
{
|
||||||
cmListFileBacktrace backtrace = mf->GetBacktrace();
|
cmListFileBacktrace backtrace = mf->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&backtrace);
|
cmGeneratorExpression ge(backtrace);
|
||||||
|
|
||||||
Property& property = this->Properties[prop];
|
Property& property = this->Properties[prop];
|
||||||
property.ValueExpressions.push_back(ge.Parse(value).release());
|
property.ValueExpressions.push_back(ge.Parse(value).release());
|
||||||
|
@ -916,7 +916,7 @@ void cmTarget::AddTracedSources(std::vector<std::string> const& srcs)
|
|||||||
this->Internal->SourceFilesMap.clear();
|
this->Internal->SourceFilesMap.clear();
|
||||||
this->LinkImplementationLanguageIsContextDependent = true;
|
this->LinkImplementationLanguageIsContextDependent = true;
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(srcFiles);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(srcFiles);
|
||||||
cge->SetEvaluateForBuildsystem(true);
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
this->Internal->SourceEntries.push_back(
|
this->Internal->SourceEntries.push_back(
|
||||||
@ -956,7 +956,7 @@ void cmTarget::AddSources(std::vector<std::string> const& srcs)
|
|||||||
this->Internal->SourceFilesMap.clear();
|
this->Internal->SourceFilesMap.clear();
|
||||||
this->LinkImplementationLanguageIsContextDependent = true;
|
this->LinkImplementationLanguageIsContextDependent = true;
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(srcFiles);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(srcFiles);
|
||||||
cge->SetEvaluateForBuildsystem(true);
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
this->Internal->SourceEntries.push_back(
|
this->Internal->SourceEntries.push_back(
|
||||||
@ -1089,7 +1089,7 @@ cmSourceFile* cmTarget::AddSource(const std::string& src)
|
|||||||
this->Internal->SourceFilesMap.clear();
|
this->Internal->SourceFilesMap.clear();
|
||||||
this->LinkImplementationLanguageIsContextDependent = true;
|
this->LinkImplementationLanguageIsContextDependent = true;
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(src);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(src);
|
||||||
cge->SetEvaluateForBuildsystem(true);
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
this->Internal->SourceEntries.push_back(
|
this->Internal->SourceEntries.push_back(
|
||||||
@ -1710,7 +1710,7 @@ void cmTarget::SetProperty(const std::string& prop, const char* value)
|
|||||||
else if(prop == "INCLUDE_DIRECTORIES")
|
else if(prop == "INCLUDE_DIRECTORIES")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
deleteAndClear(this->Internal->IncludeDirectoriesEntries);
|
deleteAndClear(this->Internal->IncludeDirectoriesEntries);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->IncludeDirectoriesEntries.push_back(
|
this->Internal->IncludeDirectoriesEntries.push_back(
|
||||||
@ -1719,7 +1719,7 @@ void cmTarget::SetProperty(const std::string& prop, const char* value)
|
|||||||
else if(prop == "COMPILE_OPTIONS")
|
else if(prop == "COMPILE_OPTIONS")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
deleteAndClear(this->Internal->CompileOptionsEntries);
|
deleteAndClear(this->Internal->CompileOptionsEntries);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->CompileOptionsEntries.push_back(
|
this->Internal->CompileOptionsEntries.push_back(
|
||||||
@ -1728,7 +1728,7 @@ void cmTarget::SetProperty(const std::string& prop, const char* value)
|
|||||||
else if(prop == "COMPILE_FEATURES")
|
else if(prop == "COMPILE_FEATURES")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
deleteAndClear(this->Internal->CompileFeaturesEntries);
|
deleteAndClear(this->Internal->CompileFeaturesEntries);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->CompileFeaturesEntries.push_back(
|
this->Internal->CompileFeaturesEntries.push_back(
|
||||||
@ -1737,7 +1737,7 @@ void cmTarget::SetProperty(const std::string& prop, const char* value)
|
|||||||
else if(prop == "COMPILE_DEFINITIONS")
|
else if(prop == "COMPILE_DEFINITIONS")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
deleteAndClear(this->Internal->CompileDefinitionsEntries);
|
deleteAndClear(this->Internal->CompileDefinitionsEntries);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->CompileDefinitionsEntries.push_back(
|
this->Internal->CompileDefinitionsEntries.push_back(
|
||||||
@ -1772,7 +1772,7 @@ void cmTarget::SetProperty(const std::string& prop, const char* value)
|
|||||||
}
|
}
|
||||||
this->Internal->SourceFilesMap.clear();
|
this->Internal->SourceFilesMap.clear();
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
this->Internal->SourceEntries.clear();
|
this->Internal->SourceEntries.clear();
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->SourceEntries.push_back(
|
this->Internal->SourceEntries.push_back(
|
||||||
@ -1808,28 +1808,28 @@ void cmTarget::AppendProperty(const std::string& prop, const char* value,
|
|||||||
else if(prop == "INCLUDE_DIRECTORIES")
|
else if(prop == "INCLUDE_DIRECTORIES")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
this->Internal->IncludeDirectoriesEntries.push_back(
|
this->Internal->IncludeDirectoriesEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
||||||
}
|
}
|
||||||
else if(prop == "COMPILE_OPTIONS")
|
else if(prop == "COMPILE_OPTIONS")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
this->Internal->CompileOptionsEntries.push_back(
|
this->Internal->CompileOptionsEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
||||||
}
|
}
|
||||||
else if(prop == "COMPILE_FEATURES")
|
else if(prop == "COMPILE_FEATURES")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
this->Internal->CompileFeaturesEntries.push_back(
|
this->Internal->CompileFeaturesEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
||||||
}
|
}
|
||||||
else if(prop == "COMPILE_DEFINITIONS")
|
else if(prop == "COMPILE_DEFINITIONS")
|
||||||
{
|
{
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
this->Internal->CompileDefinitionsEntries.push_back(
|
this->Internal->CompileDefinitionsEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
|
||||||
}
|
}
|
||||||
@ -1861,7 +1861,7 @@ void cmTarget::AppendProperty(const std::string& prop, const char* value,
|
|||||||
}
|
}
|
||||||
this->Internal->SourceFilesMap.clear();
|
this->Internal->SourceFilesMap.clear();
|
||||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||||
cmGeneratorExpression ge(&lfbt);
|
cmGeneratorExpression ge(lfbt);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
this->Internal->SourceEntries.push_back(
|
this->Internal->SourceEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(cge));
|
new cmTargetInternals::TargetPropertyEntry(cge));
|
||||||
@ -1929,7 +1929,7 @@ void cmTarget::AppendBuildInterfaceIncludes()
|
|||||||
void cmTarget::InsertInclude(const cmValueWithOrigin &entry,
|
void cmTarget::InsertInclude(const cmValueWithOrigin &entry,
|
||||||
bool before)
|
bool before)
|
||||||
{
|
{
|
||||||
cmGeneratorExpression ge(&entry.Backtrace);
|
cmGeneratorExpression ge(entry.Backtrace);
|
||||||
|
|
||||||
std::vector<cmTargetInternals::TargetPropertyEntry*>::iterator position
|
std::vector<cmTargetInternals::TargetPropertyEntry*>::iterator position
|
||||||
= before ? this->Internal->IncludeDirectoriesEntries.begin()
|
= before ? this->Internal->IncludeDirectoriesEntries.begin()
|
||||||
@ -1943,7 +1943,7 @@ void cmTarget::InsertInclude(const cmValueWithOrigin &entry,
|
|||||||
void cmTarget::InsertCompileOption(const cmValueWithOrigin &entry,
|
void cmTarget::InsertCompileOption(const cmValueWithOrigin &entry,
|
||||||
bool before)
|
bool before)
|
||||||
{
|
{
|
||||||
cmGeneratorExpression ge(&entry.Backtrace);
|
cmGeneratorExpression ge(entry.Backtrace);
|
||||||
|
|
||||||
std::vector<cmTargetInternals::TargetPropertyEntry*>::iterator position
|
std::vector<cmTargetInternals::TargetPropertyEntry*>::iterator position
|
||||||
= before ? this->Internal->CompileOptionsEntries.begin()
|
= before ? this->Internal->CompileOptionsEntries.begin()
|
||||||
@ -1956,7 +1956,7 @@ void cmTarget::InsertCompileOption(const cmValueWithOrigin &entry,
|
|||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void cmTarget::InsertCompileDefinition(const cmValueWithOrigin &entry)
|
void cmTarget::InsertCompileDefinition(const cmValueWithOrigin &entry)
|
||||||
{
|
{
|
||||||
cmGeneratorExpression ge(&entry.Backtrace);
|
cmGeneratorExpression ge(entry.Backtrace);
|
||||||
|
|
||||||
this->Internal->CompileDefinitionsEntries.push_back(
|
this->Internal->CompileDefinitionsEntries.push_back(
|
||||||
new cmTargetInternals::TargetPropertyEntry(ge.Parse(entry.Value)));
|
new cmTargetInternals::TargetPropertyEntry(ge.Parse(entry.Value)));
|
||||||
@ -6162,7 +6162,7 @@ void cmTargetInternals::AddInterfaceEntries(
|
|||||||
{
|
{
|
||||||
std::string genex =
|
std::string genex =
|
||||||
"$<TARGET_PROPERTY:" + *it + "," + prop + ">";
|
"$<TARGET_PROPERTY:" + *it + "," + prop + ">";
|
||||||
cmGeneratorExpression ge(&it->Backtrace);
|
cmGeneratorExpression ge(it->Backtrace);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(genex);
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(genex);
|
||||||
cge->SetEvaluateForBuildsystem(true);
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
entries.push_back(
|
entries.push_back(
|
||||||
@ -6258,7 +6258,7 @@ cmTargetInternals::ComputeLinkImplementationLibraries(
|
|||||||
cmGeneratorExpressionDAGChecker dagChecker(
|
cmGeneratorExpressionDAGChecker dagChecker(
|
||||||
thisTarget->GetName(),
|
thisTarget->GetName(),
|
||||||
"LINK_LIBRARIES", 0, 0);
|
"LINK_LIBRARIES", 0, 0);
|
||||||
cmGeneratorExpression ge(&le->Backtrace);
|
cmGeneratorExpression ge(le->Backtrace);
|
||||||
cmsys::auto_ptr<cmCompiledGeneratorExpression> const cge =
|
cmsys::auto_ptr<cmCompiledGeneratorExpression> const cge =
|
||||||
ge.Parse(le->Value);
|
ge.Parse(le->Value);
|
||||||
std::string const evaluated =
|
std::string const evaluated =
|
||||||
|
@ -70,7 +70,7 @@ void cmTestGenerator::GenerateScriptForConfig(std::ostream& os,
|
|||||||
this->TestGenerated = true;
|
this->TestGenerated = true;
|
||||||
|
|
||||||
// Set up generator expression evaluation context.
|
// Set up generator expression evaluation context.
|
||||||
cmGeneratorExpression ge(&this->Test->GetBacktrace());
|
cmGeneratorExpression ge(this->Test->GetBacktrace());
|
||||||
|
|
||||||
// Start the test command.
|
// Start the test command.
|
||||||
os << indent << "add_test(" << this->Test->GetName() << " ";
|
os << indent << "add_test(" << this->Test->GetName() << " ";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user