Pass lists of -I and -D options through to the Compiler Driver.
authorReid Spencer <rspencer@reidspencer.com>
Mon, 30 Aug 2004 06:27:32 +0000 (06:27 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 30 Aug 2004 06:27:32 +0000 (06:27 +0000)
Handle -g and -Wxxx for GCC compatibility

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16115 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvmc/llvmc.cpp

index 0f8662382ca853321639f75d99ad917dafabc76d..8dab3017908df981b9aaf032d0d106662bafbb70 100644 (file)
@@ -100,6 +100,14 @@ cl::list<std::string> LibPaths("L", cl::Prefix,
 cl::list<std::string> Libraries("l", cl::Prefix,
   cl::desc("Specify libraries to link to"), cl::value_desc("library prefix"));
 
+cl::list<std::string> Includes("I", cl::Prefix,
+  cl::desc("Specify location to search for included source"), 
+  cl::value_desc("include directory"));
+
+cl::list<std::string> Defines("D", cl::Prefix,
+  cl::desc("Specify a symbol to define for source configuration"),
+  cl::value_desc("symbol definition"));
+
 
 //===------------------------------------------------------------------------===
 //===          OUTPUT OPTIONS
@@ -117,6 +125,9 @@ cl::opt<std::string> OutputMachine("m", cl::Prefix,
 cl::opt<bool> Native("native", cl::init(false),
   cl::desc("Generative native object and executables instead of bytecode"));
 
+cl::opt<bool> DebugOutput("g", cl::init(false),
+  cl::desc("Generate objects that include debug symbols"));
+
 //===------------------------------------------------------------------------===
 //===          INFORMATION OPTIONS
 //===------------------------------------------------------------------------===
@@ -145,6 +156,10 @@ cl::opt<bool> TimeActions("time-actions", cl::Optional, cl::init(false),
 cl::opt<bool> ShowStats("stats", cl::Optional, cl::init(false),
   cl::desc("Print statistics accumulated during optimization"));
 
+cl::list<std::string> Warnings("W", cl::Prefix,
+  cl::desc("Provide warnings for additional classes of errors"),
+  cl::value_desc("warning category"));
+
 //===------------------------------------------------------------------------===
 //===          ADVANCED OPTIONS
 //===------------------------------------------------------------------------===
@@ -255,6 +270,8 @@ int main(int argc, char **argv) {
     CD->setFinalPhase(FinalPhase);
     CD->setOptimization(OptLevel);
     CD->setOutputMachine(OutputMachine);
+    CD->setIncludePaths(Includes);
+    CD->setSymbolDefines(Defines);
     CD->setLibraryPaths(LibPaths);
 
     // Provide additional tool arguments