diff options
Diffstat (limited to 'Source/cmComputeLinkDepends.cxx')
-rw-r--r-- | Source/cmComputeLinkDepends.cxx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx index dec2b54..31cc393 100644 --- a/Source/cmComputeLinkDepends.cxx +++ b/Source/cmComputeLinkDepends.cxx @@ -172,7 +172,8 @@ satisfy dependencies. //---------------------------------------------------------------------------- cmComputeLinkDepends -::cmComputeLinkDepends(cmTarget* target, const char* config, cmTarget* head) +::cmComputeLinkDepends(cmTarget const* target, const char* config, + cmTarget const* head) { // Store context information. this->Target = target; @@ -355,9 +356,16 @@ void cmComputeLinkDepends::FollowLinkEntry(BFSEntry const& qe) if(cmTarget::LinkInterface const* iface = entry.Target->GetLinkInterface(this->Config, this->HeadTarget)) { + const bool isIface = + entry.Target->GetType() == cmTarget::INTERFACE_LIBRARY; // This target provides its own link interface information. this->AddLinkEntries(depender_index, iface->Libraries); + if (isIface) + { + return; + } + // Handle dependent shared libraries. this->FollowSharedDeps(depender_index, iface); |