blob: 38442038d73853cf60b44d263823cc4cd86e2911 [file] [log] [blame]
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +00001//===--- BuiltinOptions.cpp - The LLVM Compiler Driver ----------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open
6// Source License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// Definitions of all global command-line option variables.
11//
12//===----------------------------------------------------------------------===//
13
14#include "llvm/CompilerDriver/BuiltinOptions.h"
Mikhail Glushenkovcc4f8bc2009-07-04 03:55:25 +000015
16#ifdef ENABLE_LLVMC_DYNAMIC_PLUGINS
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000017#include "llvm/Support/PluginLoader.h"
Mikhail Glushenkovcc4f8bc2009-07-04 03:55:25 +000018#endif
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000019
20namespace cl = llvm::cl;
21
Mikhail Glushenkov03b6d4e2010-08-20 11:24:44 +000022namespace llvmc {
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000023
24cl::list<std::string> InputFilenames(cl::Positional, cl::desc("<input file>"),
25 cl::ZeroOrMore);
26cl::opt<std::string> OutputFilename("o", cl::desc("Output file name"),
27 cl::value_desc("file"), cl::Prefix);
Mikhail Glushenkov3a780d12009-07-09 19:36:08 +000028cl::opt<std::string> TempDirname("temp-dir", cl::desc("Temp dir name"),
29 cl::value_desc("<directory>"), cl::Prefix);
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000030cl::list<std::string> Languages("x",
31 cl::desc("Specify the language of the following input files"),
32 cl::ZeroOrMore);
Mikhail Glushenkov6533afe2009-11-07 06:33:58 +000033
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000034cl::opt<bool> DryRun("dry-run",
35 cl::desc("Only pretend to run commands"));
Mikhail Glushenkov6533afe2009-11-07 06:33:58 +000036cl::opt<bool> Time("time", cl::desc("Time individual commands"));
Mikhail Glushenkov95c1f5b2009-06-29 03:09:15 +000037cl::opt<bool> VerboseMode("v",
38 cl::desc("Enable verbose mode"));
39
40cl::opt<bool> CheckGraph("check-graph",
41 cl::desc("Check the compilation graph for errors"),
42 cl::Hidden);
43cl::opt<bool> WriteGraph("write-graph",
44 cl::desc("Write compilation-graph.dot file"),
45 cl::Hidden);
46cl::opt<bool> ViewGraph("view-graph",
47 cl::desc("Show compilation graph in GhostView"),
48 cl::Hidden);
49
50cl::opt<SaveTempsEnum::Values> SaveTemps
51("save-temps", cl::desc("Keep temporary files"),
52 cl::init(SaveTempsEnum::Unset),
53 cl::values(clEnumValN(SaveTempsEnum::Obj, "obj",
54 "Save files in the directory specified with -o"),
55 clEnumValN(SaveTempsEnum::Cwd, "cwd",
56 "Use current working directory"),
57 clEnumValN(SaveTempsEnum::Obj, "", "Same as 'cwd'"),
58 clEnumValEnd),
Sanjiv Gupta2f8ca292009-07-06 10:34:10 +000059 cl::ValueOptional);
Mikhail Glushenkov03b6d4e2010-08-20 11:24:44 +000060
61} // End namespace llvmc.