summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/ToolChain.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-09-14 23:12:35 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-09-14 23:12:35 +0000
commitbf11f790534282b8b0e1ee21560be5265eaf8ede (patch)
tree48bd1bc2551fa80a10e6540ed05c4dcd335826db /clang/lib/Driver/ToolChain.cpp
parent30a12b8d88e091b87b3d36b464f0c2ed20dcd14a (diff)
downloadbcm5719-llvm-bf11f790534282b8b0e1ee21560be5265eaf8ede.tar.gz
bcm5719-llvm-bf11f790534282b8b0e1ee21560be5265eaf8ede.zip
Driver: Factor out some code for handling the C++ standard library.
llvm-svn: 113890
Diffstat (limited to 'clang/lib/Driver/ToolChain.cpp')
-rw-r--r--clang/lib/Driver/ToolChain.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
index 94c1c6beb99..0f630464093 100644
--- a/clang/lib/Driver/ToolChain.cpp
+++ b/clang/lib/Driver/ToolChain.cpp
@@ -174,3 +174,28 @@ std::string ToolChain::ComputeEffectiveClangTriple(const ArgList &Args) const {
return ComputeLLVMTriple(Args);
}
+ToolChain::CXXStdlibType ToolChain::GetCXXStdlibType(const ArgList &Args) const{
+ return ToolChain::CST_Libstdcxx;
+}
+
+void ToolChain::AddClangCXXStdlibIncludeArgs(const ArgList &Args,
+ ArgStringList &CmdArgs) const {
+ CXXStdlibType Type = GetCXXStdlibType(Args);
+
+ switch (Type) {
+ case ToolChain::CST_Libstdcxx:
+ // Currently handled by the mass of goop in InitHeaderSearch.
+ break;
+ }
+}
+
+void ToolChain::AddClangCXXStdlibLibArgs(const ArgList &Args,
+ ArgStringList &CmdArgs) const {
+ CXXStdlibType Type = GetCXXStdlibType(Args);
+
+ switch (Type) {
+ case ToolChain::CST_Libstdcxx:
+ CmdArgs.push_back("-lstdc++");
+ break;
+ }
+}
OpenPOWER on IntegriCloud