]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/configure.ac
Update year range in copyright notice of binutils files
[thirdparty/binutils-gdb.git] / bfd / configure.ac
index 3b32d693d79d31f618f4ebc85c507702258d122a..819c9852210d67e946b0b94b6461e4cc407eea13 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl
-dnl   Copyright (C) 2012-2018 Free Software Foundation, Inc.
+dnl   Copyright (C) 2012-2021 Free Software Foundation, Inc.
 dnl
 dnl This file is free software; you can redistribute it and/or modify
 dnl it under the terms of the GNU General Public License as published by
@@ -17,7 +17,6 @@ dnl along with this program; see the file COPYING3.  If not see
 dnl <http://www.gnu.org/licenses/>.
 dnl
 
-AC_PREREQ(2.59)
 m4_include([version.m4])
 AC_INIT([bfd], BFD_VERSION)
 AC_CONFIG_SRCDIR([libbfd.c])
@@ -45,11 +44,31 @@ LT_INIT([dlopen])
 # AC_PLUGINS setting $plugins is called by ACX_LARGEFILE.
 ACX_LARGEFILE
 
-AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes")
+changequote(,)dnl
+case "${target}" in
+    hppa*64*-*-* | vax-*-netbsdelf*) ;;
+    *-*-*aout* | i[3-7]86-*-bsd* | i[3-7]86-*-msdos* | ns32k-*-* | \
+    pdp11-*-* | vax-*-*bsd*)
+changequote([,])dnl
+       if test "$plugins" = "yes"; then
+           if test "${enable_plugins+set}" = set; then
+               AC_MSG_WARN(Enabling plugins for AOUT is experimental)
+           else
+               plugins=no
+           fi
+       fi ;;
+    hppa*-*-hpux* | *-*-*vms* | \
+    powerpc*-*-aix* | powerpc-*-beos* | powerpc-*-macos* | rs6000-*-*)
+       if test "$plugins" = "yes"; then
+           if test "${enable_plugins+set}" = set; then
+               AC_MSG_WARN(Enabling plugins may result in ar creating non-standard archives for ${target})
+           else
+               plugins=no
+           fi
+       fi ;;
+esac
 
-if test "$plugins" = "yes"; then
-  enable_targets="$enable_targets plugin"
-fi
+AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes")
 
 AC_ARG_ENABLE(64-bit-bfd,
 [  --enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)],
@@ -107,8 +126,10 @@ AC_ARG_ENABLE(separate-code,
   no) ac_default_ld_z_separate_code=0 ;;
 esac])
 # Enable -z separate-code by default for Linux/x86.
+changequote(,)dnl
 case "${target}" in
 i[3-7]86-*-linux-* | x86_64-*-linux-*)
+changequote([,])dnl
   if test ${ac_default_ld_z_separate_code} = unset; then
     ac_default_ld_z_separate_code=1
   fi
@@ -167,7 +188,7 @@ bfd_default_target_size=32
 
 # host stuff:
 
-ALL_LINGUAS="da es fi fr hr id ja ro ru rw sr sv tr uk vi zh_CN"
+ALL_LINGUAS="da es fi fr hr id ja ro ru rw sr sv tr uk vi zh_CN pt"
 ZW_GNU_GETTEXT_SISTER_DIR
 AM_PO_SUBDIRS
 
@@ -188,6 +209,7 @@ AC_TYPE_LONG_DOUBLE
 AC_CHECK_TYPES([long long], [AC_CHECK_SIZEOF(long long)])
 AC_CHECK_SIZEOF(void *)
 AC_CHECK_SIZEOF(long)
+AC_CHECK_SIZEOF(int)
 
 if test "x${ac_cv_sizeof_void_p}" = "x8"; then
   host64=true
@@ -221,14 +243,15 @@ AC_SUBST(BFD_HOSTPTR_T)
 
 BFD_CC_FOR_BUILD
 
