From 091ca1c9e0327187de2ea612d65c8770be618e1b Mon Sep 17 00:00:00 2001 From: Mikhail Glushenkov Date: Tue, 7 Jul 2009 16:39:33 +0000 Subject: [PATCH] Show how to modify built-in options. Sanjiv complained about the need to maintain local changes to lib/CompilerDriver. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74912 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/llvmc/example/mcc16/driver/Main.cpp | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/tools/llvmc/example/mcc16/driver/Main.cpp b/tools/llvmc/example/mcc16/driver/Main.cpp index b1f5b6798ae..5b57d884789 100644 --- a/tools/llvmc/example/mcc16/driver/Main.cpp +++ b/tools/llvmc/example/mcc16/driver/Main.cpp @@ -7,8 +7,25 @@ // //===----------------------------------------------------------------------===// // -// Just include CompilerDriver/Main.inc. +// Usually this file just includes CompilerDriver/Main.inc, but here we apply +// some trickery to make the built-in '-save-temps' option hidden and enabled +// by default. // //===----------------------------------------------------------------------===// -#include "llvm/CompilerDriver/Main.inc" +#include "llvm/CompilerDriver/BuiltinOptions.h" +#include "llvm/CompilerDriver/ForceLinkage.h" + +namespace llvmc { + int Main(int argc, char** argv); +} + +int main(int argc, char** argv) { + + // HACK + SaveTemps = SaveTempsEnum::Obj; + SaveTemps.setHiddenFlag(llvm::cl::Hidden); + + llvmc::ForceLinkage(); + return llvmc::Main(argc, argv); +}