Add MMIX support
[deliverable/binutils-gdb.git] / gas / configure.in
index 47d2f7c67fe8257ca808094a6893c9723e5cabe3..956085547717d0cd4322eb9c22507ea6f1010e33 100644 (file)
@@ -5,12 +5,16 @@ dnl brackets, be sure changequote invocations surround it.
 dnl
 dnl
 dnl v2.5 needed for --bindir et al
-AC_PREREQ(2.5)
+AC_PREREQ(2.13)
 AC_INIT(as.h)
 
 AC_CANONICAL_SYSTEM
+AC_ISC_POSIX
 
-AM_INIT_AUTOMAKE(gas, 2.9.4)
+changequote(,)dnl
+BFD_VERSION=`sed -n -e 's/^.._INIT_AUTOMAKE.*,[        ]*\([^  ]*\)[   ]*).*/\1/p' < ${srcdir}/../bfd/configure.in`
+changequote([,])dnl
+AM_INIT_AUTOMAKE(gas, ${BFD_VERSION})
 
 AM_PROG_LIBTOOL
 
@@ -38,18 +42,56 @@ AC_ARG_ENABLE(commonbfdlib,
   *)   AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;;
 esac])dnl
 
+using_cgen=no
+
+build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
+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)
 
+# If we are on a DOS filesystem, we must use gdb.ini rather than
+# .gdbinit.
+GDBINIT=".gdbinit"
+case "${host}" in
+  *-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-cygwin* | *-*-windows*)
+    GDBINIT="gdb.ini"
+    ;;
+esac
+AC_SUBST(GDBINIT)
+
 te_file=generic
 
 # Makefile target for installing gas in $(tooldir)/bin.
 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
