diff options
author | Hans Wennborg <hans@hanshq.net> | 2013-08-13 23:38:57 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2013-08-13 23:38:57 +0000 |
commit | 2e27459d6c016cd0e49151fb3cd0c5c64b858412 (patch) | |
tree | c2974750c5691a6cd56e2812cbde4ddab4c9dd4b /clang/lib/Driver/Driver.cpp | |
parent | 7a15c4af9052cead89e81733d52ef9685905d1c8 (diff) | |
download | bcm5719-llvm-2e27459d6c016cd0e49151fb3cd0c5c64b858412.tar.gz bcm5719-llvm-2e27459d6c016cd0e49151fb3cd0c5c64b858412.zip |
clang-cl: Support /link option and set target to win32
This adds support for the /link option, which forwards
subsequent arguments to the linker.
The test for this will only work when targetting win32.
Since that's the only target where clang-cl makes sense,
use that target by default.
Differential Revision: http://llvm-reviews.chandlerc.com/D1388
llvm-svn: 188331
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r-- | clang/lib/Driver/Driver.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 68958047ba7..32a7d1aafd3 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -351,6 +351,12 @@ Compilation *Driver::BuildCompilation(ArrayRef<const char *> ArgList) { options::OPT_ccc_pch_is_pth); // FIXME: DefaultTargetTriple is used by the target-prefixed calls to as/ld // and getToolChain is const. + if (IsCLMode()) { + // clang-cl targets Win32. + llvm::Triple T(DefaultTargetTriple); + T.setOSName(llvm::Triple::getOSTypeName(llvm::Triple::Win32)); + DefaultTargetTriple = T.str(); + } if (const Arg *A = Args->getLastArg(options::OPT_target)) DefaultTargetTriple = A->getValue(); if (const Arg *A = Args->getLastArg(options::OPT_ccc_install_dir)) |