mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-27 21:26:04 +00:00

For qualification purposes, it's helpful to ignore certain slices that can be expected to differ.
43 lines
1.9 KiB
TableGen
43 lines
1.9 KiB
TableGen
// Include the common option parsing interfaces.
|
|
include "llvm/Option/OptParser.td"
|
|
|
|
class FF<string name, string help>: Flag<["-", "--"], name>, HelpText<help>;
|
|
multiclass JS<string name, string help, string var = ""> {
|
|
def NAME #_EQ : Joined<["--"], name #"=">, HelpText<help>, MetaVarName<var>;
|
|
def : Separate<["-", "--"], name>, Alias<!cast<Joined>(NAME #_EQ)>;
|
|
}
|
|
|
|
//
|
|
// Top level operations
|
|
//
|
|
def action_group : OptionGroup<"action group">, HelpText<"COMMANDS">;
|
|
def compare : FF<"compare", "compare tapi files for library differences">, Group<action_group>;
|
|
def merge : FF<"merge", "merge the input files that represent the same library">, Group<action_group>;
|
|
def extract: FF<"extract", "extract <architecture> from input file">, Group<action_group>;
|
|
def remove: FF<"remove", "remove <architecture> from input file">, Group<action_group>;
|
|
def stubify: FF<"stubify", "create a tapi file from a dynamic library or framework">, Group<action_group>;
|
|
|
|
//
|
|
// General Driver options
|
|
//
|
|
def help : FF<"help", "display this help">;
|
|
def version: FF<"version", "print the llvm-readtapi version">;
|
|
def v: FF<"v", "alias for --version">, Alias<version>;
|
|
defm output: JS<"o", "write output to <file>","<file>">;
|
|
def compact: FF<"compact", "write compact tapi output file">;
|
|
defm filetype: JS<"filetype", "specify the output file type (tbd-v3, tbd-v4 or tbd-v5)","<value>">;
|
|
defm arch: JS<"arch", "specify the <architecture>", "<architecture>">;
|
|
|
|
//
|
|
// Stub options
|
|
//
|
|
def delete_input : FF<"delete-input", "delete and replace input file on success">;
|
|
def delete_private_libraries : FF<"delete-private-libraries", "delete private system dynamic libraries and frameworks">;
|
|
def t: FF<"t", "logs each library loaded, useful for debugging problems with search paths where the wrong library is loaded">;
|
|
|
|
|
|
//
|
|
// Compare options
|
|
//
|
|
defm ignore_arch : JS<"ignore-arch", "<architecture> slice to ignore for comparison", "<architecture>">;
|