-    result=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $t 2>/dev/null`
+    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"
 #    else
@@ -75,10 +117,18 @@ changequote([,])dnl
       alpha*)          cpu_type=alpha ;;
       armeb)           cpu_type=arm endian=big ;;
       arm*)            cpu_type=arm endian=little ;;
+      armb*)           cpu_type=arm endian=little ;;
+      armv*l)          cpu_type=arm endian=little ;;
+      armv*b)          cpu_type=arm endian=big ;;
+      xscale*)         cpu_type=arm endian=little ;;
+      strongarm*)      cpu_type=arm endian=little ;;
       thumb*)          cpu_type=arm endian=little ;;
       hppa*)           cpu_type=hppa ;;
 changequote(,)dnl
-      i[456]86)                cpu_type=i386 ;;
+      i[3456]86)       cpu_type=i386 arch=i386;;
+      x86_64)          cpu_type=i386 arch=x86_64;;
+      ia64)            cpu_type=ia64 ;;
+      m6811|m6812|m68hc12) cpu_type=m68hc11 ;;
       m680[012346]0)   cpu_type=m68k ;;
 changequote([,])dnl
       m68008)          cpu_type=m68k ;;
@@ -86,13 +136,15 @@ changequote([,])dnl
       m5200)           cpu_type=m68k ;;
       m8*)             cpu_type=m88k ;;
       mips*el)         cpu_type=mips endian=little ;;
-# start-sanitize-r5900
-      mips*5900*)       cpu_type=mips endian=little ;;
-# end-sanitize-r5900
       mips*)           cpu_type=mips endian=big ;;
-      powerpcle*)      cpu_type=ppc endian=little ;;
+      pjl*)            cpu_type=pj endian=little ;;
+      pj*)             cpu_type=pj endian=big ;;
+      powerpc*le*)     cpu_type=ppc endian=little ;;
       powerpc*)                cpu_type=ppc endian=big ;;
       rs6000*)         cpu_type=ppc ;;
+      s390x*)          cpu_type=s390 arch=s390x ;;
+      s390*)           cpu_type=s390 arch=s390 ;;
+      sh*)             cpu_type=sh endian=big ;;
       sparclite*)      cpu_type=sparc arch=sparclite ;;
       sparclet*)       cpu_type=sparc arch=sparclet ;;
       sparc64*)                cpu_type=sparc arch=v9-64 ;;
@@ -104,11 +156,6 @@ changequote([,])dnl
 
     if test ${this_target} = $target ; then
       target_cpu_type=${cpu_type}
-      if test x${endian} = xbig; then
-       AC_DEFINE(TARGET_BYTES_BIG_ENDIAN, 1)
-      elif test x${endian} = xlittle; then
-       AC_DEFINE(TARGET_BYTES_BIG_ENDIAN, 0)
-      fi
     elif test ${target_cpu_type} != ${cpu_type} ; then
       continue
     fi
@@ -117,6 +164,7 @@ changequote([,])dnl
     dev=no
     bfd_gas=no
     em=generic
+    mips_stabs_elf=
 
     # assign object format
     case ${generic_target} in
@@ -124,6 +172,7 @@ changequote([,])dnl
       a29k-amd-udi)         fmt=coff ;;
       a29k-amd-ebmon)       fmt=coff ;;
       a29k-nyu-sym1)        fmt=coff ;;
+      a29k-*-rtems*)        fmt=coff ;;
       a29k-*-vxworks*)      fmt=coff ;;
 
       alpha*-*-*vms*)      fmt=evax ;;
@@ -136,71 +185,112 @@ changequote([,])dnl
 
       arc-*-elf*)           fmt=elf bfd_gas=yes ;;
 
-      arm-*-riscix*)       fmt=aout em=riscix ;;
-      arm-*-aout)          fmt=aout ;;
-      arm-*-coff | thumb-*-coff)           fmt=coff ;;
-      arm-*-elf | thumb-*-elf)              fmt=elf ;;
-      arm-*-riscix*)        fmt=aout ;;
-      arm-*-pe | thumb-*-pe)               fmt=coff em=pe ;;
+      arm-*-aout)                      fmt=aout ;;
+      arm-*-coff | thumb-*-coff)        fmt=coff ;;
+      arm-*-rtems | thumb-*-rtems)      fmt=elf ;;
+      arm-*-elf | thumb-*-elf)          fmt=elf ;;
+      arm*-*-conix*)                   fmt=elf ;;
+      arm-*-linux*aout*)               fmt=aout em=linux ;;
+      arm*-*-linux-gnu* | arm*-*-uclinux*)     
+                                       fmt=elf  em=linux ;;
+      arm-*-netbsd* | arm-*-openbsd*)   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 ;;
+      arm-*-vxworks)                   fmt=coff ;;
+
+      avr-*-*)             fmt=elf bfd_gas=yes ;;
+
+      cris-*-*)                    fmt=multi bfd_gas=yes ;;
 
       d10v-*-*)                    fmt=elf bfd_gas=yes ;;
       d30v-*-*)                    fmt=elf bfd_gas=yes ;;
 
-# start-sanitize-sky
-      dvp-*-*)             fmt=elf bfd_gas=yes install_tooldir= ;;
-# end-sanitize-sky
 
       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-*-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 ;;
       hppa-*-hiux*)         fmt=som em=hppa ;;
 
+      h8300-*-rtems*)       fmt=coff ;;
       h8300-*-coff)         fmt=coff ;;
+      h8300-*-elf)          fmt=elf ;;
+      h8500-*-rtems*)       fmt=coff ;;
+      h8500-*-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 ;;
-dnl start-sanitize-beos
       i386-*-beospe*)       fmt=coff em=pe bfd_gas=yes ;;
       i386-*-beoself* | i386-*-beos*) fmt=elf bfd_gas=yes ;;
-dnl end-sanitize-beos
       i386-*-bsd*)          fmt=aout em=386bsd ;;
       i386-*-netbsd0.8)     fmt=aout em=386bsd ;;
+      i386-*-netbsdelf*)    fmt=elf em=nbsd bfd_gas=yes ;;
       i386-*-netbsd*)       fmt=aout em=nbsd bfd_gas=yes;;
       i386-*-openbsd*)      fmt=aout em=nbsd bfd_gas=yes;;
-      i386-*-linux*aout* | i386-*-linuxoldld)   fmt=aout em=linux ;;
+      i386-*-linux*aout* | i386-*-linux*oldld)   fmt=aout em=linux ;;
       i386-*-linux*coff*)   fmt=coff em=linux ;;
       i386-*-linux-gnu*)    fmt=elf em=linux bfd_gas=yes ;;
+      x86_64-*-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-*-freebsdelf*)   fmt=elf bfd_gas=yes ;;
-      i386-*-freebsd*)      fmt=aout em=386bsd ;;
+      i386-*-freebsdaout* | i386-*-freebsd[12].* | i386-*-freebsd[12])
+                            fmt=aout em=386bsd ;;
+changequote([,])dnl
       i386-*-coff | i386-*-sysv* | i386-*-sco3.2v5*coff | i386-*-isc*)
                           fmt=coff ;;
       i386-*-sco3.2v5*)      fmt=elf
                            if test ${this_target} = $target; then
-                               AC_DEFINE(SCO_ELF)
+                               AC_DEFINE(SCO_ELF, 1,
+                                   [Define if defaulting to ELF on SCO 5.])
                            fi
                            ;;
       i386-*-sco3.2*)       fmt=coff ;;
       i386-*-vsta)          fmt=aout ;;
       i386-*-msdosdjgpp* | i386-*-go32* | i386-go32-rtems*)
-                           fmt=coff em=go32;;
-      i386-*-rtems*)        fmt=coff ;;
+                           fmt=coff em=go32 bfd_gas=yes
+                           AC_DEFINE(STRICTCOFF, 1, [Using strict COFF?])
+                           ;;
+      i386-*-rtemself*)     fmt=elf ;;
+      i386-*-rtemscoff*)    fmt=coff ;;
+      i386-*-rtems*)        fmt=elf ;;
       i386-*-gnu*)          fmt=elf ;;
       i386-*-mach*)
                            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 ;;
+      i386-*-chaos)         fmt=elf ;;
+      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 ;;
@@ -209,9 +299,17 @@ dnl end-sanitize-beos
       i960-*-vxworks5.0)    fmt=bout ;;
       i960-*-vxworks5.*)    fmt=coff em=ic960 ;;
       i960-*-vxworks*)      fmt=bout ;;
+      i960-*-elf*)         fmt=elf ;;
+
+      ia64-*-elf*)         fmt=elf ;;
+      ia64-*-aix*)         fmt=elf em=ia64aix ;;
+      ia64-*-linux-gnu*)    fmt=elf em=linux ;;
+      ia64-*-hpux*)        fmt=elf em=hpux ;;
 
       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 ;;
@@ -220,11 +318,13 @@ dnl end-sanitize-beos
       m68k-*-sysv4*) # must be before -sysv*
                            fmt=elf em=svr4 ;;
       m68k-*-elf*)         fmt=elf ;;
-      m68k-*-coff | m68k-*-sysv* | m68k-*-rtems*)
+      m68k-*-coff | m68k-*-sysv* | m68k-*-rtemscoff*)
                            fmt=coff ;;
+      m68k-*-rtems*)       fmt=elf ;;
       m68k-*-hpux*)         fmt=hp300 em=hp300 ;;
       m68k-*-linux*aout*)   fmt=aout em=linux ;;
       m68k-*-linux-gnu*)    fmt=elf em=linux ;;
+      m68k-*-gnu*)         fmt=elf ;;
       m68k-*-lynxos*)       fmt=coff em=lynx ;;
       m68k-*-netbsd*)       fmt=aout em=nbsd bfd_gas=yes ;;
       m68k-*-openbsd*)      fmt=aout em=nbsd bfd_gas=yes ;;
@@ -234,26 +334,36 @@ dnl end-sanitize-beos
       m88k-motorola-sysv3*) fmt=coff em=delt88 ;;
       m88k-*-coff*)         fmt=coff ;;
 
+      mcore-*-elf)         fmt=elf bfd_gas=yes ;;
+      mcore-*-pe)          fmt=coff em=pe bfd_gas=yes ;;
+
       # don't change em like *-*-bsd does
       mips-dec-netbsd*)            fmt=elf endian=little ;;
       mips-dec-openbsd*)    fmt=elf endian=little ;;
-      mips-dec-bsd*)        fmt=aout ;;
+      mips-dec-bsd*)        fmt=aout endian=little ;;
       mips-sony-bsd*)       fmt=ecoff ;;
       mips-*-bsd*)          AC_MSG_ERROR(Unknown vendor for mips-bsd configuration.) ;;
       mips-*-ultrix*)       fmt=ecoff endian=little ;;
       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*-*-linux*)      fmt=elf em=tmips mips_stabs_elf=y ;;
+      mips-*-sysv4*MP* | mips-*-gnu*)
+                           fmt=elf em=tmips ;;
       mips-*-sysv*)         fmt=ecoff ;;
-      mips-*-elf* | mips-*-rtems* | mips-*-linux-gnu* | mips-*-gnu* | mips-*-openbsd*)
+      mips-*-elf* | mips-*-rtems* | mips-*-openbsd*)
                            fmt=elf ;;
+      mips-*-vxworks*)      fmt=elf mips_stabs_elf=y ;;
+      mmix-*-*)                    fmt=elf bfd_gas=yes ;;
       mn10200-*-*)         fmt=elf bfd_gas=yes ;;
       mn10300-*-*)         fmt=elf bfd_gas=yes ;;
+      openrisc-*-*)        fmt=elf bfd_gas=yes ;;
+      pj*)                 fmt=elf ;;
       ppc-*-pe | ppc-*-cygwin* | ppc-*-winnt*)
                            fmt=coff em=pe ;;
       ppc-*-aix*)           fmt=coff ;;
@@ -268,7 +378,8 @@ dnl end-sanitize-beos
                            ;;
       ppc-*-solaris*)      fmt=elf
                            if test ${this_target} = $target; then
-                               AC_DEFINE(TARGET_SOLARIS_COMMENT)
+                               AC_DEFINE(TARGET_SOLARIS_COMMENT, 1,
+                               [Define if default target is PowerPC Solaris.])
                            fi
                            if test x${endian} = xbig; then
                                AC_MSG_ERROR(Solaris must be configured little endian)
@@ -278,16 +389,25 @@ dnl end-sanitize-beos
       ppc-*-macos* | ppc-*-mpw*)
                            fmt=coff em=macos ;;
       ppc-*-netware*)       fmt=elf em=ppcnw ;;
+      ppc-*-vxworks*)       fmt=elf ;;
 
+      s390x-*-linux-gnu*)   fmt=elf em=linux ;;
+      s390-*-linux-gnu*)    fmt=elf em=linux ;;
+
+      sh-*-linux*)         fmt=elf em=linux ;;
       sh-*-elf*)           fmt=elf ;;
-      sh-*-coff*)           fmt=coff ;;
-      sh-*-rtems*)         fmt=coff ;;
+      sh-*-coff*)           fmt=coff bfd_gas=yes;;
+      sh-*-pe*)             fmt=coff em=pe bfd_gas=yes endian=little ;;
+      sh-*-rtemself*)       fmt=elf ;;
+      sh-*-rtems*)         fmt=coff bfd_gas=yes;;
 
       ns32k-pc532-mach* | ns32k-pc532-ux*)    fmt=aout em=pc532mach ;;
       ns32k-pc532-netbsd* | ns32k-pc532-lites*)  fmt=aout em=nbsd532 ;;
       ns32k-pc532-openbsd*) fmt=aout em=nbsd532 ;;
 
-      sparc-*-rtems*)       fmt=aout ;;
+      sparc-*-rtemsaout*)   fmt=aout ;;
+      sparc-*-rtemself*)    fmt=elf ;;
+      sparc-*-rtems*)       fmt=elf ;;
       sparc-*-sunos4*)      fmt=aout em=sun3 ;;
       sparc-*-aout | sparc*-*-vxworks*)
                            fmt=aout em=sparcaout ;;
@@ -298,25 +418,37 @@ dnl end-sanitize-beos
       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 ;;
+      strongarm-*-elf)      fmt=elf ;;
+      xscale-*-coff)     fmt=coff ;;
+      xscale-*-elf)      fmt=elf ;;
+
       tic30-*-*aout*)      fmt=aout bfd_gas=yes ;;
       tic30-*-*coff*)       fmt=coff bfd_gas=yes ;;
-# start-sanitize-tic80
+      tic54x-*-* | c54x*-*-*)
+                           fmt=coff bfd_gas=yes need_libm=yes;;
       tic80-*-*)           fmt=coff ;;
-# end-sanitize-tic80
 
       v850-*-*)                    fmt=elf bfd_gas=yes ;;
-
-# start-sanitize-v850e
       v850e-*-*)           fmt=elf bfd_gas=yes ;;
       v850ea-*-*)          fmt=elf bfd_gas=yes ;;
-# end-sanitize-v850e
+
       vax-*-bsd* | vax-*-ultrix*)
                            fmt=aout ;;
       vax-*-vms)            fmt=vms ;;
 
+
       z8k-*-coff | z8k-*-sim)
                            fmt=coff ;;
 
@@ -324,6 +456,7 @@ dnl end-sanitize-beos
 
       *-*-aout | *-*-scout)
                            fmt=aout ;;
+      *-*-freebsd*)        fmt=elf em=freebsd bfd_gas=yes ;;
       *-*-nindy*)
                            fmt=bout ;;
       *-*-bsd*)
@@ -338,27 +471,54 @@ dnl end-sanitize-beos
       *-*-netware)          fmt=elf ;;
     esac
 
+    if test ${this_target} = $target ; then
+      endian_def=
+      if test x${endian} = xbig; then
+       endian_def=1
+      elif test x${endian} = xlittle; then
+       endian_def=0
+      fi
+      if test x${endian_def} != x; then
+       AC_DEFINE_UNQUOTED(TARGET_BYTES_BIG_ENDIAN, $endian_def,
+                          [Define as 1 if big endian.])
+      fi
+    fi
+
+    if test x${mips_stabs_elf} != x; then
+      AC_DEFINE(MIPS_STABS_ELF, 1,
+               [Use ELF stabs for MIPS, not ECOFF stabs])
+    fi
+
     case ${cpu_type}-${fmt} in
       alpha*-*)        bfd_gas=yes ;;
       arm-*)   bfd_gas=yes ;;
     # not yet
     # i386-aout)       bfd_gas=preferred ;;
+      ia64*-*) bfd_gas=yes ;;
       mips-*)  bfd_gas=yes ;;
       ns32k-*) bfd_gas=yes ;;
+      pdp11-*) bfd_gas=yes ;;
       ppc-*)   bfd_gas=yes ;;
       sparc-*) bfd_gas=yes ;;
+      strongarm-*)     bfd_gas=yes ;;
+      xscale-*)        bfd_gas=yes ;;
       *-elf)   bfd_gas=yes ;;
       *-ecoff) bfd_gas=yes ;;
       *-som)   bfd_gas=yes ;;
+    #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
 
 # Other random stuff.
 
-    # do we need the opcodes library?
+    # Do we need the opcodes library?
     case ${cpu_type} in
       vax | i386 | tic30)
        ;;
+
       *)
        need_opcodes=yes
 
@@ -374,14 +534,10 @@ dnl end-sanitize-beos
        ;;
     esac
 
+    # Any other special object files needed ?
     case ${cpu_type} in
-      m32r | fr30)
-       case "x${extra_objects}" in
-       *cgen.o*) ;;
-       *) extra_objects="$extra_objects cgen.o"
-          AC_DEFINE(USING_CGEN)
-          ;;
-       esac
+      fr30 | m32r | openrisc)
+       using_cgen=yes
        ;;
 
       m68k)
@@ -408,16 +564,22 @@ dnl end-sanitize-beos
        fi
        ;;
 
-      sparc)
+      i386 | s390 | sparc)
        if test $this_target = $target ; then
-         AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}")
+         AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}", [Default architecture.])
        fi
        ;;
-
       *)
        ;;
     esac
 
+    if test $using_cgen = yes ; then
+       case "x${extra_objects}" in
+       *cgen.o*) ;;
+       *) extra_objects="$extra_objects cgen.o" ;;
+       esac
+    fi
+
 # See if we really can support this configuration with the emulation code.
 
     if test $this_target = $target ; then
@@ -438,9 +600,9 @@ dnl end-sanitize-beos
 
     case ${generic_target}-${fmt} in
       mips-*-irix5*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
-      mips-*-linux-gnu*-*) case "$endian" in
-                       big)    emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
-                       *)      emulation="mipslelf mipsbelf mipself mipslecoff mipsbecoff mipsecoff" ;;
+      mips*-*-linux*-*) case "$endian" in
+                       big)    emulation="mipsbelf mipslelf mipself" ;;
+                       *)      emulation="mipslelf mipsbelf mipself" ;;
                        esac ;;
       mips-*-lnews*-ecoff) ;;
       mips-*-*-ecoff)  case "$endian" in
@@ -450,22 +612,52 @@ dnl end-sanitize-beos
       mips-*-*-elf)    case "$endian" in
                        big)    emulation="mipsbelf mipslelf mipself" ;;
                        *)      emulation="mipslelf mipsbelf mipself" ;;
-      # Uncommenting the next line will turn on support for i386 COFF
-      # in any i386 ELF configuration.  This probably doesn't work
-      # correctly.
-      # i386-*-*-elf)  emulation="i386coff i386elf" ;;
                        esac ;;
+      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" ;;
+      i386-*-elf)      emulation="i386elf" ;;
+
+      # Always all formats.  The first stated emulation becomes the default.
+      cris-*-*aout*)   emulation="crisaout criself" ;;
+      cris-*-*)                emulation="criself crisaout" ;;
     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.
 case ${target_cpu} in
   vax | tahoe )        atof=${target_cpu} ;;
+  pdp11)       atof=vax ;;
   *)           atof=ieee ;;
 esac
 
@@ -475,14 +667,13 @@ esac
 
 # Unfortunately the cpu in cpu-opc.h file isn't always $(TARGET_CPU).
 cgen_cpu_prefix=""
-case "x${extra_objects}" in
-  *cgen.o*)
-       case ${target_cpu} in
-         *) cgen_cpu_prefix=${target_cpu} ;;
-       esac
-       ;;
-esac
-AC_SUBST(cgen_cpu_prefix)
+if test $using_cgen = yes ; then
+  case ${target_cpu} in
+    *) cgen_cpu_prefix=${target_cpu} ;;
+  esac
+  AC_SUBST(cgen_cpu_prefix)
+  AC_DEFINE(USING_CGEN, 1, [Using cgen code?])
+fi
 
 dnl
 dnl Make sure the desired support files exist.
@@ -521,9 +712,9 @@ esac
 case ${obj_format} in
   coff)
     case ${target_cpu_type} in
-      i386) AC_DEFINE(I386COFF) ;;
-      m68k) AC_DEFINE(M68KCOFF) ;;
-      m88k) AC_DEFINE(M88KCOFF) ;;
+      i386) AC_DEFINE(I386COFF, 1, [Using i386 COFF?]) ;;
+      m68k) AC_DEFINE(M68KCOFF, 1, [Using m68k COFF?]) ;;
+      m88k) AC_DEFINE(M88KCOFF, 1, [Using m88k COFF?]) ;;
     esac
     ;;
 esac
@@ -547,14 +738,16 @@ GAS_UNIQ(emulations)
 for em in . $emulations ; do
   case $em in
     .) continue ;;
-    mipsbelf | mipslelf)
+    mipsbelf | mipslelf | mipself)
        fmt=elf   file=mipself ;;
-    mipsbecoff | mipslecoff)
+    mipsbecoff | mipslecoff | mipsecoff)
        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"
@@ -565,35 +758,41 @@ GAS_UNIQ(emfiles)
 if test `set . $formats ; shift ; echo $#` -gt 1 ; then
   for fmt in $formats ; do
     case $fmt in
