diff options
author | Chris Lattner <sabre@nondot.org> | 2003-04-19 23:07:33 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-04-19 23:07:33 +0000 |
commit | c65b104309d918a31212056ef6c7bcb37864426a (patch) | |
tree | 94fafb471a809b4779d1f56fffb4155f2017dcf1 /tools/gccld/gccld.cpp | |
parent | 10970eb05f06952a1ade37278bca84b9495730fb (diff) |
Eliminate useless duplicate libraries
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5823 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/gccld/gccld.cpp')
-rw-r--r-- | tools/gccld/gccld.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp index f21dff79c6..90cebb4df0 100644 --- a/tools/gccld/gccld.cpp +++ b/tools/gccld/gccld.cpp @@ -120,7 +120,8 @@ static inline bool LoadLibraryFromDirectory(const std::string &LibName, bool &isArchive) { if (FileExists(Directory + "lib" + LibName + ".a")) { std::string ErrorMessage; - if (Verbose) std::cerr << "Loading '" << Directory << LibName << ".a'\n"; + if (Verbose) std::cerr << " Loading '" << Directory << "lib" + << LibName << ".a'\n"; if (!ReadArchiveFile(Directory + "lib" + LibName + ".a", Objects, &ErrorMessage)) { // Read the archive file isArchive = true; @@ -128,7 +129,7 @@ static inline bool LoadLibraryFromDirectory(const std::string &LibName, } if (Verbose) { - std::cerr << "Error loading archive '" + Directory + "lib"+LibName+".a'"; + std::cerr << " Error loading archive '" + Directory +"lib"+LibName+".a'"; if (!ErrorMessage.empty()) std::cerr << ": " << ErrorMessage; std::cerr << "\n"; } @@ -305,6 +306,10 @@ int main(int argc, char **argv) { ": error linking in '" + InputFilenames[i] + "'"); } + // Remove any consecutive duplicates of the same library... + Libraries.erase(std::unique(Libraries.begin(), Libraries.end()), + Libraries.end()); + // Link in all of the libraries next... for (unsigned i = 0; i != Libraries.size(); ++i) { if (Verbose) std::cerr << "Linking in library: -l" << Libraries[i] << "\n"; |