mirror of
https://github.com/reactos/CMake.git
synced 2024-11-25 04:29:52 +00:00
cmGeneratorTarget: Port GetLinkInterfaceLibraries away from cmTarget.
This commit is contained in:
parent
1c5d70f9c2
commit
f539da126b
@ -1109,8 +1109,11 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
|
|||||||
|
|
||||||
if(isInterfaceProperty)
|
if(isInterfaceProperty)
|
||||||
{
|
{
|
||||||
|
cmGeneratorTarget* gHeadTarget =
|
||||||
|
context->Makefile->GetGlobalGenerator()
|
||||||
|
->GetGeneratorTarget(headTarget);
|
||||||
if(cmLinkInterfaceLibraries const* iface =
|
if(cmLinkInterfaceLibraries const* iface =
|
||||||
gtgt->GetLinkInterfaceLibraries(context->Config, headTarget, true))
|
gtgt->GetLinkInterfaceLibraries(context->Config, gHeadTarget, true))
|
||||||
{
|
{
|
||||||
linkedTargetsContent =
|
linkedTargetsContent =
|
||||||
getLinkedTargetsContent(iface->Libraries, target,
|
getLinkedTargetsContent(iface->Libraries, target,
|
||||||
|
@ -2058,7 +2058,7 @@ void processILibs(const std::string& config,
|
|||||||
tgts.push_back(item.Target);
|
tgts.push_back(item.Target);
|
||||||
cmGeneratorTarget* gt = gg->GetGeneratorTarget(item.Target);
|
cmGeneratorTarget* gt = gg->GetGeneratorTarget(item.Target);
|
||||||
if(cmLinkInterfaceLibraries const* iface =
|
if(cmLinkInterfaceLibraries const* iface =
|
||||||
gt->GetLinkInterfaceLibraries(config, headTarget->Target, true))
|
gt->GetLinkInterfaceLibraries(config, headTarget, true))
|
||||||
{
|
{
|
||||||
for(std::vector<cmLinkItem>::const_iterator
|
for(std::vector<cmLinkItem>::const_iterator
|
||||||
it = iface->Libraries.begin();
|
it = iface->Libraries.begin();
|
||||||
@ -4592,13 +4592,13 @@ void cmGeneratorTarget::ComputeLinkInterface(const std::string& config,
|
|||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
const cmLinkInterfaceLibraries *
|
const cmLinkInterfaceLibraries *
|
||||||
cmGeneratorTarget::GetLinkInterfaceLibraries(const std::string& config,
|
cmGeneratorTarget::GetLinkInterfaceLibraries(const std::string& config,
|
||||||
cmTarget const* head,
|
cmGeneratorTarget const* head,
|
||||||
bool usage_requirements_only) const
|
bool usage_requirements_only) const
|
||||||
{
|
{
|
||||||
// Imported targets have their own link interface.
|
// Imported targets have their own link interface.
|
||||||
if(this->IsImported())
|
if(this->IsImported())
|
||||||
{
|
{
|
||||||
return this->GetImportLinkInterface(config, head,
|
return this->GetImportLinkInterface(config, head->Target,
|
||||||
usage_requirements_only);
|
usage_requirements_only);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4624,12 +4624,12 @@ cmGeneratorTarget::GetLinkInterfaceLibraries(const std::string& config,
|
|||||||
return &hm.begin()->second;
|
return &hm.begin()->second;
|
||||||
}
|
}
|
||||||
|
|
||||||
cmOptionalLinkInterface& iface = hm[head];
|
cmOptionalLinkInterface& iface = hm[head->Target];
|
||||||
if(!iface.LibrariesDone)
|
if(!iface.LibrariesDone)
|
||||||
{
|
{
|
||||||
iface.LibrariesDone = true;
|
iface.LibrariesDone = true;
|
||||||
this->ComputeLinkInterfaceLibraries(
|
this->ComputeLinkInterfaceLibraries(
|
||||||
config, iface, head, usage_requirements_only);
|
config, iface, head->Target, usage_requirements_only);
|
||||||
}
|
}
|
||||||
|
|
||||||
return iface.Exists? &iface : 0;
|
return iface.Exists? &iface : 0;
|
||||||
|
@ -116,7 +116,7 @@ public:
|
|||||||
|
|
||||||
cmLinkInterfaceLibraries const*
|
cmLinkInterfaceLibraries const*
|
||||||
GetLinkInterfaceLibraries(const std::string& config,
|
GetLinkInterfaceLibraries(const std::string& config,
|
||||||
cmTarget const* headTarget,
|
const cmGeneratorTarget* headTarget,
|
||||||
bool usage_requirements_only) const;
|
bool usage_requirements_only) const;
|
||||||
|
|
||||||
void ComputeLinkInterfaceLibraries(const std::string& config,
|
void ComputeLinkInterfaceLibraries(const std::string& config,
|
||||||
|
Loading…
Reference in New Issue
Block a user