cmGeneratorTarget: Port GetLinkImplementationLibrariesInternal.

This commit is contained in:
Stephen Kelly 2015-09-16 04:56:37 +02:00
parent a6e1f05c15
commit c1f687b1ad
2 changed files with 7 additions and 7 deletions

View File

@ -4546,7 +4546,7 @@ void cmGeneratorTarget::ComputeLinkInterface(const std::string& config,
// The link implementation is the default link interface. // The link implementation is the default link interface.
cmLinkImplementationLibraries const* cmLinkImplementationLibraries const*
impl = this->GetLinkImplementationLibrariesInternal(config, impl = this->GetLinkImplementationLibrariesInternal(config,
headTarget->Target); headTarget);
iface.ImplementationIsInterface = true; iface.ImplementationIsInterface = true;
iface.WrongConfigLibraries = impl->WrongConfigLibraries; iface.WrongConfigLibraries = impl->WrongConfigLibraries;
} }
@ -4990,7 +4990,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->Target); this->GetLinkImplementationLibrariesInternal(config, headTarget);
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 &&
@ -5263,13 +5263,13 @@ cmLinkImplementationLibraries const*
cmGeneratorTarget::GetLinkImplementationLibraries( cmGeneratorTarget::GetLinkImplementationLibraries(
const std::string& config) const const std::string& config) const
{ {
return this->GetLinkImplementationLibrariesInternal(config, this->Target); return this->GetLinkImplementationLibrariesInternal(config, this);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
cmLinkImplementationLibraries const* cmLinkImplementationLibraries const*
cmGeneratorTarget::GetLinkImplementationLibrariesInternal( cmGeneratorTarget::GetLinkImplementationLibrariesInternal(
const std::string& config, cmTarget const* head) const const std::string& config, cmGeneratorTarget const* head) const
{ {
// There is no link implementation for imported targets. // There is no link implementation for imported targets.
if(this->IsImported()) if(this->IsImported())
@ -5289,11 +5289,11 @@ cmGeneratorTarget::GetLinkImplementationLibrariesInternal(
return &hm.begin()->second; return &hm.begin()->second;
} }
cmOptionalLinkImplementation& impl = hm[head]; cmOptionalLinkImplementation& impl = hm[head->Target];
if(!impl.LibrariesDone) if(!impl.LibrariesDone)
{ {
impl.LibrariesDone = true; impl.LibrariesDone = true;
this->ComputeLinkImplementationLibraries(config, impl, head); this->ComputeLinkImplementationLibraries(config, impl, head->Target);
} }
return &impl; return &impl;
} }

View File

@ -524,7 +524,7 @@ private:
cmLinkImplementationLibraries const* cmLinkImplementationLibraries const*
GetLinkImplementationLibrariesInternal(const std::string& config, GetLinkImplementationLibrariesInternal(const std::string& config,
cmTarget const* head) const; const cmGeneratorTarget* head) const;
bool bool
ComputeOutputDir(const std::string& config, ComputeOutputDir(const std::string& config,
bool implib, std::string& out) const; bool implib, std::string& out) const;