aboutsummaryrefslogtreecommitdiff
path: root/ld/configure.tgt
diff options
context:
space:
mode:
authorJohn Ericson <git@JohnEricson.me>2021-08-11 13:17:54 +0100
committerNick Clifton <nickc@redhat.com>2021-08-11 13:17:54 +0100
commitab4f385b3c31e6bca198d2eef1a8c5268e28cd76 (patch)
tree64a9c881a0adcf1efcb7e9bc774ca6180f1002ab /ld/configure.tgt
parent0e6e4b599a1572823c71e2e95a24cf17d048f42b (diff)
downloadbinutils-ab4f385b3c31e6bca198d2eef1a8c5268e28cd76.zip
binutils-ab4f385b3c31e6bca198d2eef1a8c5268e28cd76.tar.gz
binutils-ab4f385b3c31e6bca198d2eef1a8c5268e28cd76.tar.bz2
Deprecate a.out support for NetBSD targets.
As discussed previously, a.out support is now quite deprecated, and in some cases removed, in both Binutils itself and NetBSD, so this legacy default makes little sense. `netbsdelf*` and `netbsdaout*` still work allowing the user to be explicit about there choice. Additionally, the configure script warns about the change as Nick Clifton requested. One possible concern was the status of NetBSD on NS32K, where only a.out was supported. But per [1] NetBSD has removed support, and if it were to come back, it would be with ELF. The binutils implementation is therefore marked obsolete, per the instructions in the last message. With that patch and this one applied, I have confirmed the following: --target=i686-unknown-netbsd --target=i686-unknown-netbsdelf builds completely --target=i686-unknown-netbsdaout properly fails because target is deprecated. --target=vax-unknown-netbsdaout builds completely except for gas, where the target is deprecated. [1]: https://mail-index.netbsd.org/tech-toolchain/2021/07/19/msg004025.html --- bfd/config.bfd | 43 +++++++++++++-------- bfd/configure.ac | 5 +-- binutils/testsuite/binutils-all/nm.exp | 2 +- binutils/testsuite/lib/binutils-common.exp | 7 +--- config/picflag.m4 | 4 +- gas/configure.tgt | 9 +++-- gas/testsuite/gas/arm/blx-bl-convert.d | 2 +- gas/testsuite/gas/arm/blx-local-thumb.d | 2 +- gas/testsuite/gas/sh/basic.exp | 2 +- gdb/configure.host | 34 +++++++---------- gdb/configure.tgt | 2 +- gdb/testsuite/gdb.asm/asm-source.exp | 6 +-- intl/configure | 2 +- ld/configure.tgt | 44 +++++++++++----------- ld/testsuite/ld-arm/arm-elf.exp | 4 +- ld/testsuite/ld-elf/elf.exp | 2 +- ld/testsuite/ld-elf/shared.exp | 4 +- libiberty/configure | 4 +-
Diffstat (limited to 'ld/configure.tgt')
-rw-r--r--ld/configure.tgt44
1 files changed, 21 insertions, 23 deletions
diff --git a/ld/configure.tgt b/ld/configure.tgt
index 6c53539..075febf 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -135,10 +135,10 @@ arm*-*-freebsd* | arm-*-kfreebsd*-gnu)
targ_emul=armelf_fbsd
targ_extra_emuls="armelfb_fbsd armelf"
;;
-armeb-*-netbsdelf*) targ_emul=armelfb_nbsd;
+armeb-*-netbsd*) targ_emul=armelfb_nbsd;
targ_extra_emuls="armelf_nbsd armelf"
;;
-arm-*-netbsdelf*) targ_emul=armelf_nbsd;
+arm-*-netbsd*) targ_emul=armelf_nbsd;
targ_extra_emuls="armelfb_nbsd armelf"
;;
arm-*-nto*) targ_emul=armnto
@@ -340,7 +340,10 @@ i[3-7]86-*-solaris*) targ_emul=elf_i386_ldso
targ_extra_emuls="elf_i386"
targ_extra_libpath=$targ_extra_emuls
;;
-i[3-7]86-*-netbsdelf* | \
+i[3-7]86-*-netbsdpe*) targ_emul=i386pe
+ targ_extra_ofiles="deffilep.o pe-dll.o"
+ ;;
+i[3-7]86-*-netbsd* | \
i[3-7]86-*-netbsd*-gnu* | \
i[3-7]86-*-knetbsd*-gnu | \
i[3-7]86-*-openbsd*)
@@ -443,7 +446,7 @@ m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
targ_extra_emuls="m68hc12elfb m68hc11elf m68hc11elfb"
;;
-m68*-*-netbsdelf*) targ_emul=m68kelfnbsd
+m68*-*-netbsd*) targ_emul=m68kelfnbsd
;;
m68*-*-*) targ_emul=m68kelf
;;
@@ -809,10 +812,16 @@ sh*eb-*-linux*) targ_emul=shelf_linux
sh*-*-linux*) targ_emul=shlelf_linux
targ_extra_emuls="shlelf_fd"
;;
-sh*l*-*-netbsdelf*) targ_emul=shlelf_nbsd
+sh*l*-*-netbsdaout*) targ_emul=shl
+ targ_extra_emuls=sh
+ ;;
+sh*-*-netbsdaout*) targ_emul=sh
+ targ_extra_emuls=shl
+ ;;
+sh*l*-*-netbsd*) targ_emul=shlelf_nbsd
targ_extra_emuls=shelf_nbsd
;;
-sh*-*-netbsdelf*) targ_emul=shelf_nbsd
+sh*-*-netbsd*) targ_emul=shelf_nbsd
targ_extra_emuls=shlelf_nbsd
;;
shle*-*-elf* | sh[1234]*le*-*-elf | shle*-*-kaos*)
@@ -913,13 +922,12 @@ tilepro-*-*) targ_emul=elf32tilepro
v850*-*-*) targ_emul=v850_rh850
targ_extra_emuls=v850
;;
-vax-*-netbsdelf*) targ_emul=elf32vax
- targ_extra_emuls=vaxnbsd
- ;;
-vax-*-netbsdaout* | vax-*-netbsd*)
- targ_emul=vaxnbsd
+vax-*-netbsdaout*) targ_emul=vaxnbsd
targ_extra_emuls=elf32vax
;;
+vax-*-netbsd*) targ_emul=elf32vax
+ targ_extra_emuls=vaxnbsd
+ ;;
vax-*-linux-*) targ_emul=elf32vax
;;
visium-*-elf) targ_emul=elf32visium
@@ -951,19 +959,9 @@ x86_64-*-netbsd* | x86_64-*-openbsd*)
targ_emul=elf_x86_64
targ_extra_emuls="elf_i386 elf_iamcu elf_l1om elf_k1om"
tdir_elf_iamcu=`echo ${targ_alias} | \
- sed -e 's/x86_64/i386/'`
- case "${tdir_elf_iamcu}" in
- *-netbsdelf*) ;;
- *) tdir_elf_iamcu=`echo ${tdir_elf_iamcu} | \
- sed -e 's/netbsd/netbsdelf/'`;;
- esac
+ sed -e 's/x86_64/i386/' -e 's/aout//'`
tdir_elf_i386=`echo ${targ_alias} | \
- sed -e 's/x86_64/i386/'`
- case "${tdir_elf_i386}" in
- *-netbsdelf*) ;;
- *) tdir_elf_i386=`echo ${tdir_elf_i386} | \
- sed -e 's/netbsd/netbsdelf/'`;;
- esac
+ sed -e 's/x86_64/i386/' -e 's/aout//'`
;;
x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia* | x86_64-*-genode*)
targ_emul=elf_x86_64