1045 lines
22 KiB
Bash
Executable File
1045 lines
22 KiB
Bash
Executable File
#!/bin/sh
|
||
# Configuration script for GNU CC
|
||
# Copyright (C) 1988, 1990, 1991, 1992 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, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||
|
||
#
|
||
# Shell script to create proper links to machine-dependent files in
|
||
# preparation for compiling gcc.
|
||
#
|
||
# Usage: configure [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] TARGET
|
||
#
|
||
# If configure succeeds, it leaves its status in config.status.
|
||
# If configure fails after disturbing the status quo,
|
||
# config.status is removed.
|
||
#
|
||
|
||
progname=$0
|
||
|
||
# Default --srcdir to the directory where the script is found,
|
||
# if a directory was specified.
|
||
# The second sed call is to convert `.//configure' to `./configure'.
|
||
srcdir=`echo $0 | sed 's|//|/|' | sed 's|/[^/]*$||'`
|
||
if [ x$srcdir = x$0 ]
|
||
then
|
||
srcdir=
|
||
fi
|
||
|
||
host=
|
||
|
||
remove=rm
|
||
hard_link=ln
|
||
symbolic_link='ln -s'
|
||
copy=cp
|
||
|
||
# Record all the arguments, to write them in config.status.
|
||
arguments=$*
|
||
|
||
#for Test
|
||
#remove="echo rm"
|
||
#hard_link="echo ln"
|
||
#symbolic_link="echo ln -s"
|
||
|
||
for arg in $*;
|
||
do
|
||
# Handle -srcdir, etc, with space between it and argument.
|
||
if [ x$next_srcdir = xyes ]
|
||
then srcdir=$arg; next_srcdir=;
|
||
# Handle -host, etc, with space between it and argument.
|
||
else if [ x$next_host = xyes ]
|
||
then host=$arg; next_host=;
|
||
else if [ x$next_target = xyes ]
|
||
then target=$arg; next_target=;
|
||
else
|
||
case $arg in
|
||
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=* | --s=*)
|
||
srcdir=`echo $arg | sed 's/-*s[a-z]*=//'`
|
||
;;
|
||
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr | --s)
|
||
next_srcdir=yes
|
||
;;
|
||
-host | --host | --hos | --ho | --h)
|
||
next_host=yes
|
||
;;
|
||
-host=* | --host=* | --hos=* | --ho=* | --h=*)
|
||
host=`echo $arg | sed 's/-*h[a-z]*=//'`
|
||
;;
|
||
-target | --target | --targe | --targ | --tar | --ta | --t)
|
||
next_target=yes
|
||
;;
|
||
-target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
|
||
target=`echo $arg | sed 's/-*t[a-z]*=//'`
|
||
;;
|
||
-with-gnu-ld | --with-gnu-ld | --with-gnu-l)
|
||
gnu_ld=yes
|
||
;;
|
||
-gas | --gas | --ga | --g | -with-gnu-as | --with-gnu-as | -with-gnu-a)
|
||
gas=yes
|
||
;;
|
||
-nfp | --nfp | --nf | --n)
|
||
nfp=yes
|
||
;;
|
||
-with-* | --with-*) ;; #ignored
|
||
-x | --x) ;; # ignored
|
||
-*)
|
||
echo "Invalid option \`$arg'" 1>&2
|
||
exit 1
|
||
;;
|
||
*)
|
||
# Allow configure HOST TARGET
|
||
if [ x$host = x ]
|
||
then
|
||
host=$target
|
||
fi
|
||
target=$arg
|
||
;;
|
||
esac
|
||
fi; fi; fi
|
||
done
|
||
|
||
# Find the source files, if location was not specified.
|
||
if [ x$srcdir = x ]
|
||
then
|
||
srcdirdefaulted=1
|
||
srcdir=.
|
||
if [ ! -r tree.c ]
|
||
then
|
||
srcdir=..
|
||
fi
|
||
fi
|
||
|
||
if [ ! -r ${srcdir}/tree.c ]
|
||
then
|
||
if [ x$srcdirdefaulted = x ]
|
||
then
|
||
echo "$progname: Can't find compiler sources in \`${srcdir}'" 1>&2
|
||
else
|
||
echo "$progname: Can't find compiler sources in \`.' or \`..'" 1>&2
|
||
fi
|
||
exit 1
|
||
fi
|
||
|
||
if [ -r ${srcdir}/config.status ] && [ x$srcdir != x. ]
|
||
then
|
||
echo "$progname: \`configure' has been run in \`${srcdir}'" 1>&2
|
||
exit 1
|
||
fi
|
||
|
||
# Complain if an arg is missing
|
||
if [ x$target = x ]
|
||
then
|
||
echo "No target specified." 1>&2
|
||
echo "Usage: $progname [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] TARGET" 1>&2
|
||
echo -n "Where HOST and TARGET are something like " 1>&2
|
||
echo "\`vax', \`sun3', \`encore', etc." 1>&2
|
||
if [ -r config.status ]
|
||
then
|
||
cat config.status 1>&2
|
||
fi
|
||
exit 1
|
||
fi
|
||
|
||
# Default other arg
|
||
if [ x$host = x ]
|
||
then
|
||
host=$target
|
||
fi
|
||
|
||
host_xm_file=
|
||
host_xmake_file=
|
||
host_broken_install=
|
||
|
||
# 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 $host $target; do
|
||
|
||
# Validate the spec, and canonicalize it.
|
||
machine=`$srcdir/config.sub $machine` || exit 1
|
||
|
||
cpu_type=
|
||
xm_file=
|
||
tm_file=
|
||
out_file=
|
||
xmake_file=
|
||
tmake_file=
|
||
header_files=
|
||
# Set this to force installation and use of collect2.
|
||
use_collect2=
|
||
# Set this to force use of install.sh.
|
||
broken_install=
|
||
|
||
case $machine in
|
||
# Support site-specific machine types.
|
||
*local*)
|
||
cpu_type=$machine
|
||
xm_file=xm-$machine.h
|
||
tm_file=$machine.h
|
||
if [ -f $srcdir/config/x-$machine ] ; \
|
||
then xmake_file=x-$machine; \
|
||
else true; \
|
||
fi
|
||
if [ -f $srcdir/config/t-$machine ] ; \
|
||
then tmake_file=t-$machine; \
|
||
else true; \
|
||
fi
|
||
;;
|
||
vax-*-bsd*) # vaxen running BSD
|
||
tm_file=vax.h
|
||
use_collect2=yes
|
||
;;
|
||
vax-*-ultrix*) # vaxen running ultrix
|
||
tm_file=ultrix.h
|
||
use_collect2=yes
|
||
;;
|
||
vax-*-vms*) # vaxen running VMS
|
||
xm_file=xm-vms.h
|
||
tm_file=vms.h
|
||
;;
|
||
vax-*-sysv*) # vaxen running system V
|
||
xm_file=xm-vaxv.h
|
||
tm_file=vaxv.h
|
||
;;
|
||
# This hasn't been upgraded to GCC 2.
|
||
# tahoe-harris-*) # Harris tahoe, using COFF.
|
||
# tm_file=harris.h
|
||
# ;;
|
||
# tahoe-*-bsd*) # tahoe running BSD
|
||
# xm_file=xm-tahoe.h
|
||
# tm_file=tahoe.h
|
||
# ;;
|
||
i386-*-osfrose*) # 386 using OSF/rose
|
||
tm_file=i386rose.h
|
||
xmake_file=x-i386rose
|
||
tmake_file=t-i386rose
|
||
use_collect2=yes
|
||
;;
|
||
i386-sequent-bsd*) # 80386 from Sequent
|
||
xm_file=xm-i386.h
|
||
use_collect2=yes
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=seq386gas.h
|
||
else
|
||
tm_file=seq386.h
|
||
fi
|
||
;;
|
||
i386-*-bsd*)
|
||
xm_file=xm-i386.h
|
||
tm_file=i386bsd.h
|
||
tmake_file=t-libc-ok
|
||
use_collect2=yes
|
||
;;
|
||
i386-*-mach*)
|
||
xm_file=xm-i386.h
|
||
tm_file=i386mach.h
|
||
tmake_file=t-libc-ok
|
||
use_collect2=yes
|
||
;;
|
||
i386-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
|
||
xm_file=xm-i386sco.h
|
||
tm_file=i386sco4.h
|
||
xmake_file=x-i386sco
|
||
tmake_file=t-i386sco
|
||
;;
|
||
i386-*-sco*) # 80386 running SCO system
|
||
xm_file=xm-i386sco.h
|
||
tm_file=i386sco.h
|
||
xmake_file=x-i386sco
|
||
tmake_file=t-i386sco
|
||
;;
|
||
i386-*-isc*) # 80386 running ISC system
|
||
xm_file=xm-i386isc.h
|
||
tm_file=i386isc.h
|
||
xmake_file=x-i386isc
|
||
tmake_file=t-i386isc
|
||
;;
|
||
i386-ibm-aix*) # IBM PS/2 running AIX
|
||
tm_file=aix386.h
|
||
xm_file=xm-aix386.h
|
||
xmake_file=x-aix386
|
||
broken_install=yes
|
||
;;
|
||
i386-sun-sunos*) # Sun i386 roadrunner
|
||
xm_file=xm-sun386.h
|
||
tm_file=i386sun.h
|
||
use_collect2=yes
|
||
;;
|
||
i386-*-sysv4*) # Intel 80386's running system V.4
|
||
xm_file=xm-i38v4.h
|
||
xmake_file=x-i386v4
|
||
tm_file=i386v4.h
|
||
tmake_file=t-svr4
|
||
;;
|
||
i386-*-sysv*) # Intel 80386's running system V
|
||
xm_file=xm-i386v.h
|
||
xmake_file=x-i386v
|
||
tmake_file=t-svr3
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=i386gas.h
|
||
else
|
||
tm_file=i386v.h
|
||
fi
|
||
;;
|
||
i486-ncr-sysv4*) # NCR 3000 - i486 running system V.4
|
||
cpu_type=i386
|
||
xm_file=xm-i38v4.h
|
||
xmake_file=x-ncr3000
|
||
tm_file=i486v4.h
|
||
tmake_file=t-svr4
|
||
;;
|
||
i486-*-sysv4*) # Intel 80486's running system V.4
|
||
cpu_type=i386
|
||
xm_file=xm-i38v4.h
|
||
xmake_file=x-i386v4
|
||
tm_file=i486v4.h
|
||
tmake_file=t-svr4
|
||
;;
|
||
i860-*-sysv3*)
|
||
xm_file=xm-i86v3.h
|
||
xmake_file=x-i860v3
|
||
tm_file=i860v3.h
|
||
tmake_file=t-svr3
|
||
;;
|
||
i860-*-sysv4*)
|
||
xm_file=xm-i86v4.h
|
||
xmake_file=x-i860v4
|
||
tm_file=i860v4.h
|
||
tmake_file=t-svr4
|
||
;;
|
||
i860-alliant-*) # Alliant FX/2800
|
||
xm_file=xm-fx2800.h
|
||
xmake_file=x-fx2800
|
||
tm_file=fx2800.h
|
||
tmake_file=t-fx2800
|
||
;;
|
||
i860-*-bsd*)
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=i860bg.h
|
||
else
|
||
tm_file=i860b.h
|
||
fi
|
||
use_collect2=yes
|
||
;;
|
||
sparc-tti-*)
|
||
tm_file=pbd.h
|
||
xm_file=xm-pbd.h
|
||
use_collect2=yes
|
||
;;
|
||
sparc-*-sunos4*)
|
||
tm_file=sparc.h
|
||
use_collect2=yes
|
||
;;
|
||
sparc-*-sunos3*)
|
||
tm_file=sun4o3.h
|
||
use_collect2=yes
|
||
;;
|
||
sparc-*-sysv4*)
|
||
xm_file=xm-spcv4.h
|
||
tm_file=sparcv4.h
|
||
tmake_file=t-svr4
|
||
xmake_file=x-sparcv4
|
||
;;
|
||
sparc-*-solaris2*)
|
||
xm_file=xm-spcv4.h
|
||
tm_file=spc-sol2.h
|
||
tmake_file=t-svr4
|
||
xmake_file=x-sparcv4
|
||
;;
|
||
m68k-*-amix*) # Commodore variant of V.4.
|
||
tm_file=amix.h
|
||
xm_file=xm-amix.h
|
||
xmake_file=x-amix
|
||
tmake_file=t-svr4
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-*-sysv4*) # Motorola m68k's running system V.4
|
||
tm_file=m68kv4.h
|
||
xm_file=xm-m68kv4.h
|
||
xmake_file=x-m68kv4
|
||
tmake_file=t-svr4
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-bull-sysv*) # Bull DPX/2
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=dpx2g.h
|
||
else
|
||
tm_file=dpx2.h
|
||
fi
|
||
xm_file=xm-m68kv.h
|
||
# is this cool ?
|
||
if [ -d /makesys/kernel/cf/ncl_mr ]; then
|
||
xmake_file=x-dpx2300
|
||
elif [ -d /makesys/kernel/cf/ncl_el ]; then
|
||
xmake_file=x-dpx2200
|
||
fi
|
||
xmake_file=${xmake_file:-x-dpx2300}
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-next-*)
|
||
tm_file=next.h
|
||
out_file=next.c
|
||
xm_file=xm-next.h
|
||
tmake_file=t-next
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-sun-sunos3*)
|
||
if [ x$nfp = xyes ]
|
||
then
|
||
tm_file=sun3n3.h
|
||
else
|
||
tm_file=sun3o3.h
|
||
fi
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-sun-sunos*) # For Sunos 4 (the default).
|
||
if [ x$nfp = xyes ]
|
||
then
|
||
tm_file=sun3n.h
|
||
else
|
||
tm_file=sun3.h
|
||
fi
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-sun-mach*)
|
||
tm_file=sun3mach.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-tti-*)
|
||
tm_file=pbb.h
|
||
xm_file=xm-m68kv.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-hp-hpux*) # HP 9000 series 300
|
||
xm_file=xm-hp320.h
|
||
if [ x$gas = xyes ]
|
||
then
|
||
xmake_file=x-hp320g
|
||
tm_file=hp320g.h
|
||
else
|
||
xmake_file=x-hp320
|
||
tm_file=hp320.h
|
||
fi
|
||
broken_install=yes
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
|
||
tm_file=hp3bsd.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-isi-bsd*)
|
||
if [ x$nfp = xyes ]
|
||
then
|
||
tm_file=isi-nfp.h
|
||
else
|
||
tm_file=isi.h
|
||
fi
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-sony-bsd*)
|
||
xm_file=xm-m68k.h
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=newsgas.h
|
||
else
|
||
tm_file=news.h
|
||
fi
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-altos-sysv*) # Altos 3068
|
||
if [ x$gas = xyes ]
|
||
then
|
||
xm_file=xm-altos3068.h
|
||
tm_file=altos3068.h
|
||
else
|
||
echo "The Altos is supported only with the GNU assembler" 1>&2
|
||
exit 1
|
||
fi
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-motorola-sysv*)
|
||
tm_file=mot3300.h
|
||
xm_file=xm-mot3300.h
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-crds-unos*)
|
||
xm_file=xm-crds.h
|
||
xmake_file=x-crds
|
||
tm_file=crds.h
|
||
broken_install=yes
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-apollo-*)
|
||
xmake_file=x-apollo68
|
||
tm_file=apollo68.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-ncr-sysv*) # NCR Tower 32 SVR3
|
||
tm_file=tower-as.h
|
||
xm_file=xm-tower.h
|
||
xmake_file=x-tower
|
||
tmake_file=t-svr3
|
||
header_files=math-68881.h
|
||
;;
|
||
m68k-*-sysv3*) # Motorola m68k's running system V.3
|
||
tm_file=m68k.h
|
||
xm_file=xm-m68kv.h
|
||
xmake_file=x-m68kv
|
||
tmake_file=t-svr3
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-sun-sunos3*)
|
||
cpu_type=m68k
|
||
tm_file=sun2.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-sun-sunos4*)
|
||
cpu_type=m68k
|
||
tm_file=sun2o4.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-hp-hpux*) # HP 9000 series 300
|
||
cpu_type=m68k
|
||
xm_file=xm-hp320.h
|
||
if [ x$gas = xyes ]
|
||
then
|
||
xmake_file=x-hp320g
|
||
tm_file=hp310g.h
|
||
else
|
||
xmake_file=x-hp320
|
||
tm_file=hp310.h
|
||
fi
|
||
broken_install=yes
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-hp-bsd*) # HP 9000/200 running BSD
|
||
cpu_type=m68k
|
||
tm_file=hp2bsd.h
|
||
xmake_file=x-hp2bsd
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-att-sysv*)
|
||
cpu_type=m68k
|
||
xm_file=xm-3b1.h
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=3b1g.h
|
||
else
|
||
tm_file=3b1.h
|
||
fi
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
m68000-convergent-sysv*)
|
||
cpu_type=m68k
|
||
xm_file=xm-3b1.h
|
||
tm_file=ctix.h
|
||
use_collect2=yes
|
||
header_files=math-68881.h
|
||
;;
|
||
ns32k-encore-osf*) # Encore with OSF/rose
|
||
tm_file=encrose.h
|
||
xmake_file=x-encrose
|
||
tmake_file=t-encrose
|
||
use_collect2=yes
|
||
;;
|
||
ns32k-sequent-bsd*)
|
||
tm_file=sequent.h
|
||
use_collect2=yes
|
||
;;
|
||
ns32k-encore-bsd*)
|
||
tm_file=encore.h
|
||
use_collect2=yes
|
||
;;
|
||
# This has not been updated to GCC 2.
|
||
# ns32k-ns-genix*)
|
||
# xm_file=xm-genix.h
|
||
# xmake_file=x-genix
|
||
# tm_file=genix.h
|
||
# use_collect2=yes
|
||
# ;;
|
||
ns32k-merlin-*)
|
||
tm_file=merlin.h
|
||
use_collect2=yes
|
||
;;
|
||
ns32k-pc532-mach*)
|
||
tm_file=pc532-mach.h
|
||
use_collect2=yes
|
||
;;
|
||
ns32k-pc532-minix*)
|
||
tm_file=pc532-min.h
|
||
xm_file=xm-pc532-min.h
|
||
use_collect2=yes
|
||
;;
|
||
m88k-*-luna*)
|
||
tm_file=m88kluna.h
|
||
tmake_file=t-m88kluna
|
||
;;
|
||
m88k-dg-dgux*)
|
||
tm_file=m88kdgux.h
|
||
xmake_file=x-m88kdgux
|
||
;;
|
||
m88k-*-sysv4*)
|
||
tm_file=m88kv4.h
|
||
xmake_file=x-m88kv4
|
||
tmake_file=t-m88kv4
|
||
;;
|
||
m88k-dolphin-sysv3*)
|
||
tm_file=m88kdolph.h
|
||
xm_file=xm-m88kv3.h
|
||
xmake_file=x-m88kdolph
|
||
;;
|
||
m88k-*-sysv3*)
|
||
tm_file=m88kv3.h
|
||
xm_file=xm-m88kv3.h
|
||
xmake_file=x-m88kv3
|
||
;;
|
||
# This hasn't been upgraded to GCC 2.
|
||
# fx80-alliant-*) # Alliant FX/80
|
||
# tm_file=fx80.h
|
||
# ;;
|
||
arm-*-*) # Acorn RISC machine
|
||
tm_file=arm.h
|
||
;;
|
||
c1-convex-*) # Convex C1
|
||
tm_file=convex1.h
|
||
cpu_type=convex
|
||
use_collect2=yes
|
||
;;
|
||
c2-convex-*) # Convex C2
|
||
tm_file=convex2.h
|
||
cpu_type=convex
|
||
use_collect2=yes
|
||
;;
|
||
c32-convex-*)
|
||
tm_file=convex32.h # Convex C32xx
|
||
cpu_type=convex
|
||
use_collect2=yes
|
||
;;
|
||
c34-convex-*)
|
||
tm_file=convex34.h # Convex C34xx
|
||
cpu_type=convex
|
||
use_collect2=yes
|
||
;;
|
||
c38-convex-*)
|
||
tm_file=convex38.h # Convex C38xx
|
||
cpu_type=convex
|
||
use_collect2=yes
|
||
;;
|
||
mips-sgi-irix4*) # Mostly like a MIPS.
|
||
tm_file=iris4.h
|
||
xm_file=xm-irix4.h
|
||
broken_install=yes
|
||
xmake_file=x-iris
|
||
use_collect2=yes
|
||
;;
|
||
mips-sgi-*) # Mostly like a MIPS.
|
||
tm_file=iris.h
|
||
xm_file=xm-iris.h
|
||
broken_install=yes
|
||
xmake_file=x-iris
|
||
use_collect2=yes
|
||
;;
|
||
mips-dec-ultrix*) # Decstation.
|
||
tm_file=decstatn.h
|
||
tmake_file=t-decstatn
|
||
xmake_file=x-decstatn
|
||
use_collect2=yes
|
||
;;
|
||
mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
|
||
tm_file=decrose.h
|
||
xmake_file=x-decrose
|
||
tmake_file=t-decrose
|
||
use_collect2=yes
|
||
;;
|
||
mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
|
||
tm_file=dec-osf1.h
|
||
xmake_file=x-mips
|
||
tmake_file=t-decstatn
|
||
use_collect2=yes
|
||
;;
|
||
mips-sony-bsd*) # Sony NEWS 3600 or risc/news.
|
||
tm_file=mips-news.h
|
||
xm_file=xm-mipsbsdn.h
|
||
use_collect2=yes
|
||
;;
|
||
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-n5.h
|
||
xm_file=xm-mipsnews.h
|
||
use_collect2=yes
|
||
;;
|
||
mips-*-bsd*) # BSD 4.3 variant of MIPS system.
|
||
tm_file=mips-bsd.h
|
||
use_collect2=yes
|
||
;;
|
||
mips-*-sysv4*) # MIPS System V.4.
|
||
tm_file=mips-svr4.h
|
||
xm_file=xm-umips.h
|
||
xmake_file=x-mipsv
|
||
use_collect2=yes
|
||
;;
|
||
mips-*-sysv*) # MIPS System V.
|
||
tm_file=mips-sysv.h
|
||
xm_file=xm-umips.h
|
||
xmake_file=x-mipsv
|
||
use_collect2=yes
|
||
;;
|
||
mips-mips-*) # Default MIPS environment.
|
||
tm_file=mips.h
|
||
use_collect2=yes
|
||
;;
|
||
pyramid-*-*)
|
||
cpu_type=pyr
|
||
tm_file=pyr.h
|
||
use_collect2=yes
|
||
;;
|
||
# This hasn't been upgraded to GCC 2.
|
||
# tron-*-*)
|
||
# cpu_type=gmicro
|
||
# tm_file=gmicro.h
|
||
# use_collect2=yes
|
||
# ;;
|
||
a29k-*-bsd*)
|
||
tm_file=a29kunix.h
|
||
xm_file=xm-a29kunix.h
|
||
xmake_file=x-a29kunix
|
||
use_collect2=yes
|
||
;;
|
||
a29k-*-*) # Default a29k environment.
|
||
use_collect2=yes
|
||
;;
|
||
romp-*-aos*)
|
||
xm_file=xm-romp.h
|
||
tm_file=romp.h
|
||
use_collect2=yes
|
||
;;
|
||
romp-*-mach*)
|
||
xm_file=xm-romp.h
|
||
tm_file=romp.h
|
||
xmake_file=x-romp-mach
|
||
use_collect2=yes
|
||
;;
|
||
rs6000-*-mach*)
|
||
xm_file=xm-rs6k-m.h
|
||
tm_file=rs6000-mach.h
|
||
xmake_file=x-rs6k-mach
|
||
use_collect2=yes
|
||
;;
|
||
rs6000-*)
|
||
xm_file=xm-rs6000.h
|
||
tm_file=rs6000.h
|
||
use_collect2=yes
|
||
;;
|
||
hppa1.1-*-bsd*)
|
||
cpu_type=pa
|
||
xm_file=xm-pa.h
|
||
tm_file=pa1.h
|
||
use_collect2=yes
|
||
;;
|
||
hppa1.0-*-bsd*)
|
||
cpu_type=pa
|
||
xm_file=xm-pa.h
|
||
tm_file=pa.h
|
||
use_collect2=yes
|
||
;;
|
||
hppa1.1-*-hpux*)
|
||
cpu_type=pa
|
||
xm_file=xm-pa.h
|
||
xmake_file=x-pa-hpux
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=pa1-ghpux.h
|
||
else
|
||
tm_file=pa1-hpux.h
|
||
fi
|
||
broken_install=yes
|
||
use_collect2=yes
|
||
;;
|
||
hppa1.0-*-hpux*)
|
||
cpu_type=pa
|
||
xm_file=xm-pa.h
|
||
xmake_file=x-pa-hpux
|
||
if [ x$gas = xyes ]
|
||
then
|
||
tm_file=pa-ghpux.h
|
||
else
|
||
tm_file=pa-hpux.h
|
||
fi
|
||
broken_install=yes
|
||
use_collect2=yes
|
||
;;
|
||
we32k-att-sysv*)
|
||
cpu_type=we32k
|
||
use_collect2=yes
|
||
;;
|
||
i960-*-*) # Default i960 environment.
|
||
use_collect2=yes
|
||
;;
|
||
*)
|
||
echo "Configuration $machine not recognized" 1>&2
|
||
exit 1
|
||
;;
|
||
esac
|
||
|
||
case $machine in
|
||
*-*-sysv4*)
|
||
xmake_try_sysv=x-sysv
|
||
;;
|
||
*-*-sysv*)
|
||
broken_install=yes
|
||
;;
|
||
esac
|
||
|
||
# No need for collect2 if we have the GNU linker.
|
||
case x$gnu_ld in
|
||
xyes)
|
||
use_collect2=
|
||
;;
|
||
esac
|
||
|
||
# Default certain vars that apply to both host and target in turn.
|
||
if [ x$cpu_type = x ]
|
||
then cpu_type=`echo $machine | sed 's/-.*$//'`
|
||
fi
|
||
|
||
# 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 host_xm_file=xm-$cpu_type.h
|
||
else host_xm_file=$xm_file
|
||
fi
|
||
if [ x$xmake_file = x ]
|
||
then xmake_file=x-$cpu_type
|
||
fi
|
||
host_xmake_file=$xmake_file
|
||
host_broken_install=$broken_install
|
||
pass1done=yes
|
||
fi
|
||
done
|
||
|
||
# Default the target-machine variables that were not explicitly set.
|
||
if [ x$tm_file = x ]
|
||
then tm_file=$cpu_type.h; fi
|
||
|
||
if [ x$header_files = x ]
|
||
then header_files=; fi
|
||
|
||
if [ x$xm_file = x ]
|
||
then xm_file=xm-$cpu_type.h; fi
|
||
|
||
md_file=${cpu_type}.md
|
||
|
||
if [ x$out_file = x ]
|
||
then out_file=$cpu_type.c; fi
|
||
|
||
if [ x$tmake_file = x ]
|
||
then tmake_file=t-$cpu_type
|
||
fi
|
||
|
||
|
||
# Set up the list of links to be made.
|
||
# $links is the list of link names, and $files is the list of names to link to.
|
||
files="$host_xm_file $tm_file $md_file $out_file $xm_file"
|
||
links="config.h tm.h md aux-output.c tconfig.h"
|
||
|
||
# Make the links.
|
||
while [ -n "$files" ]
|
||
do
|
||
# set file to car of files, files to cdr of files
|
||
set $files; file=$1; shift; files=$*
|
||
set $links; link=$1; shift; links=$*
|
||
|
||
if [ ! -r ${srcdir}/config/$file ]
|
||
then
|
||
echo "$progname: cannot create a link \`$link'," 1>&2
|
||
echo "since the file \`config/$file' does not exist" 1>&2
|
||
exit 1
|
||
fi
|
||
|
||
$remove -f $link
|
||
rm -f config.status
|
||
# Make a symlink if possible, otherwise try a hard link
|
||
$symbolic_link ${srcdir}/config/$file $link 2>/dev/null || $hard_link ${srcdir}/config/$file $link || $copy ${srcdir}/config/$file $link
|
||
|
||
if [ ! -r $link ]
|
||
then
|
||
echo "$progname: unable to link \`$link' to \`${srcdir}/config/$file'" 1>&2
|
||
exit 1
|
||
fi
|
||
echo "Linked \`$link' to \`${srcdir}/config/$file'"
|
||
done
|
||
|
||
# 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
|
||
.)
|
||
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
|
||
echo "source ${srcdir}/.gdbinit" >> .gdbinit
|
||
;;
|
||
esac
|
||
|
||
# Conditionalize the makefile for this host machine.
|
||
if [ -f ${srcdir}/config/${host_xmake_file} ]
|
||
then
|
||
rm -f Makefile.xx
|
||
sed -e "/####/ r ${srcdir}/config/${host_xmake_file}" Makefile.tem > Makefile.xx
|
||
echo "Merged ${host_xmake_file}."
|
||
rm -f Makefile.tem
|
||
mv Makefile.xx Makefile.tem
|
||
else
|
||
# Say in the makefile that there is no host_xmake_file,
|
||
# by using a name which (when interpreted relative to $srcdir/config)
|
||
# will duplicate another dependency: $srcdir/Makefile.in.
|
||
host_xmake_file=../Makefile.in
|
||
fi
|
||
|
||
# Add a definition for INSTALL if system wants one.
|
||
# This substitutes for lots of x-* files.
|
||
if [ x$host_broken_install = x ]
|
||
then true
|
||
else
|
||
rm -f Makefile.xx
|
||
sed 's|^INSTALL = .*|INSTALL = $(srcdir)/install.sh -c|' Makefile.tem > Makefile.xx
|
||
rm -f Makefile.tem
|
||
mv Makefile.xx Makefile.tem
|
||
fi
|
||
|
||
# Set EXTRA_HEADERS according to header_files.
|
||
# This substitutes for lots of t-* files.
|
||
if [ x$header_files = x ]
|
||
then true
|
||
else
|
||
rm -f Makefile.xx
|
||
sed "s/^EXTRA_HEADERS =/EXTRA_HEADERS = $header_files/" 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 true
|
||
else
|
||
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
|
||
|
||
# Conditionalize the makefile for this target machine.
|
||
if [ -f ${srcdir}/config/${tmake_file} ]
|
||
then
|
||
rm -f Makefile.xx
|
||
sed -e "/####/ r ${srcdir}/config/${tmake_file}" Makefile.tem > Makefile.xx
|
||
echo "Merged ${tmake_file}."
|
||
rm -f Makefile.tem
|
||
mv Makefile.xx Makefile.tem
|
||
else
|
||
# Say in the makefile that there is no tmake_file,
|
||
# by using a name which (when interpreted relative to $srcdir/config)
|
||
# will duplicate another dependency: $srcdir/Makefile.in.
|
||
tmake_file=../Makefile.in
|
||
fi
|
||
|
||
# Remove all formfeeds, since some Makes get confused by them.
|
||
# Also arrange to give the variables `target' and `host_xmake_file'
|
||
# and `tmake_file' the same values in the Makefile
|
||
# that they have in this script.
|
||
rm -f Makefile.xx
|
||
sed -e "s///" -e "s/^target=.*$/target=${target}/" \
|
||
-e "s|^xmake_file=.*$|xmake_file=${host_xmake_file}|" \
|
||
-e "s|^tmake_file=.*$|tmake_file=${tmake_file}|" \
|
||
Makefile.tem > Makefile.xx
|
||
rm -f Makefile.tem
|
||
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
|
||
rm -f Makefile
|
||
mv Makefile.tem Makefile
|
||
else
|
||
rm -f Makefile
|
||
echo "CROSS=-DCROSS_COMPILE" > Makefile
|
||
sed -e "/####/ r ${srcdir}/cross-make" Makefile.tem >> Makefile
|
||
rm -f Makefile.tem Makefile.xx
|
||
fi
|
||
|
||
echo "Created \`Makefile'."
|
||
|
||
if [ xx${vint} != xx ]
|
||
then
|
||
vintmsg =" (vint)"
|
||
fi
|
||
|
||
# Describe the chosen configuration in config.status.
|
||
# Make that file a shellscript which will reestablish the same configuration.
|
||
echo "#!/bin/sh
|
||
# GCC was configured as follows:
|
||
${srcdir}/configure" $arguments > config.status
|
||
chmod a+x config.status
|
||
|
||
if [ x$host = x$target ]
|
||
then
|
||
echo "Links are now set up for target $target."
|
||
else
|
||
echo "Links are now set up for host $host and target $target."
|
||
fi
|
||
|
||
exit 0
|