From 46f18e7b3105546fd0ea42a68fff1251253f2457 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sun, 18 May 1997 08:31:53 -0400 Subject: [PATCH] Initial revision From-SVN: r14085 --- gcc/configure.in | 3217 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3217 insertions(+) create mode 100644 gcc/configure.in diff --git a/gcc/configure.in b/gcc/configure.in new file mode 100644 index 00000000000..be00fe31d14 --- /dev/null +++ b/gcc/configure.in @@ -0,0 +1,3217 @@ +# configure.in for GNU CC +# Process this file with autoconf to generate a configuration script. + +# Copyright (C) 1997 Free Software Foundation, Inc. + +#This file is part of GNU CC. + +#GNU CC is free software; you can redistribute it and/or modify +#it under the terms of the GNU General Public License as published by +#the Free Software Foundation; either version 2, or (at your option) +#any later version. + +#GNU CC is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +#GNU General Public License for more details. + +#You should have received a copy of the GNU General Public License +#along with GNU CC; see the file COPYING. If not, write to +#the Free Software Foundation, 59 Temple Place - Suite 330, +#Boston, MA 02111-1307, USA. + +# Initialization and defaults +AC_INIT(tree.c) +AC_PREFIX_DEFAULT(/usr/local) +#prefix=/usr/local +native_prefix=/usr +#exec_prefix='$(prefix)' +local_prefix=/usr/local +remove=rm +hard_link=ln +symbolic_link='ln -s' +copy=cp + +# Check for additional parameters + +# With GNU ld +AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld arrange to work with GNU ld.], +gnu_ld=yes, +gnu_ld=no) + +# With GNU as +AC_ARG_WITH(gnu-as, +[ --with-gnu-s arrange to work with GNU as.], +gas=yes, +gas=no) + +# With stabs +AC_ARG_WITH(stabs, +[ --with-stabs arrange to use stabs instead of host debug format.], +stabs=yes, +stabs=no) + +# With ELF +AC_ARG_WITH(elf, +[ --with-elf arrange to use ELF instead of host debug format.], +elf=yes, +elf=no) + +# +# Shell script to create proper links to machine-dependent files in +# preparation for compiling gcc. +# +# --local-prefix=DIR specifies directory to put local ./include in. +# --gxx-include-dir=DIR specifies directory to put g++ header files in. +# + +# Determine the host, build, and target systems +AC_CANONICAL_SYSTEM + +# Find some useful tools +AC_PROG_AWK +AC_PROG_LEX +AC_PROG_LN_S +AC_PROG_RANLIB +AC_PROG_YACC +AC_PROG_INSTALL + +# Find the native compiler +AC_PROG_CC +AC_PROG_MAKE_SET + +# File extensions +manext='.1' +objext='.o' +exeext='' +AC_SUBST(manext) +AC_SUBST(objext) +AC_SUBST(exeext) + +build_xm_file= +build_broken_install= +build_install_headers_dir=install-headers-tar +build_exeext= +host_xm_file= +host_xmake_file= +host_truncate_target= + +# Decode the host machine, then the target machine. +# For the host machine, we save the xm_file variable as host_xm_file; +# then we decode the target machine and forget everything else +# that came from the host machine. +for machine in $build $host $target; do + + out_file= + xmake_file= + tmake_file= + extra_headers= + extra_passes= + extra_parts= + extra_programs= + extra_objs= + extra_host_objs= + extra_gcc_objs= + float_format= + # Set this to force installation and use of collect2. + use_collect2= + # Set this to override the default target model. + target_cpu_default= + # Set this to force use of install.sh. + broken_install= + # Set this to control which fixincludes program to use. + fixincludes=fixincludes + # Set this to control how the header file directory is installed. + install_headers_dir=install-headers-tar + # Set this to a non-empty list of args to pass to cpp if the target + # wants its .md file passed through cpp. + md_cppflags= + # Set this if directory names should be truncated to 14 characters. + truncate_target= + # Set this if gdb needs a dir command with `dirname $out_file` + gdb_needs_out_file_path= + # Set this to the tag of the Objective-C runtime thread file to compile + # It may be set (in the absence of autoconf configuration) by + # --enable-objcthreads=posix (for instance) where it's not + # well defined as is the case for Linux. + objc_thread_file= + case x${enable_objcthreads-x} in + x | xyes) + echo "\`--enable-objcthreads' must be passed a value." 1>&2 + exit 1 ;; + esac + # Set this if the build machine requires executables to have a + # file name suffix. + exeext= + + # Set default cpu_type, tm_file and xm_file so it can be updated in + # each machine entry. + cpu_type=`echo $machine | sed 's/-.*$//'` + case $machine in + arm*-*-*) + cpu_type=arm + ;; + c*-convex-*) + cpu_type=convex + ;; + i[[3456]]86-*-*) + cpu_type=i386 + ;; + hppa*-*-*) + cpu_type=pa + ;; + m68000-*-*) + cpu_type=m68k + ;; + mips*-*-*) + cpu_type=mips + ;; + powerpc*-*-*) + cpu_type=rs6000 + ;; + pyramid-*-*) + cpu_type=pyr + ;; + sparc*-*-*) + cpu_type=sparc + ;; + esac + + tm_file=${cpu_type}/${cpu_type}.h + xm_file=${cpu_type}/xm-${cpu_type}.h + + case $machine in + # Support site-specific machine types. + *local*) + cpu_type=`echo $machine | sed -e 's/-.*//'` + rest=`echo $machine | sed -e "s/$cpu_type-//"` + xm_file=${cpu_type}/xm-$rest.h + tm_file=${cpu_type}/$rest.h + if [[ -f $srcdir/config/${cpu_type}/x-$rest ]] ; \ + then xmake_file=${cpu_type}/x-$rest; \ + else true; \ + fi + if [[ -f $srcdir/config/${cpu_type}/t-$rest ]] ; \ + then tmake_file=${cpu_type}/t-$rest; \ + else true; \ + fi + ;; + 1750a-*-*) + ;; + a29k-*-bsd* | a29k-*-sym1*) + tm_file="${tm_file} a29k/unix.h" + xm_file=a29k/xm-unix.h + xmake_file=a29k/x-unix + use_collect2=yes + ;; + a29k-*-udi | a29k-*-coff) + tm_file="${tm_file} dbxcoff.h a29k/udi.h" + tmake_file=a29k/t-a29kbare + ;; + a29k-*-vxworks*) + tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h" + tmake_file=a29k/t-vx29k + extra_parts="crtbegin.o crtend.o" + ;; + a29k-*-*) # Default a29k environment. + use_collect2=yes + ;; + alpha-*-linux*ecoff*) + tm_file="${tm_file} alpha/linux.h" + xm_file="${xm_file} alpha/xm-linux.h" + objc_thread_file=${enable_objcthreads-single} + target_cpu_default=4 + xmake_file=none + fixincludes=Makefile.in + gas=yes gnu_ld=yes + ;; + alpha-*-linux*) + tm_file="${tm_file} alpha/linux.h alpha/elf.h" + xm_file="${xm_file} alpha/xm-linux.h" + target_cpu_default=4 + xmake_file=none + fixincludes=Makefile.in + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" + gas=yes gnu_ld=yes + ;; + alpha-dec-osf[[23456789]]*) + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas != xyes ]] + then + extra_passes="mips-tfile mips-tdump" + fi + broken_install=yes + use_collect2=yes + ;; + alpha-dec-osf1.2) + tm_file="${tm_file} alpha/osf12.h" + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas != xyes ]] + then + extra_passes="mips-tfile mips-tdump" + fi + broken_install=yes + use_collect2=yes + ;; + alpha-*-osf*) + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas != xyes ]] + then + extra_passes="mips-tfile mips-tdump" + fi + broken_install=yes + use_collect2=yes + ;; + alpha-*-winnt3*) + tm_file="${tm_file} alpha/win-nt.h" + target_cpu_default=64 + xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h" + tmake_file=t-libc-ok + xmake_file=winnt/x-winnt + extra_host_objs=oldnames.o + extra_gcc_objs="spawnv.o oldnames.o" + fixincludes=fixinc.winnt + if [[ x$gnu_ld != xyes ]] + then + extra_programs=ld.exe + fi + objc_thread_file=${enable_objcthreads-win32} + ;; + alpha-dec-vms*) + tm_file=alpha/vms.h + xm_file="${xm_file} alpha/xm-vms.h" + tmake_file=alpha/t-vms + fixincludes=Makefile.in + ;; + arm-*-coff* | armel-*-coff*) + tm_file=arm/coff.h + tmake_file=arm/t-bare + ;; + arm-*-riscix1.[[01]]*) # Acorn RISC machine (early versions) + tm_file=arm/riscix1-1.h + use_collect2=yes + ;; + arm-*-riscix*) # Acorn RISC machine + if [[ x$gas = xyes ]] + then + tm_file=arm/rix-gas.h + else + tm_file=arm/riscix.h + fi + xmake_file=arm/x-riscix + tmake_file=arm/t-riscix + use_collect2=yes + ;; + arm-semi-aout | armel-semi-aout) + tm_file=arm/semi.h + tmake_file=arm/t-semi + fixincludes=Makefile.in # There is nothing to fix + ;; + arm-semi-aof | armel-semi-aof) + tm_file=arm/semiaof.h + tmake_file=arm/t-semiaof + fixincludes=Makefile.in # There is nothing to fix + ;; + arm-*-*) # generic version + ;; + c1-convex-*) # Convex C1 + target_cpu_default=1 + use_collect2=yes + fixincludes=Makefile.in + ;; + c2-convex-*) # Convex C2 + target_cpu_default=2 + use_collect2=yes + fixincludes=Makefile.in + ;; + c32-convex-*) + target_cpu_default=4 + use_collect2=yes + fixincludes=Makefile.in + ;; + c34-convex-*) + target_cpu_default=8 + use_collect2=yes + fixincludes=Makefile.in + ;; + c38-convex-*) + target_cpu_default=16 + use_collect2=yes + fixincludes=Makefile.in + ;; + clipper-intergraph-clix*) + tm_file="${tm_file} svr3.h clipper/clix.h" + xm_file=clipper/xm-clix.h + xmake_file=clipper/x-clix + extra_headers=va-clipper.h + extra_parts="crtbegin.o crtend.o" + install_headers_dir=install-headers-cpio + broken_install=yes + ;; + dsp16xx-*) + ;; + elxsi-elxsi-*) + use_collect2=yes + ;; +# This hasn't been upgraded to GCC 2. +# fx80-alliant-*) # Alliant FX/80 +# ;; + h8300-*-*) + float_format=i32 + ;; + hppa1.1-*-pro*) + tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h" + xm_file=pa/xm-papro.h + tmake_file=pa/t-pro + ;; + hppa1.1-*-osf*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-osf.h" + use_collect2=yes + fixincludes=Makefile.in + ;; + hppa1.0-*-osf*) + tm_file="${tm_file} pa/pa-osf.h" + use_collect2=yes + fixincludes=Makefile.in + ;; + hppa1.1-*-bsd*) + target_cpu_default=1 + use_collect2=yes + fixincludes=Makefile.in + ;; + hppa1.0-*-bsd*) + use_collect2=yes + fixincludes=Makefile.in + ;; + hppa1.0-*-hpux7*) + tm_file="pa/pa-oldas.h ${tm_file} pa/pa-hpux7.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.0-*-hpux8.0[[0-2]]*) + tm_file="${tm_file} pa/pa-hpux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + else + tm_file="pa/pa-oldas.h ${tm_file}" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.1-*-hpux8.0[[0-2]]*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-hpux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + else + tm_file="pa/pa-oldas.h ${tm_file}" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.1-*-hpux8*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-hpux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.0-*-hpux8*) + tm_file="${tm_file} pa/pa-hpux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.1-*-hpux10*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.0-*-hpux10*) + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.1-*-hpux*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.0-*-hpux*) + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.1-*-hiux*) + target_cpu_default=1 + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa1.0-*-hiux*) + tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h" + xm_file=pa/xm-pahpux.h + xmake_file=pa/x-pa-hpux + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} pa/pa-gas.h" + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + ;; + hppa*-*-lites*) + target_cpu_default=1 + use_collect2=yes + fixincludes=Makefile.in + ;; + i370-*-mvs*) + ;; + i[[3456]]86-ibm-aix*) # IBM PS/2 running AIX + if [[ x$gas = xyes ]] + then + tm_file=i386/aix386.h + extra_parts="crtbegin.o crtend.o" + tmake_file=i386/t-crtstuff + else + tm_file=i386/aix386ng.h + use_collect2=yes + fi + xm_file=i386/xm-aix.h + xmake_file=i386/x-aix + broken_install=yes + ;; + i486-ncr-sysv4*) # NCR 3000 - i486 running system V.4 + xm_file=i386/xm-sysv4.h + xmake_file=i386/x-ncr3000 + if [[ x$stabs = xyes -a x$gas = xyes ]] + then + tm_file=i386/sysv4gdb.h + else + tm_file=i386/sysv4.h + fi + extra_parts="crtbegin.o crtend.o" + tmake_file=i386/t-crtpic + ;; + i[[3456]]86-next-*) + tm_file=i386/next.h + xm_file=i386/xm-next.h + tmake_file=i386/t-next + xmake_file=i386/x-next + extra_objs=nextstep.o + objc_thread_file=${enable_objcthreads-mach} + ;; + i[[3456]]86-sequent-bsd*) # 80386 from Sequent + use_collect2=yes + if [[ x$gas = xyes ]] + then + tm_file=i386/seq-gas.h + else + tm_file=i386/sequent.h + fi + ;; + i[[3456]]86-sequent-ptx1*) + xm_file=i386/xm-sysv3.h + xmake_file=i386/x-sysv3 + tm_file=i386/seq-sysv3.h + tmake_file=i386/t-crtstuff + fixincludes=fixinc.ptx + extra_parts="crtbegin.o crtend.o" + install_headers_dir=install-headers-cpio + broken_install=yes + ;; + i[[3456]]86-sequent-ptx2* | i[[3456]]86-sequent-sysv3*) + xm_file=i386/xm-sysv3.h + xmake_file=i386/x-sysv3 + tm_file=i386/seq2-sysv3.h + tmake_file=i386/t-crtstuff + extra_parts="crtbegin.o crtend.o" + fixincludes=fixinc.ptx + install_headers_dir=install-headers-cpio + broken_install=yes + ;; + i[[3456]]86-sequent-ptx4* | i[[3456]]86-sequent-sysv4*) + xm_file=i386/xm-sysv4.h + xmake_file=x-svr4 + tm_file=i386/ptx4-i.h + tmake_file=t-svr4 + extra_parts="crtbegin.o crtend.o" + fixincludes=fixinc.ptx + install_headers_dir=install-headers-cpio + broken_install=yes + ;; + i386-sun-sunos*) # Sun i386 roadrunner + xm_file=i386/xm-sun.h + tm_file=i386/sun.h + use_collect2=yes + ;; + i[[3456]]86-*-aout*) + tm_file=i386/i386-aout.h + tmake_file=i386/t-i386bare + ;; + i[[3456]]86-*-bsdi* | i[[345]]86-*-bsd386*) + tm_file=i386/bsd386.h + xm_file=i386/xm-bsd386.h +# tmake_file=t-libc-ok + ;; + i[[3456]]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*) + tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h" + xm_file=i386/xm-freebsd.h + # On FreeBSD, the headers are already ok. + fixincludes=Makefile.in + tmake_file=i386/t-freebsd + gas=yes + gnu_ld=yes + stabs=yes + ;; + i[[3456]]86-*-freebsd*) + tm_file=i386/freebsd.h + xm_file=i386/xm-freebsd.h + # On FreeBSD, the headers are already ok. + fixincludes=Makefile.in + tmake_file=i386/t-freebsd + ;; + i[[3456]]86-*-netbsd*) + tm_file=i386/netbsd.h + xm_file=i386/xm-netbsd.h + # On NetBSD, the headers are already okay. + fixincludes=Makefile.in + tmake_file=t-libc-ok + xmake_file=x-netbsd + ;; + i[[3456]]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 + case $machine in + i[[345]]86-*-isc[[34]]*) + xmake_file=i386/x-isc3 + ;; + *) + xmake_file=i386/x-isc + ;; + esac + if [[ x$gas = xyes -a x$stabs = xyes ]] + then + tm_file=i386/iscdbx.h + tmake_file=i386/t-svr3dbx + extra_parts="svr3.ifile svr3z.ifile" + else + tm_file=i386/isccoff.h + tmake_file=i386/t-crtstuff + extra_parts="crtbegin.o crtend.o" + fi + install_headers_dir=install-headers-cpio + broken_install=yes + ;; + i[[3456]]86-*-linux*oldld*) # Intel 80386's running Linux + xm_file=i386/xm-linux.h # 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. + broken_install=yes + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + i[[3456]]86-*-linux*aout*) # Intel 80386's running Linux + xm_file=i386/xm-linux.h # 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. + broken_install=yes + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + i[[3456]]86-*-linux*) # Intel 80386's running Linux + xm_file=i386/xm-linux.h # with ELF format + 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" + fixincludes=Makefile.in #On Linux, the headers are ok already. + broken_install=yes + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + i[[3456]]86-*-gnu*) + ;; + i[[3456]]86-go32-msdos | i[[3456]]86-*-go32*) + xm_file=i386/xm-go32.h + tm_file=i386/go32.h + tmake_file=i386/t-go32 + ;; + i[[3456]]86-moss-msdos* | i[[3456]]86-*-moss*) + tm_file=i386/moss.h + tmake_file=t-libc-ok + fixincludes=Makefile.in + gnu_ld=yes + gas=yes + ;; + i[[3456]]86-*-lynxos*) + if [[ x$gas = xyes ]] + then + tm_file=i386/lynx.h + else + tm_file=i386/lynx-ng.h + fi + xm_file=i386/xm-lynx.h + tmake_file=i386/t-i386bare + xmake_file=x-lynx + ;; + i[[3456]]86-*-mach*) + tm_file=i386/mach.h +# tmake_file=t-libc-ok + use_collect2=yes + ;; + i[[3456]]86-*-osfrose*) # 386 using OSF/rose + if [[ x$elf = xyes ]] + then + tm_file=i386/osfelf.h + use_collect2= + else + tm_file=i386/osfrose.h + use_collect2=yes + fi + xm_file=i386/xm-osf.h + xmake_file=i386/x-osfrose + tmake_file=i386/t-osf + extra_objs=halfpic.o + ;; + i[[345]]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*) + 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 + xmake_file=i386/x-sco5 + fixincludes=fixinc.sco + broken_install=yes + tm_file=i386/sco5.h + 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 + xmake_file=i386/x-sco4 + fixincludes=fixinc.sco + broken_install=yes + install_headers_dir=install-headers-cpio + if [[ x$stabs = xyes ]] + then + tm_file=i386/sco4dbx.h + tmake_file=i386/t-svr3dbx + extra_parts="svr3.ifile svr3z.rfile" + else + tm_file=i386/sco4.h + tmake_file=i386/t-crtstuff + extra_parts="crtbegin.o crtend.o" + fi + truncate_target=yes + ;; + i[[3456]]86-*-sco*) # 80386 running SCO system + xm_file=i386/xm-sco.h + xmake_file=i386/x-sco + broken_install=yes + install_headers_dir=install-headers-cpio + if [[ x$stabs = xyes ]] + then + tm_file=i386/scodbx.h + tmake_file=i386/t-svr3dbx + extra_parts="svr3.ifile svr3z.rfile" + else + tm_file=i386/sco.h + extra_parts="crtbegin.o crtend.o" + tmake_file=i386/t-crtstuff + fi + truncate_target=yes + ;; + i[[3456]]86-*-solaris2*) + xm_file=i386/xm-sysv4.h + if [[ x$stabs = xyes ]] + then + tm_file=i386/sol2gdb.h + else + tm_file=i386/sol2.h + fi + tmake_file=i386/t-sol2 + extra_parts="crt1.o crti.o crtn.o crtbegin.o crtend.o" + xmake_file=x-svr4 + fixincludes=fixinc.svr4 + broken_install=yes + objc_thread_file=${enable_objcthreads-solaris} + ;; + i[[3456]]86-*-sysv4*) # Intel 80386's running system V.4 + xm_file=i386/xm-sysv4.h + tm_file=i386/sysv4.h + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + tmake_file=i386/t-crtpic + 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 + xmake_file=i386/x-sysv3 + if [[ x$gas = xyes ]] + then + if [[ x$stabs = xyes ]] + then + tm_file=i386/svr3dbx.h + tmake_file=i386/t-svr3dbx + extra_parts="svr3.ifile svr3z.rfile" + else + tm_file=i386/svr3gas.h + extra_parts="crtbegin.o crtend.o" + tmake_file=i386/t-crtstuff + fi + else + tm_file=i386/sysv3.h + extra_parts="crtbegin.o crtend.o" + tmake_file=i386/t-crtstuff + fi + ;; + i386-*-vsta) # Intel 80386's running VSTa kernel + xm_file=i386/xm-vsta.h + tm_file=i386/vsta.h + tmake_file=i386/t-vsta + xmake_file=i386/x-vsta + ;; + i[[3456]]86-*-pe | i[[3456]]86-*-cygwin32) + xm_file="${xm_file} i386/xm-cygwin32.h" + tmake_file=i386/t-cygwin32 + tm_file=i386/cygwin32.h + xmake_file=i386/x-cygwin32 + extra_objs=winnt.o + fixincludes=Makefile.in + objc_thread_file=${enable_objcthreads-win32} + exeext=.exe + ;; + i[[3456]]86-*-winnt3*) + tm_file=i386/win-nt.h + out_file=i386/i386.c + xm_file=i386/xm-winnt.h + xmake_file=winnt/x-winnt + tmake_file=i386/t-winnt + extra_host_objs="winnt.o oldnames.o" + extra_gcc_objs="spawnv.o oldnames.o" + fixincludes=fixinc.winnt + if [[ x$gnu_ld != xyes ]] + then + extra_programs=ld.exe + fi + objc_thread_file=${enable_objcthreads-win32} + ;; + i[[3456]]86-dg-dgux) + xm_file=i386/xm-dgux.h + out_file=i386/dgux.c + tm_file=i386/dgux.h + tmake_file=i386/t-dgux + xmake_file=i386/x-dgux + fixincludes=fixinc.dgux + install_headers_dir=install-headers-cpio + ;; + i860-alliant-*) # Alliant FX/2800 + tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h" + xm_file="${xm_file} i860/xm-fx2800.h" + xmake_file=i860/x-fx2800 + tmake_file=i860/t-fx2800 + extra_parts="crtbegin.o crtend.o" + ;; + i860-*-bsd*) + tm_file="${tm_file} i860/bsd.h" + if [[ x$gas = xyes ]] + then + tm_file="${tm_file} i860/bsd-gas.h" + fi + use_collect2=yes + ;; + i860-*-mach*) + tm_file="${tm_file} i860/mach.h" + tmake_file=t-libc-ok + ;; + i860-*-osf*) # Intel Paragon XP/S, OSF/1AD + tm_file="${tm_file} svr3.h i860/paragon.h" + xm_file="${xm_file} xm-svr3.h" + tmake_file=t-osf + broken_install=yes + ;; + i860-*-sysv3*) + tm_file="${tm_file} svr3.h i860/sysv3.h" + xm_file="${tm_file} xm-svr3.h" + 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" + xmake_file=i860/x-sysv4 + tmake_file=t-svr4 + extra_parts="crtbegin.o crtend.o" + ;; + i960-wrs-vxworks5 | i960-wrs-vxworks5.0*) + tm_file="${tm_file} i960/vx960.h" + tmake_file=i960/t-vxworks960 + use_collect2=yes + ;; + i960-wrs-vxworks5*) + tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h" + tmake_file=i960/t-vxworks960 + use_collect2=yes + ;; + i960-wrs-vxworks*) + tm_file="${tm_file} i960/vx960.h" + tmake_file=i960/t-vxworks960 + use_collect2=yes + ;; + i960-*-coff*) + tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h" + tmake_file=i960/t-960bare + use_collect2=yes + ;; + i960-*-rtems) + tmake_file="i960/t-960bare t-rtems" + tm_file="${tm_file} dbxcoff.h i960/rtems.h" + use_collect2=yes + ;; + i960-*-*) # Default i960 environment. + use_collect2=yes + ;; + m68000-convergent-sysv*) + tm_file=m68k/ctix.h + xm_file=m68k/xm-3b1.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68000-hp-bsd*) # HP 9000/200 running BSD + tm_file=m68k/hp2bsd.h + xmake_file=m68k/x-hp2bsd + use_collect2=yes + extra_headers=math-68881.h + ;; + m68000-hp-hpux*) # HP 9000 series 300 + xm_file=m68k/xm-hp320.h + if [[ x$gas = xyes ]] + then + xmake_file=m68k/x-hp320g + tm_file=m68k/hp310g.h + else + xmake_file=m68k/x-hp320 + tm_file=m68k/hp310.h + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + extra_headers=math-68881.h + ;; + m68000-sun-sunos3*) + tm_file=m68k/sun2.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68000-sun-sunos4*) + tm_file=m68k/sun2o4.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68000-att-sysv*) + xm_file=m68k/xm-3b1.h + if [[ x$gas = xyes ]] + then + tm_file=m68k/3b1g.h + else + tm_file=m68k/3b1.h + fi + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-apple-aux*) # Apple Macintosh running A/UX + xm_file=m68k/xm-aux.h + tmake_file=m68k/t-aux + broken_install=yes + install_headers_dir=install-headers-cpio + extra_headers=math-68881.h + extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o" + tm_file= + if [[ "$gnu_ld" = yes ]] + then + tm_file="${tm_file} m68k/auxgld.h" + else + tm_file="${tm_file} m68k/auxld.h" + fi + if [[ "$gas" = yes ]] + then + tm_file="${tm_file} m68k/auxgas.h" + else + tm_file="${tm_file} m68k/auxas.h" + fi + tm_file="${tm_file} m68k/a-ux.h" + ;; + m68k-apollo-*) + tm_file=m68k/apollo68.h + xmake_file=m68k/x-apollo68 + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-altos-sysv*) # Altos 3068 + if [[ x$gas = xyes ]] + then + tm_file=m68k/altos3068.h + xm_file=m68k/xm-altos3068.h + else + echo "The Altos is supported only with the GNU assembler" 1>&2 + exit 1 + fi + extra_headers=math-68881.h + ;; + m68k-bull-sysv*) # Bull DPX/2 + if [[ x$gas = xyes ]] + then + if [[ x$stabs = xyes ]] + then + tm_file=m68k/dpx2cdbx.h + else + tm_file=m68k/dpx2g.h + fi + else + tm_file=m68k/dpx2.h + fi + xm_file=m68k/xm-m68kv.h + 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 + 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 + if [[ x$gas = xyes ]] + then + xmake_file=m68k/x-mot3300-gas + if [[ x$gnu_ld = xyes ]] + then + tmake_file=m68k/t-mot3300-gald + else + tmake_file=m68k/t-mot3300-gas + use_collect2=yes + fi + else + xmake_file=m68k/x-mot3300 + if [[ x$gnu_ld = xyes ]] + then + tmake_file=m68k/t-mot3300-gld + else + tmake_file=m68k/t-mot3300 + use_collect2=yes + fi + fi + gdb_needs_out_file_path=yes + extra_parts="crt0.o mcrt0.o" + extra_headers=math-68881.h + ;; + m68k-ncr-sysv*) # NCR Tower 32 SVR3 + tm_file=m68k/tower-as.h + xm_file=m68k/xm-tower.h + 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 + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-tti-*) + tm_file=m68k/pbb.h + xm_file=m68k/xm-m68kv.h + extra_headers=math-68881.h + ;; + m68k-crds-unos*) + xm_file=m68k/xm-crds.h + xmake_file=m68k/x-crds + tm_file=m68k/crds.h + broken_install=yes + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-cbm-sysv4*) # Commodore variant of V.4. + tm_file=m68k/amix.h + xm_file=m68k/xm-amix.h + xmake_file=m68k/x-amix + tmake_file=t-svr4 + extra_parts="crtbegin.o crtend.o" + extra_headers=math-68881.h + ;; + m68k-ccur-rtu) + tm_file=m68k/ccur-GAS.h + xmake_file=m68k/x-ccur + extra_headers=math-68881.h + use_collect2=yes + broken_install=yes + ;; + m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd + tm_file=m68k/hp3bsd44.h + xmake_file=m68k/x-hp3bsd44 + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix + tm_file=m68k/hp3bsd.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-isi-bsd*) + if [[ x$with_fp = xno ]] + then + tm_file=m68k/isi-nfp.h + else + tm_file=m68k/isi.h + fi + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7. + xm_file=m68k/xm-hp320.h + if [[ x$gas = xyes ]] + then + xmake_file=m68k/x-hp320g + tm_file=m68k/hp320g.h + else + xmake_file=m68k/x-hp320 + tm_file=m68k/hpux7.h + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-hp-hpux*) # HP 9000 series 300 + xm_file=m68k/xm-hp320.h + if [[ x$gas = xyes ]] + then + xmake_file=m68k/x-hp320g + tm_file=m68k/hp320g.h + else + xmake_file=m68k/x-hp320 + tm_file=m68k/hp320.h + fi + broken_install=yes + install_headers_dir=install-headers-cpio + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-sun-mach*) + tm_file=m68k/sun3mach.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-sony-newsos3*) + if [[ x$gas = xyes ]] + then + tm_file=m68k/news3gas.h + else + tm_file=m68k/news3.h + fi + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-sony-bsd* | m68k-sony-newsos*) + if [[ x$gas = xyes ]] + then + tm_file=m68k/newsgas.h + else + tm_file=m68k/news.h + fi + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-next-nextstep2*) + tm_file=m68k/next21.h + xm_file=m68k/xm-next.h + tmake_file=m68k/t-next + xmake_file=m68k/x-next + extra_objs=nextstep.o + extra_headers=math-68881.h + use_collect2=yes + ;; + m68k-next-nextstep3*) + tm_file=m68k/next.h + xm_file=m68k/xm-next.h + tmake_file=m68k/t-next + xmake_file=m68k/x-next + extra_objs=nextstep.o + extra_headers=math-68881.h + objc_thread_file=${enable_objcthreads-mach} + ;; + m68k-sun-sunos3*) + if [[ x$with_fp = xno ]] + then + tm_file=m68k/sun3n3.h + else + tm_file=m68k/sun3o3.h + fi + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-sun-sunos*) # For SunOS 4 (the default). + if [[ x$with_fp = xno ]] + then + tm_file=m68k/sun3n.h + else + tm_file=m68k/sun3.h + fi + xm_file=m68k/xm-sun3.h + use_collect2=yes + extra_headers=math-68881.h + ;; + m68k-wrs-vxworks*) + tm_file=m68k/vxm68k.h + tmake_file=m68k/t-vxworks68 + extra_headers=math-68881.h + ;; + m68k-*-aout*) + tmake_file=m68k/t-m68kbare + tm_file="m68k/m68k-aout.h libgloss.h" + extra_headers=math-68881.h + ;; + m68k-*-coff*) + tmake_file=m68k/t-m68kbare + tm_file="m68k/m68k-coff.h dbx.h libgloss.h" + extra_headers=math-68881.h + ;; + m68k-*-lynxos*) + if [[ x$gas = xyes ]] + then + tm_file=m68k/lynx.h + else + tm_file=m68k/lynx-ng.h + fi + xm_file=m68k/xm-lynx.h + xmake_file=x-lynx + tmake_file=m68k/t-lynx + extra_headers=math-68881.h + ;; + m68k-*-netbsd*) + tm_file=m68k/netbsd.h + xm_file=m68k/xm-netbsd.h + # On NetBSD, the headers are already okay. + fixincludes=Makefile.in + tmake_file=t-libc-ok + xmake_file=x-netbsd + ;; + m68k-*-sysv3*) # Motorola m68k's running system V.3 + xm_file=m68k/xm-m68kv.h + 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 + tmake_file=t-svr4 + extra_parts="crtbegin.o crtend.o" + extra_headers=math-68881.h + ;; + m68k-*-linux*aout*) # Motorola m68k's running Linux + xm_file=m68k/xm-linux.h # with a.out format + xmake_file=x-linux + tm_file=m68k/linux-aout.h + tmake_file="t-linux-aout m68k/t-linux-aout" + fixincludes=Makefile.in #On Linux, the headers are ok already. + extra_headers=math-68881.h + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + m68k-*-linux*) # Motorola m68k's running Linux + xm_file=m68k/xm-linux.h # with ELF format + 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" + fixincludes=Makefile.in #On Linux, the headers are ok already. + extra_headers=math-68881.h + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + m68k-*-psos*) + tmake_file=m68k/t-m68kbare + tm_file=m68k/m68k-psos.h + extra_headers=math-68881.h + ;; + m68k-*-rtems*) + tmake_file="m68k/t-m68kbare t-rtems" + tm_file=m68k/rtems.h + extra_headers=math-68881.h + ;; + + m88k-dg-dgux*) + case $machine in + m88k-dg-dguxbcs*) + tm_file=m88k/dguxbcs.h + tmake_file=m88k/t-dguxbcs + ;; + *) + tm_file=m88k/dgux.h + tmake_file=m88k/t-dgux + ;; + esac + extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld" + broken_install=yes + xmake_file=m88k/x-dgux + if [[ x$gas = xyes ]] + then + tmake_file=m88k/t-dgux-gas + fi + fixincludes=fixinc.dgux + ;; + m88k-dolphin-sysv3*) + tm_file=m88k/dolph.h + extra_parts="crtbegin.o crtend.o" + xm_file=m88k/xm-sysv3.h + xmake_file=m88k/x-dolph + if [[ x$gas = xyes ]] + then + tmake_file=m88k/t-m88k-gas + fi + ;; + m88k-tektronix-sysv3) + tm_file=m88k/tekXD88.h + extra_parts="crtbegin.o crtend.o" + xm_file=m88k/xm-sysv3.h + xmake_file=m88k/x-tekXD88 + if [[ x$gas = xyes ]] + then + tmake_file=m88k/t-m88k-gas + fi + ;; + m88k-*-aout*) + tm_file=m88k/m88k-aout.h + ;; + m88k-*-coff*) + tm_file=m88k/m88k-coff.h + tmake_file=m88k/t-bug + ;; + m88k-*-luna*) + tm_file=m88k/luna.h + extra_parts="crtbegin.o crtend.o" + if [[ x$gas = xyes ]] + then + tmake_file=m88k/t-luna-gas + else + tmake_file=m88k/t-luna + fi + ;; + m88k-*-sysv3*) + tm_file=m88k/sysv3.h + extra_parts="crtbegin.o crtend.o" + xm_file=m88k/xm-sysv3.h + xmake_file=m88k/x-sysv3 + if [[ x$gas = xyes ]] + then + tmake_file=m88k/t-m88k-gas + fi + ;; + m88k-*-sysv4*) + tm_file=m88k/sysv4.h + extra_parts="crtbegin.o crtend.o" + xmake_file=m88k/x-sysv4 + tmake_file=m88k/t-sysv4 + ;; + mips-sgi-irix6*) # SGI System V.4., IRIX 6 + tm_file=mips/iris6.h + xm_file=mips/xm-iris6.h + broken_install=yes + fixincludes=fixinc.irix + xmake_file=mips/x-iris6 + tmake_file=mips/t-iris6 + objc_thread_file=${enable_objcthreads-irix} + ;; + mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64 + tm_file=mips/cross64.h + xm_file=mips/xm-iris5.h + broken_install=yes + fixincludes=Makefile.in + xmake_file=mips/x-iris + tmake_file=mips/t-cross64 + # See comment in mips/iris[56].h files. + use_collect2=yes + objc_thread_file=${enable_objcthreads-irix} + ;; + mips-sni-sysv4) + if [[ x$gas = xyes ]] + then + if [[ x$stabs = xyes ]] + then + tm_file=mips/iris5gdb.h + else + tm_file=mips/sni-gas.h + fi + else + tm_file=mips/sni-svr4.h + fi + xm_file=mips/xm-sysv.h + xmake_file=mips/x-sni-svr4 + tmake_file=mips/t-mips-gas + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-sgi-irix5*) # SGI System V.4., IRIX 5 + if [[ x$gas = xyes ]] + then + tm_file=mips/iris5gas.h + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + else + tm_file=mips/iris5.h + fi + xm_file=mips/xm-iris5.h + broken_install=yes + fixincludes=fixinc.irix + xmake_file=mips/x-iris + # mips-tfile doesn't work yet + tmake_file=mips/t-mips-gas + # See comment in mips/iris5.h file. + use_collect2=yes + objc_thread_file=${enable_objcthreads-irix} + ;; + mips-sgi-irix4loser*) # Mostly like a MIPS. + tm_file=mips/iris4loser.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-iris4.h + broken_install=yes + xmake_file=mips/x-iris + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + objc_thread_file=${enable_objcthreads-irix} + ;; + mips-sgi-irix4*) # Mostly like a MIPS. + tm_file=mips/iris4.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-iris4.h + broken_install=yes + xmake_file=mips/x-iris + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + objc_thread_file=${enable_objcthreads-irix} + ;; + mips-sgi-*) # Mostly like a MIPS. + tm_file=mips/iris3.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-iris3.h + broken_install=yes + xmake_file=mips/x-iris3 + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose. + tm_file=mips/osfrose.h + xmake_file=mips/x-osfrose + tmake_file=mips/t-osfrose + extra_objs=halfpic.o + use_collect2=yes + ;; + mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL + tm_file=mips/dec-osf1.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xmake_file=mips/x-dec-osf1 + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + tmake_file=mips/t-ultrix + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mips-dec-bsd*) # Decstation running 4.4 BSD + tm_file=mips/dec-bsd.h + fixincludes= + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + tmake_file=mips/t-ultrix + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mips-dec-netbsd*) # Decstation running NetBSD + tm_file=mips/netbsd.h + xm_file=mips/xm-netbsd.h + xmake_file=x-netbsd + tmake_file=t-libc-ok + fixincludes=Makefile.in + prefix=$native_prefix + ;; + mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news. + tm_file=mips/news4.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + xmake_file=mips/x-sony + ;; + 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 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-news.h + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mips-tandem-sysv4*) # Tandem S2 running NonStop UX + tm_file=mips/svr4-t.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-sysv4.h + xmake_file=mips/x-sysv + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + extra_parts="crtbegin.o crtend.o" + else + tmake_file=mips/t-mips + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-ultrix* | mips-dec-mach3) # Decstation. + tm_file=mips/ultrix.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xmake_file=mips/x-ultrix + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + tmake_file=mips/t-ultrix + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mips-*-riscos[[56789]]bsd*) + tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-bsd-gas + else + tmake_file=mips/t-bsd + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[[1234]]bsd*) + tm_file=mips/bsd-4.h # MIPS BSD 4.3, RISC-OS 4.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-bsd-gas + else + tmake_file=mips/t-bsd + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-riscos[[56789]]sysv4*) + tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-sysv4.h + xmake_file=mips/x-sysv + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-svr4-gas + else + tmake_file=mips/t-svr4 + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-sysv4* | mips-*-riscos[[1234]]sysv4* | mips-*-riscossysv4*) + tm_file=mips/svr4-4.h # MIPS System V.4. RISC-OS 4.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-sysv.h + xmake_file=mips/x-sysv + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-svr4-gas + else + tmake_file=mips/t-svr4 + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-riscos[[56789]]sysv*) + tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-sysv.h + xmake_file=mips/x-sysv + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-svr3-gas + else + tmake_file=mips/t-svr3 + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-sysv* | mips-*-riscos*sysv*) + tm_file=mips/svr3-4.h # MIPS System V.3, RISC-OS 4.0 + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + xm_file=mips/xm-sysv.h + xmake_file=mips/x-sysv + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-svr3-gas + else + tmake_file=mips/t-svr3 + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-riscos[[56789]]*) # Default MIPS RISC-OS 5.0. + tm_file=mips/mips-5.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + broken_install=yes + ;; + mips-*-gnu*) + ;; + mipsel-*-ecoff*) + tm_file=mips/ecoffl.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + tmake_file=mips/t-ecoff + ;; + mips-*-ecoff*) + tm_file=mips/ecoff.h + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + tmake_file=mips/t-ecoff + broken_install=yes + ;; + mipsel-*-elf*) + tm_file="mips/elfl.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips-*-elf*) + tm_file="mips/elf.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips64el-*-elf*) + tm_file="mips/elfl64.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips64orionel-*-elf*) + tm_file="mips/elflorion.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips64-*-elf*) + tm_file="mips/elf64.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips64orion-*-elf*) + tm_file="mips/elforion.h libgloss.h" + tmake_file=mips/t-ecoff + ;; + mips64orion-*-rtems*) + tm_file=mips/rtems64.h + tmake_file="mips/t-ecoff t-rtems" + ;; + mips-*-*) # Default MIPS RISC-OS 4.0. + if [[ x$stabs = xyes ]]; then + tm_file="${tm_file} dbx.h" + fi + if [[ x$gas = xyes ]] + then + tmake_file=mips/t-mips-gas + else + extra_passes="mips-tfile mips-tdump" + fi + if [[ x$gnu_ld != xyes ]] + then + use_collect2=yes + fi + ;; + mn10300-*-*) + cpu_type=mn10300 + tm_file="mn10300/mn10300.h" + if [[ x$stabs = xyes ]] + then + tm_file="${tm_file} dbx.h" + fi + use_collect2=no + ;; + ns32k-encore-bsd*) + tm_file=ns32k/encore.h + use_collect2=yes + ;; + ns32k-sequent-bsd*) + tm_file=ns32k/sequent.h + use_collect2=yes + ;; + ns32k-tek6100-bsd*) + tm_file=ns32k/tek6100.h + broken_install=yes + use_collect2=yes + ;; + ns32k-tek6200-bsd*) + tm_file=ns32k/tek6200.h + broken_install=yes + use_collect2=yes + ;; +# This has not been updated to GCC 2. +# ns32k-ns-genix*) +# xm_file=ns32k/xm-genix.h +# xmake_file=ns32k/x-genix +# tm_file=ns32k/genix.h +# broken_install=yes +# use_collect2=yes +# ;; + ns32k-merlin-*) + tm_file=ns32k/merlin.h + use_collect2=yes + ;; + ns32k-pc532-mach*) + tm_file=ns32k/pc532-mach.h + use_collect2=yes + ;; + ns32k-pc532-minix*) + tm_file=ns32k/pc532-min.h + xm_file=ns32k/xm-pc532-min.h + use_collect2=yes + ;; + ns32k-pc532-netbsd*) + tm_file=ns32k/netbsd.h + xm_file=ns32k/xm-netbsd.h + tmake_file=t-libc-ok + # On NetBSD, the headers are already okay. + fixincludes=Makefile.in + xmake_file=x-netbsd + ;; + pdp11-*-bsd) + tm_file="${tm_file} pdp11/2bsd.h" + ;; + pdp11-*-*) + ;; + pyramid-*-*) + cpu_type=pyr + xmake_file=pyr/x-pyr + use_collect2=yes + ;; + romp-*-aos*) + use_collect2=yes + ;; + romp-*-mach*) + xmake_file=romp/x-mach + use_collect2=yes + ;; + powerpc-*-sysv* | powerpc-*-elf*) + tm_file=rs6000/sysv4.h + xm_file=rs6000/xm-sysv4.h + extra_headers=ppc-asm.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcos rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc rs6000/t-ppccomm" + fi + xmake_file=rs6000/x-sysv4 + ;; + powerpc-*-eabiaix*) + tm_file=rs6000/eabiaix.h + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + fixincludes=Makefile.in + extra_headers=ppc-asm.h + ;; + powerpc-*-eabisim*) + tm_file=rs6000/eabisim.h + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + fixincludes=Makefile.in + extra_headers=ppc-asm.h + ;; + powerpc-*-eabi*) + tm_file=rs6000/eabi.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc rs6000/t-ppccomm" + fi + fixincludes=Makefile.in + extra_headers=ppc-asm.h + ;; + powerpc-*-linux*) + tm_file=rs6000/linux.h + xm_file=rs6000/xm-sysv4.h + out_file=rs6000/rs6000.c + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc t-linux rs6000/t-ppccomm" + fi + xmake_file=rs6000/x-sysv4 + fixincludes=Makefile.in + objc_thread_file=${enable_objcthreads-single} + extra_headers=ppc-asm.h + ;; + powerpc-*-rtems*) + cpu_type=rs6000 + xm_file=rs6000/xm-sysv4.h + tm_file=rs6000/rtems.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc t-rtems rs6000/t-ppccomm" + fi + xmake_file=rs6000/x-sysv4 + extra_headers=ppc-asm.h + ;; + powerpc-*-vxworks*) + cpu_type=rs6000 + xm_file=rs6000/xm-sysv4.h + tm_file=rs6000/vxppc.h + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + extra_headers=ppc-asm.h + ;; + powerpcle-*-sysv* | powerpcle-*-elf*) + tm_file=rs6000/sysv4le.h + xm_file=rs6000/xm-sysv4.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcos rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc rs6000/t-ppccomm" + fi + xmake_file=rs6000/x-sysv4 + extra_headers=ppc-asm.h + ;; + powerpcle-*-eabisim*) + tm_file=rs6000/eabilesim.h + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + fixincludes=Makefile.in + extra_headers=ppc-asm.h + ;; + powerpcle-*-eabi*) + tm_file=rs6000/eabile.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc rs6000/t-ppccomm" + fi + fixincludes=Makefile.in + extra_headers=ppc-asm.h + ;; + powerpcle-*-winnt* ) + tm_file=rs6000/win-nt.h + tmake_file=rs6000/t-winnt +# extra_objs=pe.o + fixincludes=Makefile.in + objc_thread_file=${enable_objcthreads-win32} + extra_headers=ppc-asm.h + ;; + powerpcle-*-pe | powerpcle-*-cygwin32) + tm_file=rs6000/cygwin32.h + xm_file=rs6000/xm-cygwin32.h + tmake_file=rs6000/t-winnt + xmake_file=rs6000/x-cygwin32 +# extra_objs=pe.o + fixincludes=Makefile.in + objc_thread_file=${enable_objcthreads-win32} + exeext=.exe + extra_headers=ppc-asm.h + ;; + powerpcle-*-solaris2*) + tm_file=rs6000/sol2.h + xm_file=rs6000/xm-sysv4.h + if [[ x$gas = xyes ]] + then + tmake_file="rs6000/t-ppcos rs6000/t-ppccomm" + else + tmake_file="rs6000/t-ppc rs6000/t-ppccomm" + fi + xmake_file=rs6000/x-sysv4 + fixincludes=fixinc.svr4 + extra_headers=ppc-asm.h + ;; + rs6000-ibm-aix3.[[01]]*) + tm_file=rs6000/aix31.h + xmake_file=rs6000/x-aix31 + use_collect2=yes + ;; + rs6000-ibm-aix3.2.[[456789]]* | powerpc-ibm-aix3.2.[[456789]]*) + tm_file=rs6000/aix3newas.h + if [[ x$host != x$target ]] + then + tmake_file=rs6000/t-xnewas + else + tmake_file=rs6000/t-newas + fi + use_collect2=yes + ;; + rs6000-ibm-aix[[456789]].* | powerpc-ibm-aix[[456789]].*) + tm_file=rs6000/aix41.h + if [[ x$host != x$target ]] + then + tmake_file=rs6000/t-xnewas + else + tmake_file=rs6000/t-newas + fi + xmake_file=rs6000/x-aix31 + use_collect2=yes + ;; + rs6000-ibm-aix*) + use_collect2=yes + ;; + rs6000-bull-bosx) + use_collect2=yes + ;; + rs6000-*-mach*) + tm_file=rs6000/mach.h + xm_file=rs6000/xm-mach.h + xmake_file=rs6000/x-mach + use_collect2=yes + ;; + rs6000-*-lynxos*) + tm_file=rs6000/lynx.h + xm_file=rs6000/xm-lynx.h + tmake_file=rs6000/t-rs6000 + xmake_file=rs6000/x-lynx + use_collect2=yes + ;; + sh-*-elf*) + tm_file=sh/elf.h + float_format=sh + ;; + sh-*-*) + float_format=sh + ;; + sparc-tti-*) + tm_file=sparc/pbd.h + xm_file=sparc/xm-pbd.h + ;; + sparc-wrs-vxworks* | sparclite-wrs-vxworks*) + tm_file=sparc/vxsparc.h + tmake_file=sparc/t-vxsparc + use_collect2=yes + ;; + sparc-*-aout*) + tmake_file=sparc/t-sparcbare + tm_file="sparc/aout.h libgloss.h" + ;; + sparc-*-netbsd*) + tm_file=sparc/netbsd.h + xm_file=sparc/xm-netbsd.h + # On NetBSD, the headers are already okay. + fixincludes=Makefile.in + tmake_file=t-libc-ok + xmake_file=x-netbsd + ;; + sparc-*-bsd*) + tm_file=sparc/bsd.h + ;; + sparc-*-linux*aout*) # Sparc's running Linux, a.out + 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. + broken_install=yes + gnu_ld=yes + objc_thread_file=${enable_objcthreads-single} + ;; + sparc-*-linux*) # Sparc's running Linux, ELF + xm_file=sparc/xm-linux.h + tm_file=sparc/linux.h + xmake_file=x-linux + fixincludes=Makefile.in #On Linux, the headers are ok already. + broken_install=yes + gnu_ld=yes + # Don't use it. Linux uses a slightly different one. + # The real one comes with the Linux C library. + #extra_parts="crtbegin.o crtend.o" + objc_thread_file=${enable_objcthreads-single} + ;; + sparc-*-lynxos*) + if [[ x$gas = xyes ]] + then + tm_file=sparc/lynx.h + else + tm_file=sparc/lynx-ng.h + fi + xm_file=sparc/xm-lynx.h + tmake_file=sparc/t-sunos41 + xmake_file=x-lynx + ;; + sparc-*-rtems*) + tmake_file="sparc/t-sparcbare t-rtems" + tm_file=sparc/rtems.h + ;; + sparc-*-solaris2*) + tm_file=sparc/sol2.h + xm_file=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 + broken_install=yes + objc_thread_file=${enable_objcthreads-solaris} + ;; + sparc-*-sunos4.0*) + tm_file=sparc/sunos4.h + tmake_file=sparc/t-sunos40 + use_collect2=yes + ;; + sparc-*-sunos4*) + tm_file=sparc/sunos4.h + tmake_file=sparc/t-sunos41 + use_collect2=yes + ;; + sparc-*-sunos3*) + tm_file=sparc/sun4o3.h + use_collect2=yes + ;; + sparc-*-sysv4*) + tm_file=sparc/sysv4.h + xm_file=sparc/xm-sysv4.h + tmake_file=t-svr4 + xmake_file=sparc/x-sysv4 + extra_parts="crtbegin.o crtend.o" + ;; + sparc-*-vxsim*) + xm_file=sparc/xm-sol2.h + tm_file=sparc/vxsim.h + tmake_file=sparc/t-vxsparc + xmake_file=sparc/x-sysv4 + ;; + sparclet-*-aout*) + tm_file="sparc/splet.h libgloss.h" + tmake_file=sparc/t-splet + ;; + sparclite-*-coff*) + tm_file="sparc/litecoff.h libgloss.h" + tmake_file=sparc/t-sparclite + ;; + sparclite-*-aout*) + tm_file="sparc/lite.h aoutos.h libgloss.h" + tmake_file=sparc/t-sparclite + ;; + sparc64-*-aout*) + tmake_file=sparc/t-sp64 + tm_file=sparc/sp64-aout.h + ;; + sparc64-*-elf*) + tmake_file=sparc/t-sp64 + tm_file=sparc/sp64-elf.h + extra_parts="crtbegin.o crtend.o" + ;; +# This hasn't been upgraded to GCC 2. +# tahoe-harris-*) # Harris tahoe, using COFF. +# tm_file=tahoe/harris.h +# ;; +# tahoe-*-bsd*) # tahoe running BSD +# ;; +# This hasn't been upgraded to GCC 2. +# tron-*-*) +# cpu_type=gmicro +# use_collect2=yes +# ;; + vax-*-bsd*) # vaxen running BSD + use_collect2=yes + float_format=vax + ;; + vax-*-sysv*) # vaxen running system V + tm_file="${tm_file} vax/vaxv.h" + xm_file="${tm_file} vax/xm-vaxv.h" + float_format=vax + ;; + vax-*-netbsd*) + tm_file="${tm_file} netbsd.h vax/netbsd.h" + xm_file="${xm_file} xm-netbsd.h" + tmake_file=t-libc-ok + # On NetBSD, the headers are already okay. + fixincludes=Makefile.in + xmake_file=x-netbsd + float_format=vax + ;; + vax-*-ultrix*) # vaxen running ultrix + tm_file="${tm_file} vax/ultrix.h" + use_collect2=yes + float_format=vax + ;; + vax-*-vms*) # vaxen running VMS + xm_file=vax/xm-vms.h + tm_file=vax/vms.h + float_format=vax + ;; + vax-*-*) # vax default entry + float_format=vax + ;; + we32k-att-sysv*) + xm_file="${xm_file} xm-svr3" + use_collect2=yes + ;; + *) + echo "Configuration $machine not supported" 1>&2 + exit 1 + ;; + esac + + case $machine in + *-*-linux-gnu*) + ;; # Existing Linux/GNU 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 + tm_file=${cpu_type}/gnu.h + extra_parts="crtbegin.o crtend.o" + # GNU always uses ELF. + elf=yes + # GNU tools are the only tools. + gnu_ld=yes + gas=yes + # On GNU, the headers are already okay. + fixincludes=Makefile.in + xmake_file=x-linux # These details are the same as Linux. + tmake_file=t-gnu # These are not. + ;; + *-*-sysv4*) + fixincludes=fixinc.svr4 + xmake_try_sysv=x-sysv + broken_install=yes + install_headers_dir=install-headers-cpio + ;; + *-*-sysv*) + broken_install=yes + install_headers_dir=install-headers-cpio + ;; + esac + + # Distinguish i[3456]86 + # Also, do not run mips-tfile on MIPS if using gas. + # Process --with-cpu= for PowerPC/rs6000 + target_cpu_default2= + case $machine in + i486-*-*) + target_cpu_default2=1 + ;; + i586-*-*) + target_cpu_default2=2 + ;; + i686-*-*) + target_cpu_default2=3 + ;; + alpha-*-*) + if [[ x$gas = xyes ]] + then + target_cpu_default2=4 + fi + ;; + mips*-*-ecoff* | mips*-*-elf*) + if [[ x$gas = xyes ]] + then + if [[ x$gnu_ld = xyes ]] + then + target_cpu_default2=20 + else + target_cpu_default2=16 + fi + fi + ;; + mips*-*-*) + if [[ x$gas = xyes ]] + then + target_cpu_default2=16 + fi + ;; + powerpc*-*-* | rs6000-*-*) + case "x$with_cpu" in + x) + ;; + + xcommon | xpower | xpower2 | xpowerpc | xrios \ + | xrios2 | xrsc | xrsc1 | x403 | x601 | x602 \ + | x603 | x603e | x604 | x620 | xrs6000) + target_cpu_default2="'\"$with_cpu\"'" + ;; + + xyes | xno) + echo "--with-cpu must be passed a value" 1>&2 + exit 1 + ;; + + *) + echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2 + exit 1 + ;; + esac + ;; + sparc*-*-*) + case ".$with_cpu" in + .) + target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`" + ;; + .supersparc | .ultrasparc | .v7 | .v8) + target_cpu_default2="TARGET_CPU_$with_cpu" + ;; + *) + echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2 + exit 1 + ;; + esac + ;; + esac + + if [[ x$target_cpu_default2 != x ]] + then + if [[ x$target_cpu_default != x ]] + then + target_cpu_default="(${target_cpu_default}|${target_cpu_default2})" + else + target_cpu_default=$target_cpu_default2 + fi + fi + + # No need for collect2 if we have the GNU linker. + case x$gnu_ld in + xyes) + use_collect2= + ;; + esac + +# Save data on machine being used to compile GCC in build_xm_file. +# Save data on host machine in vars host_xm_file and host_xmake_file. + if [[ x$pass1done = x ]] + then + if [[ x"$xm_file" = x ]] + then build_xm_file=$cpu_type/xm-$cpu_type.h + else build_xm_file=$xm_file + fi + build_broken_install=$broken_install + build_install_headers_dir=$install_headers_dir + build_exeext=$exeext + pass1done=yes + else + if [[ x$pass2done = x ]] + then + if [[ x"$xm_file" = x ]] + then host_xm_file=$cpu_type/xm-$cpu_type.h + else host_xm_file=$xm_file + fi + if [[ x"$xmake_file" = x ]] + then xmake_file=$cpu_type/x-$cpu_type + fi + host_xmake_file="$xmake_file" + host_truncate_target=$truncate_target + host_extra_gcc_objs=$extra_gcc_objs + host_extra_objs=$extra_host_objs + pass2done=yes + fi + fi +done + +extra_objs="${host_extra_objs} ${extra_objs}" + +# Default the target-machine variables that were not explicitly set. +if [[ x"$tm_file" = x ]] +then tm_file=$cpu_type/$cpu_type.h; fi + +if [[ x$extra_headers = x ]] +then extra_headers=; fi + +if [[ x"$xm_file" = x ]] +then xm_file=$cpu_type/xm-$cpu_type.h; fi + +md_file=$cpu_type/$cpu_type.md + +if [[ x$out_file = x ]] +then out_file=$cpu_type/$cpu_type.c; fi + +if [[ x"$tmake_file" = x ]] +then tmake_file=$cpu_type/t-$cpu_type +fi + +if [[ x$float_format = x ]] +then float_format=i64 +fi + +# Say what files are being used for the output code and MD file. +echo "Using \`$srcdir/config/$out_file' to output insns." +echo "Using \`$srcdir/config/$md_file' as machine description file." + +count=a +for f in $tm_file; do + count=${count}x +done +if [[ $count = ax ]]; then + echo "Using \`$srcdir/config/$tm_file' as target machine macro file." +else + echo "Using the following target machine macro files:" + for f in $tm_file; do + echo " $srcdir/config/$f" + done +fi + +count=a +for f in $host_xm_file; do + count=${count}x +done +if [[ $count = ax ]]; then + echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file." +else + echo "Using the following host machine macro files:" + for f in $host_xm_file; do + echo " $srcdir/config/$f" + done +fi + +if [[ "$host_xm_file" != "$build_xm_file" ]]; then + count=a + for f in $build_xm_file; do + count=${count}x + done + if [[ $count = ax ]]; then + echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file." + else + echo "Using the following build machine macro files:" + for f in $build_xm_file; do + echo " $srcdir/config/$f" + done + fi +fi + +if [[ x$objc_thread_file = x ]] +then objc_thread_file=${enable_objcthreads-single} +fi +echo "Using \`$srcdir/objc/thr-${objc_thread_file}.c' as Objective-C Runtime thread file." + +# Set up the header files. +# $links is the list of header files to create. +# $vars is the list of shell variables with file names to include. +vars="host_xm_file tm_file xm_file build_xm_file" +links="config.h tm.h tconfig.h hconfig.h" + +rm -f config.bak +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=$* + + rm -f $link + + # Define TARGET_CPU_DEFAULT if the system wants one. + # This substitutes for lots of *.h files. + if [[ x$target_cpu_default != x -a $link = tm.h ]] + then + echo "#define TARGET_CPU_DEFAULT $target_cpu_default" >>$link + fi + + for file in `eval echo '$'$var`; do + echo "#include \"$file\"" >>$link + done +done + +# Truncate the target if necessary +if [[ x$host_truncate_target != x ]]; then + target=`echo $target | sed -e 's/\(..............\).*/\1/'` +fi + +# Get the version number from the toplevel +version=`sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/' < ${srcdir}/version.c` + +# For the current directory and all of the language subdirectories, +# do the rest of the script ... + +subdirs= +for lang in ${srcdir}/*/config-lang.in .. +do + case $lang in + ..) ;; + # The odd quoting in the next line works around + # an apparent bug in bash 1.12 on linux. + ${srcdir}/[[*]]/config-lang.in) ;; + *) subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([[^/]]*\)/config-lang.in$,\1,'`" ;; + esac +done + +# Are we using gcc as the native compiler? +case $host in +*linux*) # All Linux's use gcc as the native compiler. + prefix=$native_prefix + ;; +esac + +# Make empty files to contain the specs and options for each language. +# Then add #include lines to for a compiler that has specs and/or options. + +lang_specs_files= +lang_options_files= +rm -f specs.h options.h +touch specs.h options.h +for subdir in . $subdirs +do + if [[ -f $srcdir/$subdir/lang-specs.h ]]; then + echo "#include \"$subdir/lang-specs.h\"" >>specs.h + lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h" + fi + if [[ -f $srcdir/$subdir/lang-options.h ]]; then + echo "#include \"$subdir/lang-options.h\"" >>options.h + lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h" + fi +done + +# These (without "all_") are set in each config-lang.in. +# `language' must be a single word so is spelled singularly. +all_languages= +all_boot_languages= +all_compilers= +all_stagestuff= +all_diff_excludes= +# List of language makefile fragments. +all_lang_makefiles= +all_headers= +all_lib2funcs= + +rm -f Make-host Make-target Make-lang Make-hooks +touch Make-host +touch Make-target +touch Make-lang +touch Make-hooks +host_overrides="Make-host" +target_overrides="Make-target" +language_fragments="Make-lang" +language_hooks="Make-hooks" + +savesrcdir=$srcdir +for subdir in . $subdirs +do + oldsrcdir=$savesrcdir + + # Re-adjust the path + case $oldsrcdir in + /*) + case $subdir in + .) + srcdir=$oldsrcdir + ;; + *) + srcdir=$oldsrcdir/$subdir + ;; + esac + ;; + *) + case $subdir in + .) + ;; + *) + oldsrcdir=../${oldsrcdir} + srcdir=$oldsrcdir/$subdir + ;; + esac + ;; + esac + mainsrcdir=$oldsrcdir + STARTDIR=`pwd` + test -d $subdir || mkdir $subdir + cd $subdir + + # Create Makefile.tem from Makefile.in. + # Make it set VPATH if necessary so that the sources are found. + # Also change its value of srcdir. + # Also create a .gdbinit file which runs the one in srcdir + # and tells GDB to look there for source files. + case $srcdir in + . | ./$subdir | .././$subdir) + rm -f Makefile.tem + cp Makefile.in Makefile.tem + chmod +w Makefile.tem + ;; + *) + rm -f Makefile.tem + echo "VPATH = ${srcdir}" \ + | cat - ${srcdir}/Makefile.in \ + | sed "s@^srcdir = \.@srcdir = ${srcdir}@" > Makefile.tem + rm -f .gdbinit + echo "dir ." > .gdbinit + echo "dir ${srcdir}" >> .gdbinit + if [[ x$gdb_needs_out_file_path = xyes ]] + then + echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit + fi + if [[ "x$subdirs" != x ]]; then + for s in $subdirs + do + echo "dir ${srcdir}/$s" >> .gdbinit + done + fi + echo "source ${srcdir}/.gdbinit" >> .gdbinit + ;; + esac + + # Conditionalize the makefile for this host machine. + dep_host_xmake_file= + rm -f Makefile.xx Makefile.ll + merged_frags= + for f in .. ${host_xmake_file} + do + if [[ -f ${mainsrcdir}/config/$f ]] + then + cat ${mainsrcdir}/config/$f >> Makefile.ll + if [[ x"${merged_frags}" != x ]] + then + merged_frags="${merged_frags} and " + fi + merged_frags="${merged_frags}${f}" + cat ${mainsrcdir}/config/$f >> Make-host + dep_host_xmake_file="${dep_host_xmake_file} \$(srcdir)/config/$f" + fi + done + if [[ x"${merged_frags}" != x ]] + then + sed -e "/####host/ r Makefile.ll" Makefile.tem > Makefile.xx + echo "Merged ${merged_frags}." + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + rm -f Makefile.ll + fi + + # Add a definition for MAKE if system wants one. + case "$SET_MAKE" in + ?*) + rm -f Makefile.xx + (echo "$SET_MAKE"; cat Makefile.tem) >Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + esac + + # Add a definition for INSTALL if system wants one. + # This substitutes for lots of x-* files. + if [[ x$build_broken_install = x ]] + then true + else + rm -f Makefile.xx + abssrcdir=`cd ${srcdir}; pwd` + sed "s|^INSTALL = .*|INSTALL = ${abssrcdir}/install.sh -c|" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Some of the following don't make sense in the language makefiles, + # but rather than introduce another level of nesting, we leave them + # as is. + + # Set EXTRA_HEADERS according to extra_headers. + # This substitutes for lots of t-* files. + extra_headers_list= + if [[ "x$extra_headers" = x ]] + then true + else + # Prepend ${srcdir}/ginclude/ to every entry in extra_headers. + for file in $extra_headers; + do + extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}" + done + rm -f Makefile.xx + sed "s|^EXTRA_HEADERS =|EXTRA_HEADERS = ${extra_headers_list}|" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Set EXTRA_PASSES according to extra_passes. + # This substitutes for lots of t-* files. + if [[ "x$extra_passes" = x ]] + then true + else + rm -f Makefile.xx + sed "s/^EXTRA_PASSES =/EXTRA_PASSES = $extra_passes/" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Set EXTRA_PARTS according to extra_parts. + # This substitutes for lots of t-* files. + if [[ "x$extra_parts" = x ]] + then true + else + rm -f Makefile.xx + sed "s/^EXTRA_PARTS =/EXTRA_PARTS = $extra_parts/" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Set EXTRA_PROGRAMS according to extra_programs. + if [[ "x$extra_programs" = x ]] + then true + else + rm -f Makefile.xx + sed "s/^EXTRA_PROGRAMS =/EXTRA_PROGRAMS = $extra_programs/" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Set EXTRA_OBJS according to extra_objs. + # This substitutes for lots of t-* files. + if [[ "x$extra_objs" = x ]] + then true + else + rm -f Makefile.xx + sed "s|^EXTRA_OBJS =|EXTRA_OBJS = $extra_objs|" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Set EXTRA_GCC_OBJS according to host_extra_gcc_objs. + # This substitutes for lots of x-* files. + if [[ "x$host_extra_gcc_objs" = x ]] + then true + else + rm -f Makefile.xx + sed "s|^EXTRA_GCC_OBJS =|EXTRA_GCC_OBJS = $host_extra_gcc_objs|" +Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Add a definition of USE_COLLECT2 if system wants one. + # Also tell toplev.c what to do. + # This substitutes for lots of t-* files. + if [[ x$use_collect2 = x ]] + then + will_use_collect2= + maybe_use_collect2= + else + will_use_collect2="ld" + maybe_use_collect2="-DUSE_COLLECT2" + rm -f Makefile.xx + (echo "USE_COLLECT2 = ld"; echo "MAYBE_USE_COLLECT2 = -DUSE_COLLECT2")\ + | cat - Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # NEED TO CONVERT + # Set MD_DEPS if the real md file is in md.pre-cpp. + # Set MD_CPP to the cpp to pass the md file through. Md files use ';' + # for line oriented comments, so we must always use a GNU cpp. If + # building gcc with a cross compiler, use the cross compiler just + # built. Otherwise, we can use the cpp just built. + md_file_sub= + if [[ "x$md_cppflags" = x ]] + then + md_file_sub=$srcdir/config/$md_file + else + rm -f Makefile.xx + (if [[ x$host = x$build ]] ; then + echo "MD_DEPS = $(md_file) cpp" ; echo "MD_CPP = ./cpp" + else + echo "MD_DEPS = md.pre-cpp" ; echo "MD_CPP = \$(HOST_CC) -x c -E" + fi + md_file=md + echo "MD_CPPFLAGS = $md_cppflags") | \ + cat - Makefile.tem | sed -e "s|^MD_FILE[[ ]]*=.*|MD_FILE = md|" > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # If we have gas in the build tree, make a link to it. + if [[ -f ../gas/Makefile ]]; then + rm -f as; $symbolic_link ../gas/as.new as 2>/dev/null + fi + + # If we have ld in the build tree, make a link to it. + if [[ -f ../ld/Makefile ]]; then + if [[ x$use_collect2 = x ]]; then + rm -f ld; $symbolic_link ../ld/ld.new ld 2>/dev/null + else + rm -f collect-ld; $symbolic_link ../ld/ld.new collect-ld 2>/dev/null + fi + fi + + # If using -program-transform-name, override the installation names. + if [[ "x${program_transform_set}" = "xyes" ]] ; then + sed -e "s/^program_transform_name[[ ]]*=.*$/program_transform_name = +$program_transform_name/" \ + -e "s/^program_transform_cross_name[[ +]]*=.*$/program_transform_cross_name = $program_transform_name/" \ + Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # Conditionalize the makefile for this target machine. + dep_tmake_file= + rm -f Makefile.xx Makefile.ll + merged_frags= + for f in .. ${tmake_file} + do + if [[ -f ${mainsrcdir}/config/$f ]] + then + cat ${mainsrcdir}/config/$f >> Make-target + dep_tmake_file="${dep_tmake_file} \$(srcdir)/config/$f" + cat ${mainsrcdir}/config/$f >> Makefile.ll + if [[ x"${merged_frags}" != x ]] + then + merged_frags="${merged_frags} and " + fi + merged_frags="${merged_frags}$f" + fi + done + if [[ x"${merged_frags}" != x ]] + then + sed -e "/####target/ r Makefile.ll" Makefile.tem > Makefile.xx + echo "Merged ${merged_frags}." + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + rm -f Makefile.ll + fi + + # If this is the top level Makefile, add the language fragments. + # Languages are added via two mechanisms. Some information must be + # recorded in makefile variables, these are defined in config-lang.in. + # We accumulate them and plug them into the main Makefile. + # The other mechanism is a set of hooks for each of the main targets + # like `clean', `install', etc. + if [[ $subdir = . ]] + then + rm -f Makefile.xx Makefile.ll + touch Makefile.ll + for s in .. $subdirs + do + if [[ $s != ".." ]] + then + language= + boot_language= + compilers= + stagestuff= + diff_excludes= + . ${mainsrcdir}/$s/config-lang.in + if [[ "x$language" = x ]] + then + echo "${mainsrcdir}/$s/config-lang.in doesn't set \$language." 1>&2 + exit 1 + fi + all_lang_makefiles="$all_lang_makefiles ${mainsrcdir}/$s/Make-lang.in ${mainsrcdir}/$s/Makefile.in" + all_languages="$all_languages $language" + if [[ "x$boot_language" = xyes ]] + then + all_boot_languages="$all_boot_languages $language" + fi + all_compilers="$all_compilers $compilers" + all_stagestuff="$all_stagestuff $stagestuff" + all_diff_excludes="$all_diff_excludes $diff_excludes" + all_headers="$all_headers $headers" + all_lib2funcs="$all_lib2funcs $lib2funcs" + + cat ${mainsrcdir}/$s/Make-lang.in >> Make-lang + cat ${mainsrcdir}/$s/Make-lang.in >> Makefile.ll + fi + done + sed -e "/####language fragments/ r Makefile.ll" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + subdirs=`echo $subdirs` + sed -e "s|^SUBDIRS[[ ]]*=.*$|SUBDIRS = $subdirs|" \ + -e "s|^LANGUAGES[[ ]]*=[[ ]]*\(.*\)$|LANGUAGES = \1 $all_languages|" \ + -e "s|^BOOT_LANGUAGES[[ ]]*=[[ ]]*\(.*\)$|BOOT_LANGUAGES = \1 $all_boot_languages|" \ + -e "s|^COMPILERS[[ ]]*=[[ ]]*\(.*\)$|COMPILERS = \1 $all_compilers|" \ + -e "s|^LANG_MAKEFILES[[ ]]*=.*$|LANG_MAKEFILES = $all_lang_makefiles|" \ + -e "s|^LANG_STAGESTUFF[[ ]]*=.*$|LANG_STAGESTUFF = $all_stagestuff|" \ + -e "s|^LANG_DIFF_EXCLUDES[[ ]]*=.*$|LANG_DIFF_EXCLUDES = $all_diff_excludes|" \ + -e "s|^LANG_EXTRA_HEADERS[[ ]]*=.*$|LANG_EXTRA_HEADERS = $all_headers|" \ + -e "s|^LANG_LIB2FUNCS[[ ]]*=.*$|LANG_LIB2FUNCS = $all_lib2funcs|" \ + Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + + # Since we can't use `::' targets, we link each language in + # with a set of hooks, reached indirectly via lang.${target}. + + target_list="all.build all.cross start.encap rest.encap \ + info dvi \ + install-normal install-common install-info install-man \ + uninstall distdir \ + mostlyclean clean distclean extraclean maintainer-clean \ + stage1 stage2 stage3 stage4" + rm -f Makefile.ll + for t in $target_list + do + x= + for l in .. $all_languages + do + if [[ $l != ".." ]]; then + x="$x $l.$t" + fi + done + echo "lang.$t: $x" >> Make-hooks + echo "lang.$t: $x" >> Makefile.ll + done + sed -e "/####language hooks/ r Makefile.ll" Makefile.tem > Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + rm -f Makefile.ll + + # If the host doesn't support symlinks, modify CC in + # 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 + then + cc_set_by_configure="\$(CC)" + stage_prefix_set_by_configure="\$(STAGE_PREFIX)" + sed -e 's,CC=set-by-configure,CC=$(CC),' \ + Makefile.tem > Makefile.xx + sed -e 's,STAGE_PREFIX=set-by-configure,STAGE_PREFIX=$(STAGE_PREFIX),' \ + Makefile.xx > Makefile.yy + else + 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\`," + sed -e "s,CC=set-by-configure,CC=\`case '\$(CC)' in *stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`," \ + Makefile.tem > Makefile.xx + sed -e "s,STAGE_PREFIX=set-by-configure,STAGE_PREFIX=\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`," \ + Makefile.xx > Makefile.yy + fi + rm -f Makefile.tem Makefile.xx + mv Makefile.yy Makefile.tem + rm -f symtest.tem + + if [[ "x$all_languages" != x ]] + then + # Missing space after `Merged' is intentional. + echo "Merged$all_languages fragment(s)." + fi + + # Otherwise, this is a language subdirectory. If the host supports + # symlinks, point stage[123] at ../stage[123] so bootstrapping and the + # installation procedure can still use CC="stage1/xgcc -Bstage1/". + # If the host doesn't support symlinks, FLAGS_TO_PASS has been + # modified to solve the problem there. + else + for t in stage1 stage2 stage3 stage4 include + do + rm -f $t + $symbolic_link ../$t $t 2>/dev/null + done + fi + + out_object_file=`basename $out_file .c`.o + + if [[ $subdir = . ]] + then + tm_file_list= + for f in $tm_file; do + tm_file_list="${tm_file_sub} \$(srcdir)/config/$f" + done + + host_xm_file_list= + for f in $host_xm_file; do + host_xm_file_list="${host_xm_file_sub} \$(srcdir)/config/$f" + done + + build_xm_file_list= + for f in $build_xm_file; do + build_xm_file_list="${build_xm_file_sub} \$(srcdir)/config/$f" + done + fi + + # Remove all formfeeds, since some Makes get confused by them. + # Also arrange to give the variables `target', `host_xmake_file', + # `tmake_file', `prefix', `local_prefix', `exec_prefix', `FIXINCLUDES' + # `out_file', `out_object', `md_file', `lang_specs_files', + # `lang_options_files', `INSTALL_HEADERS_DIR', and `CROSS_FLOAT_H' + # values in the Makefile from the values they have in this script. + rm -f Makefile.xx + rm -f aux-output.c aux-output.o md + # Create an empty Makefile.sed first, to work around a Nextstep 3.3 bug. + echo 's| ||' > Makefile.sed + rm Makefile.sed + echo 's| ||' > Makefile.sed + echo "s|^target=.*$|target=${target}|" >> Makefile.sed + echo "s|^target_alias=.*$|target_alias=${target}|" >> Makefile.sed + echo "s|^xmake_file=.*$|xmake_file=${dep_host_xmake_file}|" >> Makefile.sed + echo "s|^tmake_file=.*$|tmake_file=${dep_tmake_file}|" >> Makefile.sed + echo "s|^version=.*$|version=${version}|" >> Makefile.sed + echo "s|^version=.*$|version=${version}|" >> Makefile.sed + echo "s|^out_file=.*$|out_file=${srcdir}/config/${out_file}|" >> Makefile.sed + echo "s|^out_object_file=.*$|out_object_file=${out_object_file}|" >> Makefile.sed + echo "s|^md_file=.*$|md_file=${md_file}|" >> Makefile.sed + tm_file_sub= + for f in $tm_file; do + tm_file_sub="${tm_file_sub} ${srcdir}/config/$f" + done + echo "s|^tm_file=.*$|tm_file=${tm_file_sub}|" >> Makefile.sed + host_xm_file_sub= + for f in $host_xm_file; do + host_xm_file_sub="${host_xm_file_sub} ${srcdir}/config/$f" + done + echo "s|^host_xm_file=.*$|host_xm_file=${host_xm_file_sub}|" >> Makefile.sed + build_xm_file_sub= + for f in $build_xm_file; do + build_xm_file_sub="${build_xm_file_sub} ${srcdir}/config/$f" + done + echo "s|^build_xm_file=.*$|build_xm_file=${build_xm_file_sub}|" >> Makefile.sed + echo "s|^lang_specs_files=.*$|lang_specs_files=${lang_specs_files}|" >> Makefile.sed + echo "s|^lang_options_files=.*$|lang_options_files=${lang_options_files}|" >> Makefile.sed + echo "s|^OBJC_THREAD_FILE=.*$|OBJC_THREAD_FILE=thr-${objc_thread_file}|" >> Makefile.sed + echo "s|^prefix[[ ]]*=.*|prefix = $prefix|" >> Makefile.sed + echo "s|^local_prefix[[ ]]*=.*|local_prefix = $local_prefix|" >> Makefile.sed + echo "s|^exec_prefix[[ ]]*=.*|exec_prefix = $exec_prefix|" >> Makefile.sed + echo "s|^FIXINCLUDES[[ ]]*=.*|FIXINCLUDES = $fixincludes|" >> Makefile.sed + echo "s|^INSTALL_HEADERS_DIR[[ ]]*=.*$|INSTALL_HEADERS_DIR = ${build_install_headers_dir}|" >> Makefile.sed + echo "s|^exeext[[ ]]*=.*$|exeext = ${build_exeext}|" >> Makefile.sed + echo "s|^CROSS_FLOAT_H[[ ]]*=.*|CROSS_FLOAT_H=\$(srcdir)/config/float-${float_format}.h|" >> Makefile.sed + sed -f Makefile.sed Makefile.tem > Makefile.xx + rm -f Makefile.tem Makefile.sed + mv Makefile.xx Makefile.tem + + # Install Makefile for real, after making final changes. + # Define macro CROSS_COMPILE in compilation + # if this is a cross-compiler. + # Also use all.cross instead of all.internal + # and add cross-make to Makefile. + if [[ x$host != x$target ]] + then + cross_defines="CROSS=-DCROSS_COMPILE" + cross_overrides="./cross-make" + rm -f Makefile.xx + echo "CROSS=-DCROSS_COMPILE" > Makefile.xx + sed -e "/####cross/ r ${mainsrcdir}/cross-make" Makefile.tem >> Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + # When building gcc with a cross-compiler, we need to fix a few things. + # This must come after cross-make as we want all.build to override + # all.cross. + if [[ x$build != x$host ]] + then + build_overrides="./build-make" + rm -f Makefile.xx + echo "build= $build" > Makefile.xx + echo "host= $host" >> Makefile.xx + sed -e "s|objc-runtime$||" \ + -e "/####build/ r ${mainsrcdir}/build-make" Makefile.tem >> Makefile.xx + rm -f Makefile.tem + mv Makefile.xx Makefile.tem + fi + + rm -f Makefile + mv Makefile.tem Makefile + + if [[ $subdir != . ]] + then + echo "Created \`$subdir/Makefile'." + fi + + cd $STARTDIR +done # end of current-dir SUBDIRS loop + +srcdir=$savesrcdir + +# Substitute configuration variables +AC_SUBST(subdirs) +AC_SUBST(all_languages) +AC_SUBST(all_boot_languages) +AC_SUBST(all_compilers) +AC_SUBST(all_lang_makefiles) +AC_SUBST(all_stagestuff) +AC_SUBST(all_diff_excludes) +AC_SUBST(all_lib2funcs) +AC_SUBST(all_headers) +AC_SUBST(extra_passes) +AC_SUBST(extra_programs) +AC_SUBST(extra_parts) +AC_SUBST(extra_objs) +AC_SUBST(host_extra_gcc_objs) +AC_SUBST(extra_headers_list) +AC_SUBST(dep_host_xmake_file) +AC_SUBST(dep_tmake_file) +AC_SUBST(out_file) +AC_SUBST(out_object_file) +AC_SUBST(md_file) +AC_SUBST(tm_file_list) +AC_SUBST(build_xm_file_list) +AC_SUBST(host_xm_file_list) +AC_SUBST(lang_specs_files) +AC_SUBST(lang_options_files) +AC_SUBST(objc_thread_file) +AC_SUBST(version) +AC_SUBST(local_prefix) +AC_SUBST(fixincludes) +AC_SUBST(build_install_headers_dir) +AC_SUBST(exeext) +AC_SUBST(float_format) +AC_SUBST(will_use_collect2) +AC_SUBST(maybe_use_collect2) +AC_SUBST(cc_set_by_configure) +AC_SUBST(stage_prefix_set_by_configure) + +AC_SUBST_FILE(target_overrides) +AC_SUBST_FILE(host_overrides) +AC_SUBST(cross_defines) +AC_SUBST_FILE(cross_overrides) +AC_SUBST_FILE(build_overrides) +AC_SUBST_FILE(language_fragments) +AC_SUBST_FILE(language_hooks) + +# Echo that links are built +if [[ x$host = x$target ]] +then + str1="native " +else + str1="cross-" + str2=" from $host" +fi + +if [[ x$host != x$build ]] +then + str3=" on a $build system" +fi + +if [[ "x$str2" != x ]] || [[ "x$str3" != x ]] +then + str4= +fi + +echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2 + +if [[ "x$str2" != x ]] || [[ "x$str3" != x ]] +then + echo " ${str2}${str3}." 1>&2 +fi + +# Configure the subdirectories +# AC_CONFIG_SUBDIRS($subdirs) + +# Create the Makefile +AC_OUTPUT(Makefile) -- 2.30.2