Genex: Port implementation detail to cmGeneratorTarget.

This commit is contained in:
Stephen Kelly 2015-10-08 01:12:25 +02:00
parent ce75c86ec3
commit 1fdccff589
1 changed files with 11 additions and 9 deletions

View File

@ -831,8 +831,8 @@ template <typename T>
std::string std::string
getLinkedTargetsContent( getLinkedTargetsContent(
std::vector<T> const &libraries, std::vector<T> const &libraries,
cmTarget const* target, cmGeneratorTarget const* target,
cmTarget const* headTarget, cmGeneratorTarget const* headTarget,
cmGeneratorExpressionContext *context, cmGeneratorExpressionContext *context,
cmGeneratorExpressionDAGChecker *dagChecker, cmGeneratorExpressionDAGChecker *dagChecker,
const std::string &interfacePropertyName) const std::string &interfacePropertyName)
@ -846,7 +846,7 @@ getLinkedTargetsContent(
// Broken code can have a target in its own link interface. // Broken code can have a target in its own link interface.
// Don't follow such link interface entries so as not to create a // Don't follow such link interface entries so as not to create a
// self-referencing loop. // self-referencing loop.
if (it->Target && it->Target->Target != target) if (it->Target && it->Target != target)
{ {
depString += depString +=
sep + "$<TARGET_PROPERTY:" + sep + "$<TARGET_PROPERTY:" +
@ -858,8 +858,10 @@ getLinkedTargetsContent(
{ {
linkedTargetsContent = linkedTargetsContent =
cmGeneratorExpressionNode::EvaluateDependentExpression(depString, cmGeneratorExpressionNode::EvaluateDependentExpression(depString,
target->GetMakefile(), context, target->Target->GetMakefile(),
headTarget, target, dagChecker); context,
headTarget->Target,
target->Target, dagChecker);
} }
linkedTargetsContent = linkedTargetsContent =
cmGeneratorExpression::StripEmptyListElements(linkedTargetsContent); cmGeneratorExpression::StripEmptyListElements(linkedTargetsContent);
@ -1116,8 +1118,8 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
gtgt->GetLinkInterfaceLibraries(context->Config, gHeadTarget, true)) gtgt->GetLinkInterfaceLibraries(context->Config, gHeadTarget, true))
{ {
linkedTargetsContent = linkedTargetsContent =
getLinkedTargetsContent(iface->Libraries, target, getLinkedTargetsContent(iface->Libraries, gtgt,
headTarget, gHeadTarget,
context, &dagChecker, context, &dagChecker,
interfacePropertyName); interfacePropertyName);
} }
@ -1128,8 +1130,8 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
gtgt->GetLinkImplementationLibraries(context->Config)) gtgt->GetLinkImplementationLibraries(context->Config))
{ {
linkedTargetsContent = linkedTargetsContent =
getLinkedTargetsContent(impl->Libraries, target, getLinkedTargetsContent(impl->Libraries, gtgt,
target, gtgt,
context, &dagChecker, context, &dagChecker,
interfacePropertyName); interfacePropertyName);
} }