* Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
authorJeff Law <law@gcc.gnu.org>
Sat, 4 Apr 1998 13:32:41 +0000 (06:32 -0700)
committerJeff Law <law@gcc.gnu.org>
Sat, 4 Apr 1998 13:32:41 +0000 (06:32 -0700)
        for details.

        * haifa-sched.c: Mirror recent changes from gcc2.

From-SVN: r18985

gcc/configure

index 8d1f56ef987e9ba14b77f84a90ef3d2f487a64d3..8845d436828b1cc3dec75790662364be9afe7621 100755 (executable)
@@ -1663,7 +1663,7 @@ fi
 echo "$ac_t""$gcc_cv_header_inttypes_h" 1>&6
 
 for ac_func in strtoul bsearch strerror putenv popen vprintf bcopy bzero bcmp \
-       index rindex kill getrlimit setrlimit atoll atoq
+       index rindex kill getrlimit setrlimit atoll atoq sysconf
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
 echo "configure:1670: checking for $ac_func" >&5
@@ -1873,9 +1873,11 @@ objext='.o'
 
 
 build_xm_file=
+build_xm_defines=
 build_install_headers_dir=install-headers-tar
 build_exeext=
 host_xm_file=
+host_xm_defines=
 host_xmake_file=
 host_truncate_target=
 host_exeext=
@@ -1896,6 +1898,7 @@ for machine in $build $host $target; do
        extra_objs=
        extra_host_objs=
        extra_gcc_objs=
+       xm_defines=
        float_format=
        # Set this to force installation and use of collect2.
        use_collect2=
@@ -1931,7 +1934,7 @@ for machine in $build $host $target; do
        c*-convex-*)
                cpu_type=convex
                ;;
-       i[3456]86-*-*)
+       i[34567]86-*-*)
                cpu_type=i386
                ;;
        hppa*-*-*)
@@ -1957,6 +1960,13 @@ for machine in $build $host $target; do
        tm_file=${cpu_type}/${cpu_type}.h
        xm_file=${cpu_type}/xm-${cpu_type}.h
        
+       # Set the default macros to define for GNU/Linux systems.
+       case $machine in
+       *-*-linux-gnu*)
+               xm_defines="HAVE_ATEXIT POSIX NO_STAB_H BSTRING"
+               ;;
+       esac
+
        case $machine in
        # Support site-specific machine types.
        *local*)
@@ -1977,7 +1987,7 @@ for machine in $build $host $target; do
                ;;
        a29k-*-bsd* | a29k-*-sym1*)
                tm_file="${tm_file} a29k/unix.h"
-               xm_file=a29k/xm-unix.h
+               xm_defines=USG
                xmake_file=a29k/x-unix
                use_collect2=yes
                ;;
@@ -1995,16 +2005,18 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        alpha*-*-linux-gnuecoff*)
-               tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
-               xm_file="${xm_file} alpha/xm-linux.h"
+               tm_file="${tm_file} alpha/linux.h"
+               xm_defines=USE_BFD
+               target_cpu_default="MASK_GAS"
                gas=no
                xmake_file=none
                gas=yes gnu_ld=yes
                ;;
        alpha*-*-linux-gnulibc1*)
-               tm_file="${tm_file} alpha/elf.h alpha/linux-elf.h alpha/linux.h"
-               xm_file="${xm_file} alpha/xm-linux.h"
-               tmake_file="t-linux t-linux-gnulibc1"
+               tm_file="${tm_file} alpha/linux.h alpha/elf.h"
+               xm_defines=USE_BFD
+               target_cpu_default="MASK_GAS"
+               tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux"
                xmake_file=none
                gas=yes gnu_ld=yes
                if [ x$enable_threads = xyes ]; then
@@ -2014,7 +2026,10 @@ for machine in $build $host $target; do
        alpha*-*-linux-gnu*)
                tm_file="${tm_file} alpha/elf.h alpha/linux-elf.h alpha/linux.h"
                xm_file="${xm_file} alpha/xm-linux.h"
-               tmake_file="t-linux"
+               xm_defines=USE_BFD
+               target_cpu_default="MASK_GAS"
+               tmake_file="t-linux alpha/t-linux"
+               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                xmake_file=none
                fixincludes=Makefile.in
                gas=yes gnu_ld=yes
@@ -2111,14 +2126,13 @@ for machine in $build $host $target; do
                ;;
        arm-*-netbsd*)
                tm_file=arm/netbsd.h
-               xm_file=arm/xm-netbsd.h
+               xm_file="xm-siglist.h ${xm_file}"
                tmake_file="t-netbsd arm/t-netbsd"
                # On NetBSD, the headers are already okay, except for math.h.
                fixincludes=fixinc.math
                ;;
        arm-*-linux-gnuaout*)           # ARM GNU/Linux
                cpu_type=arm
-               xm_file=arm/xm-linux.h
                xmake_file=x-linux
                tm_file=arm/linux-gas.h
                tmake_file=arm/t-linux
@@ -2355,7 +2369,7 @@ for machine in $build $host $target; do
                ;;
        i370-*-mvs*)
                ;;
-       i[3456]86-ibm-aix*)             # IBM PS/2 running AIX
+       i[34567]86-ibm-aix*)            # IBM PS/2 running AIX
                 if [ x$gas = xyes ]
                then
                        tm_file=i386/aix386.h
@@ -2365,11 +2379,13 @@ for machine in $build $host $target; do
                        tm_file=i386/aix386ng.h
                        use_collect2=yes
                fi
-               xm_file=i386/xm-aix.h
+               xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
+               xm_defines=USG
                xmake_file=i386/x-aix
                ;;
-       i[456]86-ncr-sysv4*)            # NCR 3000 - ix86 running system V.4
-               xm_file=i386/xm-sysv4.h
+       i[34567]86-ncr-sysv4*)  # NCR 3000 - ix86 running system V.4
+               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_defines="USG POSIX SMALL_ARG_MAX"
                xmake_file=i386/x-ncr3000
                if [ x$stabs = xyes -a x$gas = xyes ]
                then
@@ -2380,7 +2396,7 @@ for machine in $build $host $target; do
                extra_parts="crtbegin.o crtend.o"
                tmake_file=i386/t-crtpic
                ;;
-       i[3456]86-next-*)
+       i[34567]86-next-*)
                tm_file=i386/next.h
                xm_file=i386/xm-next.h
                tmake_file=i386/t-next
@@ -2390,7 +2406,7 @@ for machine in $build $host $target; do
                        thread_file='mach'
                fi
                ;;
