mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
cmGeneratorExpressionDAGChecker: De-duplicate constructor signature
This commit is contained in:
@@ -584,13 +584,13 @@ cmComputeLinkDepends::cmComputeLinkDepends(const cmGeneratorTarget* target,
|
||||
if (!feature->empty() && key.length() > lloPrefix.length()) {
|
||||
auto item = key.substr(lloPrefix.length());
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
this->Target->GetBacktrace(),
|
||||
this->Target,
|
||||
"LINK_LIBRARY_OVERRIDE",
|
||||
nullptr,
|
||||
nullptr,
|
||||
this->Target->GetLocalGenerator(),
|
||||
config,
|
||||
this->Target->GetBacktrace(),
|
||||
};
|
||||
auto overrideFeature = cmGeneratorExpression::Evaluate(
|
||||
*feature, this->Target->GetLocalGenerator(), config,
|
||||
@@ -604,13 +604,13 @@ cmComputeLinkDepends::cmComputeLinkDepends(const cmGeneratorTarget* target,
|
||||
if (cmValue linkLibraryOverride =
|
||||
this->Target->GetProperty("LINK_LIBRARY_OVERRIDE")) {
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
target->GetBacktrace(),
|
||||
target,
|
||||
"LINK_LIBRARY_OVERRIDE",
|
||||
nullptr,
|
||||
nullptr,
|
||||
target->GetLocalGenerator(),
|
||||
config,
|
||||
target->GetBacktrace(),
|
||||
};
|
||||
auto overrideValue = cmGeneratorExpression::Evaluate(
|
||||
*linkLibraryOverride, target->GetLocalGenerator(), config, target,
|
||||
|
||||
@@ -19,20 +19,9 @@
|
||||
|
||||
cmGeneratorExpressionDAGChecker::cmGeneratorExpressionDAGChecker(
|
||||
cmGeneratorTarget const* target, std::string property,
|
||||
const GeneratorExpressionContent* content,
|
||||
GeneratorExpressionContent const* content,
|
||||
cmGeneratorExpressionDAGChecker* parent, cmLocalGenerator const* contextLG,
|
||||
std::string const& contextConfig)
|
||||
: cmGeneratorExpressionDAGChecker(cmListFileBacktrace(), target,
|
||||
std::move(property), content, parent,
|
||||
contextLG, contextConfig)
|
||||
{
|
||||
}
|
||||
|
||||
cmGeneratorExpressionDAGChecker::cmGeneratorExpressionDAGChecker(
|
||||
cmListFileBacktrace backtrace, cmGeneratorTarget const* target,
|
||||
std::string property, const GeneratorExpressionContent* content,
|
||||
cmGeneratorExpressionDAGChecker* parent, cmLocalGenerator const* contextLG,
|
||||
std::string const& contextConfig)
|
||||
std::string const& contextConfig, cmListFileBacktrace backtrace)
|
||||
: Parent(parent)
|
||||
, Top(parent ? parent->Top : this)
|
||||
, Target(target)
|
||||
|
||||
@@ -17,19 +17,12 @@ class cmLocalGenerator;
|
||||
|
||||
struct cmGeneratorExpressionDAGChecker
|
||||
{
|
||||
cmGeneratorExpressionDAGChecker(cmListFileBacktrace backtrace,
|
||||
cmGeneratorTarget const* target,
|
||||
std::string property,
|
||||
const GeneratorExpressionContent* content,
|
||||
cmGeneratorExpressionDAGChecker* parent,
|
||||
cmLocalGenerator const* contextLG,
|
||||
std::string const& contextConfig);
|
||||
cmGeneratorExpressionDAGChecker(cmGeneratorTarget const* target,
|
||||
std::string property,
|
||||
const GeneratorExpressionContent* content,
|
||||
cmGeneratorExpressionDAGChecker* parent,
|
||||
cmLocalGenerator const* contextLG,
|
||||
std::string const& contextConfig);
|
||||
cmGeneratorExpressionDAGChecker(
|
||||
cmGeneratorTarget const* target, std::string property,
|
||||
GeneratorExpressionContent const* content,
|
||||
cmGeneratorExpressionDAGChecker* parent, cmLocalGenerator const* contextLG,
|
||||
std::string const& contextConfig,
|
||||
cmListFileBacktrace backtrace = cmListFileBacktrace());
|
||||
|
||||
enum Result
|
||||
{
|
||||
|
||||
@@ -486,13 +486,13 @@ protected:
|
||||
{
|
||||
if (context->HeadTarget) {
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
context->Backtrace,
|
||||
context->HeadTarget,
|
||||
genexOperator + ":" + expression,
|
||||
content,
|
||||
dagCheckerParent,
|
||||
context->LG,
|
||||
context->Config,
|
||||
context->Backtrace,
|
||||
};
|
||||
switch (dagChecker.Check()) {
|
||||
case cmGeneratorExpressionDAGChecker::SELF_REFERENCE:
|
||||
@@ -2993,8 +2993,13 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
|
||||
}
|
||||
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
context->Backtrace, target, propertyName, content,
|
||||
dagCheckerParent, context->LG, context->Config,
|
||||
target,
|
||||
propertyName,
|
||||
content,
|
||||
dagCheckerParent,
|
||||
context->LG,
|
||||
context->Config,
|
||||
context->Backtrace,
|
||||
};
|
||||
|
||||
switch (dagChecker.Check()) {
|
||||
|
||||
@@ -48,8 +48,13 @@ std::string AddLangSpecificInterfaceIncludeDirectories(
|
||||
cmGeneratorExpressionDAGChecker* context)
|
||||
{
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
target->GetBacktrace(), target, propertyName, nullptr, context,
|
||||
target->GetLocalGenerator(), config,
|
||||
target,
|
||||
propertyName,
|
||||
nullptr,
|
||||
context,
|
||||
target->GetLocalGenerator(),
|
||||
config,
|
||||
target->GetBacktrace(),
|
||||
};
|
||||
switch (dagChecker.Check()) {
|
||||
case cmGeneratorExpressionDAGChecker::SELF_REFERENCE:
|
||||
@@ -101,8 +106,13 @@ void AddLangSpecificImplicitIncludeDirectories(
|
||||
if (const auto* libraries =
|
||||
target->GetLinkImplementationLibraries(config, UseTo::Compile)) {
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
target->GetBacktrace(), target, propertyName, nullptr, nullptr,
|
||||
target->GetLocalGenerator(), config,
|
||||
target,
|
||||
propertyName,
|
||||
nullptr,
|
||||
nullptr,
|
||||
target->GetLocalGenerator(),
|
||||
config,
|
||||
target->GetBacktrace(),
|
||||
};
|
||||
|
||||
for (const cmLinkImplItem& library : libraries->Libraries) {
|
||||
|
||||
@@ -110,13 +110,13 @@ std::string cmGeneratorTarget::EvaluateInterfaceProperty(
|
||||
// a subset of TargetPropertyNode::Evaluate without stringify/parse steps
|
||||
// but sufficient for transitive interface properties.
|
||||
cmGeneratorExpressionDAGChecker dagChecker{
|
||||
context->Backtrace,
|
||||
this,
|
||||
prop,
|
||||
nullptr,
|
||||
dagCheckerParent,
|
||||
this->LocalGenerator,
|
||||
context->Config,
|
||||
context->Backtrace,
|
||||
};
|
||||
switch (dagChecker.Check()) {
|
||||
case cmGeneratorExpressionDAGChecker::SELF_REFERENCE:
|
||||
|
||||
Reference in New Issue
Block a user