| include "llvm/Option/OptParser.td" | |
| class F<string name>: Flag<["--", "-"], name>; | |
| class R<list<string> prefixes, string name> | |
| : Option<prefixes, name, KIND_REMAINING_ARGS>; | |
| multiclass SJ<string name, string help> { | |
| def NAME: Separate<["--", "-"], name>, | |
| HelpText<help>; | |
| def NAME # _eq: Joined<["--", "-"], name # "=">, | |
| Alias<!cast<Separate>(NAME)>; | |
| } | |
| def grp_connect : OptionGroup<"connection">, HelpText<"CONNECTION">; | |
| defm fd: SJ<"fd", "Communicate over the given file descriptor.">, | |
| MetaVarName<"<fd>">, | |
| Group<grp_connect>; | |
| defm named_pipe: SJ<"named-pipe", "Write port lldb-server will listen on to the given named pipe.">, | |
| MetaVarName<"<name>">, | |
| Group<grp_connect>; | |
| defm pipe: SJ<"pipe", "Write port lldb-server will listen on to the given file descriptor.">, | |
| MetaVarName<"<fd>">, | |
| Group<grp_connect>; | |
| def reverse_connect: F<"reverse-connect">, | |
| HelpText<"Connect to the client instead of passively waiting for a connection. In this case [host]:port denotes the remote address to connect to.">, | |
| Group<grp_connect>; | |
| def grp_general : OptionGroup<"general options">, HelpText<"GENERAL OPTIONS">; | |
| defm log_channels: SJ<"log-channels", "Channels to log. A colon-separated list of entries. Each entry starts with a channel followed by a space-separated list of categories.">, | |
| MetaVarName<"<channel1 categories...:channel2 categories...>">, | |
| Group<grp_general>; | |
| defm log_file: SJ<"log-file", "Destination file to log to. If empty, log to stderr.">, | |
| MetaVarName<"<file>">, | |
| Group<grp_general>; | |
| def setsid: F<"setsid">, HelpText<"Run lldb-server in a new session.">, | |
| Group<grp_general>; | |
| def: Flag<["-"], "S">, Alias<setsid>, | |
| Group<grp_general>; | |
| def help: F<"help">, HelpText<"Prints out the usage information for lldb-server.">, | |
| Group<grp_general>; | |
| def: Flag<["-"], "h">, Alias<help>, | |
| Group<grp_general>; | |
| def grp_target : OptionGroup<"target selection">, HelpText<"TARGET SELECTION">; | |
| defm attach: SJ<"attach", "Attach to the process given by a (numeric) process id or a name.">, | |
| MetaVarName<"<pid-or-name>">, | |
| Group<grp_target>; | |
| def REM : R<["--"], "">, HelpText<"Launch program for debugging.">, | |
| MetaVarName<"program args">, | |
| Group<grp_target>; | |
| def: F<"native-regs">; // Noop. Present for backwards compatibility only. |