-       i[3456]86-sequent-bsd*)                 # 80386 from Sequent
+       i[34567]86-sequent-bsd*)                # 80386 from Sequent
                use_collect2=yes
                if [ x$gas = xyes ]
                then
@@ -2399,8 +2415,8 @@ for machine in $build $host $target; do
                        tm_file=i386/sequent.h
                fi
                ;;
-       i[3456]86-sequent-ptx1*)
-               xm_file=i386/xm-sysv3.h
+       i[34567]86-sequent-ptx1*)
+               xm_defines="USG SVR3"
                xmake_file=i386/x-sysv3
                tm_file=i386/seq-sysv3.h
                tmake_file=i386/t-crtstuff
@@ -2408,8 +2424,8 @@ for machine in $build $host $target; do
                extra_parts="crtbegin.o crtend.o"
                install_headers_dir=install-headers-cpio
                ;;
-       i[3456]86-sequent-ptx2* | i[3456]86-sequent-sysv3*)
-               xm_file=i386/xm-sysv3.h
+       i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
+               xm_defines="USG SVR3"
                xmake_file=i386/x-sysv3
                tm_file=i386/seq2-sysv3.h
                tmake_file=i386/t-crtstuff
@@ -2417,8 +2433,9 @@ for machine in $build $host $target; do
                fixincludes=fixinc.ptx
                install_headers_dir=install-headers-cpio
                ;;
-       i[3456]86-sequent-ptx4* | i[3456]86-sequent-sysv4*)
-               xm_file=i386/xm-sysv4.h
+       i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
+               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_defines="USG POSIX SMALL_ARG_MAX"
                xmake_file=x-svr4
                tm_file=i386/ptx4-i.h
                tmake_file=t-svr4
@@ -2427,7 +2444,7 @@ for machine in $build $host $target; do
                install_headers_dir=install-headers-cpio
                ;;
        i386-sun-sunos*)                # Sun i386 roadrunner
-               xm_file=i386/xm-sun.h
+               xm_defines=USG
                tm_file=i386/sun.h
                use_collect2=yes
                ;;
@@ -2435,23 +2452,21 @@ for machine in $build $host $target; do
                tm_file=i386/vxi386.h
                tmake_file=i386/t-i386bare
                ;;
-       i[3456]86-*-aout*)
+       i[34567]86-*-aout*)
                tm_file=i386/i386-aout.h
                tmake_file=i386/t-i386bare
                ;;
-       i[3456]86-*-bsdi* | i[345]86-*-bsd386*)
+       i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
                tm_file=i386/bsd386.h
-               xm_file=i386/xm-bsd386.h
 #              tmake_file=t-libc-ok
                ;;
-       i[3456]86-*-bsd*)
+       i[34567]86-*-bsd*)
                tm_file=i386/386bsd.h
-               xm_file=i386/xm-bsd386.h
 #              tmake_file=t-libc-ok
 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
 #              use_collect2=yes
                ;;
-       i[3456]86-*-freebsdelf*)
+       i[34567]86-*-freebsdelf*)
                tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h"
                # On FreeBSD, the headers are already ok, except for math.h.
                fixincludes=fixinc.math
@@ -2460,26 +2475,27 @@ for machine in $build $host $target; do
                gnu_ld=yes
                stabs=yes
                ;;
-       i[3456]86-*-freebsd*)
+       i[34567]86-*-freebsd*)
                tm_file=i386/freebsd.h
                # On FreeBSD, the headers are already ok, except for math.h.
                fixincludes=fixinc.math
                tmake_file=i386/t-freebsd
                ;;
-       i[3456]86-*-netbsd*)
+       i[34567]86-*-netbsd*)
                tm_file=i386/netbsd.h
                # On NetBSD, the headers are already okay, except for math.h.
                fixincludes=fixinc.math
                tmake_file=t-netbsd
                ;;
-       i[3456]86-*-coff*)
+       i[34567]86-*-coff*)
                tm_file=i386/i386-coff.h
                tmake_file=i386/t-i386bare
                ;;
-       i[3456]86-*-isc*)               # 80386 running ISC system
-               xm_file=i386/xm-isc.h
+       i[34567]86-*-isc*)              # 80386 running ISC system
+               xm_file="${xm_file} i386/xm-isc.h"
+               xm_defines="USG SVR3"
                case $machine in
-                 i[345]86-*-isc[34]*)
+                 i[34567]86-*-isc[34]*)
                    xmake_file=i386/x-isc3
                    ;;
                  *)
@@ -2498,26 +2514,28 @@ for machine in $build $host $target; do
                fi
                install_headers_dir=install-headers-cpio
                ;;
-       i[3456]86-*-linux-gnuoldld*)    # Intel 80386's running GNU/Linux
-               xm_file=i386/xm-linux.h # with a.out format using pre BFD linkers
+       i[34567]86-*-linux-gnuoldld*)   # Intel 80386's running GNU/Linux
+                                       # with a.out format using
+                                       # pre BFD linkers
                xmake_file=x-linux-aout
                tmake_file="t-linux-aout i386/t-crtstuff"
                tm_file=i386/linux-oldld.h
                fixincludes=Makefile.in #On Linux, the headers are ok already.
                gnu_ld=yes
                ;;
-       i[3456]86-*-linux-gnuaout*)     # Intel 80386's running GNU/Linux
-               xm_file=i386/xm-linux.h         # with a.out format
+       i[34567]86-*-linux-gnuaout*)    # Intel 80386's running GNU/Linux
+                                       # with a.out format
                xmake_file=x-linux-aout
                tmake_file="t-linux-aout i386/t-crtstuff"
                tm_file=i386/linux-aout.h
                fixincludes=Makefile.in #On Linux, the headers are ok already.
                gnu_ld=yes
                ;;
-       i[3456]86-*-linux-gnulibc1)
-               xm_file=i386/xm-linux.h # Intel 80386's running GNU/Linux
-               xmake_file=x-linux      # with ELF format using the
-               tm_file=i386/linux.h    # GNU/Linux C library 5
+       i[34567]86-*-linux-gnulibc1)    # Intel 80386's running GNU/Linux
+                                       # with ELF format using the
+                                       # GNU/Linux C library 5
+               xmake_file=x-linux      
+               tm_file=i386/linux.h    
                tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                fixincludes=Makefile.in #On Linux, the headers are ok already.
@@ -2526,9 +2544,10 @@ for machine in $build $host $target; do
                        thread_file='single'
                fi
                ;;