-AC_CHECK_HEADERS(alloca.h stddef.h string.h strings.h stdlib.h time.h unistd.h wchar.h wctype.h)
-AC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h sys/stat.h sys/resource.h)
+AC_CHECK_HEADERS(alloca.h fcntl.h limits.h stddef.h stdlib.h string.h \
+                strings.h sys/file.h sys/resource.h sys/stat.h sys/time.h \
+                time.h unistd.h wchar.h wctype.h)
 GCC_HEADER_STDINT(bfd_stdint.h)
 AC_HEADER_TIME
 AC_HEADER_DIRENT
 
 ACX_HEADER_STRING
-AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid fileno)
+AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid fileno fls)
 AC_CHECK_FUNCS(strtoull getrlimit)
 
 AC_CHECK_DECLS(basename)
@@ -256,6 +279,20 @@ AC_CHECK_DECLS(strnlen)
 # This is used only by compress.c.
 AM_ZLIB
 
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Werror"
+AC_CACHE_CHECK([compiler support for hidden visibility], bfd_cv_hidden,
+[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+const char hw[] __attribute__ ((__visibility__ ("hidden"))) = "Hello, World\n";
+extern void print (const char *) __attribute__ ((__visibility__ ("hidden")));]],
+       [[print (hw);]])],
+  [bfd_cv_hidden=yes], [bfd_cv_hidden=no])])
+CFLAGS="$save_CFLAGS"
+if test $bfd_cv_hidden = yes; then
+  AC_DEFINE(HAVE_HIDDEN, 1,
+           [Define if your compiler supports hidden visibility.])
+fi
+
 # Check if linker supports --as-needed and --no-as-needed options
 AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
        [bfd_cv_ld_as_needed=no
@@ -281,15 +318,15 @@ changequote([,])dnl
     SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
   fi
 
-# More hacks to build DLLs on Windows.
   case "${host}" in
+  # More hacks to build DLLs on Windows.
   *-*-cygwin*)
     SHARED_LDFLAGS="-no-undefined"
     SHARED_LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32"
   ;;
 
-  # Hack to build or1k-src on OSX
-  or1k*-*-darwin*)
+  # Use built-in libintl on macOS, since it is not provided by libc.
+  *-*-darwin*)
     SHARED_LIBADD="-L`pwd`/../libiberty/pic -L`pwd`/../intl -liberty -lintl"
   ;;
   esac
@@ -333,12 +370,12 @@ selarchs=
 TDEFINES=
 for targ in $target $canon_targets
 do
-    if test "x$targ" = "xall"; then
+    if test $targ = all; then
         all_targets=true
        assocvecs="$assocvecs $targ_defvec $targ_selvecs"
-    else
+    elif test $targ != plugin; then
        . $srcdir/config.bfd
-       if test "x$targ" = "x$target"; then
+       if test $targ = $target; then
            defvec=$targ_defvec
        fi
        selvecs="$selvecs $targ_defvec $targ_selvecs"
@@ -390,13 +427,14 @@ selarchs="$f"
 # Target backend .o files.
 tb=
 
-elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-properties.lo
-     elf-eh-frame.lo dwarf1.lo dwarf2.lo"
+elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-eh-frame.lo
+     dwarf1.lo dwarf2.lo"
 coffgen="coffgen.lo dwarf2.lo"
 coff="cofflink.lo $coffgen"
 ecoff="ecofflink.lo $coffgen"
 xcoff="xcofflink.lo $coffgen"
 
+elfxx_x86="elfxx-x86.lo elf-ifunc.lo elf-vxworks.lo"
 for vec in $selvecs
 do
     target_size=32
@@ -422,14 +460,10 @@ do
     aout_vec)                   tb="$tb host-aout.lo aout32.lo" ;;
     arc_elf32_be_vec)           tb="$tb elf32-arc.lo elf32.lo $elf" ;;
     arc_elf32_le_vec)           tb="$tb elf32-arc.lo elf32.lo $elf" ;;
-    arm_aout_be_vec)            tb="$tb aout-arm.lo aout32.lo" ;;
-    arm_aout_le_vec)            tb="$tb aout-arm.lo aout32.lo" ;;
-    arm_aout_nbsd_vec)          tb="$tb armnetbsd.lo aout32.lo" ;;
-    arm_aout_riscix_vec)        tb="$tb aout32.lo riscix.lo" ;;
-    arm_coff_be_vec)            tb="$tb coff-arm.lo $coff" ;;
-    arm_coff_le_vec)            tb="$tb coff-arm.lo $coff" ;;
     arm_elf32_be_vec)           tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
     arm_elf32_le_vec)           tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