-      aout)    AC_DEFINE(OBJ_MAYBE_AOUT   ;;
-      bout)    AC_DEFINE(OBJ_MAYBE_BOUT   ;;
-      coff)    AC_DEFINE(OBJ_MAYBE_COFF)    ;;
-      ecoff)   AC_DEFINE(OBJ_MAYBE_ECOFF)   ;;
-      elf)     AC_DEFINE(OBJ_MAYBE_ELF)     ;;
-      generic) AC_DEFINE(OBJ_MAYBE_GENERIC) ;;
-      hp300)   AC_DEFINE(OBJ_MAYBE_HP300)   ;;
-      ieee)    AC_DEFINE(OBJ_MAYBE_IEEE)    ;;
-      som)     AC_DEFINE(OBJ_MAYBE_SOM)     ;;
-      vms)     AC_DEFINE(OBJ_MAYBE_VMS)     ;;
+      aout)    AC_DEFINE(OBJ_MAYBE_AOUT, 1,    [a.out support?])   ;;
+      bout)    AC_DEFINE(OBJ_MAYBE_BOUT, 1,    [b.out support?])   ;;
+      coff)    AC_DEFINE(OBJ_MAYBE_COFF, 1,    [COFF support?])    ;;
+      ecoff)   AC_DEFINE(OBJ_MAYBE_ECOFF, 1,   [ECOFF support?])   ;;
+      elf)     AC_DEFINE(OBJ_MAYBE_ELF, 1,     [ELF support?])     ;;
+      generic) AC_DEFINE(OBJ_MAYBE_GENERIC, 1, [generic support?]) ;;
+      hp300)   AC_DEFINE(OBJ_MAYBE_HP300, 1,   [HP300 support?])   ;;
+      ieee)    AC_DEFINE(OBJ_MAYBE_IEEE, 1,    [IEEE support?])    ;;
+      som)     AC_DEFINE(OBJ_MAYBE_SOM, 1,     [SOM support?])     ;;
+      vms)     AC_DEFINE(OBJ_MAYBE_VMS, 1,     [VMS support?])     ;;
     esac
     extra_objects="$extra_objects obj-$fmt.o"
   done
   obj_format=multi
 fi
 if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then
