summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2017-03-24 03:13:55 +0000
committerjsg <jsg@openbsd.org>2017-03-24 03:13:55 +0000
commitf4a2453e155eea96029e5125280905fe638080b3 (patch)
tree8ad25f6f514e9e0b56d89361e5abf5a6ecc68970
parentAdd "(compatible with GNU linkers)" to the lld version output to avoid (diff)
downloadwireguard-openbsd-f4a2453e155eea96029e5125280905fe638080b3.tar.xz
wireguard-openbsd-f4a2453e155eea96029e5125280905fe638080b3.zip
Add "supported targets" in lld --help output to be compatible with what
libtool generated configure scripts expect. Otherwise they might assume shared libraries aren't supported. From lld svn revisions 298568 and 298571. Discussed with kettenis@
-rw-r--r--gnu/llvm/tools/lld/ELF/DriverUtils.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/gnu/llvm/tools/lld/ELF/DriverUtils.cpp b/gnu/llvm/tools/lld/ELF/DriverUtils.cpp
index 803b112120d..5ba494d791d 100644
--- a/gnu/llvm/tools/lld/ELF/DriverUtils.cpp
+++ b/gnu/llvm/tools/lld/ELF/DriverUtils.cpp
@@ -120,6 +120,19 @@ opt::InputArgList ELFOptTable::parse(ArrayRef<const char *> Argv) {
void elf::printHelp(const char *Argv0) {
ELFOptTable Table;
Table.PrintHelp(outs(), Argv0, "lld", false);
+ outs() << "\n";
+
+ // Scripts generated by Libtool versions up to at least 2.4.6 (the most
+ // recent version as of March 2017) expect /: supported targets:.* elf/
+ // in a message for the -help option. If it doesn't match, the scripts
+ // assume 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-amdgpu elf64-littleaarch64 elf64-powerpc "
+ << "elf64-tradbigmips elf64-tradlittlemips elf64-x86-64\n";
}
// Reconstructs command line arguments so that so that you can re-run