+    arm_elf32_fdpic_be_vec)     tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
+    arm_elf32_fdpic_le_vec)     tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
     arm_elf32_nacl_be_vec)      tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
     arm_elf32_nacl_le_vec)      tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
     arm_elf32_symbian_be_vec)   tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
@@ -449,11 +483,12 @@ do
     bfin_elf32_vec)             tb="$tb elf32-bfin.lo elf32.lo $elf" ;;
     bfin_elf32_fdpic_vec)       tb="$tb elf32-bfin.lo elf32.lo $elf" ;;
     cr16_elf32_vec)             tb="$tb elf32-cr16.lo elf32.lo $elf" ;;
-    cr16c_elf32_vec)            tb="$tb elf32-cr16c.lo elf32.lo $elf" ;;
     cris_aout_vec)              tb="$tb aout-cris.lo" ;;
     cris_elf32_vec)             tb="$tb elf32-cris.lo elf32.lo $elf" ;;
     cris_elf32_us_vec)          tb="$tb elf32-cris.lo elf32.lo $elf" ;;
     crx_elf32_vec)              tb="$tb elf32-crx.lo elf32.lo $elf" ;;
+    csky_elf32_be_vec)          tb="$tb elf32-csky.lo elf32.lo $elf" ;;
+    csky_elf32_le_vec)          tb="$tb elf32-csky.lo elf32.lo $elf" ;;
     d10v_elf32_vec)             tb="$tb elf32-d10v.lo elf32.lo $elf" ;;
     d30v_elf32_vec)             tb="$tb elf32-d30v.lo elf32.lo $elf" ;;
     dlx_elf32_be_vec)           tb="$tb elf32-dlx.lo elf32.lo $elf" ;;
@@ -461,6 +496,8 @@ do
     elf32_le_vec)               tb="$tb elf32-gen.lo elf32.lo $elf" ;;
     elf64_be_vec)               tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
     elf64_le_vec)               tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
+    bpf_elf64_le_vec)           tb="$tb elf64-bpf.lo elf64.lo $elf"; target_size=64;;
+    bpf_elf64_be_vec)           tb="$tb elf64-bpf.lo elf64.lo $elf"; target_size=64 ;;
     epiphany_elf32_vec)                 tb="$tb elf32-epiphany.lo elf32.lo $elf" ;;
     fr30_elf32_vec)             tb="$tb elf32-fr30.lo elf32.lo $elf" ;;
     frv_elf32_vec)              tb="$tb elf32-frv.lo elf32.lo $elf" ;;
@@ -480,16 +517,16 @@ do
     i386_coff_go32_vec)                 tb="$tb coff-go32.lo $coff" ;;
     i386_coff_go32stubbed_vec)  tb="$tb coff-stgo32.lo $coff" ;;
     i386_coff_lynx_vec)                 tb="$tb cf-i386lynx.lo lynx-core.lo $coff" ;;
-    i386_elf32_vec)             tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
-    i386_elf32_fbsd_vec)        tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
-    i386_elf32_nacl_vec)        tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
-    i386_elf32_sol2_vec)        tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
-    i386_elf32_vxworks_vec)     tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
+    i386_elf32_vec)             tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;;
+    i386_elf32_fbsd_vec)        tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;;
+    i386_elf32_sol2_vec)        tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;;
+    i386_elf32_vxworks_vec)     tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;;
     i386_mach_o_vec)            tb="$tb mach-o-i386.lo" ;;
     i386_msdos_vec)             tb="$tb i386msdos.lo" ;;
     i386_pe_vec)                tb="$tb pe-i386.lo peigen.lo $coff" ;;
+    i386_pe_big_vec)            tb="$tb pe-i386.lo peigen.lo $coff" ;;
     i386_pei_vec)               tb="$tb pei-i386.lo peigen.lo $coff" ;;