-       i[3456]86-*-linux-gnu*) # Intel 80386's running GNU/Linux
-               xm_file=i386/xm-linux.h # with ELF format using glibc 2
-               xmake_file=x-linux      # aka GNU/Linux C library 6
+       i[34567]86-*-linux-gnu*)        # Intel 80386's running GNU/Linux
+                                       # with ELF format using glibc 2
+                                       # aka GNU/Linux C library 6
+               xmake_file=x-linux
                tm_file=i386/linux.h
                tmake_file="t-linux i386/t-crtstuff"
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
@@ -2538,21 +2557,28 @@ for machine in $build $host $target; do
                        thread_file='posix'
                fi
                ;;
-       i[3456]86-*-gnu*)
+       i[34567]86-*-gnu*)
+               ;;
+       i[34567]86-go32-msdos | i[34567]86-*-go32*)
+               xm_file=i386/xm-go32.h
+               tm_file=i386/go32.h
+               tmake_file=i386/t-go32
                ;;
-       i[3456]86-go32-msdos | i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
+       i[34567]86-pc-msdosdjgpp*)
                xm_file=i386/xm-go32.h
                tm_file=i386/go32.h
                tmake_file=i386/t-go32
+               gnu_ld=yes
+               gas=yes
                ;;
-       i[3456]86-moss-msdos* | i[3456]86-*-moss*)
+       i[34567]86-moss-msdos* | i[34567]86-*-moss*)
                tm_file=i386/moss.h
                tmake_file=t-libc-ok
                fixincludes=Makefile.in
                gnu_ld=yes
                gas=yes
                ;;
-       i[3456]86-*-lynxos*)
+       i[34567]86-*-lynxos*)
                if [ x$gas = xyes ]
                then
                        tm_file=i386/lynx.h
@@ -2563,12 +2589,12 @@ for machine in $build $host $target; do
                tmake_file=i386/t-i386bare
                xmake_file=x-lynx
                ;;
-       i[3456]86-*-mach*)
+       i[34567]86-*-mach*)
                tm_file=i386/mach.h
 #              tmake_file=t-libc-ok
                use_collect2=yes
                ;;
-       i[3456]86-*-osfrose*)           # 386 using OSF/rose
+       i[34567]86-*-osfrose*)          # 386 using OSF/rose
                 if [ x$elf = xyes ]
                then
                        tm_file=i386/osfelf.h
@@ -2577,24 +2603,25 @@ for machine in $build $host $target; do
                        tm_file=i386/osfrose.h
                        use_collect2=yes
                fi
-               xm_file=i386/xm-osf.h
+               xm_file="i386/xm-osf.h ${xm_file}"
                xmake_file=i386/x-osfrose
                tmake_file=i386/t-osf
                extra_objs=halfpic.o
                ;;
-       i[345]86-go32-rtems*)
+       i[34567]86-go32-rtems*)
                cpu_type=i386
                xm_file=i386/xm-go32.h
                tm_file=i386/go32-rtems.h
                tmake_file="i386/t-go32 t-rtems"
                ;;
-       i[345]86-*-rtems*)
+       i[34567]86-*-rtems*)
                cpu_type=i386
                tm_file=i386/rtems.h
                tmake_file="i386/t-i386bare t-rtems"
                ;;
-       i[3456]86-*-sco3.2v5*)          # 80386 running SCO Open Server 5
-               xm_file=i386/xm-sco5.h
+       i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
+               xm_file="xm-siglist.h xm-alloca.h ${xm_file} i386/xm-sco5.h"
+               xm_defines="USG SVR3"
                xmake_file=i386/x-sco5
                fixincludes=fixinc.sco
                install_headers_dir=install-headers-cpio
@@ -2602,8 +2629,9 @@ for machine in $build $host $target; do
                tmake_file=i386/t-sco5
                extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
                ;;
-       i[3456]86-*-sco3.2v4*)          # 80386 running SCO 3.2v4 system
-               xm_file=i386/xm-sco.h
+       i[34567]86-*-sco3.2v4*)         # 80386 running SCO 3.2v4 system
+               xm_file="${xm_file} i386/xm-sco.h"
+               xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX NO_SYS_SIGLIST"
                xmake_file=i386/x-sco4
                fixincludes=fixinc.sco
                install_headers_dir=install-headers-cpio
@@ -2619,7 +2647,7 @@ for machine in $build $host $target; do
                fi
                truncate_target=yes
                ;;
-       i[3456]86-*-sco*)               # 80386 running SCO system
+       i[34567]86-*-sco*)              # 80386 running SCO system
                xm_file=i386/xm-sco.h
                xmake_file=i386/x-sco
                install_headers_dir=install-headers-cpio
@@ -2635,8 +2663,9 @@ for machine in $build $host $target; do
                fi
                truncate_target=yes
                ;;
-       i[3456]86-*-solaris2*)
-               xm_file=i386/xm-sysv4.h
+       i[34567]86-*-solaris2*)
+               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_defines="USG POSIX SMALL_ARG_MAX"
                if [ x$stabs = xyes ]
                then
                        tm_file=i386/sol2dbg.h
@@ -2644,15 +2673,19 @@ for machine in $build $host $target; do
                        tm_file=i386/sol2.h
                fi
                tmake_file=i386/t-sol2
-               extra_parts="crt1.o crti.o crtn.o crtbegin.o crtend.o"
+               extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
                xmake_file=x-svr4
-               fixincludes=fixinc.svr4
-               broken_install=yes
+               case $machine in
+               *-*-solaris2.[0-4])
+                       fixincludes=fixinc.svr4;;
+               *)
+                       fixincludes=fixinc.math;;
+               esac
                if [ x$enable_threads = xyes ]; then
                        thread_file='solaris'
                fi
                ;;
-       i[3456]86-*-sysv5*)           # Intel x86 on System V Release 5
+       i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
                xm_file=i386/xm-sysv4.h
                tm_file=i386/sysv4.h
                if [ x$stabs = xyes ]
@@ -2664,8 +2697,9 @@ for machine in $build $host $target; do
                extra_parts="crtbegin.o crtend.o"
                fixincludes=Makefile.in # The headers are just fine, thank you.
                ;;
-       i[3456]86-*-sysv4*)             # Intel 80386's running system V.4
-               xm_file=i386/xm-sysv4.h
+       i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
+               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_defines="USG POSIX SMALL_ARG_MAX"
                tm_file=i386/sysv4.h
                if [ x$stabs = xyes ]
                then
