When -link-as-library, add -l options to Module's deplibs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18617 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp
index 48fbd8b..d06eb6e 100644
--- a/tools/gccld/gccld.cpp
+++ b/tools/gccld/gccld.cpp
@@ -176,10 +176,17 @@
std::auto_ptr<Module> Composite(0);
if (LinkAsLibrary) {
- // Link in only the files, we ignore libraries in this case.
+ // Link in only the files.
Composite.reset( new Module(argv[0]) );
if (LinkFiles(argv[0], Composite.get(), InputFilenames, Verbose))
return 1; // Error already printed
+ // The libraries aren't linked in but are noted as "dependent" in the
+ // module.
+ for (cl::list<std::string>::const_iterator I = Libraries.begin(),
+ E = Libraries.end(); I != E ; ++I) {
+ Composite.get()->addLibrary(*I);
+ }
+
} else {
// Build a list of the items from our command line
LinkItemList Items;