-  te_file=multi
-  extra_objects="$extra_objects $emfiles"
   DEFAULT_EMULATION=`set . $emulations ; echo $2`
-  AC_DEFINE(USE_EMULATIONS)
+  # e-mips* has more than one emulation per file, e-i386* has just one at the
+  # moment.  If only one emulation is specified, then don't define
+  # USE_EMULATIONS or include any of the e-files as they will only be bloat.
+  case "${obj_format}${emfiles}" in
+    multi* | *mips*)
+      extra_objects="$extra_objects $emfiles"
+      AC_DEFINE(USE_EMULATIONS, 1, [Use emulation support?]) ;;
+  esac
 fi
 AC_SUBST(extra_objects)
-AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS)
-AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION")
+AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS, [Supported emulations.])
+AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION",
+                  [Default emulation.])
 
 case ${primary_bfd_gas}-${target_cpu_type}-${obj_format} in
   yes-*-coff)  need_bfd=yes ;;
   no-*-coff)   need_bfd=yes
-               AC_DEFINE(MANY_SEGMENTS) ;;
+               AC_DEFINE(MANY_SEGMENTS, 1, [old COFF support?]) ;;
 esac
 
 reject_dev_configs=yes
@@ -612,7 +811,7 @@ AC_SUBST(atof)
 dnl AC_SUBST(emulation)
 
 case "${primary_bfd_gas}" in