@@ -2675,8 +2709,8 @@ for machine in $build $host $target; do
                xmake_file=x-svr4
                extra_parts="crtbegin.o crtend.o"
                ;;
-       i[3456]86-*-sysv*)              # Intel 80386's running system V
-               xm_file=i386/xm-sysv3.h
+       i[34567]86-*-sysv*)             # Intel 80386's running system V
+               xm_defines="USG SVR3"
                xmake_file=i386/x-sysv3
                if [ x$gas = xyes ]
                then
@@ -2702,7 +2736,7 @@ for machine in $build $host $target; do
                tmake_file=i386/t-vsta
                xmake_file=i386/x-vsta
                ;;
-       i[3456]86-*-pe | i[3456]86-*-cygwin32)
+       i[34567]86-*-pe | i[34567]86-*-cygwin32)
                xm_file="${xm_file} i386/xm-cygwin32.h"
                tmake_file=i386/t-cygwin32
                tm_file=i386/cygwin32.h
@@ -2714,7 +2748,7 @@ for machine in $build $host $target; do
                fi
                exeext=.exe
                ;;
-       i[3456]86-*-mingw32)
+       i[34567]86-*-mingw32*)
                tm_file=i386/mingw32.h
                xm_file="${xm_file} i386/xm-mingw32.h"
                tmake_file=i386/t-cygwin32
@@ -2725,11 +2759,18 @@ for machine in $build $host $target; do
                        thread_file='win32'
                fi
                exeext=.exe
+               case $machine in
+                       *mingw32msv*)
+                               ;;
+                       *minwg32crt* | *mingw32*)
+                               tm_file="${tm_file} i386/crtdll.h"
+                               ;;
+               esac
                ;;
-       i[3456]86-*-winnt*)
+       i[34567]86-*-winnt3*)
                tm_file=i386/win-nt.h
                out_file=i386/i386.c
-               xm_file=i386/xm-winnt.h
+               xm_file="xm-winnt.h ${xm_file}"
                xmake_file=winnt/x-winnt
                tmake_file=i386/t-winnt
                extra_host_objs="winnt.o oldnames.o"
@@ -2743,13 +2784,14 @@ for machine in $build $host $target; do
                        thread_file='win32'
                fi
                ;;
-       i[3456]86-dg-dgux)
-               xm_file=i386/xm-dgux.h
+       i[34567]86-dg-dgux*)
+               xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
+               xm_defines="USG POSIX"
                out_file=i386/dgux.c
                tm_file=i386/dgux.h
                tmake_file=i386/t-dgux
                xmake_file=i386/x-dgux
-               fixincludes=fixinc.dgux
+               fixincludes=Makefile.in # There is nothing to fix
                install_headers_dir=install-headers-cpio
               ;;
        i860-alliant-*)         # Alliant FX/2800
@@ -2773,18 +2815,18 @@ for machine in $build $host $target; do
                ;;
        i860-*-osf*)                    # Intel Paragon XP/S, OSF/1AD
                tm_file="${tm_file} svr3.h i860/paragon.h"
-               xm_file="${xm_file} xm-svr3.h"
+               xm_defines="USG SVR3"
                tmake_file=t-osf
                ;;
        i860-*-sysv3*)
                tm_file="${tm_file} svr3.h i860/sysv3.h"
-               xm_file="${tm_file} xm-svr3.h"
+               xm_defines="USG SVR3"
                xmake_file=i860/x-sysv3
                extra_parts="crtbegin.o crtend.o"
                ;;
        i860-*-sysv4*)
                tm_file="${tm_file} svr4.h i860/sysv4.h"
-               xm_file="${xm_file} xm-svr3.h"
+               xm_defines="USG SVR3"
                xmake_file=i860/x-sysv4
                tmake_file=t-svr4
                extra_parts="crtbegin.o crtend.o"
@@ -2825,7 +2867,8 @@ for machine in $build $host $target; do
                ;;
        m68000-convergent-sysv*)
                tm_file=m68k/ctix.h
-               xm_file=m68k/xm-3b1.h
+               xm_file="m68k/xm-3b1.h ${xm_file}"
+               xm_defines=USG
                use_collect2=yes
                extra_headers=math-68881.h
                ;;
@@ -2836,7 +2879,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68000-hp-hpux*)                # HP 9000 series 300
-               xm_file=m68k/xm-hp320.h
+               xm_file="xm_alloca.h ${xm_file}"
+               xm_defines="USG NO_SYS_SIGLIST"
                if [ x$gas = xyes ]
                then
                        xmake_file=m68k/x-hp320g
@@ -2860,7 +2904,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68000-att-sysv*)
-               xm_file=m68k/xm-3b1.h
+               xm_file="m68k/xm-3b1.h ${xm_file}"
+               xm_defines=USG
                if [ x$gas = xyes ]
                then
                        tm_file=m68k/3b1g.h
@@ -2871,7 +2916,7 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68k-apple-aux*)                # Apple Macintosh running A/UX
-               xm_file=m68k/xm-aux.h
+               xm_defines="USG AUX"
                tmake_file=m68k/t-aux
                install_headers_dir=install-headers-cpio
                extra_headers=math-68881.h
@@ -2901,7 +2946,7 @@ for machine in $build $host $target; do
                if [ x$gas = xyes ]
                then
                        tm_file=m68k/altos3068.h
-                       xm_file=m68k/xm-altos3068.h
+                       xm_defines=USG
                else
                        echo "The Altos is supported only with the GNU assembler" 1>&2
                        exit 1
@@ -2920,21 +2965,24 @@ for machine in $build $host $target; do
                else
                        tm_file=m68k/dpx2.h
                fi
-               xm_file=m68k/xm-m68kv.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines=USG
                xmake_file=m68k/x-dpx2
                use_collect2=yes
                extra_headers=math-68881.h
                ;;
        m68k-atari-sysv4*)              # Atari variant of V.4.
                tm_file=m68k/atari.h
-               xm_file=m68k/xm-atari.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines="USG FULL_PROTOTYPES"
                tmake_file=t-svr4
                extra_parts="crtbegin.o crtend.o"
                extra_headers=math-68881.h
                ;;
        m68k-motorola-sysv*)
                tm_file=m68k/mot3300.h
-               xm_file=m68k/xm-mot3300.h
+               xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
+               xm_defines=NO_SYS_SIGLIST
                if [ x$gas = xyes ]
                then
                        xmake_file=m68k/x-mot3300-gas
