cmGeneratorTarget: Port cmTargetCollectLinkLanguages away from cmTarget.

This commit is contained in:
Stephen Kelly 2015-09-16 04:46:15 +02:00
parent f539da126b
commit eaa5b9cbb1

View File

@ -1667,7 +1667,7 @@ public:
cmTargetCollectLinkLanguages(cmGeneratorTarget const* target, cmTargetCollectLinkLanguages(cmGeneratorTarget const* target,
const std::string& config, const std::string& config,
UNORDERED_SET<std::string>& languages, UNORDERED_SET<std::string>& languages,
cmTarget const* head): cmGeneratorTarget const* head):
Config(config), Languages(languages), HeadTarget(head), Config(config), Languages(languages), HeadTarget(head),
Makefile(target->Target->GetMakefile()), Target(target) Makefile(target->Target->GetMakefile()), Target(target)
{ this->Visited.insert(target->Target); } { this->Visited.insert(target->Target); }
@ -1719,7 +1719,7 @@ public:
this->Target->GetLocalGenerator()->GetGlobalGenerator() this->Target->GetLocalGenerator()->GetGlobalGenerator()
->GetGeneratorTarget(item.Target); ->GetGeneratorTarget(item.Target);
cmLinkInterface const* iface = cmLinkInterface const* iface =
gtgt->GetLinkInterface(this->Config, this->HeadTarget); gtgt->GetLinkInterface(this->Config, this->HeadTarget->Target);
if(!iface) { return; } if(!iface) { return; }
for(std::vector<std::string>::const_iterator for(std::vector<std::string>::const_iterator
@ -1737,7 +1737,7 @@ public:
private: private:
std::string Config; std::string Config;
UNORDERED_SET<std::string>& Languages; UNORDERED_SET<std::string>& Languages;
cmTarget const* HeadTarget; cmGeneratorTarget const* HeadTarget;
cmMakefile* Makefile; cmMakefile* Makefile;
const cmGeneratorTarget* Target; const cmGeneratorTarget* Target;
std::set<cmTarget const*> Visited; std::set<cmTarget const*> Visited;
@ -1830,7 +1830,7 @@ void cmGeneratorTarget::ComputeLinkClosure(const std::string& config,
} }
// Add interface languages from linked targets. // Add interface languages from linked targets.
cmTargetCollectLinkLanguages cll(this, config, languages, this->Target); cmTargetCollectLinkLanguages cll(this, config, languages, this);
for(std::vector<cmLinkImplItem>::const_iterator li = impl->Libraries.begin(); for(std::vector<cmLinkImplItem>::const_iterator li = impl->Libraries.begin();
li != impl->Libraries.end(); ++li) li != impl->Libraries.end(); ++li)
{ {