#!/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 ;; i386-*-linux*) # Intel 80386's running Linux xm_file=xm-linux.h xmake_file=x-i386linux tm_file=i386linux.h ;; 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