@@ -2961,24 +3009,27 @@ for machine in $build $host $target; do
                ;;
        m68k-ncr-sysv*)                 # NCR Tower 32 SVR3
                tm_file=m68k/tower-as.h
-               xm_file="${xm_file} xm-svr3.h"
+               xm_defines="USG SVR3"
                xmake_file=m68k/x-tower
                extra_parts="crtbegin.o crtend.o"
                extra_headers=math-68881.h
                ;;
         m68k-plexus-sysv*)
                tm_file=m68k/plexus.h
-               xm_file=m68k/xm-plexus.h
+               xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
+               xm_defines=USG
                use_collect2=yes
                extra_headers=math-68881.h
                ;;
        m68k-tti-*)
                tm_file=m68k/pbb.h
-               xm_file=m68k/xm-m68kv.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines=USG
                extra_headers=math-68881.h
                ;;
        m68k-crds-unos*)
-               xm_file=m68k/xm-crds.h
+               xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
+               xm_defines="USG unos"
                xmake_file=m68k/x-crds
                tm_file=m68k/crds.h
                use_collect2=yes
@@ -2986,7 +3037,8 @@ for machine in $build $host $target; do
                ;;
        m68k-cbm-sysv4*)                # Commodore variant of V.4.
                tm_file=m68k/amix.h
-               xm_file=m68k/xm-amix.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines="USG FULL_PROTOTYPES"
                xmake_file=m68k/x-amix
                tmake_file=t-svr4
                extra_parts="crtbegin.o crtend.o"
@@ -3020,7 +3072,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
-               xm_file=m68k/xm-hp320.h
+               xm_file="xm_alloca.h ${xm_file}"
+               xm_defines="USG NO_SYS_SIGLIST"
                if [ x$gas = xyes ]
                then
                        xmake_file=m68k/x-hp320g
@@ -3034,7 +3087,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68k-hp-hpux*)  # HP 9000 series 300
-               xm_file=m68k/xm-hp320.h
+               xm_file="xm_alloca.h ${xm_file}"
+               xm_defines="USG NO_SYS_SIGLIST"
                if [ x$gas = xyes ]
                then
                        xmake_file=m68k/x-hp320g
@@ -3074,7 +3128,7 @@ for machine in $build $host $target; do
                ;;
        m68k-next-nextstep2*)
                tm_file=m68k/next21.h
-               xm_file=m68k/xm-next.h
+               xm_file="m68k/xm-next.h ${xm_file}"
                tmake_file=m68k/t-next
                xmake_file=m68k/x-next
                extra_objs=nextstep.o
@@ -3083,7 +3137,7 @@ for machine in $build $host $target; do
                 ;;
        m68k-next-nextstep3*)
                tm_file=m68k/next.h
-               xm_file=m68k/xm-next.h
+               xm_file="m68k/xm-next.h ${xm_file}"
                tmake_file=m68k/t-next
                xmake_file=m68k/x-next
                extra_objs=nextstep.o
@@ -3147,20 +3201,22 @@ for machine in $build $host $target; do
                tmake_file=t-netbsd
                ;;
        m68k-*-sysv3*)                  # Motorola m68k's running system V.3
-               xm_file=m68k/xm-m68kv.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines=USG
                xmake_file=m68k/x-m68kv
                extra_parts="crtbegin.o crtend.o"
                extra_headers=math-68881.h
                ;;
        m68k-*-sysv4*)                  # Motorola m68k's running system V.4
                tm_file=m68k/m68kv4.h
-               xm_file=m68k/xm-m68kv.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines=USG
                tmake_file=t-svr4
                extra_parts="crtbegin.o crtend.o"
                extra_headers=math-68881.h
                ;;
        m68k-*-linux-gnuaout*)          # Motorola m68k's running GNU/Linux
-               xm_file=m68k/xm-linux.h # with a.out format
+                                       # with a.out format
                xmake_file=x-linux
                tm_file=m68k/linux-aout.h
                tmake_file="t-linux-aout m68k/t-linux-aout"
@@ -3169,8 +3225,9 @@ for machine in $build $host $target; do
                gnu_ld=yes
                ;;
        m68k-*-linux-gnulibc1)          # Motorola m68k's running GNU/Linux
-               xm_file=m68k/xm-linux.h # with ELF format using the
-               xmake_file=x-linux      # GNU/Linux C library 5
+                                       # with ELF format using the
+                                       # GNU/Linux C library 5
+               xmake_file=x-linux
                tm_file=m68k/linux.h
                tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
@@ -3179,8 +3236,9 @@ for machine in $build $host $target; do
                gnu_ld=yes
                ;;
        m68k-*-linux-gnu*)              # Motorola m68k's running GNU/Linux
-               xm_file=m68k/xm-linux.h # with ELF format using glibc 2
-               xmake_file=x-linux      # aka the GNU/Linux C library 6.
+                                       # with ELF format using glibc 2
+                                       # aka the GNU/Linux C library 6.
+               xmake_file=x-linux
                tm_file=m68k/linux.h
                tmake_file="t-linux m68k/t-linux"
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
@@ -3224,7 +3282,7 @@ for machine in $build $host $target; do
        m88k-dolphin-sysv3*)
                tm_file=m88k/dolph.h
                extra_parts="crtbegin.o crtend.o"
-               xm_file=m88k/xm-sysv3.h
+               xm_file="m88k/xm-sysv3.h ${xm_file}"
                xmake_file=m88k/x-dolph
                if [ x$gas = xyes ]
                then
@@ -3234,7 +3292,7 @@ for machine in $build $host $target; do
        m88k-tektronix-sysv3)
                tm_file=m88k/tekXD88.h
                extra_parts="crtbegin.o crtend.o"
-               xm_file=m88k/xm-sysv3.h
+               xm_file="m88k/xm-sysv3.h ${xm_file}"
                xmake_file=m88k/x-tekXD88
                if [ x$gas = xyes ]
                then
@@ -3261,7 +3319,7 @@ for machine in $build $host $target; do
        m88k-*-sysv3*)
                tm_file=m88k/sysv3.h
                extra_parts="crtbegin.o crtend.o"
-               xm_file=m88k/xm-sysv3.h
+               xm_file="m88k/xm-sysv3.h ${xm_file}"
                xmake_file=m88k/x-sysv3
                if [ x$gas = xyes ]
                then
