]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gas/configure.in
Fix problem with going to automake 2.14
[thirdparty/binutils-gdb.git] / gas / configure.in
index 2c023e6f8c3202efea117c0d6c986a6d26ad3996..697211a0bfa3bc16bb57008c20b9accadd487986 100644 (file)
@@ -5,12 +5,12 @@ 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
 
-AM_INIT_AUTOMAKE(gas, 2.8.2)
+AM_INIT_AUTOMAKE(gas, 2.9.5)
 
 AM_PROG_LIBTOOL
 
@@ -38,15 +38,30 @@ AC_ARG_ENABLE(commonbfdlib,
   *)   AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;;
 esac])dnl
 
+using_cgen=no
+
 # 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=""
 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`
+    result=`$ac_config_sub $t 2>/dev/null`
     if test -n "$result" ; then
       canon_targets="$canon_targets $result"
 #    else
@@ -72,26 +87,31 @@ 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 ;;
+      strongarm*)      cpu_type=arm endian=little ;;
       thumb*)          cpu_type=arm endian=little ;;
       hppa*)           cpu_type=hppa ;;
 changequote(,)dnl
       i[456]86)                cpu_type=i386 ;;
       m680[012346]0)   cpu_type=m68k ;;
+changequote([,])dnl
       m68008)          cpu_type=m68k ;;
       m683??)          cpu_type=m68k ;;
-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 ;;
+      pjl*)            cpu_type=pj endian=little ;;
+      pj*)             cpu_type=pj endian=big ;;
       powerpcle*)      cpu_type=ppc endian=little ;;
       powerpc*)                cpu_type=ppc endian=big ;;
       rs6000*)         cpu_type=ppc ;;
       sparclite*)      cpu_type=sparc arch=sparclite ;;
       sparclet*)       cpu_type=sparc arch=sparclet ;;
       sparc64*)                cpu_type=sparc arch=v9-64 ;;
+      sparc86x*)       cpu_type=sparc arch=sparc86x  ;;
       sparc*)          cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c.
       v850*)           cpu_type=v850 ;;
       *)               cpu_type=${cpu} ;;
@@ -99,11 +119,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
@@ -126,26 +141,35 @@ changequote([,])dnl
       alpha*-*-openbsd*)    fmt=ecoff ;;
       alpha*-*-osf*)        fmt=ecoff ;;
       alpha*-*-linuxecoff*) fmt=ecoff ;;
-      alpha*-*-linux*)      fmt=elf em=linux ;;
+      alpha*-*-linux-gnu*)  fmt=elf em=linux ;;
+      alpha*-*-netbsd*)     fmt=elf em=nbsd ;;
 
       arc-*-elf*)           fmt=elf bfd_gas=yes ;;
 
-      arm-*-riscix*)       fmt=aout em=riscix ;;
-      arm-*-aout)          fmt=aout ;;
-      arm-*-coff | thumb-*-coff)           fmt=coff ;;
-      arm-*-riscix*)        fmt=aout ;;
-      arm-*-pe)             fmt=coff em=pe ;;
+      arm-*-aout)                      fmt=aout ;;
+      arm-*-coff | thumb-*-coff)        fmt=coff ;;
+      arm-*-elf | thumb-*-elf)          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-*-oabi | thumb-*-oabi)        fmt=elf ;;
+      arm-epoc-pe | thumb-epoc-pe)      fmt=coff em=epoc-pe ;;
+      arm-*-pe | thumb-*-pe)            fmt=coff em=pe ;;
+      arm-*-riscix*)                   fmt=aout em=riscix ;;
 
       d10v-*-*)                    fmt=elf bfd_gas=yes ;;
-# start-sanitize-d30v
       d30v-*-*)                    fmt=elf bfd_gas=yes ;;
-# end-sanitize-d30v
+
+
+      fr30-*-*)                    fmt=elf bfd_gas=yes ;;
 
       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-*-hpux*)         fmt=som em=hppa ;;
+      hppa-*-mpeix*)        fmt=som em=hppa ;;
       hppa-*-bsd*)          fmt=som em=hppa ;;
       hppa-*-hiux*)         fmt=som em=hppa ;;
 
@@ -153,29 +177,34 @@ changequote([,])dnl
 
       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 ;;
+      i386-*-beoself* | i386-*-beos*) fmt=elf bfd_gas=yes ;;
       i386-*-bsd*)          fmt=aout em=386bsd ;;
       i386-*-netbsd0.8)     fmt=aout em=386bsd ;;
       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*coff*)   fmt=coff em=linux ;;
-      i386-*-linux*)        fmt=elf em=linux ;;
+      i386-*-linux-gnu*)    fmt=elf em=linux bfd_gas=yes ;;
       i386-*-lynxos*)       fmt=coff em=lynx ;;
       i386-*-sysv4* | i386-*-solaris* | i386-*-elf)
-                           fmt=elf ;;
-      i386-*-freebsdelf*)   fmt=elf ;;
-      i386-*-freebsd*)      fmt=aout em=386bsd ;;
+                           fmt=elf bfd_gas=yes ;;
+      i386-*-freebsdaout* | i386-*-freebsd[12].* | i386-*-freebsd[12])
+                            fmt=aout em=386bsd ;;
+      i386-*-freebsd*)     fmt=elf bfd_gas=yes ;;
       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-*-rtemself*)     fmt=elf ;;
       i386-*-rtems*)        fmt=coff ;;
       i386-*-gnu*)          fmt=elf ;;
       i386-*-mach*)
@@ -183,9 +212,11 @@ changequote([,])dnl
       i386-*-msdos*)        fmt=aout ;;
       i386-*-moss*)        fmt=elf ;;
       i386-*-pe)            fmt=coff em=pe ;;
-      i386-*-cygwin32*)     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-*-vxworks*)      fmt=aout ;;
       i960-*-bout)          fmt=bout ;;
       i960-*-coff)          fmt=coff em=ic960 ;;
       i960-*-rtems*)        fmt=coff em=ic960 ;;
@@ -194,6 +225,7 @@ changequote([,])dnl
       i960-*-vxworks5.0)    fmt=bout ;;
       i960-*-vxworks5.*)    fmt=coff em=ic960 ;;
       i960-*-vxworks*)      fmt=bout ;;
+      i960-*-elf*)         fmt=elf ;;
 
       m32r-*-*)                    fmt=elf bfd_gas=yes ;;
 
@@ -209,7 +241,8 @@ changequote([,])dnl
                            fmt=coff ;;
       m68k-*-hpux*)         fmt=hp300 em=hp300 ;;
       m68k-*-linux*aout*)   fmt=aout em=linux ;;
-      m68k-*-linux*)       fmt=elf 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 ;;
@@ -219,10 +252,13 @@ changequote([,])dnl
       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 ;;
@@ -235,25 +271,31 @@ changequote([,])dnl
       mips-*-lnews*)        fmt=ecoff em=lnews ;;
       mips-*-riscos*)       fmt=ecoff ;;
       mips-*-sysv*)         fmt=ecoff ;;
-      mips-*-elf* | mips-*-rtems* | mips-*-linux* | mips-*-gnu* | mips-*-openbsd*)
+      mips-*-elf* | mips-*-rtems* | mips-*-linux-gnu* | mips-*-gnu* | mips-*-openbsd*)
                            fmt=elf ;;
+      mips-*-vxworks*)      fmt=elf
+                           AC_DEFINE(MIPS_STABS_ELF, 1,
+                               [Use ELF stabs for MIPS, not ECOFF stabs])
+                           ;;
       mn10200-*-*)         fmt=elf bfd_gas=yes ;;
       mn10300-*-*)         fmt=elf bfd_gas=yes ;;
-      ppc-*-pe | ppc-*-cygwin32 | ppc-*-winnt*)
+      pj*)                 fmt=elf ;;
+      ppc-*-pe | ppc-*-cygwin* | ppc-*-winnt*)
                            fmt=coff em=pe ;;
       ppc-*-aix*)           fmt=coff ;;
       ppc-*-beos*)          fmt=coff ;;
       ppc-*-*bsd* | ppc-*-elf* | ppc-*-eabi* | ppc-*-sysv4*)
                            fmt=elf ;;
-      ppc-*-linux*)        fmt=elf
+      ppc-*-linux-gnu*)            fmt=elf
                            case "$endian" in
                            big)  ;;
-                           *)    AC_MSG_ERROR(Linux must be configured big endian) ;;
+                           *)    AC_MSG_ERROR(GNU/Linux must be configured big endian) ;;
                            esac
                            ;;
       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)
@@ -263,10 +305,12 @@ changequote([,])dnl
       ppc-*-macos* | ppc-*-mpw*)
                            fmt=coff em=macos ;;
       ppc-*-netware*)       fmt=elf em=ppcnw ;;
+      ppc-*-vxworks*)       fmt=elf ;;
 
       sh-*-elf*)           fmt=elf ;;
       sh-*-coff*)           fmt=coff ;;
-      sh-*-rtems*)         fmt=elf ;;
+      sh-*-rtemself*)       fmt=elf ;;
+      sh-*-rtems*)         fmt=coff ;;
 
       ns32k-pc532-mach* | ns32k-pc532-ux*)    fmt=aout em=pc532mach ;;
       ns32k-pc532-netbsd* | ns32k-pc532-lites*)  fmt=aout em=nbsd532 ;;
@@ -278,34 +322,30 @@ changequote([,])dnl
                            fmt=aout em=sparcaout ;;
       sparc-*-coff)         fmt=coff ;;
       sparc-*-linux*aout*)  fmt=aout em=linux ;;
-      sparc-*-linux*)      fmt=elf em=linux ;;
+      sparc-*-linux-gnu*)   fmt=elf em=linux ;;
       sparc-*-lynxos*)      fmt=coff em=lynx ;;
       sparc-fujitsu-none)   fmt=aout ;;
       sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*)
                            fmt=elf ;;
-      sparc-*-netbsd*)      fmt=aout em=nbsd bfd_gas=yes ;;
-      sparc-*-openbsd*)     fmt=aout em=nbsd bfd_gas=yes ;;
+      sparc-*-netbsd*)      fmt=aout em=nbsd ;;
+      sparc-*-openbsd*)     fmt=aout em=nbsd ;;
+
+      strongarm-*-coff)     fmt=coff ;;
+      strongarm-*-elf)      fmt=elf ;;
 
       tic30-*-*aout*)      fmt=aout bfd_gas=yes ;;
       tic30-*-*coff*)       fmt=coff bfd_gas=yes ;;
-# start-sanitize-tic80
       tic80-*-*)           fmt=coff ;;
-# end-sanitize-tic80
-
-# start-sanitize-sky
-      dvp-*-*)             fmt=elf bfd_gas=yes ;;
-# end-sanitize-sky
 
       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 ;;
 
@@ -327,6 +367,19 @@ changequote([,])dnl
       *-*-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
+
     case ${cpu_type}-${fmt} in
       alpha*-*)        bfd_gas=yes ;;
       arm-*)   bfd_gas=yes ;;
@@ -336,18 +389,23 @@ changequote([,])dnl
       ns32k-*) bfd_gas=yes ;;
       ppc-*)   bfd_gas=yes ;;
       sparc-*) bfd_gas=yes ;;
+      strongarm-*)     bfd_gas=yes ;;
       *-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
+      i386-coff)       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
 
@@ -363,14 +421,10 @@ changequote([,])dnl
        ;;
     esac
 
+    # Any other special object files needed ?
     case ${cpu_type} in
-      m32r)
-       case ${extra_objects} in
-       *cgen.o*) ;;
-       *) extra_objects="$extra_objects cgen.o"
-          AC_DEFINE(USING_CGEN)
-          ;;
-       esac
+      fr30 | m32r)
+       using_cgen=yes
        ;;
 
       m68k)
@@ -399,14 +453,20 @@ changequote([,])dnl
 
       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
@@ -427,7 +487,7 @@ changequote([,])dnl
 
     case ${generic_target}-${fmt} in
       mips-*-irix5*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
-      mips-*-linux*-*) case "$endian" in
+      mips-*-linux-gnu*-*) case "$endian" in
                        big)    emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
                        *)      emulation="mipslelf mipsbelf mipself mipslecoff mipsbecoff mipsecoff" ;;
                        esac ;;
@@ -439,11 +499,12 @@ changequote([,])dnl
       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 ;;
+      i386-*-elf)      emulation="i386elf" ;;
+      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" ;;
     esac
 
     emulations="$emulations $emulation"
@@ -462,6 +523,16 @@ case "${obj_format}" in
   "") AC_MSG_ERROR(GAS does not know what format to use for target ${target}) ;;
 esac
 
+# Unfortunately the cpu in cpu-opc.h file isn't always $(TARGET_CPU).
+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.
 dnl
@@ -499,9 +570,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
@@ -543,35 +614,42 @@ 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*)
+      te_file=multi
+      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
@@ -585,11 +663,12 @@ esac
 AC_SUBST(target_cpu_type)
 AC_SUBST(obj_format)
 AC_SUBST(te_file)
+AC_SUBST(install_tooldir)
 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
 
@@ -612,21 +691,22 @@ 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
 
 AC_PROG_YACC
-AC_PROG_LEX
-AC_DECL_YYTEXT
+AM_PROG_LEX
+
+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)
 
@@ -637,7 +717,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)
 
@@ -682,6 +762,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?
@@ -699,15 +780,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,
+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) 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}])