diff --git a/vndk/tools/vtable-dumper/vndk_vtable_dumper.cpp b/vndk/tools/vtable-dumper/vndk_vtable_dumper.cpp index 68623e48f..2ce2b161e 100644 --- a/vndk/tools/vtable-dumper/vndk_vtable_dumper.cpp +++ b/vndk/tools/vtable-dumper/vndk_vtable_dumper.cpp @@ -16,21 +16,57 @@ #include "elf_handling.h" +#include + using llvm::Expected; -using llvm::StringRef; +using llvm::StringMapEntry; +using llvm::cl::Hidden; +using llvm::cl::Option; +using llvm::cl::OptionCategory; +using llvm::cl::ParseCommandLineOptions; +using llvm::cl::Positional; +using llvm::cl::Required; +using llvm::cl::SetVersionPrinter; +using llvm::cl::cat; +using llvm::cl::desc; +using llvm::cl::getRegisteredOptions; +using llvm::cl::opt; using llvm::dyn_cast; using llvm::object::ObjectFile; using llvm::object::OwningBinary; using llvm::outs; -int main (int argc, char **argv) -{ - if (argc != 2) { - outs() << "usage: vndk-vtable-dumper path \n"; - return 1; +OptionCategory VTableDumperCategory("vndk-vtable-dumper options"); + +opt FilePath( + Positional, Required, cat(VTableDumperCategory), + desc("shared_library.so")); + +static void HideIrrelevantCommandLineOptions() { + for (StringMapEntry