[PATCH] D31208: Print out "suppoted targets" and "supported emulations".
Rui Ueyama via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 21 13:59:14 PDT 2017
ruiu created this revision.
This is to improve compatibility with the GNU linkers for those
who expect these strings in a message for the -help option.
https://reviews.llvm.org/D31208
Files:
lld/ELF/DriverUtils.cpp
lld/test/ELF/driver.test
Index: lld/test/ELF/driver.test
===================================================================
--- lld/test/ELF/driver.test
+++ lld/test/ELF/driver.test
@@ -15,6 +15,8 @@
# RUN: ld.lld --help 2>&1 | FileCheck -check-prefix=HELP %s
# HELP: USAGE:
+# HELP: ld.lld: supported targets: {{.*}} elf
+# HELP: ld.lld: supported emulations:
# RUN: ld.lld --version 2>&1 | FileCheck -check-prefix=VERSION %s
# VERSION: LLD
Index: lld/ELF/DriverUtils.cpp
===================================================================
--- lld/ELF/DriverUtils.cpp
+++ lld/ELF/DriverUtils.cpp
@@ -119,6 +119,24 @@
void elf::printHelp(const char *Argv0) {
ELFOptTable Table;
Table.PrintHelp(outs(), Argv0, "lld", false);
+ outs() << "\n";
+
+ // Scripts generated by Libtool 2.4.6 or earlier expects /supported
+ // targets:.* elf/ in a message for the -help option. If it doesn't
+ // match, the scripts suppose that the linker doesn't support very basic
+ // features such as shared libraries. Therefore, we need to print out at
+ // least "elf". Here, we print out all the targets that we support.
+ outs() << Argv0 << ": supported targets: "
+ << "elf32-i386 elf32-iamcu elf32-littlearm elf32-powerpc "
+ << "elf32-tradbigmips elf32-tradlittlemips elf32-x86-64 "
+ << "elf64-littleaarch64 elf64-powerpc elf64-tradbigmips "
+ << "elf64-tradlittlemips elf64-x86-64\n";
+
+ outs() << Argv0 << ": supported emulations: "
+ << "aarch64elf aarch64linux armelf_linux_eabi elf32_x86_64 "
+ << "elf32btsmip elf32btsmipn32 elf32ltsmip elf32ltsmipn32 elf32ppc "
+ << "elf64btsmip elf64ltsmip elf64ppc elf_amd64 elf_i386 elf_iamcu "
+ << "elf_x86_64\n";
}
// Reconstructs command line arguments so that so that you can re-run
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D31208.92540.patch
Type: text/x-patch
Size: 1788 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170321/d8d22c40/attachment.bin>
More information about the llvm-commits
mailing list