@@ -3285,8 +3343,8 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-sgi-irix5cross64)          # Irix5 host, Irix 6 target, cross64
-               tm_file=mips/cross64.h
-               xm_file=mips/xm-iris5.h
+               tm_file="mips/iris6.h mips/cross64.h"
+               xm_defines="USG HAVE_INTTYPES_H"
                fixincludes=Makefile.in
                xmake_file=mips/x-iris
                tmake_file=mips/t-cross64
@@ -3303,12 +3361,12 @@ for machine in $build $host $target; do
                        then
                                tm_file=mips/iris5gdb.h
                        else
-                               tm_file=mips/sni-gas.h
+                               tm_file="mips/sni-svr4.h mips/sni-gas.h"
                        fi
                else
                        tm_file=mips/sni-svr4.h
                fi
-                xm_file=mips/xm-sysv.h
+               xm_defines=USG
                 xmake_file=mips/x-sni-svr4
                 tmake_file=mips/t-mips-gas
                 if [ x$gnu_ld != xyes ]
@@ -3319,7 +3377,7 @@ for machine in $build $host $target; do
        mips-sgi-irix5*)                # SGI System V.4., IRIX 5
                if [ x$gas = xyes ]
                then
-                       tm_file=mips/iris5gas.h
+                       tm_file="mips/iris5.h mips/iris5gas.h"
                        if [ x$stabs = xyes ]
                        then
                                tm_file="${tm_file} dbx.h"
@@ -3327,7 +3385,7 @@ for machine in $build $host $target; do
                else
                        tm_file=mips/iris5.h
                fi
-               xm_file=mips/xm-iris5.h
+               xm_defines="USG HAVE_INTTYPES_H"
                fixincludes=fixinc.irix
                xmake_file=mips/x-iris
                # mips-tfile doesn't work yet
@@ -3339,11 +3397,11 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-sgi-irix4loser*)           # Mostly like a MIPS.
-               tm_file=mips/iris4loser.h
+               tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-iris4.h
+               xm_defines=USG
                xmake_file=mips/x-iris
                if [ x$gas = xyes ]
                then
@@ -3360,11 +3418,11 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-sgi-irix4*)                # Mostly like a MIPS.
-               tm_file=mips/iris4.h
+               tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-iris4.h
+               xm_defines=USG
                xmake_file=mips/x-iris
                if [ x$gas = xyes ]
                then
@@ -3381,11 +3439,11 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-sgi-*)                     # Mostly like a MIPS.
-               tm_file=mips/iris3.h
+               tm_file="mips/iris3.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-iris3.h
+               xm_defines=USG
                xmake_file=mips/x-iris3
                if [ x$gas = xyes ]
                then
@@ -3399,7 +3457,7 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-dec-osfrose*)              # Decstation running OSF/1 reference port with OSF/rose.
-               tm_file=mips/osfrose.h
+               tm_file="mips/osfrose.h ${tm_file}"
                xmake_file=mips/x-osfrose
                tmake_file=mips/t-osfrose
                extra_objs=halfpic.o
@@ -3445,7 +3503,7 @@ for machine in $build $host $target; do
                tmake_file=t-netbsd
                ;;
        mips-sony-bsd* | mips-sony-newsos*)     # Sony NEWS 3600 or risc/news.
-               tm_file=mips/news4.h
+               tm_file="mips/news4.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
@@ -3464,11 +3522,12 @@ for machine in $build $host $target; do
        mips-sony-sysv*)                # Sony NEWS 3800 with NEWSOS5.0.
                                        # That is based on svr4.
                # t-svr4 is not right because this system doesn't use ELF.
-               tm_file=mips/news5.h
+               tm_file="mips/news5.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-news.h
+               xm_file="xm-siglist.h ${xm_file}"
+               xm_defines=USG
                if [ x$gas = xyes ]
                then
                        tmake_file=mips/t-mips-gas
@@ -3481,11 +3540,12 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-tandem-sysv4*)             # Tandem S2 running NonStop UX
-               tm_file=mips/svr4-t.h
+               tm_file="mips/svr4-5.h mips/svr4-t.h"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-sysv4.h
+               xm_file="xm-siglist.h ${xm_file}"
+               xm_defines=USG
                xmake_file=mips/x-sysv
                if [ x$gas = xyes ]
                then
@@ -3501,7 +3561,7 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-*-ultrix* | mips-dec-mach3)        # Decstation.
-               tm_file=mips/ultrix.h
+               tm_file="mips/ultrix.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
@@ -3536,7 +3596,7 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
-               tm_file=mips/bsd-4.h    # MIPS BSD 4.3, RISC-OS 4.0
+               tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
@@ -3557,7 +3617,7 @@ for machine in $build $host $target; do
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-sysv4.h
+               xm_file="xm-siglist.h ${xm_file}"
                xmake_file=mips/x-sysv
                if [ x$gas = xyes ]
                then
@@ -3572,11 +3632,11 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
-               tm_file=mips/svr4-4.h   # MIPS System V.4. RISC-OS 4.0
+               tm_file="mips/svr4-4.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-sysv.h
+               xm_defines=USG
                xmake_file=mips/x-sysv
                if [ x$gas = xyes ]
                then
@@ -3595,7 +3655,7 @@ for machine in $build $host $target; do
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-sysv.h
+               xm_defines=USG
                xmake_file=mips/x-sysv
                if [ x$gas = xyes ]
                then
@@ -3610,11 +3670,11 @@ for machine in $build $host $target; do
                fi
                ;;
        mips-*-sysv* | mips-*-riscos*sysv*)
-               tm_file=mips/svr3-4.h   # MIPS System V.3, RISC-OS 4.0
+               tm_file="mips/svr3-4.h ${tm_file}"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file=mips/xm-sysv.h
+               xm_defines=USG
                xmake_file=mips/x-sysv
                if [ x$gas = xyes ]
                then
@@ -3654,7 +3714,7 @@ for machine in $build $host $target; do
                tmake_file=mips/t-ecoff
                ;;
        mips-*-ecoff*)
-               tm_file=mips/ecoff.h
+               tm_file="${tm_file} gofast.h mips/ecoff.h"
                if [ x$stabs = xyes ]; then
                        tm_file="${tm_file} dbx.h"
                fi
@@ -3673,7 +3733,7 @@ for machine in $build $host $target; do
                tmake_file=mips/t-ecoff
                ;;
        mips64orionel-*-elf*)
-               tm_file="mips/elflorion.h libgloss.h"
+               tm_file="mips/elforion.h mips/elfl64.h libgloss.h"
                tmake_file=mips/t-ecoff
                ;;
        mips64-*-elf*)
