]> 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 a578c3a019e5354f08f4151c20eecb63abc7e778..7fcc5d4a947849197c3317bae245e4863c1a99d8 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl
-dnl   Copyright (C) 2012-2021 Free Software Foundation, Inc.
+dnl   Copyright (C) 2012-2024 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
@@ -82,13 +82,12 @@ if test x$ac_checking != x ; then
   AC_DEFINE(ENABLE_CHECKING, 1, [Define if you want run-time sanity checks.])
 fi
 
-AC_ARG_ENABLE(64-bit-bfd,
-[  --enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)],
-[case "${enableval}" in
-  yes)  want64=true  ;;
-  no)   want64=false ;;
-  *)    AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;;
-esac],[want64=false])dnl
+BFD_64_BIT
+if test $enable_64_bit_bfd = yes ; then
+  want64=true
+else
+  want64=false
+fi
 
 AC_ARG_ENABLE(targets,
 [  --enable-targets        alternative target configurations],
@@ -194,6 +193,8 @@ AM_CONDITIONAL(GENINSRC_NEVER, false)
 AM_INSTALL_LIBBFD
 AC_EXEEXT
 
+AC_C_BIGENDIAN
+
 host64=false
 target64=false
 bfd_default_target_size=32
@@ -210,13 +211,6 @@ AM_PO_SUBDIRS
 AC_SUBST(HDEFINES)
 AC_PROG_INSTALL
 
-BFD_HOST_64BIT_LONG=0
-BFD_HOST_64BIT_LONG_LONG=0
-BFD_HOST_64_BIT_DEFINED=0
-BFD_HOST_64_BIT=
-BFD_HOST_U_64_BIT=
-BFD_HOSTPTR_T="unsigned long"
-
 AC_CHECK_SIZEOF(long long)
 AC_CHECK_SIZEOF(void *)
 AC_CHECK_SIZEOF(long)
@@ -226,32 +220,6 @@ if test "x${ac_cv_sizeof_void_p}" = "x8"; then
   host64=true
 fi
 
-if test "x${ac_cv_sizeof_long}" = "x8"; then
-  BFD_HOST_64BIT_LONG=1
-  test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long"
-  test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long"
-elif test "x${ac_cv_sizeof_long_long}" = "x8"; then
-  BFD_HOST_64BIT_LONG_LONG=1
-  test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long"
-  test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long"
-  if test "x${ac_cv_sizeof_void_p}" = "x8"; then
-    BFD_HOSTPTR_T="unsigned long long"
-  fi
-fi
-
-if test -n "${HOST_64BIT_TYPE}" -a -n "${HOST_U_64BIT_TYPE}"; then
-  BFD_HOST_64_BIT_DEFINED=1
-  BFD_HOST_64_BIT="${HOST_64BIT_TYPE}"
-  BFD_HOST_U_64_BIT="${HOST_U_64BIT_TYPE}"
-fi
-
-AC_SUBST(BFD_HOST_64BIT_LONG)
-AC_SUBST(BFD_HOST_64BIT_LONG_LONG)
-AC_SUBST(BFD_HOST_64_BIT_DEFINED)
-AC_SUBST(BFD_HOST_64_BIT)
-AC_SUBST(BFD_HOST_U_64_BIT)
-AC_SUBST(BFD_HOSTPTR_T)
-
 BFD_CC_FOR_BUILD
 
 AC_CHECK_HEADERS(fcntl.h sys/file.h sys/resource.h sys/stat.h sys/types.h \
@@ -261,12 +229,16 @@ AC_CHECK_FUNCS(fcntl fdopen fileno fls getgid getpagesize getrlimit getuid \
               sysconf)
 
 AC_CHECK_DECLS([basename, ffs, stpcpy, asprintf, vasprintf, strnlen])
+AC_CHECK_DECLS([___lc_codepage_func], [], [], [[#include <locale.h>]])
 
 BFD_BINARY_FOPEN
 
-# Link in zlib if we can.  This allows us to read compressed debug sections.
+AX_TLS
+
+# Link in zlib/zstd if we can.  This allows us to read compressed debug sections.
 # This is used only by compress.c.
 AM_ZLIB
+AC_ZSTD
 
 save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Werror"
@@ -308,7 +280,7 @@ changequote([,])dnl
   fi
 fi
 
-SHARED_LIBADD="$SHARED_LIBADD $LIBINTL"
+SHARED_LIBADD="$SHARED_LIBADD $LTLIBINTL"
 
 if test "$enable_shared" = "yes"; then
   case "${host}" in
@@ -416,7 +388,7 @@ selarchs="$f"
 tb=
 
 elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-eh-frame.lo
-     dwarf1.lo dwarf2.lo"
+     elf-sframe.lo dwarf1.lo dwarf2.lo"
 coffgen="coffgen.lo dwarf2.lo"
 coff="cofflink.lo $coffgen"
 ecoff="ecofflink.lo $coffgen"
@@ -437,13 +409,15 @@ do
     aarch64_elf64_le_vec)         tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
     aarch64_elf64_le_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
     aarch64_mach_o_vec)                 tb="$tb mach-o-aarch64.lo"; target_size=64 ;;
-    aarch64_pei_vec)            tb="$tb pei-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
+    aarch64_pei_le_vec)                 tb="$tb pei-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
+    aarch64_pe_le_vec)          tb="$tb pe-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
     alpha_ecoff_le_vec)                 tb="$tb coff-alpha.lo ecoff.lo $ecoff"; target_size=64 ;;
     alpha_elf64_vec)            tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;;
     alpha_elf64_fbsd_vec)       tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;;
     alpha_vms_vec)              tb="$tb vms-alpha.lo vms-misc.lo vms-lib.lo"; target_size=64 ;;
     alpha_vms_lib_txt_vec)      tb="$tb vms-lib.lo vms-misc.lo" ;;
     am33_elf32_linux_vec)       tb="$tb elf32-am33lin.lo elf32.lo $elf" ;;