-    iamcu_elf32_vec)            tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;;
+    iamcu_elf32_vec)            tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;;
     ia64_elf32_be_vec)          tb="$tb elf32-ia64.lo elfxx-ia64.lo elf32.lo $elf" ;;
     ia64_elf32_hpux_be_vec)     tb="$tb elf32-ia64.lo elfxx-ia64.lo elf32.lo $elf" ;;
     ia64_elf64_be_vec)          tb="$tb elf64-ia64.lo elfxx-ia64.lo elf64.lo $elf"; target_size=64 ;;
@@ -499,10 +536,10 @@ do
     ia64_pei_vec)               tb="$tb pei-ia64.lo pepigen.lo $coff"; target_size=64 ;;
     ip2k_elf32_vec)             tb="$tb elf32-ip2k.lo elf32.lo $elf" ;;
     iq2000_elf32_vec)           tb="$tb elf32-iq2000.lo elf32.lo $elf" ;;
-    k1om_elf64_vec)             tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    k1om_elf64_fbsd_vec)        tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    l1om_elf64_vec)             tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    l1om_elf64_fbsd_vec)        tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
+    k1om_elf64_vec)             tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
+    k1om_elf64_fbsd_vec)        tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
+    l1om_elf64_vec)             tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
+    l1om_elf64_fbsd_vec)        tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
     lm32_elf32_vec)             tb="$tb elf32-lm32.lo elf32.lo $elf" ;;
     lm32_elf32_fdpic_vec)       tb="$tb elf32-lm32.lo elf32.lo $elf" ;;
     m32c_elf32_vec)             tb="$tb elf32-m32c.lo elf32.lo $elf" ;;
@@ -513,6 +550,7 @@ do
     m68hc11_elf32_vec)          tb="$tb elf32-m68hc11.lo elf32-m68hc1x.lo elf32.lo $elf" ;;
     m68hc12_elf32_vec)          tb="$tb elf32-m68hc12.lo elf32-m68hc1x.lo elf32.lo $elf" ;;
     m68k_elf32_vec)             tb="$tb elf32-m68k.lo elf32.lo $elf" ;;
+    s12z_elf32_vec)             tb="$tb elf32-s12z.lo elf32.lo $elf" ;;
     mach_o_be_vec)              tb="$tb mach-o.lo dwarf2.lo" ;;
     mach_o_le_vec)              tb="$tb mach-o.lo dwarf2.lo" ;;
     mach_o_fat_vec)             tb="$tb mach-o.lo dwarf2.lo" ;;
@@ -563,6 +601,7 @@ do
     nds32_elf32_le_vec)                 tb="$tb elf32-nds32.lo elf32.lo $elf" ;;
     nds32_elf32_linux_be_vec)   tb="$tb elf32-nds32.lo elf32.lo $elf" ;;
     nds32_elf32_linux_le_vec)   tb="$tb elf32-nds32.lo elf32.lo $elf" ;;
+    nfp_elf64_vec)              tb="$tb elf64-nfp.lo elf64.lo $elf" ;;
     nios2_elf32_be_vec)                 tb="$tb elf32-nios2.lo elf32.lo $elf" ;;
     nios2_elf32_le_vec)                 tb="$tb elf32-nios2.lo elf32.lo $elf" ;;
     ns32k_aout_pc532mach_vec)   tb="$tb pc532-mach.lo aout-ns32k.lo" ;;
@@ -573,7 +612,6 @@ do
     pef_xlib_vec)               tb="$tb pef.lo" ;;
     pj_elf32_vec)               tb="$tb elf32-pj.lo elf32.lo $elf" ;;
     pj_elf32_le_vec)            tb="$tb elf32-pj.lo elf32.lo $elf" ;;
-    plugin_vec)                         tb="$tb plugin.lo" ;;
     powerpc_boot_vec)           tb="$tb ppcboot.lo" ;;
     powerpc_elf32_vec)          tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;;
     powerpc_elf32_le_vec)       tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;;
@@ -582,14 +620,11 @@ do
     powerpc_elf64_vec)          tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
     powerpc_elf64_le_vec)       tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;;
     powerpc_elf64_fbsd_vec)     tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;;