@@ -3681,11 +3741,11 @@ for machine in $build $host $target; do
                tmake_file=mips/t-ecoff
                ;;
        mips64orion-*-elf*)
-               tm_file="mips/elforion.h libgloss.h"
+               tm_file="mips/elforion.h mips/elf64.h libgloss.h"
                tmake_file=mips/t-ecoff
                ;;
        mips64orion-*-rtems*)
-               tm_file=mips/rtems64.h
+               tm_file="mips/elforion.h mips/elfl64.h mips/rtems64.h"
                tmake_file="mips/t-ecoff t-rtems"
                ;;
        mipstx39el-*-elf*)
@@ -3747,7 +3807,7 @@ for machine in $build $host $target; do
                ;;
 # This has not been updated to GCC 2.
 #      ns32k-ns-genix*)
-#              xm_file=ns32k/xm-genix.h
+#              xm_defines=USG
 #              xmake_file=ns32k/x-genix
 #              tm_file=ns32k/genix.h
 #              use_collect2=yes
@@ -3762,7 +3822,8 @@ for machine in $build $host $target; do
                ;;
        ns32k-pc532-minix*)
                tm_file=ns32k/pc532-min.h
-               xm_file=ns32k/xm-pc532-min.h
+               xm_file="ns32k/xm-pc532-min.h ${xm-file}"
+               xm_defines=USG
                use_collect2=yes
                ;;
        ns32k-pc532-netbsd*)
@@ -3797,7 +3858,8 @@ for machine in $build $host $target; do
                ;;
        powerpc-*-sysv* | powerpc-*-elf*)
                tm_file=rs6000/sysv4.h
-               xm_file=rs6000/xm-sysv4.h
+               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_defines="USG POSIX"
                extra_headers=ppc-asm.h
                if [ x$gas = xyes ]
                then
@@ -3861,7 +3923,8 @@ for machine in $build $host $target; do
                ;;
        powerpc-*-linux-gnu*)
                tm_file=rs6000/linux.h
-               xm_file=rs6000/xm-sysv4.h
+               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_defines="USG ${xm_defines}"
                out_file=rs6000/rs6000.c
                if [ x$gas = xyes ]
                then
@@ -3879,7 +3942,8 @@ for machine in $build $host $target; do
                ;;
         powerpc-wrs-vxworks*)
                 cpu_type=rs6000
-                xm_file=rs6000/xm-sysv4.h
+               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_defines="USG POSIX"
                 tm_file=rs6000/vxppc.h
                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
@@ -3887,7 +3951,8 @@ for machine in $build $host $target; do
                 ;;
        powerpcle-*-sysv* | powerpcle-*-elf*)
                tm_file=rs6000/sysv4le.h
-               xm_file=rs6000/xm-sysv4.h
+               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_defines="USG POSIX"
                if [ x$gas = xyes ]
                then
                        tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
@@ -3926,7 +3991,8 @@ for machine in $build $host $target; do
                ;;
        powerpcle-*-pe | powerpcle-*-cygwin32)
                tm_file=rs6000/cygwin32.h
-               xm_file=rs6000/xm-cygwin32.h
+               xm_file="rs6000/xm-cygwin32.h ${xm_file}"
+               xm_defines=NO_STAB_H
                tmake_file=rs6000/t-winnt
                xmake_file=rs6000/x-cygwin32
 #              extra_objs=pe.o
@@ -3939,7 +4005,8 @@ for machine in $build $host $target; do
                ;;
        powerpcle-*-solaris2*)
                tm_file=rs6000/sol2.h
-               xm_file=rs6000/xm-sysv4.h
+               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_defines="USG POSIX"
                if [ x$gas = xyes ]
                then
                        tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
@@ -3947,7 +4014,12 @@ for machine in $build $host $target; do
                        tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
                fi
                xmake_file=rs6000/x-sysv4
-               fixincludes=fixinc.math
+               case $machine in
+               *-*-solaris2.[0-4])
+                       fixincludes=fixinc.svr4;;
+               *)
+                       fixincludes=fixinc.math;;
+               esac
                extra_headers=ppc-asm.h
                ;;
        rs6000-ibm-aix3.[01]*)
@@ -3984,7 +4056,7 @@ for machine in $build $host $target; do
                ;;
        rs6000-*-mach*)
                tm_file=rs6000/mach.h
-               xm_file=rs6000/xm-mach.h
+               xm_file="${xm_file} rs6000/xm-mach.h"
                xmake_file=rs6000/x-mach
                use_collect2=yes
                ;;
@@ -4009,7 +4081,8 @@ for machine in $build $host $target; do
                ;;
        sparc-tti-*)
                tm_file=sparc/pbd.h
-               xm_file=sparc/xm-pbd.h
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines=USG
                ;;
        sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
                tm_file=sparc/vxsparc.h
@@ -4038,14 +4111,14 @@ for machine in $build $host $target; do
                float_format=i64
                ;;
        sparc-*-linux-gnuaout*)         # Sparc's running GNU/Linux, a.out
-               xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
+               xm_file="${xm_file} sparc/xm-linux.h"
                tm_file=sparc/linux-aout.h
                xmake_file=x-linux
                fixincludes=Makefile.in #On Linux, the headers are ok already.
                gnu_ld=yes
                ;;
        sparc-*-linux-gnulibc1*)        # Sparc's running GNU/Linux, libc5
-               xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
+               xm_file="${xm_file} sparc/xm-linux.h"
                xmake_file=x-linux
                tm_file=sparc/linux.h
                tmake_file="t-linux t-linux-gnulibc1"
@@ -4054,7 +4127,7 @@ for machine in $build $host $target; do
                gnu_ld=yes
                ;;
        sparc-*-linux-gnu*)             # Sparc's running GNU/Linux, libc6
-               xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
+               xm_file="${xm_file} sparc/xm-linux.h"
                xmake_file=x-linux
                tm_file=sparc/linux.h
                tmake_file="t-linux"
@@ -4087,13 +4160,17 @@ for machine in $build $host $target; do
                else
                        tm_file=sparc/sol2-sld.h
                fi
-               xm_file=sparc/xm-sol2.h
+               xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
                tmake_file=sparc/t-sol2
                xmake_file=sparc/x-sysv4
                extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
-               fixincludes=fixinc.svr4
+               case $machine in
+               *-*-solaris2.[0-4])
+                       fixincludes=fixinc.svr4;;
+               *)
+                       fixincludes=fixinc.math;;
+               esac
                float_format=i128
