diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmComputeLinkDepends.cxx | 35 |
1 files changed, 2 insertions, 33 deletions
diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx index 5d92549..ab2557b 100644 --- a/Source/cmComputeLinkDepends.cxx +++ b/Source/cmComputeLinkDepends.cxx @@ -33,7 +33,6 @@ #include "cmState.h" #include "cmStateTypes.h" #include "cmStringAlgorithms.h" -#include "cmSystemTools.h" #include "cmTarget.h" #include "cmValue.h" #include "cmake.h" @@ -477,7 +476,6 @@ public: this->Target->GetPolicyStatusCMP0179() == cmPolicies::NEW) { // keep the first occurrence of the static libraries std::set<size_t> emitted{ this->Emitted }; - std::set<std::string> importedEmitted; for (auto index : libEntries) { LinkEntry const& entry = this->Entries[index]; if (!entry.Target || @@ -485,20 +483,7 @@ public: entries.emplace_back(index); continue; } - if (this->IncludeEntry(entry)) { - entries.emplace_back(index); - continue; - } - if (entry.Target->IsImported()) { - if (emitted.insert(index).second && - importedEmitted - .insert(cmSystemTools::GetRealPath(entry.Item.Value)) - .second) { - entries.emplace_back(index); - } - continue; - } - if (emitted.insert(index).second) { + if (this->IncludeEntry(entry) || emitted.insert(index).second) { entries.emplace_back(index); } } @@ -604,22 +589,7 @@ private: { for (auto index : libEntries) { LinkEntry const& entry = this->Entries[index]; - if (this->IncludeEntry(entry)) { - this->FinalEntries.emplace_back(entry); - continue; - } - if (entry.Target && entry.Target->IsImported()) { - // Different imported targets can point to the same library so check - // also library paths - if (this->Emitted.insert(index).second && - this->ImportedEmitted - .insert(cmSystemTools::GetRealPath(entry.Item.Value)) - .second) { - this->FinalEntries.emplace_back(entry); - } - continue; - } - if (this->Emitted.insert(index).second) { + if (this->IncludeEntry(entry) || this->Emitted.insert(index).second) { this->FinalEntries.emplace_back(entry); } } @@ -632,7 +602,6 @@ private: EntryVector& Entries; EntryVector& FinalEntries; std::set<size_t> Emitted; - std::set<std::string> ImportedEmitted; const std::map<size_t, std::vector<size_t>>* Groups = nullptr; }; } |