diff options
| author | Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de> | 2016-03-14 14:34:04 +0000 |
|---|---|---|
| committer | Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de> | 2016-03-14 14:34:04 +0000 |
| commit | 099541907f2b9b86308b0b32d1276846b8d6007a (patch) | |
| tree | 0910d517d5f7ac10181c9f3a1cab8739ee3232f6 /clang/lib/Driver/ToolChains.cpp | |
| parent | cbcda9e077bd2e49ee907fd6aa33ee185a33464e (diff) | |
| download | bcm5719-llvm-099541907f2b9b86308b0b32d1276846b8d6007a.tar.gz bcm5719-llvm-099541907f2b9b86308b0b32d1276846b8d6007a.zip | |
Make FreeBSD and NetBSD use CLANG_DEFAULT_CXX_STDLIB
Also introduce -stdlib=platform to override the configured value
and use it to make the tests always pass.
Differential Revision: http://reviews.llvm.org/D17286
llvm-svn: 263434
Diffstat (limited to 'clang/lib/Driver/ToolChains.cpp')
| -rw-r--r-- | clang/lib/Driver/ToolChains.cpp | 23 |
1 files changed, 2 insertions, 21 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp index 6cc512b6a16..03421d6739c 100644 --- a/clang/lib/Driver/ToolChains.cpp +++ b/clang/lib/Driver/ToolChains.cpp @@ -3106,16 +3106,7 @@ FreeBSD::FreeBSD(const Driver &D, const llvm::Triple &Triple, getFilePaths().push_back(getDriver().SysRoot + "/usr/lib"); } -ToolChain::CXXStdlibType FreeBSD::GetCXXStdlibType(const ArgList &Args) const { - if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { - StringRef Value = A->getValue(); - if (Value == "libstdc++") - return ToolChain::CST_Libstdcxx; - if (Value == "libc++") - return ToolChain::CST_Libcxx; - - getDriver().Diag(diag::err_drv_invalid_stdlib_name) << A->getAsString(Args); - } +ToolChain::CXXStdlibType FreeBSD::GetDefaultCXXStdlibType() const { if (getTriple().getOSMajorVersion() >= 10) return ToolChain::CST_Libcxx; return ToolChain::CST_Libstdcxx; @@ -3258,17 +3249,7 @@ Tool *NetBSD::buildAssembler() const { Tool *NetBSD::buildLinker() const { return new tools::netbsd::Linker(*this); } -ToolChain::CXXStdlibType NetBSD::GetCXXStdlibType(const ArgList &Args) const { - if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { - StringRef Value = A->getValue(); - if (Value == "libstdc++") - return ToolChain::CST_Libstdcxx; - if (Value == "libc++") - return ToolChain::CST_Libcxx; - - getDriver().Diag(diag::err_drv_invalid_stdlib_name) << A->getAsString(Args); - } - +ToolChain::CXXStdlibType NetBSD::GetDefaultCXXStdlibType() const { unsigned Major, Minor, Micro; getTriple().getOSVersion(Major, Minor, Micro); if (Major >= 7 || Major == 0) { |