-    powerpc_pe_vec)             tb="$tb pe-ppc.lo peigen.lo $coff" ;;
-    powerpc_pe_le_vec)          tb="$tb pe-ppc.lo peigen.lo $coff" ;;
-    powerpc_pei_vec)            tb="$tb pei-ppc.lo peigen.lo $coff" ;;
-    powerpc_pei_le_vec)                 tb="$tb pei-ppc.lo peigen.lo $coff" ;;
+    powerpc_elf64_fbsd_le_vec)  tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;;
     powerpc_xcoff_vec)          tb="$tb coff-rs6000.lo $xcoff" ;;
     pru_elf32_vec)              tb="$tb elf32-pru.lo elf32.lo $elf" ;;
-    riscv_elf32_vec)            tb="$tb elf32-riscv.lo elfxx-riscv.lo elf32.lo $elf" ;;
-    riscv_elf64_vec)            tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf32.lo $elf"; target_size=64 ;;
+    riscv_elf32_vec)            tb="$tb elf32-riscv.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf" ;;
+    riscv_elf64_vec)            tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
     rl78_elf32_vec)             tb="$tb elf32-rl78.lo elf32.lo $elf" ;;
     rs6000_xcoff64_vec)                 tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
     rs6000_xcoff64_aix_vec)     tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
@@ -597,10 +632,11 @@ do
     rx_elf32_be_vec)            tb="$tb elf32-rx.lo elf32.lo $elf" ;;
     rx_elf32_be_ns_vec)                 tb="$tb elf32-rx.lo elf32.lo $elf" ;;
     rx_elf32_le_vec)            tb="$tb elf32-rx.lo elf32.lo $elf" ;;
+    rx_elf32_linux_le_vec)      tb="$tb elf32-rx.lo elf32.lo $elf" ;;
     s390_elf32_vec)             tb="$tb elf32-s390.lo elf32.lo $elf" ;;
     s390_elf64_vec)             tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;;
-    score_elf32_be_vec)                 tb="$tb elf32-score.lo elf32-score7.lo elf32.lo $elf"; want64=true; target_size=64 ;;
-    score_elf32_le_vec)                 tb="$tb elf32-score.lo elf32-score7.lo elf32.lo $elf"; want64=true; target_size=64 ;;
+    score_elf32_be_vec)                 tb="$tb elf32-score.lo elf32-score7.lo elf32.lo elf64.lo $elf"; want64=true; target_size=64 ;;
+    score_elf32_le_vec)                 tb="$tb elf32-score.lo elf32-score7.lo elf32.lo elf64.lo $elf"; want64=true; target_size=64 ;;
     sh_coff_vec)                tb="$tb coff-sh.lo $coff" ;;
     sh_coff_le_vec)             tb="$tb coff-sh.lo $coff" ;;
     sh_coff_small_vec)          tb="$tb coff-sh.lo $coff" ;;
@@ -625,7 +661,6 @@ do
     sparc_elf64_sol2_vec)       tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;;
     spu_elf32_vec)              tb="$tb elf32-spu.lo elf32.lo $elf" ;;
     sym_vec)                    tb="$tb xsym.lo" ;;
-    tic30_aout_vec)             tb="$tb aout-tic30.lo" ;;
     tic30_coff_vec)             tb="$tb coff-tic30.lo $coffgen" ;;
     tic4x_coff0_vec)            tb="$tb coff-tic4x.lo $coffgen" ;;
     tic4x_coff0_beh_vec)        tb="$tb coff-tic4x.lo $coffgen" ;;
@@ -645,7 +680,6 @@ do
     tic6x_elf32_c6000_le_vec)   tb="$tb elf32-tic6x.lo elf32.lo $elf" ;;
     tic6x_elf32_linux_be_vec)   tb="$tb elf32-tic6x.lo elf32.lo $elf" ;;
     tic6x_elf32_linux_le_vec)   tb="$tb elf32-tic6x.lo elf32.lo $elf" ;;
-    tic80_coff_vec)             tb="$tb coff-tic80.lo $coff" ;;
     tilegx_elf32_be_vec)        tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;;
     tilegx_elf32_le_vec)        tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;;
     tilegx_elf64_be_vec)        tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;;