+    amdgcn_elf64_le_vec)        tb="$tb elf64-amdgcn.lo elf64.lo $elf"; target_size=64 ;;
     aout0_be_vec)               tb="$tb aout0.lo aout32.lo" ;;
     aout64_vec)                         tb="$tb demo64.lo aout64.lo"; target_size=64 ;;
     aout_vec)                   tb="$tb host-aout.lo aout32.lo" ;;
@@ -523,14 +497,13 @@ 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 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 ;;
+    kvx_elf32_vec)              tb="$tb elf32-kvx.lo elfxx-kvx.lo elf32.lo $elf $ipa" ;;
+    kvx_elf64_vec)              tb="$tb elf64-kvx.lo elfxx-kvx.lo elf64.lo $elf $ipa"; 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" ;;
     loongarch_elf32_vec)        tb="$tb elf32-loongarch.lo elfxx-loongarch.lo elf32.lo elf-ifunc.lo $elf" ;;
     loongarch_elf64_vec)        tb="$tb elf64-loongarch.lo elf64.lo elfxx-loongarch.lo elf32.lo elf-ifunc.lo $elf"; target_size=64 ;;
+    loongarch64_pei_vec)        tb="$tb pei-loongarch64.lo pe-loongarch64igen.lo $coff"; target_size=64 ;;
     m32c_elf32_vec)             tb="$tb elf32-m32c.lo elf32.lo $elf" ;;
     m32r_elf32_vec)             tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
     m32r_elf32_le_vec)          tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
@@ -596,6 +569,7 @@ do
     ns32k_aout_pc532mach_vec)   tb="$tb pc532-mach.lo aout-ns32k.lo" ;;
     ns32k_aout_pc532nbsd_vec)   tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;;
     or1k_elf32_vec)             tb="$tb elf32-or1k.lo elf32.lo $elf" ;;
+    pdb_vec)                    tb="$tb pdb.lo" ;;
     pdp11_aout_vec)             tb="$tb pdp11.lo" ;;
     pef_vec)                    tb="$tb pef.lo" ;;
     pef_xlib_vec)               tb="$tb pef.lo" ;;
@@ -616,6 +590,7 @@ do
     riscv_elf64_vec)            tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
     riscv_elf32_be_vec)                 tb="$tb elf32-riscv.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf" ;;
     riscv_elf64_be_vec)                 tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
+    riscv64_pei_vec)            tb="$tb pei-riscv64.lo pe-riscv64igen.lo $coff"; 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 ;;
@@ -695,11 +670,10 @@ do
     x86_64_pe_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" ;;
     xstormy16_elf32_vec)        tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;;
-    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" ;;
+    xtensa_elf32_be_vec)        tb="$tb xtensa-dynconfig.lo xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;;
+    xtensa_elf32_le_vec)        tb="$tb xtensa-dynconfig.lo 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" ;;
@@ -786,10 +760,6 @@ case ${host64}-${target64}-${want64} in
     wordsize=64
     bfd64_libs='$(BFD64_LIBS)'
     all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)'
-    if test $BFD_HOST_64_BIT_DEFINED = 0; then
-      AC_MSG_WARN([You have requested a 64 bit BFD configuration, but])
-      AC_MSG_WARN([your compiler may not have a 64 bit integral type])
-    fi
     if test -n "$GCC" ; then
        bad_64bit_gcc=no;
        AC_MSG_CHECKING([for gcc version with buggy 64-bit support])
@@ -849,7 +819,6 @@ if test "${target}" = "${host}"; then
   arm*-*-netbsd* | arm-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
-  arm-*-riscix)                COREFILE=trad-core.lo ;;
   hppa*-*-hpux*)       COREFILE=hpux-core.lo ;;
   hppa*-*-hiux*)       COREFILE=hpux-core.lo ;;
   hppa*-*-mpeix*)      COREFILE=hpux-core.lo ;;
@@ -859,26 +828,13 @@ if test "${target}" = "${host}"; then
        COREFILE=netbsd-core.lo
        ;;
 
