blob: 53fb65661bb2f3bdffc3fce53a7055a58c9140b9 [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">;
Rui Ueyamac3e46022017-09-11 20:54:5111def l: JoinedOrSeparate<["-"], "l">, MetaVarName<"<libName>">,
12 HelpText<"Root name of library to use">;
Martell Malone894dbbe2017-09-11 17:02:5913def m: JoinedOrSeparate<["-"], "m">, HelpText<"Set target emulation">;
Martell Malone0d176382017-09-11 21:36:3714def mllvm: S<"mllvm">;
Martin Storsjo32e16262017-09-13 07:28:0915def no_whole_archive: F<"no-whole-archive">,
16 HelpText<"No longer include all object files for following archives">;
Martell Malone894dbbe2017-09-11 17:02:5917def o: JoinedOrSeparate<["-"], "o">, MetaVarName<"<path>">,
18 HelpText<"Path to file to write output">;
Rui Ueyamac3e46022017-09-11 20:54:5119def out_implib: Separate<["--"], "out-implib">, HelpText<"Import library name">;
Martell Malone894dbbe2017-09-11 17:02:5920def shared: F<"shared">, HelpText<"Build a shared object">;
21def subs: Separate<["--"], "subsystem">, HelpText<"Specify subsystem">;
22def stack: Separate<["--"], "stack">;
Martin Storsjo32e16262017-09-13 07:28:0923def whole_archive: F<"whole-archive">,
24 HelpText<"Include all object files for following archives">;
Martin Storsjoa79762a2017-09-11 20:43:3925def verbose: F<"verbose">, HelpText<"Verbose mode">;
26
27// LLD specific options
28def _HASH_HASH_HASH : Flag<["-"], "###">,
29 HelpText<"Print (but do not run) the commands to run for this compilation">;
Martell Malone894dbbe2017-09-11 17:02:5930
31// Currently stubs to avoid errors
32def Bdynamic: F<"Bdynamic">, HelpText<"Link against shared libraries">;
33def Bstatic: F<"Bstatic">, HelpText<"Do not link against shared libraries">;
Rui Ueyamac3e46022017-09-11 20:54:5134def O: Joined<["-"], "O">, HelpText<"Optimize output file size">;
Martell Malone894dbbe2017-09-11 17:02:5935def enable_auto_image_base: Flag<["--"], "enable-auto-image-base">;
36def full_shutdown: Flag<["--"], "full-shutdown">;
Rui Ueyamac3e46022017-09-11 20:54:5137def major_image_version: Separate<["--"], "major-image-version">;
38def minor_image_version: Separate<["--"], "minor-image-version">;
Martin Storsjo5d5aa212017-09-11 20:43:4339def sysroot: J<"sysroot">, HelpText<"Sysroot">;
Martell Malone894dbbe2017-09-11 17:02:5940def v: Flag<["-"], "v">, HelpText<"Display the version number">;
Martell Malone894dbbe2017-09-11 17:02:5941def version: F<"version">, HelpText<"Display the version number and exit">;
42
43// Alias
44def alias_entry_e: JoinedOrSeparate<["-"], "e">, Alias<entry>;