aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-readobj/llvm-readobj.h
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2021-07-12 10:14:42 -0700
committerFangrui Song <i@maskray.me>2021-07-12 10:14:42 -0700
commit46580d43fc70dcecf21d2cedceeb4910c756fa6e (patch)
tree6eeae71f07bdd67222f128839876f4f6c399dfa1 /llvm/tools/llvm-readobj/llvm-readobj.h
parentfe892114e33b8f98bf3537a0dd6d6798821cb849 (diff)
downloadllvm-46580d43fc70dcecf21d2cedceeb4910c756fa6e.zip
llvm-46580d43fc70dcecf21d2cedceeb4910c756fa6e.tar.gz
llvm-46580d43fc70dcecf21d2cedceeb4910c756fa6e.tar.bz2
[llvm-readobj] Switch command line parsing from llvm::cl to OptTable
Users should generally observe no difference as long as they don't use unintended option forms. Behavior changes: * `-t=d` is removed. Use `-t d` instead. * `--demangle=false` and `--demangle=0` cannot be used. Omit the option or use `--no-demangle`. Other flag-style options don't have `--no-` forms. * `--help-list` is removed. This is a `cl::` specific option. * llvm-readobj now supports grouped short options as well. * `--color` is removed. This is generally not useful (only apply to errors/warnings) but was inherited from Support. Some adjustment to the canonical forms (usually from GNU readelf; currently llvm-readobj has too many redundant aliases): * --dyn-syms is canonical. --dyn-symbols is a hidden alias * --file-header is canonical. --file-headers is a hidden alias * --histogram is canonical. --elf-hash-histogram is a hidden alias * --relocs is canonical. --relocations is a hidden alias * --section-groups is canonical. --elf-section-groups is a hidden alias OptTable avoids global option collision if we decide to support multiplexing for binary utilities. * Most one-dash long options are still supported. `-dt, -sd, -st, -sr` are dropped due to their conflict with grouped short options. * `--section-mapping=false` (D57365) is strange but is kept for now. * Many `cl::opt` variables were unnecessarily external. I added `static` whenever appropriate. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D105532
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.h')
-rw-r--r--llvm/tools/llvm-readobj/llvm-readobj.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.h b/llvm/tools/llvm-readobj/llvm-readobj.h
index d9813f5..43d19b4 100644
--- a/llvm/tools/llvm-readobj/llvm-readobj.h
+++ b/llvm/tools/llvm-readobj/llvm-readobj.h
@@ -32,15 +32,15 @@ namespace llvm {
} // namespace llvm
namespace opts {
- extern llvm::cl::opt<bool> SectionRelocations;
- extern llvm::cl::opt<bool> SectionSymbols;
- extern llvm::cl::opt<bool> SectionData;
- extern llvm::cl::opt<bool> ExpandRelocs;
- extern llvm::cl::opt<bool> RawRelr;
- extern llvm::cl::opt<bool> CodeViewSubsectionBytes;
- extern llvm::cl::opt<bool> Demangle;
- enum OutputStyleTy { LLVM, GNU };
- extern llvm::cl::opt<OutputStyleTy> Output;
+extern bool SectionRelocations;
+extern bool SectionSymbols;
+extern bool SectionData;
+extern bool ExpandRelocs;
+extern bool RawRelr;
+extern bool CodeViewSubsectionBytes;
+extern bool Demangle;
+enum OutputStyleTy { LLVM, GNU };
+extern OutputStyleTy Output;
} // namespace opts
#define LLVM_READOBJ_ENUM_ENT(ns, enum) \