-               broken_install=yes
                if [ x${enable_threads} = x ]; then
                    enable_threads=$have_pthread_h
                    if [ x${enable_threads} = x ]; then
@@ -4127,13 +4204,14 @@ for machine in $build $host $target; do
                ;;
        sparc-*-sysv4*)
                tm_file=sparc/sysv4.h
-               xm_file=sparc/xm-sysv4.h
+               xm_file="xm-siglist.h sparc/xm-sysv4.h"
+               xm_defines="USG POSIX"
                tmake_file=t-svr4
                xmake_file=sparc/x-sysv4
                extra_parts="crtbegin.o crtend.o"
                ;;
        sparc-*-vxsim*)
-               xm_file=sparc/xm-sol2.h
+               xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
                tm_file=sparc/vxsim.h
                tmake_file=sparc/t-vxsparc
                xmake_file=sparc/x-sysv4
@@ -4201,7 +4279,7 @@ for machine in $build $host $target; do
                ;;
        vax-*-sysv*)                    # vaxen running system V
                tm_file="${tm_file} vax/vaxv.h"
-               xm_file="${xm_file} vax/xm-vaxv.h"
+               xm_defines=USG
                float_format=vax
                ;;
        vax-*-netbsd*)
@@ -4236,12 +4314,12 @@ for machine in $build $host $target; do
 
        case $machine in
        *-*-linux-gnu*)
-               ;; # Existing Linux/GNU systems do not use the GNU setup.
+               ;; # Existing GNU/Linux systems do not use the GNU setup.
        *-*-gnu*)
                # On the GNU system, the setup is just about the same on
                # each different CPU.  The specific machines that GNU
                # supports are matched above and just set $cpu_type.
-               xm_file=${cpu_type}/xm-gnu.h
+               xm_file="xm-gnu.h ${xm_file}"
                tm_file=${cpu_type}/gnu.h
                extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
                # GNU always uses ELF.
@@ -4264,7 +4342,7 @@ for machine in $build $host $target; do
                ;;
        esac
 
-       # Distinguish i[3456]86
+       # Distinguish i[34567]86
        # Also, do not run mips-tfile on MIPS if using gas.
        # Process --with-cpu= for PowerPC/rs6000
        target_cpu_default2=
@@ -4275,7 +4353,7 @@ for machine in $build $host $target; do
        i586-*-*)
                target_cpu_default2=2
                ;;
-       i686-*-*)
+       i686-*-* | i786-*-*)
                target_cpu_default2=3
                ;;
        alpha*-*-*)
@@ -4422,6 +4500,7 @@ for machine in $build $host $target; do
                then build_xm_file=$cpu_type/xm-$cpu_type.h
                else build_xm_file=$xm_file
                fi
+               build_xm_defines=$xm_defines
                build_install_headers_dir=$install_headers_dir
                build_exeext=$exeext
                pass1done=yes
@@ -4432,6 +4511,7 @@ for machine in $build $host $target; do
                        then host_xm_file=$cpu_type/xm-$cpu_type.h
                        else host_xm_file=$xm_file
                        fi
+                       host_xm_defines=$xm_defines
                        if [ x"$xmake_file" = x ]
                        then xmake_file=$cpu_type/x-$cpu_type
                        fi
@@ -4537,6 +4617,7 @@ fi
 # $vars is the list of shell variables with file names to include.
 # auto-conf.h is the file containing items generated by autoconf and is
 # the first file included by config.h.
+null_defines=
 host_xm_file="auto-config.h ${host_xm_file}"
 
 # If host=build, it is correct to have hconfig include auto-conf.h
@@ -4549,6 +4630,7 @@ fi
 
 vars="host_xm_file tm_file xm_file build_xm_file"
 links="config.h tm.h tconfig.h hconfig.h"
+defines="host_xm_defines null_defines xm_defines build_xm_defines"
 
 rm -f config.bak
 if [ -f config.status ]; then mv -f config.status config.bak; fi
@@ -4556,9 +4638,9 @@ if [ -f config.status ]; then mv -f config.status config.bak; fi
 # Make the links.
 while [ -n "$vars" ]
 do
-       # set file to car of files, files to cdr of files
        set $vars; var=$1; shift; vars=$*
        set $links; link=$1; shift; links=$*
+       set $defines; define=$1; shift; defines=$*
 
        rm -f $link
 
@@ -4572,6 +4654,12 @@ do
        for file in `eval echo '$'$var`; do
                echo "#include \"$file\"" >>$link
        done
+
+       for def in `eval echo '$'$define`; do
+               echo "#ifndef $def" >>$link
+               echo "#define $def" >>$link
+               echo "#endif" >>$link
+       done
 done
 
 # Truncate the target if necessary
@@ -4618,12 +4706,18 @@ done
 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
 # Otherwise, we can use "CC=$(CC)".
 rm -f symtest.tem
-if $symbolic_link symtest1.tem symtest.tem 2>/dev/null
+if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
 then
        cc_set_by_configure="\$(CC)"
        stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
 else
-       symbolic_link="cp -p"
+       rm -f symtest.tem
+       if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
+       then
+               symbolic_link="cp -p"
+       else
+               symbolic_link="cp"
+       fi
        cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
        stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
 fi
@@ -4953,6 +5047,7 @@ ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xma
 
 
 
+
 
 
 # Echo that links are built
@@ -4981,6 +5076,11 @@ then
        echo " ${str2}${str3}." 1>&2
 fi
 
+# Truncate the target if necessary
+if [ x$host_truncate_target != x ]; then
+       target=`echo $target | sed -e 's/\(..............\).*/\1/'`
+fi
+
 # Configure the subdirectories
 # AC_CONFIG_SUBDIRS($subdirs)
 
@@ -5193,6 +5293,7 @@ s%@cc_set_by_configure@%$cc_set_by_configure%g
 s%@stage_prefix_set_by_configure@%$stage_prefix_set_by_configure%g
 s%@install@%$install%g
 s%@symbolic_link@%$symbolic_link%g
+s%@version_dep@%$version_dep%g
 /@target_overrides@/r $target_overrides
 s%@target_overrides@%%g
 /@host_overrides@/r $host_overrides
@@ -5419,6 +5520,7 @@ srcdir='${srcdir}'
 subdirs='${subdirs}'
 oldstyle_subdirs='${oldstyle_subdirs}'
 symbolic_link='${symbolic_link}'
+version_dep='${version_dep}'
 program_transform_set='${program_transform_set}'
 program_transform_name='${program_transform_name}'
 dep_host_xmake_file='${dep_host_xmake_file}'