aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJoerg Sonnenberger <joerg@bec.de>2011-07-16 10:50:05 +0000
committerJoerg Sonnenberger <joerg@bec.de>2011-07-16 10:50:05 +0000
commit59c8457f01f908e75d0e61ec3bd99cebcd672cee (patch)
tree169b2b19cd0038ee464071bcf00b02dcfa8d5ec1 /lib
parent1e159bc43cf6575a415dbe8deb7fc49611002ffe (diff)
Correctly handle sysroot prefix in -print-search-dirs. Makes libtool
more happy on NetBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135344 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Driver/Driver.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp
index 616207bf76..789f6f7ae9 100644
--- a/lib/Driver/Driver.cpp
+++ b/lib/Driver/Driver.cpp
@@ -458,11 +458,20 @@ bool Driver::HandleImmediateArgs(const Compilation &C) {
}
llvm::outs() << "\n";
llvm::outs() << "libraries: =";
+
+ std::string sysroot;
+ if (Arg *A = C.getArgs().getLastArg(options::OPT__sysroot_EQ))
+ sysroot = A->getValue(C.getArgs());
+
for (ToolChain::path_list::const_iterator it = TC.getFilePaths().begin(),
ie = TC.getFilePaths().end(); it != ie; ++it) {
if (it != TC.getFilePaths().begin())
llvm::outs() << ':';
- llvm::outs() << *it;
+ const char *path = it->c_str();
+ if (path[0] == '=')
+ llvm::outs() << sysroot << path + 1;
+ else
+ llvm::outs() << path;
}
llvm::outs() << "\n";
return false;