Implement a -gcc-toolchain command line option that does the same as
configure's --with-gcc-toolchain. The configure option is now just a default
value for the command line one.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150898 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp
index 4209c95..e105e99 100644
--- a/lib/Driver/Driver.cpp
+++ b/lib/Driver/Driver.cpp
@@ -1629,7 +1629,7 @@
if (!TC) {
switch (Target.getOS()) {
case llvm::Triple::AuroraUX:
- TC = new toolchains::AuroraUX(*this, Target);
+ TC = new toolchains::AuroraUX(*this, Target, Args);
break;
case llvm::Triple::Darwin:
case llvm::Triple::MacOSX:
@@ -1640,31 +1640,31 @@
Target.getArch() == llvm::Triple::thumb)
TC = new toolchains::DarwinClang(*this, Target);
else
- TC = new toolchains::Darwin_Generic_GCC(*this, Target);
+ TC = new toolchains::Darwin_Generic_GCC(*this, Target, Args);
break;
case llvm::Triple::DragonFly:
- TC = new toolchains::DragonFly(*this, Target);
+ TC = new toolchains::DragonFly(*this, Target, Args);
break;
case llvm::Triple::OpenBSD:
- TC = new toolchains::OpenBSD(*this, Target);
+ TC = new toolchains::OpenBSD(*this, Target, Args);
break;
case llvm::Triple::NetBSD:
- TC = new toolchains::NetBSD(*this, Target);
+ TC = new toolchains::NetBSD(*this, Target, Args);
break;
case llvm::Triple::FreeBSD:
- TC = new toolchains::FreeBSD(*this, Target);
+ TC = new toolchains::FreeBSD(*this, Target, Args);
break;
case llvm::Triple::Minix:
- TC = new toolchains::Minix(*this, Target);
+ TC = new toolchains::Minix(*this, Target, Args);
break;
case llvm::Triple::Linux:
if (Target.getArch() == llvm::Triple::hexagon)
TC = new toolchains::Hexagon_TC(*this, Target);
else
- TC = new toolchains::Linux(*this, Target);
+ TC = new toolchains::Linux(*this, Target, Args);
break;
case llvm::Triple::Solaris:
- TC = new toolchains::Solaris(*this, Target);
+ TC = new toolchains::Solaris(*this, Target, Args);
break;
case llvm::Triple::Win32:
TC = new toolchains::Windows(*this, Target);
@@ -1678,7 +1678,7 @@
break;
}
- TC = new toolchains::Generic_GCC(*this, Target);
+ TC = new toolchains::Generic_GCC(*this, Target, Args);
break;
}
}