aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2011-11-07 09:01:17 +0000
committerChandler Carruth <chandlerc@gmail.com>2011-11-07 09:01:17 +0000
commiteb35ffc2174f7c4d622c6e81e3a4915ef077f470 (patch)
tree7b414a945dda5385c8f468681c1f3a364b6f9792
parent38dce9b19c3cc85698fb44ea182f9e7fa0fa4a69 (diff)
Fix Linux libc++ usage. Somehow this slipped through during the port.
Test cases for this and all the rest of the port are still in the works, but will wait for a fixed computer and post 3.0 merging... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143916 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Driver/ToolChains.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp
index fec2209ca8..9b84966d81 100644
--- a/lib/Driver/ToolChains.cpp
+++ b/lib/Driver/ToolChains.cpp
@@ -2010,6 +2010,14 @@ void Linux::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs,
DriverArgs.hasArg(options::OPT_nostdincxx))
return;
+ // Check if libc++ has been enabled and provide its include paths if so.
+ if (GetCXXStdlibType(DriverArgs) == ToolChain::CST_Libcxx) {
+ // libc++ is always installed at a fixed path on Linux currently.
+ addSystemInclude(DriverArgs, CC1Args,
+ getDriver().SysRoot + "/usr/include/c++/v1");
+ return;
+ }
+
const llvm::Triple &TargetTriple = getTriple();
StringRef CxxIncludeRoot(CXX_INCLUDE_ROOT);