@@ -661,16 +695,14 @@ do
     wasm_vec)                    tb="$tb wasm-module.lo" ;;
     wasm32_elf32_vec)            tb="$tb elf32-wasm32.lo elf32.lo $elf" ;;
     x86_64_coff_vec)            tb="$tb coff-x86_64.lo $coff"; target_size=64 ;;
-    x86_64_elf32_vec)           tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;;
-    x86_64_elf32_nacl_vec)      tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;;
-    x86_64_elf64_vec)           tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    x86_64_elf64_cloudabi_vec)  tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    x86_64_elf64_fbsd_vec)      tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    x86_64_elf64_nacl_vec)      tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
-    x86_64_elf64_sol2_vec)      tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;;
+    x86_64_elf32_vec)           tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo elf32.lo $elf"; target_size=64 ;;
+    x86_64_elf64_vec)           tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
+    x86_64_elf64_cloudabi_vec)  tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
+    x86_64_elf64_fbsd_vec)      tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
+    x86_64_elf64_sol2_vec)      tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
     x86_64_mach_o_vec)          tb="$tb mach-o-x86-64.lo" ;;
     x86_64_pe_vec)              tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;;
-    x86_64_pe_be_vec)           tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;;
+    x86_64_pe_big_vec)          tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;;
     x86_64_pei_vec)             tb="$tb pei-x86_64.lo pex64igen.lo $coff"; target_size=64 ;;
     xc16x_elf32_vec)            tb="$tb elf32-xc16x.lo elf32.lo $elf" ;;
     xgate_elf32_vec)            tb="$tb elf32-xgate.lo elf32.lo $elf" ;;
@@ -678,6 +710,7 @@ do
     xtensa_elf32_be_vec)        tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;;
     xtensa_elf32_le_vec)        tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;;
     z80_coff_vec)               tb="$tb coff-z80.lo reloc16.lo $coffgen" ;;
+    z80_elf32_vec)              tb="$tb elf32-z80.lo elf32.lo $elf" ;;
     z8k_coff_vec)               tb="$tb coff-z8k.lo reloc16.lo $coff" ;;
 
     # These appear out of order in targets.c
@@ -699,6 +732,10 @@ do
     fi
 done
 
+if test "$plugins" = "yes"; then
+     tb="$tb plugin.lo"
+fi
+
 # Target architecture .o files.
 # A couple of CPUs use shorter file names to avoid problems on DOS
 # filesystems.
@@ -818,7 +855,7 @@ if test "${target}" = "${host}"; then
        ;;
   arm-*-freebsd* | arm-*-kfreebsd*-gnu)
        COREFILE='' ;;
-  arm-*-netbsd* | arm-*-openbsd*)
+  arm*-*-netbsd* | arm-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
   arm-*-riscix)                COREFILE=trad-core.lo ;;
@@ -903,7 +940,7 @@ changequote(,)dnl
   i[3-7]86-*-isc*)     COREFILE=trad-core.lo ;;
   i[3-7]86-*-aix*)     COREFILE=aix386-core.lo ;;
 changequote([,])dnl
-  mips-*-netbsd* | mips*-*-openbsd*)
+  mips*-*-netbsd* | mips*-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
   mips-sgi-irix4*)     COREFILE=irix-core.lo ;;
@@ -1004,7 +1041,7 @@ changequote([,])dnl
 
   # ELF corefile support has several flavors, but all of
   # them use something called <sys/procfs.h>
-  AC_CHECK_HEADERS(sys/procfs.h)
+  BFD_SYS_PROCFS_H
   if test "$ac_cv_header_sys_procfs_h" = yes; then
     BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t)
     BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t)
@@ -1069,7 +1106,6 @@ AC_MSG_RESULT($bfd_file_ptr)
 AC_SUBST(bfd_file_ptr)
 AC_SUBST(bfd_ufile_ptr)
 
-dnl AC_CHECK_HEADERS(sys/mman.h)
 AC_FUNC_MMAP
 AC_CHECK_FUNCS(madvise mprotect)
 case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in