cmGeneratorTarget: Port ComputeLinkInterfaceLibraries away from cmTarget.

This commit is contained in:
Stephen Kelly 2015-09-16 04:50:32 +02:00
parent 922c89014f
commit 654002feb8
2 changed files with 9 additions and 8 deletions

View File

@ -4478,7 +4478,7 @@ cmGeneratorTarget::GetLinkInterface(const std::string& config,
{ {
iface.LibrariesDone = true; iface.LibrariesDone = true;
this->ComputeLinkInterfaceLibraries( this->ComputeLinkInterfaceLibraries(
config, iface, head->Target, false); config, iface, head, false);
} }
if(!iface.AllDone) if(!iface.AllDone)
{ {
@ -4629,7 +4629,7 @@ cmGeneratorTarget::GetLinkInterfaceLibraries(const std::string& config,
{ {
iface.LibrariesDone = true; iface.LibrariesDone = true;
this->ComputeLinkInterfaceLibraries( this->ComputeLinkInterfaceLibraries(
config, iface, head->Target, usage_requirements_only); config, iface, head, usage_requirements_only);
} }
return iface.Exists? &iface : 0; return iface.Exists? &iface : 0;
@ -4890,7 +4890,7 @@ void
cmGeneratorTarget::ComputeLinkInterfaceLibraries( cmGeneratorTarget::ComputeLinkInterfaceLibraries(
const std::string& config, const std::string& config,
cmOptionalLinkInterface& iface, cmOptionalLinkInterface& iface,
cmTarget const* headTarget, cmGeneratorTarget const* headTarget,
bool usage_requirements_only) const bool usage_requirements_only) const
{ {
// Construct the property name suffix for this configuration. // Construct the property name suffix for this configuration.
@ -4976,7 +4976,7 @@ cmGeneratorTarget::ComputeLinkInterfaceLibraries(
// The interface libraries have been explicitly set. // The interface libraries have been explicitly set.
this->ExpandLinkItems(linkIfaceProp, explicitLibraries, this->ExpandLinkItems(linkIfaceProp, explicitLibraries,
config, config,
headTarget, usage_requirements_only, headTarget->Target, usage_requirements_only,
iface.Libraries, iface.Libraries,
iface.HadHeadSensitiveCondition); iface.HadHeadSensitiveCondition);
} }
@ -4989,7 +4989,7 @@ cmGeneratorTarget::ComputeLinkInterfaceLibraries(
{ {
// The link implementation is the default link interface. // The link implementation is the default link interface.
cmLinkImplementationLibraries const* impl = cmLinkImplementationLibraries const* impl =
this->GetLinkImplementationLibrariesInternal(config, headTarget); this->GetLinkImplementationLibrariesInternal(config, headTarget->Target);
iface.Libraries.insert(iface.Libraries.end(), iface.Libraries.insert(iface.Libraries.end(),
impl->Libraries.begin(), impl->Libraries.end()); impl->Libraries.begin(), impl->Libraries.end());
if(this->Target->GetPolicyStatusCMP0022() == cmPolicies::WARN && if(this->Target->GetPolicyStatusCMP0022() == cmPolicies::WARN &&
@ -5003,7 +5003,8 @@ cmGeneratorTarget::ComputeLinkInterfaceLibraries(
{ {
bool hadHeadSensitiveConditionDummy = false; bool hadHeadSensitiveConditionDummy = false;
this->ExpandLinkItems(newProp, newExplicitLibraries, config, this->ExpandLinkItems(newProp, newExplicitLibraries, config,
headTarget, usage_requirements_only, headTarget->Target,
usage_requirements_only,
ifaceLibs, hadHeadSensitiveConditionDummy); ifaceLibs, hadHeadSensitiveConditionDummy);
} }
if (ifaceLibs != iface.Libraries) if (ifaceLibs != iface.Libraries)

View File

@ -121,7 +121,7 @@ public:
void ComputeLinkInterfaceLibraries(const std::string& config, void ComputeLinkInterfaceLibraries(const std::string& config,
cmOptionalLinkInterface &iface, cmOptionalLinkInterface &iface,
cmTarget const* head, const cmGeneratorTarget* head,
bool usage_requirements_only) const; bool usage_requirements_only) const;
/** Get the full path to the target according to the settings in its /** Get the full path to the target according to the settings in its