blob: 1d516888273a3a1285d3c9552b58469b5ae4a41d [file] [log] [blame]
Martell Malone894dbbe2017-09-11 17:02:591include "llvm/Option/OptParser.td"
2
3class F<string name>: Flag<["--", "-"], name>;
4class J<string name>: Joined<["--", "-"], name>;
5class S<string name>: Separate<["--", "-"], name>;
6
7def L: JoinedOrSeparate<["-"], "L">, MetaVarName<"<dir>">,
8 HelpText<"Add a directory to the library search path">;
9def entry: S<"entry">, MetaVarName<"<entry>">,
10 HelpText<"Name of entry point symbol">;
Martin Storsjoa84a4772017-10-12 05:37:1811def export_all_symbols: F<"export-all-symbols">,
12 HelpText<"Export all symbols even if a def file or dllexport attributes are used">;
Rui Ueyamac3e46022017-09-11 20:54:5113def l: JoinedOrSeparate<["-"], "l">, MetaVarName<"<libName>">,
14 HelpText<"Root name of library to use">;
Martell Malone894dbbe2017-09-11 17:02:5915def m: JoinedOrSeparate<["-"], "m">, HelpText<"Set target emulation">;
Martell Malone0d176382017-09-11 21:36:3716def mllvm: S<"mllvm">;
Martin Storsjo32e16262017-09-13 07:28:0917def no_whole_archive: F<"no-whole-archive">,
18 HelpText<"No longer include all object files for following archives">;
Martell Malone894dbbe2017-09-11 17:02:5919def o: JoinedOrSeparate<["-"], "o">, MetaVarName<"<path>">,
20 HelpText<"Path to file to write output">;
Rui Ueyamac3e46022017-09-11 20:54:5121def out_implib: Separate<["--"], "out-implib">, HelpText<"Import library name">;
Martin Storsjoa84a4772017-10-12 05:37:1822def output_def: S<"output-def">, HelpText<"Output def file">;
Martell Malone894dbbe2017-09-11 17:02:5923def shared: F<"shared">, HelpText<"Build a shared object">;
Rui Ueyama1f4cdcf2017-09-14 18:33:2124def subs: S<"subsystem">, HelpText<"Specify subsystem">;
25def stack: S<"stack">;
Martin Storsjo32e16262017-09-13 07:28:0926def whole_archive: F<"whole-archive">,
27 HelpText<"Include all object files for following archives">;
Martin Storsjoa79762a2017-09-11 20:43:3928def verbose: F<"verbose">, HelpText<"Verbose mode">;
29
30// LLD specific options
31def _HASH_HASH_HASH : Flag<["-"], "###">,
32 HelpText<"Print (but do not run) the commands to run for this compilation">;
Martell Malone894dbbe2017-09-11 17:02:5933
34// Currently stubs to avoid errors
35def Bdynamic: F<"Bdynamic">, HelpText<"Link against shared libraries">;
36def Bstatic: F<"Bstatic">, HelpText<"Do not link against shared libraries">;
Rui Ueyamac3e46022017-09-11 20:54:5137def O: Joined<["-"], "O">, HelpText<"Optimize output file size">;
Rui Ueyama1f4cdcf2017-09-14 18:33:2138def enable_auto_image_base: F<"enable-auto-image-base">;
Martell Malone894dbbe2017-09-11 17:02:5939def full_shutdown: Flag<["--"], "full-shutdown">;
Rui Ueyama1f4cdcf2017-09-14 18:33:2140def major_image_version: S<"major-image-version">;
41def minor_image_version: S<"minor-image-version">;
Martin Storsjo5d5aa212017-09-11 20:43:4342def sysroot: J<"sysroot">, HelpText<"Sysroot">;
Martell Malone894dbbe2017-09-11 17:02:5943def v: Flag<["-"], "v">, HelpText<"Display the version number">;
Martell Malone894dbbe2017-09-11 17:02:5944def version: F<"version">, HelpText<"Display the version number and exit">;
45
46// Alias
47def alias_entry_e: JoinedOrSeparate<["-"], "e">, Alias<entry>;