-changequote(,)dnl
-  i[3-7]86-sequent-bsd*)
-changequote([,])dnl
-       COREFILE=trad-core.lo
-       TRAD_HEADER='"hosts/symmetry.h"'
-       ;;
-changequote(,)dnl
-  i[3-7]86-sequent-sysv4*) ;;
-  i[3-7]86-sequent-sysv*)
-changequote([,])dnl
-       COREFILE=trad-core.lo
-       TRAD_HEADER='"hosts/symmetry.h"'
-       ;;
 changequote(,)dnl
   i[3-7]86-*-bsdi)
 changequote([,])dnl
        COREFILE=
        ;;
 changequote(,)dnl
-  i[3-7]86-*-bsd* | i[3-7]86-*-freebsd[123] | i[3-7]86-*-freebsd[123]\.* | i[3-7]86-*-freebsd4\.[01234] | i[3-7]86-*-freebsd4\.[01234]\.* | i[3-7]86-*-freebsd*aout*)
+  i[3-7]86-*-bsd* | i[3-7]86-*-freebsd[123] | i[3-7]86-*-freebsd[123]\.* | i[3-7]86-*-freebsd4\.[01234] | i[3-7]86-*-freebsd4\.[01234]\.*)
 changequote([,])dnl
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386bsd.h"'
@@ -900,17 +856,6 @@ changequote([,])dnl
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/esix.h"'
        ;;
-changequote(,)dnl
-  i[3-7]86-*-sco3.2v5*)
-changequote([,])dnl
-       COREFILE=sco5-core.lo
-       ;;
-changequote(,)dnl
-  i[3-7]86-*-sco* | i[3-7]86-*-isc*)
-changequote([,])dnl
-       COREFILE=trad-core.lo
-       TRAD_HEADER='"hosts/i386sco.h"'
-       ;;
 changequote(,)dnl
   i[3-7]86-*-mach3*)
 changequote([,])dnl
@@ -927,16 +872,12 @@ changequote([,])dnl
          CORE_HEADER='"hosts/x86-64linux.h"'
        esac
        ;;
-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*)
        COREFILE=netbsd-core.lo
        ;;
-  mips-sgi-irix4*)     COREFILE=irix-core.lo ;;
-  mips-sgi-irix5*)     COREFILE=irix-core.lo ;;
-  mips-sgi-irix6*)     COREFILE=irix-core.lo ;;
+  mips-*-irix*)
+       COREFILE=irix-core.lo
+       ;;
   m68*-*-linux-*)
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/m68klinux.h"'
@@ -992,14 +933,6 @@ changequote([,])dnl
   vax-*-netbsd* | vax-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
-  vax-*-ultrix2*)
-       COREFILE=trad-core.lo
-       TRAD_HEADER='"hosts/vaxult2.h"'
-       ;;
-  vax-*-ultrix*)
-       COREFILE=trad-core.lo
-       TRAD_HEADER='"hosts/vaxult2.h"'
-       ;;
   vax-*-linux-*)
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/vaxlinux.h"'
@@ -1017,7 +950,6 @@ changequote([,])dnl
   esac
 
   case "$COREFILE" in
-  aix386-core.lo)      COREFLAG=-DAIX386_CORE ;;
   hppabsd-core.lo)     COREFLAG=-DHPPABSD_CORE ;;
   hpux-core.lo)                COREFLAG=-DHPUX_CORE ;;
   irix-core.lo)                COREFLAG=-DIRIX_CORE ;;
@@ -1026,7 +958,6 @@ changequote([,])dnl
   osf-core.lo)         COREFLAG=-DOSF_CORE ;;
   ptrace-core.lo)      COREFLAG=-DPTRACE_CORE ;;
   rs6000-core.lo)      COREFLAG="$COREFLAG -DAIX_CORE" ;;
-  sco5-core.lo)                COREFLAG="$COREFLAG -DSCO5_CORE" ;;
   trad-core.lo)                COREFLAG="$COREFLAG -DTRAD_CORE" ;;
   esac
 
@@ -1091,8 +1022,8 @@ bfd_file_ptr="long"
 bfd_ufile_ptr="unsigned long"
 if test x"$ac_cv_func_ftello64" = xyes -a x"$ac_cv_func_fseeko64" = xyes \
        -o x"${ac_cv_sizeof_off_t}" = x8; then
-    bfd_file_ptr=BFD_HOST_64_BIT
-    bfd_ufile_ptr=BFD_HOST_U_64_BIT
+    bfd_file_ptr=int64_t
+    bfd_ufile_ptr=uint64_t
 fi
 AC_MSG_RESULT($bfd_file_ptr)
 AC_SUBST(bfd_file_ptr)
@@ -1104,8 +1035,7 @@ case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in
   true+yes )  AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;;
 esac
 
-rm -f doc/config.status
-AC_CONFIG_FILES([Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in])
+AC_CONFIG_FILES([Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in])
 
 dnl We need this duplication, even though we use AM_PO_SUBDIRS, because of
 dnl our two separate POTFILES.  Yuck.