From d91487785f641af7f5c6c32b04cb28cfe94518a9 Mon Sep 17 00:00:00 2001 From: Mikhail Glushenkov Date: Tue, 25 Nov 2008 21:35:20 +0000 Subject: [PATCH] Make -fsyntax-only, -include and -emit-llvm work for C++ and Objective-C/C++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60047 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CompilerDriver/Tools.td | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/include/llvm/CompilerDriver/Tools.td b/include/llvm/CompilerDriver/Tools.td index fa2cd33ffbd..930092d8dfb 100644 --- a/include/llvm/CompilerDriver/Tools.td +++ b/include/llvm/CompilerDriver/Tools.td @@ -22,7 +22,7 @@ def llvm_gcc_c : Tool< (default), "llvm-gcc -E -x c++ $INFILE"), (switch_on "fsyntax-only"), - "llvm-gcc -c -x c $INFILE", + "llvm-gcc -fsyntax-only -x c $INFILE", (default), "llvm-gcc -c -x c $INFILE -o $OUTFILE -emit-llvm")), (switch_option "emit-llvm", (stop_compilation), @@ -46,9 +46,14 @@ def llvm_gcc_cpp : Tool< "llvm-g++ -E -x c++ $INFILE -o $OUTFILE", (default), "llvm-g++ -E -x c++ $INFILE"), + (switch_on "fsyntax-only"), + "llvm-g++ -fsyntax-only -x c++ $INFILE", (default), "llvm-g++ -c -x c++ $INFILE -o $OUTFILE -emit-llvm")), + (switch_option "emit-llvm", (stop_compilation)), (switch_option "E", (stop_compilation)), + (switch_option "fsyntax-only", (stop_compilation)), + (parameter_list_option "include", (forward)), (sink) ]>; @@ -62,9 +67,14 @@ def llvm_gcc_m : Tool< "llvm-gcc -E -x objective-c $INFILE -o $OUTFILE", (default), "llvm-gcc -E -x objective-c $INFILE"), + (switch_on "fsyntax-only"), + "llvm-gcc -fsyntax-only -x objective-c $INFILE", (default), "llvm-gcc -c -x objective-c $INFILE -o $OUTFILE -emit-llvm")), + (switch_option "emit-llvm", (stop_compilation)), (switch_option "E", (stop_compilation)), + (switch_option "fsyntax-only", (stop_compilation)), + (parameter_list_option "include", (forward)), (sink) ]>; @@ -78,9 +88,14 @@ def llvm_gcc_mxx : Tool< "llvm-gcc -E -x objective-c++ $INFILE -o $OUTFILE", (default), "llvm-gcc -E -x objective-c++ $INFILE"), + (switch_on "fsyntax-only"), + "llvm-gcc -fsyntax-only -x objective-c++ $INFILE", (default), "llvm-gcc -c -x objective-c++ $INFILE -o $OUTFILE -emit-llvm")), + (switch_option "emit-llvm", (stop_compilation)), (switch_option "E", (stop_compilation)), + (switch_option "fsyntax-only", (stop_compilation)), + (parameter_list_option "include", (forward)), (sink) ]>;