summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Driver.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-09-22 22:31:13 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-09-22 22:31:13 +0000
commit5564ba743fa0af497349b719f54ad68252869a6c (patch)
tree35fe31fc2addb7705781d892c1a693e843e6e363 /clang/lib/Driver/Driver.cpp
parent81fff1c358c7efb292a4d02e61baef695a563393 (diff)
downloadbcm5719-llvm-5564ba743fa0af497349b719f54ad68252869a6c.tar.gz
bcm5719-llvm-5564ba743fa0af497349b719f54ad68252869a6c.zip
Push "clang-is-production" logic up to tools/driver, and make it hittable by
defining the CLANG_IS_PRODUCTION Makefile variable. llvm-svn: 82583
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r--clang/lib/Driver/Driver.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index 1d72b0dbd6e..fd2eb61f75b 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -43,26 +43,28 @@ using namespace clang;
Driver::Driver(const char *_Name, const char *_Dir,
const char *_DefaultHostTriple,
const char *_DefaultImageName,
- Diagnostic &_Diags)
+ bool IsProduction, Diagnostic &_Diags)
: Opts(new OptTable()), Diags(_Diags),
Name(_Name), Dir(_Dir), DefaultHostTriple(_DefaultHostTriple),
DefaultImageName(_DefaultImageName),
Host(0),
CCCIsCXX(false), CCCEcho(false), CCCPrintBindings(false),
CCCGenericGCCName("gcc"), CCCUseClang(true),
-#ifdef USE_PRODUCTION_CLANG
- CCCUseClangCXX(false),
-#else
- CCCUseClangCXX(true),
-#endif
- CCCUseClangCPP(true), CCCUsePCH(true),
+ CCCUseClangCXX(true), CCCUseClangCPP(true), CCCUsePCH(true),
SuppressMissingInputWarning(false) {
-#ifdef USE_PRODUCTION_CLANG
- // In a "production" build, only use clang on architectures we expect to work.
- CCCClangArchs.insert(llvm::Triple::x86);
- CCCClangArchs.insert(llvm::Triple::x86_64);
- CCCClangArchs.insert(llvm::Triple::arm);
-#endif
+ if (IsProduction) {
+ // In a "production" build, only use clang on architectures we expect to
+ // work, and don't use clang C++.
+ //
+ // During development its more convenient to always have the driver use
+ // clang, but we don't want users to be confused when things don't work, or
+ // to file bugs for things we don't support.
+ CCCClangArchs.insert(llvm::Triple::x86);
+ CCCClangArchs.insert(llvm::Triple::x86_64);
+ CCCClangArchs.insert(llvm::Triple::arm);
+
+ CCCUseClangCXX = false;
+ }
}
Driver::~Driver() {
OpenPOWER on IntegriCloud