-  yes) AC_DEFINE(BFD_ASSEMBLER)
+  yes) AC_DEFINE(BFD_ASSEMBLER, 1, [Use BFD interface?])
        need_bfd=yes ;;
 esac
 
@@ -635,11 +834,11 @@ AC_SUBST(OPCODES_LIB)
 
 AC_SUBST(ALL_OBJ_DEPS)
 
-AC_DEFINE_UNQUOTED(TARGET_ALIAS,       "${target_alias}")
-AC_DEFINE_UNQUOTED(TARGET_CANONICAL,   "${target}")
-AC_DEFINE_UNQUOTED(TARGET_CPU,         "${target_cpu}")
-AC_DEFINE_UNQUOTED(TARGET_VENDOR,      "${target_vendor}")
-AC_DEFINE_UNQUOTED(TARGET_OS,          "${target_os}")
+AC_DEFINE_UNQUOTED(TARGET_ALIAS,       "${target_alias}", [Target alias.])
+AC_DEFINE_UNQUOTED(TARGET_CANONICAL,   "${target}",       [Canonical target.])
+AC_DEFINE_UNQUOTED(TARGET_CPU,         "${target_cpu}",   [Target CPU.])
+AC_DEFINE_UNQUOTED(TARGET_VENDOR,      "${target_vendor}", [Target vendor.])
+AC_DEFINE_UNQUOTED(TARGET_OS,          "${target_os}",    [Target OS.])
 
 AC_PROG_CC
 
