dnl
dnl
dnl v2.5 needed for --bindir et al
-AC_PREREQ(2.13)
+AC_PREREQ(2.57)
AC_INIT(as.h)
+dnl Autoconf 2.57 will find the aux dir without this. However, unless
+dnl we specify this explicitly, automake-1.7 will assume that ylwrap is in
+dnl gas/ instead of gas/../.
+AC_CONFIG_AUX_DIR(..)
AC_CANONICAL_SYSTEM
AC_ISC_POSIX
# If we are on a DOS filesystem, we must use gdb.ini rather than
# .gdbinit.
-GDBINIT=".gdbinit"
case "${host}" in
*-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-windows*)
GDBINIT="gdb.ini"
+ AC_CONFIG_FILES(gdb.ini:gdbinit.in)
+ ;;
+ *)
+ GDBINIT=".gdbinit"
+ AC_CONFIG_FILES(.gdbinit:gdbinit.in)
;;
esac
AC_SUBST(GDBINIT)
arch=
endian=
case ${cpu} in
+ am33_2.0) cpu_type=mn10300 endian=little ;;
alpha*) cpu_type=alpha ;;
arm*b|xscale*b|strongarm*b) cpu_type=arm endian=big ;;
arm*|xscale*|strongarm*) cpu_type=arm endian=little ;;
+ c4x*) cpu_type=tic4x ;;
hppa*) cpu_type=hppa ;;
changequote(,)dnl
- i[3456]86) cpu_type=i386 arch=i386;;
+ i[3-7]86) cpu_type=i386 arch=i386;;
x86_64) cpu_type=i386 arch=x86_64;;
ia64) cpu_type=ia64 ;;
ip2k) cpu_type=ip2k endian=big ;;
+ iq2000) cpu_type=iq2000 endian=big ;;
m6811|m6812|m68hc12) cpu_type=m68hc11 ;;
m680[012346]0) cpu_type=m68k ;;
changequote([,])dnl
sparc86x*) cpu_type=sparc arch=sparc86x ;;
sparc*) cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c.
v850*) cpu_type=v850 ;;
+ xtensa*) cpu_type=xtensa arch=xtensa ;;
*) cpu_type=${cpu} ;;
esac
alpha*-*-netbsd*) fmt=elf em=nbsd ;;
alpha*-*-openbsd*) fmt=elf em=obsd ;;
+ # cpu_type for am33_2.0 is set to mn10300
+ mn10300-*-linux*) fmt=elf bfd_gas=yes em=linux ;;
+
arc-*-elf*) fmt=elf ;;
arm-*-aout) fmt=aout ;;
arm-*-coff | thumb-*-coff) fmt=coff ;;
arm-*-rtems | thumb-*-rtems) fmt=elf ;;
arm-*-elf | thumb-*-elf) fmt=elf ;;
+ arm-*-kaos*) fmt=elf ;;
arm*-*-conix*) fmt=elf ;;
arm-*-linux*aout*) fmt=aout em=linux ;;
arm*-*-linux-gnu*) fmt=elf em=linux ;;
avr-*-*) fmt=elf ;;
+ cris-*-linux-gnu*) fmt=multi bfd_gas=yes em=linux ;;
cris-*-*) fmt=multi bfd_gas=yes ;;
d10v-*-*) fmt=elf ;;
i386-*-beos*) fmt=elf ;;
i386-*-coff) fmt=coff ;;
i386-*-elf) fmt=elf ;;
+ i386-*-kaos*) fmt=elf ;;
i386-*-bsd*) fmt=aout em=386bsd ;;
i386-*-netbsd0.8) fmt=aout em=386bsd ;;
i386-*-netbsdpe*) fmt=coff em=pe ;;
+ i386-*-netbsd*-gnu*) fmt=elf em=nbsd ;;
i386-*-netbsdelf*) fmt=elf em=nbsd ;;
i386-*-*n*bsd*) case ${cpu} in
x86_64) fmt=elf em=nbsd ;;
i386-*-freebsd[12].*) fmt=aout em=386bsd ;;
i386-*-freebsd[12]) fmt=aout em=386bsd ;;
changequote([,])dnl
+ i386-*-freebsd* | i386-*-kfreebsd*-gnu)
+ fmt=elf em=freebsd ;;
i386-*-sysv*) fmt=coff ;;
i386-*-sco3.2v5*coff) fmt=coff ;;
i386-*-isc*) fmt=coff ;;
ip2k-*-*) fmt=elf ;;
+ iq2000-*-elf) fmt=elf bfd_gas=yes ;;
+
m32r-*-*) fmt=elf ;;
m68hc11-*-* | m6811-*-*) fmt=elf ;;
mips-*-osf*) fmt=ecoff endian=little ;;
mips-*-ecoff*) fmt=ecoff ;;
mips-*-pe*) fmt=coff endian=little em=pe ;;
- mips-*-irix6*) fmt=elf ;;
- mips-*-irix5*) fmt=elf ;;
- mips-*-irix*) fmt=ecoff ;;
+ mips-*-irix6*) fmt=elf em=irix ;;
+ mips-*-irix5*) fmt=elf em=irix ;;
+ mips-*-irix*) fmt=ecoff em=irix ;;
mips-*-lnews*) fmt=ecoff em=lnews ;;
mips-*-riscos*) fmt=ecoff ;;
mips*-*-linux*) fmt=elf em=tmips ;;
mips-*-sysv4*MP* | mips-*-gnu*) fmt=elf em=tmips ;;
mips-*-sysv*) fmt=ecoff ;;
mips-*-elf* | mips-*-rtems*) fmt=elf ;;
- mips-*-*n*bsd*) fmt=elf ;;
+ mips-*-netbsd*) fmt=elf ;;
+ mips-*-openbsd*) fmt=elf ;;
mips-*-vxworks*) fmt=elf ;;
mmix-*-*) fmt=elf ;;
mn10200-*-*) fmt=elf ;;
mn10300-*-*) fmt=elf ;;
+ msp430-*-*) fmt=elf ;;
openrisc-*-*) fmt=elf ;;
or32-*-rtems*) fmt=coff ;;
or32-*-coff) fmt=coff ;;
ppc-**-nto*) fmt=elf ;;
ppc-*-vxworks*) fmt=elf ;;
ppc-*-windiss*) fmt=elf ;;
+ ppc-*-kaos*) fmt=elf ;;
s390x-*-linux-gnu*) fmt=elf em=linux ;;
s390-*-linux-gnu*) fmt=elf em=linux ;;
sh-*-pe*) fmt=coff em=pe bfd_gas=yes endian=little ;;
sh-*-rtemself*) fmt=elf ;;
sh-*-rtems*) fmt=coff ;;
+ sh-*-kaos*) fmt=elf ;;
+ shle*-*-kaos*) fmt=elf ;;
sh64-*-elf*) fmt=elf ;;
ns32k-pc532-mach*) fmt=aout em=pc532mach ;;
esac ;;
strongarm-*-coff) fmt=coff ;;
strongarm-*-elf) fmt=elf ;;
+ strongarm-*-kaos*) fmt=elf ;;
xscale-*-coff) fmt=coff ;;
xscale-*-elf) fmt=elf ;;
xstormy16-*-*) fmt=elf ;;
+ xtensa-*-*) fmt=elf ;;
+
z8k-*-coff | z8k-*-sim) fmt=coff ;;
*-*-aout | *-*-scout) fmt=aout ;;
- *-*-freebsd*) fmt=elf em=freebsd ;;
+ *-*-freebsd* | *-*-kfreebsd*-gnu) fmt=elf em=freebsd ;;
*-*-nindy*) fmt=bout ;;
*-*-bsd*) fmt=aout em=sun3 ;;
*-*-generic) fmt=generic ;;
*-*-xray | *-*-hms) fmt=coff ;;
*-*-sim) fmt=coff ;;
*-*-elf | *-*-sysv4* | *-*-solaris*) fmt=elf dev=yes ;;
+ *-*-aros*) fmt=elf em=linux bfd_gas=yes ;;
*-*-vxworks) fmt=aout ;;
*-*-netware) fmt=elf ;;
esac
mipsisa32 | mipsisa32el)
mips_cpu=mips32
;;
+ mipsisa32r2 | mipsisa32r2el)
+ mips_cpu=mips32r2
+ ;;
mipsisa64 | mipsisa64el)
mips_cpu=mips64
;;
mips64vr | mips64vrel)
mips_cpu=vr4100
;;
+ mipsisa32r2*)
+changequote(,)dnl
+ mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..r2//' -e 's/el$//'`
+changequote([,])dnl
+ ;;
mips64* | mipsisa64* | mipsisa32*)
changequote(,)dnl
mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..//' -e 's/el$//'`
mips_default_64bit=0
;;
esac
+ # Decide which ABI to target by default.
+ case ${target} in
+ mips64*-linux* | mips-sgi-irix6*)
+ mips_default_abi=N32_ABI
+ ;;
+ mips*-linux*)
+ mips_default_abi=O32_ABI
+ ;;
+ *)
+ mips_default_abi=NO_ABI
+ ;;
+ esac
AC_DEFINE_UNQUOTED(MIPS_CPU_STRING_DEFAULT, "$mips_cpu",
[Default CPU for MIPS targets. ])
AC_DEFINE_UNQUOTED(USE_E_MIPS_ABI_O32, $use_e_mips_abi_o32,
[Allow use of E_MIPS_ABI_O32 on MIPS targets. ])
AC_DEFINE_UNQUOTED(MIPS_DEFAULT_64BIT, $mips_default_64bit,
[Generate 64-bit code by default on MIPS targets. ])
+ AC_DEFINE_UNQUOTED(MIPS_DEFAULT_ABI, $mips_default_abi,
+ [Choose a default ABI for MIPS targets. ])
;;
esac
# Any other special object files needed ?
case ${cpu_type} in
- fr30 | ip2k | m32r | openrisc)
+ fr30 | ip2k | iq2000 | m32r | openrisc)
using_cgen=yes
;;
using_cgen=yes
;;
+ xtensa)
+ echo ${extra_objects} | grep -s "xtensa-relax.o"
+ if test $? -ne 0 ; then
+ extra_objects="$extra_objects xtensa-relax.o"
+ fi
+ ;;
+
*)
;;
esac
dnl the old symlinks don't exist, so that a reconfigure in an existing
dnl directory behaves reasonably.
-AC_OUTPUT(Makefile doc/Makefile ${GDBINIT}:gdbinit.in po/Makefile.in:po/Make-in,
+AC_CONFIG_FILES(Makefile doc/Makefile po/Makefile.in:po/Make-in)
+AC_CONFIG_COMMANDS([default],
[rm -f targ-cpu.c targ-cpu.h obj-format.h obj-format.c targ-env.h atof-targ.c itbl-cpu.h
echo '#include "tc-'"${target_cpu_type}"'.h"' > targ-cpu.h
echo '#include "obj-'"${obj_format}"'.h"' > obj-format.h
cgen_cpu_prefix=${cgen_cpu_prefix}
obj_format=${obj_format}
te_file=${te_file}])
+
+AC_OUTPUT