X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfigure.in;h=c576d3e3042cd7e73e059f3bcc9b522c3ba57e27;hb=d64552c5891911a7548901904c4acf9b5e73f922;hp=697211a0bfa3bc16bb57008c20b9accadd487986;hpb=6d83c84bcf00bba306b0a020cc2574425c116f93;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/configure.in b/gas/configure.in index 697211a0bf..c576d3e304 100644 --- a/gas/configure.in +++ b/gas/configure.in @@ -9,8 +9,9 @@ AC_PREREQ(2.13) AC_INIT(as.h) AC_CANONICAL_SYSTEM +AC_ISC_POSIX -AM_INIT_AUTOMAKE(gas, 2.9.5) +AM_INIT_AUTOMAKE(gas, 2.10.91) AM_PROG_LIBTOOL @@ -40,6 +41,27 @@ esac])dnl using_cgen=no +build_warnings="-W -Wall" +AC_ARG_ENABLE(build-warnings, +[ --enable-build-warnings Enable build-time compiler warnings if gcc is used], +[case "${enableval}" in + yes) ;; + no) build_warnings="-w";; + ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"` + build_warnings="${build_warnings} ${t}";; + *,) t=`echo "${enableval}" | sed -e "s/,/ /g"` + build_warnings="${t} ${build_warnings}";; + *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;; +esac +if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then + echo "Setting warning flags = $build_warnings" 6>&1 +fi])dnl +WARN_CFLAGS="" +if test "x${build_warnings}" != x -a "x$GCC" = xyes ; then + WARN_CFLAGS="${build_warnings}" +fi +AC_SUBST(WARN_CFLAGS) + # Generate a header file AM_CONFIG_HEADER(config.h:config.in) @@ -59,8 +81,13 @@ te_file=generic install_tooldir=install-exec-tooldir canon_targets="" +all_targets=no if test -n "$enable_targets" ; then for t in `echo $enable_targets | sed 's/,/ /g'`; do + if test $t = "all"; then + all_targets=yes + continue + fi result=`$ac_config_sub $t 2>/dev/null` if test -n "$result" ; then canon_targets="$canon_targets $result" @@ -95,6 +122,8 @@ changequote([,])dnl hppa*) cpu_type=hppa ;; changequote(,)dnl i[456]86) cpu_type=i386 ;; + ia64) cpu_type=ia64 ;; + m6811|m6812) cpu_type=m68hc11 ;; m680[012346]0) cpu_type=m68k ;; changequote([,])dnl m68008) cpu_type=m68k ;; @@ -149,25 +178,43 @@ changequote([,])dnl arm-*-aout) fmt=aout ;; arm-*-coff | thumb-*-coff) fmt=coff ;; arm-*-elf | thumb-*-elf) fmt=elf ;; + arm*-*-conix*) fmt=elf ;; arm-*-linux*aout*) fmt=aout em=linux ;; - arm-*-linux* | armv*-*-linux-gnu) fmt=elf em=linux ;; - arm-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; + arm*-*-linux-gnu* | arm*-*-uclinux*) + fmt=elf em=linux ;; + arm-*-netbsd*) fmt=aout em=nbsd ;; arm-*-oabi | thumb-*-oabi) fmt=elf ;; arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; + arm-*-wince) fmt=coff em=wince-pe ;; arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; arm-*-riscix*) fmt=aout em=riscix ;; + avr-*-*) fmt=elf bfd_gas=yes ;; + + cris-*-*) fmt=multi bfd_gas=yes ;; + d10v-*-*) fmt=elf bfd_gas=yes ;; d30v-*-*) fmt=elf bfd_gas=yes ;; fr30-*-*) fmt=elf bfd_gas=yes ;; + hppa-*-linux-gnu*) case ${cpu} in + hppa*64*) + fmt=elf em=hppalinux64;; + hppa*) + fmt=elf em=linux;; + esac ;; hppa-*-*elf*) fmt=elf em=hppa ;; - hppa-*-linux-gnu*) fmt=elf em=hppa ;; hppa-*-lites*) fmt=elf em=hppa ;; hppa-*-osf*) fmt=som em=hppa ;; hppa-*-rtems*) fmt=elf em=hppa ;; + hppa-*-hpux11*) case ${cpu} in + hppa*64*) + fmt=elf em=hppa64 ;; + hppa*) + fmt=som em=hppa ;; + esac ;; hppa-*-hpux*) fmt=som em=hppa ;; hppa-*-mpeix*) fmt=som em=hppa ;; hppa-*-bsd*) fmt=som em=hppa ;; @@ -175,6 +222,7 @@ changequote([,])dnl h8300-*-coff) fmt=coff ;; + i370-*-elf* | i370-*-linux*) fmt=elf ;; i386-ibm-aix*) fmt=coff em=i386aix ;; i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;; i386-*-beospe*) fmt=coff em=pe bfd_gas=yes ;; @@ -187,10 +235,12 @@ changequote([,])dnl i386-*-linux*coff*) fmt=coff em=linux ;; i386-*-linux-gnu*) fmt=elf em=linux bfd_gas=yes ;; i386-*-lynxos*) fmt=coff em=lynx ;; - i386-*-sysv4* | i386-*-solaris* | i386-*-elf) +changequote(,)dnl + i386-*-sysv[45]* | i386-*-solaris* | i386-*-elf) fmt=elf bfd_gas=yes ;; i386-*-freebsdaout* | i386-*-freebsd[12].* | i386-*-freebsd[12]) fmt=aout em=386bsd ;; +changequote([,])dnl i386-*-freebsd*) fmt=elf bfd_gas=yes ;; i386-*-coff | i386-*-sysv* | i386-*-sco3.2v5*coff | i386-*-isc*) fmt=coff ;; @@ -203,7 +253,9 @@ changequote([,])dnl i386-*-sco3.2*) fmt=coff ;; i386-*-vsta) fmt=aout ;; i386-*-msdosdjgpp* | i386-*-go32* | i386-go32-rtems*) - fmt=coff em=go32;; + fmt=coff em=go32 + AC_DEFINE(STRICTCOFF, 1, [Using strict COFF?]) + ;; i386-*-rtemself*) fmt=elf ;; i386-*-rtems*) fmt=coff ;; i386-*-gnu*) fmt=elf ;; @@ -211,12 +263,15 @@ changequote([,])dnl fmt=aout em=mach bfd_gas=yes ;; i386-*-msdos*) fmt=aout ;; i386-*-moss*) fmt=elf ;; - i386-*-pe) fmt=coff em=pe ;; + i386-*-pe) fmt=coff em=pe bfd_gas=yes ;; i386-*-cygwin*) fmt=coff em=pe bfd_gas=yes ;; i386-*-interix*) fmt=coff em=interix bfd_gas=yes ;; i386-*-mingw32*) fmt=coff em=pe bfd_gas=yes ;; - i386-*-*nt*) fmt=coff em=pe ;; + i386-*-*nt*) fmt=coff em=pe bfd_gas=yes ;; i386-*-vxworks*) fmt=aout ;; + i860-stardent-sysv4* | i860-stardent-elf*) + fmt=elf bfd_gas=yes endian=little + AC_MSG_WARN(GAS support for ${generic_target} is preliminary and a work in progress) ;; i960-*-bout) fmt=bout ;; i960-*-coff) fmt=coff em=ic960 ;; i960-*-rtems*) fmt=coff em=ic960 ;; @@ -227,8 +282,13 @@ changequote([,])dnl i960-*-vxworks*) fmt=bout ;; i960-*-elf*) fmt=elf ;; + ia64-*-elf*) fmt=elf ;; + ia64-*-linux-gnu*) fmt=elf em=linux ;; + m32r-*-*) fmt=elf bfd_gas=yes ;; + m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)fmt=elf bfd_gas=yes ;; + m68k-*-vxworks* | m68k-ericsson-ose | m68k-*-sunos*) fmt=aout em=sun3 ;; m68k-motorola-sysv*) fmt=coff em=delta ;; @@ -265,11 +325,13 @@ changequote([,])dnl mips-*-osf*) fmt=ecoff endian=little ;; mips-*-ecoff*) fmt=ecoff ;; 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-*-lnews*) fmt=ecoff em=lnews ;; mips-*-riscos*) fmt=ecoff ;; + mips-*-sysv4*MP*) fmt=elf em=tmips ;; mips-*-sysv*) fmt=ecoff ;; mips-*-elf* | mips-*-rtems* | mips-*-linux-gnu* | mips-*-gnu* | mips-*-openbsd*) fmt=elf ;; @@ -307,8 +369,10 @@ changequote([,])dnl ppc-*-netware*) fmt=elf em=ppcnw ;; ppc-*-vxworks*) fmt=elf ;; + sh-*-linux*) fmt=elf em=linux ;; sh-*-elf*) fmt=elf ;; sh-*-coff*) fmt=coff ;; + sh-*-pe*) fmt=coff em=pe bfd_gas=yes;; sh-*-rtemself*) fmt=elf ;; sh-*-rtems*) fmt=coff ;; @@ -327,7 +391,15 @@ changequote([,])dnl sparc-fujitsu-none) fmt=aout ;; sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*) fmt=elf ;; - sparc-*-netbsd*) fmt=aout em=nbsd ;; + sparc-*-netbsd*) em=nbsd bfd_gas=yes + case ${cpu} in + sparc) case ${os} in + *elf*) fmt=elf ;; + *) fmt=aout ;; + esac ;; + sparc64) fmt=elf ;; + esac + ;; sparc-*-openbsd*) fmt=aout em=nbsd ;; strongarm-*-coff) fmt=coff ;; @@ -335,6 +407,8 @@ changequote([,])dnl tic30-*-*aout*) fmt=aout bfd_gas=yes ;; tic30-*-*coff*) fmt=coff bfd_gas=yes ;; + tic54x-*-* | c54x*-*-*) + fmt=coff bfd_gas=yes need_libm=yes;; tic80-*-*) fmt=coff ;; v850-*-*) fmt=elf bfd_gas=yes ;; @@ -385,6 +459,7 @@ changequote([,])dnl arm-*) bfd_gas=yes ;; # not yet # i386-aout) bfd_gas=preferred ;; + ia64*-*) bfd_gas=yes ;; mips-*) bfd_gas=yes ;; ns32k-*) bfd_gas=yes ;; ppc-*) bfd_gas=yes ;; @@ -393,9 +468,10 @@ changequote([,])dnl *-elf) bfd_gas=yes ;; *-ecoff) bfd_gas=yes ;; *-som) bfd_gas=yes ;; - #enable bfd for coff to allow testing if a bfd target is the primary target, - #but not for coff as the primary target + #enable bfd for coff and aout to allow testing if a bfd target is + #the primary target, but not for coff or aout as the primary target i386-coff) if test x${primary_bfd_gas} = xyes; then bfd_gas=yes; fi ;; + i386-aout) if test x${primary_bfd_gas} = xyes; then bfd_gas=yes; fi ;; *) ;; esac @@ -500,17 +576,44 @@ changequote([,])dnl big) emulation="mipsbelf mipslelf mipself" ;; *) emulation="mipslelf mipsbelf mipself" ;; esac ;; - i386-*-elf) emulation="i386elf" ;; + mips-*-sysv4*MP*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;; + # i386-pc-pe-coff != i386-pc-coff. + i386-*-pe-coff) ;; + # Uncommenting the next line will turn on support for i386 AOUT + # for the default linux configuration + # i386-*-linux*-elf) emulation="i386elf i386aout" ;; + # + i386-*-aout) emulation="i386aout" ;; i386-*-coff) emulation="i386coff" ;; - # Uncommenting the next line will turn on support for i386 COFF - # in any i386 ELF configuration. - # i386-*-*-elf) emulation="i386elf i386coff" ;; + i386-*-elf) emulation="i386elf" ;; + + # Always all formats. Having a.out first makes it the default. + cris-*-*) emulation="crisaout criself" ;; esac emulations="$emulations $emulation" done +# Turn on all targets if possible +if test ${all_targets} = "yes"; then + case ${target_cpu_type} in + i386) + case ${obj_format} in + aout) + emulations="$emulations i386coff i386elf" + ;; + coff) + emulations="$emulations i386aout i386elf" + ;; + elf) + emulations="$emulations i386aout i386coff" + ;; + esac + ;; + esac +fi + # Assign floating point type. Most processors with FP support # IEEE FP. On those that don't support FP at all, usually IEEE # is emulated. @@ -600,10 +703,12 @@ for em in . $emulations ; do fmt=elf file=mipself ;; mipsbecoff | mipslecoff) fmt=ecoff file=mipsecoff ;; - i386coff) - fmt=coff file=i386coff ;; - i386elf) - fmt=elf file=i386elf ;; + *coff) + fmt=coff file=$em ;; + *aout) + fmt=aout file=$em ;; + *elf) + fmt=elf file=$em ;; esac formats="$formats $fmt" emfiles="$emfiles e-$file.o" @@ -636,7 +741,6 @@ if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then # USE_EMULATIONS or include any of the e-files as they will only be bloat. case "${obj_format}${emfiles}" in multi* | *mips*) - te_file=multi extra_objects="$extra_objects $emfiles" AC_DEFINE(USE_EMULATIONS, 1, [Use emulation support?]) ;; esac @@ -732,6 +836,14 @@ AC_CHECK_FUNCS(unlink remove, break) # Some systems don't have sbrk(). AC_CHECK_FUNCS(sbrk) +# do we need the math library? +case "${need_libm}" in +yes) + AC_CHECK_LIBM + AC_SUBST(LIBM) + ;; +esac + # Some non-ANSI preprocessors botch requoting inside strings. That's bad # enough, but on some of those systems, the assert macro relies on requoting # working properly!