@@ -650,8 +849,7 @@ ALL_LINGUAS=
 CY_GNU_GETTEXT
 
 AM_MAINTAINER_MODE
-AM_CYGWIN32
-AM_EXEEXT
+AC_EXEEXT
 
 AC_CHECK_HEADERS(string.h stdlib.h memory.h strings.h unistd.h stdarg.h varargs.h errno.h sys/types.h)
 
@@ -662,7 +860,7 @@ if test "${host}" = "${target}"; then
   cross_gas=no
 else
   cross_gas=yes
-  AC_DEFINE(CROSS_COMPILE)
+  AC_DEFINE(CROSS_COMPILE, 1, [Compiling cross-assembler?])
 fi
 AC_MSG_RESULT($cross_gas)
 
@@ -677,6 +875,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!
@@ -707,6 +913,7 @@ GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
+GAS_CHECK_DECL_NEEDED(environ, f, char **f, $gas_test_headers)
 
 # Does errno.h declare errno, or do we have to add a separate declaration
 # for it?
@@ -724,17 +931,18 @@ dnl the build directory which include the right .h file.  Make sure
 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_OUTPUT(Makefile doc/Makefile ${GDBINIT}:gdbinit.in po/Makefile.in:po/Make-in,
 [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
  echo '#include "te-'"${te_file}"'.h"' > targ-env.h
  echo '#include "itbl-'"${target_cpu_type}"'.h"' > itbl-cpu.h
case ${target_cpu_type} in
- m32r | fr30) echo '#include "opcodes/'"${target_cpu_type}"'-opc.h"' > cgen-opc.h ;;
- esac
if test "x$cgen_cpu_prefix" != x ; then
+   echo '#include "opcodes/'"${cgen_cpu_prefix}"'-desc.h"' > cgen-desc.h
+ fi
 
  sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile],
 [target_cpu_type=${target_cpu_type}
+ cgen_cpu_prefix=${cgen_cpu_prefix}
  obj_format=${obj_format}
  te_file=${te_file}])
This page took 0.048642 seconds and 4 git commands to generate.