[PATCH] D93491: [lld/mac] Add --version flag

Nico Weber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 17 13:31:03 PST 2020


thakis created this revision.
thakis added a reviewer: lld-macho.
Herald added a subscriber: dang.
thakis requested review of this revision.

It's an extension to ld64, but all the other ports have it, and
someone asked for it in PR43721.

While here, change the COFF help text to match the other ports.


https://reviews.llvm.org/D93491

Files:
  lld/COFF/Options.td
  lld/MachO/Driver.cpp
  lld/MachO/Options.td
  lld/test/MachO/driver.test


Index: lld/test/MachO/driver.test
===================================================================
--- lld/test/MachO/driver.test
+++ lld/test/MachO/driver.test
@@ -1,5 +1,7 @@
-# RUN: not %lld ---help 2>&1 | FileCheck -check-prefix=SPELLHELP %s
+# RUN: %lld --version | FileCheck -check-prefix=VERSION %s
+VERSION: {{LLD [0-9]+\.[0-9]+}}
 
+# RUN: not %lld ---help 2>&1 | FileCheck -check-prefix=SPELLHELP %s
 SPELLHELP: error: unknown argument '---help', did you mean '--help'
 # FIXME: This should say "no input files" instead
 SPELLHELP: error: undefined symbol: _main
Index: lld/MachO/Options.td
===================================================================
--- lld/MachO/Options.td
+++ lld/MachO/Options.td
@@ -18,6 +18,8 @@
 def reproduce_eq: Joined<["--"], "reproduce=">,
     Alias<!cast<Separate>(reproduce)>,
     HelpText<"Write tar file containing inputs and command to reproduce link">;
+def version: Flag<["--"], "version">,
+    HelpText<"Display the version number and exit">;
 
 
 // This is a complete Options.td compiled from Apple's ld(1) manpage
Index: lld/MachO/Driver.cpp
===================================================================
--- lld/MachO/Driver.cpp
+++ lld/MachO/Driver.cpp
@@ -700,10 +700,15 @@
   if (args.hasArg(OPT_help_hidden)) {
     parser.printHelp(argsArr[0], /*showHidden=*/true);
     return true;
-  } else if (args.hasArg(OPT_help)) {
+  }
+  if (args.hasArg(OPT_help)) {
     parser.printHelp(argsArr[0], /*showHidden=*/false);
     return true;
   }
+  if (args.hasArg(OPT_version)) {
+    message(getLLDVersion());
+    return true;
+  }
 
   if (const char *path = getReproduceOption(args)) {
     // Note that --reproduce is a debug option so you can ignore it
Index: lld/COFF/Options.td
===================================================================
--- lld/COFF/Options.td
+++ lld/COFF/Options.td
@@ -240,7 +240,7 @@
     "lto-obj-path",
     "output native object for merged LTO unit to this path">;
 def dash_dash_version : Flag<["--"], "version">,
-  HelpText<"Print version information">;
+  HelpText<"Display the version number and exit">;
 def threads
     : P<"threads", "Number of threads. '1' disables multi-threading. By "
                    "default all available hardware threads are used">;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D93491.312606.patch
Type: text/x-patch
Size: 2279 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201217/aca5ea1b/attachment.bin>


More information about the llvm-commits mailing list