summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/ToolChains/NaCl.cpp
diff options
context:
space:
mode:
authorPetr Hosek <phosek@chromium.org>2018-04-10 19:55:55 +0000
committerPetr Hosek <phosek@chromium.org>2018-04-10 19:55:55 +0000
commit8d612149db286d97fdbe10191c13792f41283211 (patch)
tree5e118f7da1a322845162ca5b0a12d50237421e13 /clang/lib/Driver/ToolChains/NaCl.cpp
parent5eae06f21d52d4c1366625f3931c554699b761c1 (diff)
downloadbcm5719-llvm-8d612149db286d97fdbe10191c13792f41283211.tar.gz
bcm5719-llvm-8d612149db286d97fdbe10191c13792f41283211.zip
[Driver] Allow drivers to add multiple libc++ include paths
This allows toolchain drivers to add multiple libc++ include paths akin to libstdc++. This is useful in multiarch setup when some headers might be in target specific include directory. There should be no functional change. Differential Revision: https://reviews.llvm.org/D45422 llvm-svn: 329748
Diffstat (limited to 'clang/lib/Driver/ToolChains/NaCl.cpp')
-rw-r--r--clang/lib/Driver/ToolChains/NaCl.cpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/clang/lib/Driver/ToolChains/NaCl.cpp b/clang/lib/Driver/ToolChains/NaCl.cpp
index 128478d6387..2e5365b4814 100644
--- a/clang/lib/Driver/ToolChains/NaCl.cpp
+++ b/clang/lib/Driver/ToolChains/NaCl.cpp
@@ -309,25 +309,29 @@ void NaClToolChain::AddCXXStdlibLibArgs(const ArgList &Args,
CmdArgs.push_back("-lc++");
}
-std::string NaClToolChain::findLibCxxIncludePath() const {
+void NaClToolChain::addLibCxxIncludePaths(
+ const llvm::opt::ArgList &DriverArgs,
+ llvm::opt::ArgStringList &CC1Args) const {
const Driver &D = getDriver();
SmallString<128> P(D.Dir + "/../");
switch (getTriple().getArch()) {
case llvm::Triple::arm:
llvm::sys::path::append(P, "arm-nacl/include/c++/v1");
- return P.str();
+ addSystemInclude(DriverArgs, CC1Args, P.str());
+ break;
case llvm::Triple::x86:
llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1");
- return P.str();
+ addSystemInclude(DriverArgs, CC1Args, P.str());
+ break;
case llvm::Triple::x86_64:
llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1");
- return P.str();
+ addSystemInclude(DriverArgs, CC1Args, P.str());
+ break;
case llvm::Triple::mipsel:
llvm::sys::path::append(P, "mipsel-nacl/include/c++/v1");
- return P.str();
- default:
- return "";
+ addSystemInclude(DriverArgs, CC1Args, P.str());
+ break;
}
}
OpenPOWER on IntegriCloud