Ignore:
Timestamp:
Aug 16, 2003, 11:33:53 PM (22 years ago)
Author:
bird
Message:

Joined the port of 2.11.2 with 2.14.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/binutils/configure.in

    • Property cvs2svn:cvs-rev changed from 1.2 to 1.3
    r617 r618  
    1 #! /bin/bash
    2 ##############################################################################
    3 
    4 ## This file is a shell script fragment that supplies the information
    5 ## necessary to tailor a template configure script into the configure
    6 ## script appropriate for this directory.  For more information, check
    7 ## any existing configure script. 
    8 
    9 ## Be warned, there are two types of configure.in files.  There are those
    10 ## used by Autoconf, which are macros which are expanded into a configure
    11 ## script by autoconf.  The other sort, of which this is one, is executed
    12 ## by Cygnus configure. 
    13 
    14 ## For more information on these two systems, check out the documentation
    15 ## for 'Autoconf' (autoconf.texi) and 'Configure' (configure.texi). 
    16 
    17 #   Copyright (C) 1992-99, 2000 Free Software Foundation, Inc.
     1#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
     2#   1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
    183#
    194# This file is free software; you can redistribute it and/or modify it
     
    3217
    3318##############################################################################
     19### WARNING: this file contains embedded tabs.  Do not run untabify on this file.
     20
     21AC_INIT(move-if-change)
     22AC_PREREQ(2.13)
     23AC_CANONICAL_SYSTEM
     24AC_ARG_PROGRAM
     25
     26sinclude(config/acx.m4)
     27
     28### we might need to use some other shell than /bin/sh for running subshells
     29### If we are on Windows, search for the shell.  This will permit people
     30### to not have /bin/sh, but to be able to see /SOME/PATH/sh configure
     31### without also having to set CONFIG_SHELL.  This code will work when
     32### using bash, which sets OSTYPE.
     33case "${OSTYPE}" in
     34*win32*)
     35  if test x${CONFIG_SHELL} = x ; then
     36    if test ! -f /bin/sh ; then
     37      if test x${SHELL} != x && test -f ${SHELL} ; then
     38        CONFIG_SHELL=${SHELL}
     39        export CONFIG_SHELL
     40      else
     41        for prog in sh sh.exe bash bash.exe; do
     42          IFS="${IFS=   }"; save_ifs="$IFS"; IFS="${IFS}:"
     43          for dir in $PATH; do
     44            test -z "$dir" && dir=.
     45            if test -f $dir/$prog; then
     46              CONFIG_SHELL=$dir/$prog
     47              export CONFIG_SHELL
     48              break
     49            fi
     50          done
     51          IFS="$save_ifs"
     52          test -n "${CONFIG_SHELL}" && break
     53        done
     54      fi
     55    fi
     56  fi
     57  ;;
     58esac
     59
     60config_shell=${CONFIG_SHELL-/bin/sh}
     61
     62progname=$0
     63# if PWD already has a value, it is probably wrong.
     64if test -n "$PWD" ; then PWD=`${PWDCMD-pwd}`; fi
     65
     66# Export original configure arguments for use by sub-configures.
     67TOPLEVEL_CONFIGURE_ARGUMENTS="$progname $@"
     68AC_SUBST(TOPLEVEL_CONFIGURE_ARGUMENTS)
     69
     70moveifchange=${srcdir}/move-if-change
     71
     72# Set srcdir to "." if that's what it is.
     73# This is important for multilib support.
     74pwd=`${PWDCMD-pwd}`
     75srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
     76if test "${pwd}" = "${srcpwd}" ; then
     77  srcdir=.
     78fi
     79
     80topsrcdir=$srcpwd
     81
     82extra_host_args=
     83# Define the trigger file to make sure configure will re-run whenever
     84# the gcc version number changes.
     85if test "${with_gcc_version_trigger+set}" = set ; then
     86  gcc_version_trigger="$with_gcc_version_trigger"
     87  gcc_version=`grep version_string ${with_gcc_version_trigger} | sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/'`
     88else
     89  # If gcc's sources are available, define the trigger file.
     90  if test -f ${topsrcdir}/gcc/version.c ; then
     91    gcc_version_trigger=${topsrcdir}/gcc/version.c
     92    gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/'`
     93    case "$ac_configure_args" in
     94      *--with-gcc-version-trigger=$gcc_version_trigger* )
     95        ;;
     96      * )
     97        # Add to all subconfigure arguments: build, host, and target.
     98        ac_configure_args="$ac_configure_args --with-gcc-version-trigger=$gcc_version_trigger"
     99        ;;
     100    esac
     101  fi
     102fi
    34103
    35104### To add a new directory to the tree, first choose whether it is a target
    36105### or a host dependent tool.  Then put it into the appropriate list
    37 ### (library or tools, host or target), doing a dependency sort.  For
    38 ### example, gdb requires that byacc (or bison) be built first, so it is in
    39 ### the ${host_tools} list after byacc and bison. 
    40 
     106### (library or tools, host or target), doing a dependency sort.
     107
     108# Subdirs will be configured in the order listed in build_configdirs,
     109# configdirs, or target_configdirs; see the serialization section below.
     110
     111# Dependency sorting is only needed when *configuration* must be done in
     112# a particular order.  In all cases a dependency should be specified in
     113# the Makefile, whether or not it's implicitly specified here.
     114
     115# Double entries in build_configdirs, configdirs, or target_configdirs may
     116# cause circular dependencies and break everything horribly.
    41117
    42118# these libraries are used by various programs built for the host environment
    43119#
    44 host_libs="intl mmalloc libiberty opcodes bfd readline gash db tcl tk tcl8.1 tk8.1 tclX itcl tix libgui"
    45 
    46 if [ "${enable_gdbgui}" = "yes" ] ; then
    47         host_libs="${host_libs} libgui"
    48 fi
    49 
    50 # Set up configure/Makefile variables if libstdc++-v3 is to be built.
    51 if [ "${enable_libstdcxx_v3}" = "yes" ] && test -d $srcdir/libstdc++-v3; then
    52         libstdcxx_version="target-libstdc++-v3"
    53         # Don't use libstdc++-v3's flags to configure/build itself.
    54         libstdcxx_flags='`case $$dir in libstdc++-v3) ;; *) cat $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/libstdc++.INC 2>/dev/null || : ;; esac` -L$$r/$(TARGET_SUBDIR)/libstd++-v3/src -L$$r/$(TARGET_SUBDIR)/libstd++-v3/src/.libs'
    55 else
    56         libstdcxx_version="target-libio target-libstdc++"
    57         libstdcxx_flags='-isystem $$s/libstdc++ -isystem $$s/libstdc++/std -isystem $$s/libstdc++/stl -isystem $$s/libio/ -isystem $$s/libio/stdio -L$$r/$(TARGET_SUBDIR)/libstdc++'
    58 fi
     120host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib"
    59121
    60122# these tools are built for the host environment
    61123# Note, the powerpc-eabi build depends on sim occurring before gdb in order to
    62124# know that we are building the simulator.
    63 host_tools="byacc flex bison binutils ld gas gcc cgen sid sim gdb make patch prms send-pr gprof gdbtest tgas etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool ispell grep diff rcs cvssrc fileutils shellutils time textutils wdiff find emacs emacs19 uudecode hello tar gzip indent recode release sed utils guile perl apache inet gawk findutils snavigator libtool gettext zip"
     125# binutils, gas and ld appear in that order because it makes sense to run
     126# "make check" in that particular order.
     127host_tools="byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar"
     128
     129# libgcj represents the runtime libraries only used by gcj.
     130libgcj="target-libffi \
     131        target-boehm-gc \
     132        target-zlib \
     133        target-qthreads \
     134        target-libjava"
    64135
    65136# these libraries are built for the target environment, and are built after
     
    69140                target-libgloss \
    70141                target-newlib \
    71                 ${libstdcxx_version} \
     142                target-libstdc++-v3 \
    72143                target-libf2c \
    73                 target-libchill \
    74                 target-libffi \
    75                 target-libjava \
    76                 target-zlib \
    77                 target-boehm-gc \
    78                 target-qthreads \
     144                ${libgcj} \
    79145                target-libobjc"
    80146
     
    86152# candidates for the "native_only" list which follows
    87153#
    88 target_tools="target-examples target-groff target-gperf"
     154target_tools="target-examples target-groff target-gperf target-rda"
    89155
    90156################################################################################
    91 
    92 ## These two lists are of directories that are to be removed from the
    93 ## ${configdirs} list for either cross-compilations or for native-
    94 ## compilations.  For example, it doesn't make that much sense to
    95 ## cross-compile Emacs, nor is it terribly useful to compile target-libiberty in
    96 ## a native environment. 
    97 
    98 # directories to be built in the native environment only
    99 #
    100 # This must be a single line because of the way it is searched by grep in
    101 # the code below.
    102 native_only="autoconf automake libtool cvssrc emacs emacs19 fileutils find gawk gettext grep gzip hello indent ispell m4 rcs recode sed shellutils tar textutils gash uudecode wdiff gprof target-groff guile perl apache inet time ash bash bzip2 prms snavigator gnuserv target-gperf"
    103 
    104 # directories to be built in a cross environment only
    105 #
    106 cross_only="target-libgloss target-newlib target-cygmon target-opcodes target-libstub"
    107157
    108158## All tools belong in one of the four categories, and are assigned above
     
    117167################################################################################
    118168
    119 srctrigger=move-if-change
    120169srcname="gnu development package"
    121170
     
    123172appdirs=""
    124173
    125 # per-host:
     174# Define is_cross_compiler to save on calls to 'test'.
     175is_cross_compiler=
     176if test x"${host}" = x"${target}" ; then
     177  is_cross_compiler=no
     178else
     179  is_cross_compiler=yes
     180fi     
     181
     182# We always want to use the same name for this directory, so that dejagnu
     183# can reliably find it.
     184target_subdir=${target_alias}
     185
     186if test ! -d ${target_subdir} ; then
     187  if mkdir ${target_subdir} ; then true
     188  else
     189    echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${target_subdir}" 1>&2
     190    exit 1
     191  fi
     192fi
     193
     194build_prefix=build-
     195build_subdir=${build_prefix}${build_alias}
     196
     197if test x"${build_alias}" != x"${host}" ; then
     198  if test ! -d ${build_subdir} ; then
     199    if mkdir ${build_subdir} ; then true
     200    else
     201      echo "'*** could not make ${PWD=`${PWDCMD-pwd}`}/${build_subdir}" 1>&2
     202      exit 1
     203    fi
     204  fi
     205fi
     206
     207# Skipdirs are removed silently.
     208skipdirs=
     209# Noconfigdirs are removed loudly.
     210noconfigdirs=""
     211
     212use_gnu_ld=
     213# Make sure we don't let GNU ld be added if we didn't want it.
     214if test x$with_gnu_ld = xno ; then
     215  use_gnu_ld=no
     216  noconfigdirs="$noconfigdirs ld"
     217fi
     218
     219use_gnu_as=
     220# Make sure we don't let GNU as be added if we didn't want it.
     221if test x$with_gnu_as = xno ; then
     222  use_gnu_as=no
     223  noconfigdirs="$noconfigdirs gas"
     224fi
     225
     226# some tools are so dependent upon X11 that if we're not building with X,
     227# it's not even worth trying to configure, much less build, that tool.
     228
     229case ${with_x} in
     230  yes | "") ;; # the default value for this tree is that X11 is available
     231  no)
     232    skipdirs="${skipdirs} tk tix itcl libgui"
     233    # We won't be able to build gdbtk without X.
     234    enable_gdbtk=no
     235    ;;
     236  *)  echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2 ;;
     237esac
     238
     239# Some tools are only suitable for building in a "native" situation.
     240# Remove these if host!=target.
     241native_only="autoconf automake libtool fileutils find gawk gettext gzip hello indent m4 rcs recode sed shellutils tar textutils uudecode wdiff gprof target-groff guile perl time ash bash bzip2 prms gnuserv target-gperf"
     242
     243# Similarly, some are only suitable for cross toolchains.
     244# Remove these if host=target.
     245cross_only="target-libgloss target-newlib target-opcodes"
     246
     247case $is_cross_compiler in
     248  no) skipdirs="${skipdirs} ${cross_only}" ;;
     249  yes) skipdirs="${skipdirs} ${native_only}" ;;
     250esac
     251
     252# If both --with-headers and --with-libs are specified, default to
     253# --without-newlib.
     254if test x"${with_headers}" != x && test x"${with_libs}" != x ; then
     255  if test x"${with_newlib}" = x ; then
     256    with_newlib=no
     257  fi
     258fi
     259
     260# Recognize --with-newlib/--without-newlib.
     261case ${with_newlib} in
     262  no) skipdirs="${skipdirs} target-newlib" ;;
     263  yes) skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'` ;;
     264esac
     265
     266# Configure extra directories which are host specific
     267
     268case "${host}" in
     269  *-cygwin*)
     270    configdirs="$configdirs libtermcap" ;;
     271esac
     272
     273# Remove more programs from consideration, based on the host or
     274# target this usually means that a port of the program doesn't
     275# exist yet.
     276
     277case "${host}" in
     278  hppa*64*-*-*)
     279    noconfigdirs="$noconfigdirs byacc"
     280    ;;
     281  i[[3456]]86-*-vsta)
     282    noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl itcl tix gnuserv gettext"
     283    ;;
     284  i[[3456]]86-*-go32* | i[[3456]]86-*-msdosdjgpp*)
     285    noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile itcl tix gnuserv libffi"
     286    ;;
     287  i[[3456]]86-*-mingw32*)
     288    # noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl itcl tix gnuserv"
     289    noconfigdirs="expect dejagnu autoconf automake send-pr rcs guile perl texinfo libtool"
     290    ;;
     291  i[[3456]]86-*-beos*)
     292    noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
     293    ;;
     294  *-*-cygwin*)
     295    noconfigdirs="autoconf automake send-pr rcs guile perl"
     296    ;;
     297  *-*-netbsd*)
     298    noconfigdirs="rcs"
     299    ;;
     300  ppc*-*-pe)
     301    noconfigdirs="patch diff make tk tcl expect dejagnu autoconf automake texinfo bison send-pr gprof rcs guile perl itcl tix gnuserv"
     302    ;;
     303  powerpc-*-beos*)
     304    noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
     305    ;;
     306  *-*-darwin*)
     307    noconfigdirs="$noconfigdirs tk itcl tix libgui"
     308    ;;
     309esac
     310
     311# Save it here so that, even in case of --enable-libgcj, if the Java
     312# front-end isn't enabled, we still get libgcj disabled.
     313libgcj_saved=$libgcj
     314case $enable_libgcj in
     315yes)
     316  # If we reset it here, it won't get added to noconfigdirs in the
     317  # target-specific build rules, so it will be forcibly enabled
     318  # (unless the Java language itself isn't enabled).
     319  libgcj=
     320  ;;
     321no)
     322  # Make sure we get it printed in the list of not supported target libs.
     323  noconfigdirs="$noconfigdirs ${libgcj}"
     324  ;;
     325esac
     326
     327case "${target}" in
     328  *-*-chorusos)
     329    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     330    ;;
     331  *-*-darwin*)
     332    noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
     333    noconfigdirs="$noconfigdirs target-libobjc ${libgcj}"
     334    ;;
     335  *-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*)
     336    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     337    ;;
     338  *-*-kaos*)
     339    # Remove unsupported stuff on all kaOS configurations.
     340    skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-libf2c target-librx"
     341    skipdirs="$skipdirs target-libobjc target-examples target-groff target-gperf"
     342    skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc target-zlib"
     343    noconfigdirs="$noconfigdirs target-libgloss"
     344    ;;
     345  *-*-netbsd*)
     346    # Skip some stuff on all NetBSD configurations.
     347    noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss"
     348
     349    # Skip some stuff that's unsupported on some NetBSD configurations.
     350    case "${target}" in
     351      i*86-*-netbsdelf*) ;;
     352      arm*-*-netbsdelf*) ;;
     353      *)
     354        noconfigdirs="$noconfigdirs ${libgcj}"
     355        ;;
     356    esac
     357    ;;
     358  *-*-netware)
     359    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-newlib target-libiberty target-libgloss ${libgcj}"
     360    ;;
     361  *-*-rtems*)
     362    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     363    case ${target} in
     364        h8300*-*-* | h8500-*-*)
     365          noconfigdirs="$noconfigdirs target-libf2c"
     366          ;;
     367        *) ;;
     368    esac
     369    ;;
     370  *-*-vxworks*)
     371    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     372    ;;
     373  alpha*-dec-osf*)
     374    # ld works, but does not support shared libraries.
     375    # newlib is not 64 bit ready.  I'm not sure about fileutils.
     376    # gas doesn't generate exception information.
     377    noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss"
     378    ;;
     379  alpha*-*-*vms*)
     380    noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}"
     381    ;;
     382  alpha*-*-linux*)
     383    # newlib is not 64 bit ready
     384    noconfigdirs="$noconfigdirs target-newlib target-libgloss"
     385    ;;
     386  alpha*-*-freebsd*)
     387    noconfigdirs="$noconfigdirs target-newlib target-libgloss"
     388    ;;
     389  alpha*-*-*)
     390    # newlib is not 64 bit ready
     391    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     392    ;;
     393  sh-*-linux*)
     394    noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
     395    ;;
     396  sh*-*-pe|mips*-*-pe|*arm-wince-pe)
     397    noconfigdirs="$noconfigdirs ${libgcj}"
     398    noconfigdirs="$noconfigdirs target-examples"
     399    noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr"
     400    noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim"
     401    noconfigdirs="$noconfigdirs expect dejagnu"
     402    # the C++ libraries don't build on top of CE's C libraries
     403    noconfigdirs="$noconfigdirs target-libstdc++-v3"
     404    noconfigdirs="$noconfigdirs target-newlib"
     405    case "${host}" in
     406      *-*-cygwin*) ;; # keep gdb and readline
     407      *) noconfigdirs="$noconfigdirs gdb readline"
     408         ;;
     409    esac
     410    ;;
     411  arc-*-*)
     412    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     413    ;;
     414  arm-*-coff | strongarm-*-coff | xscale-*-coff)
     415    noconfigdirs="$noconfigdirs ${libgcj}"
     416    ;;
     417  arm-*-elf* | strongarm-*-elf* | xscale-*-elf*)
     418    noconfigdirs="$noconfigdirs target-libffi target-qthreads"
     419    ;;
     420  arm-*-pe*)
     421    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     422    ;;
     423  arm-*-oabi*)
     424    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     425    ;;
     426  thumb-*-coff)
     427    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     428    ;;
     429  thumb-*-elf)
     430    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     431    ;;
     432  thumb-*-oabi)
     433    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     434    ;;
     435  thumb-*-pe)
     436    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     437    ;;
     438  arm-*-riscix*)
     439    noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
     440    ;;
     441  avr-*-*)
     442    noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
     443    ;;
     444  c4x-*-* | tic4x-*-*)
     445    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
     446    ;;
     447  c54x*-*-* | tic54x-*-*)
     448    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} gcc gdb newlib"
     449    ;;
     450  cris-*-*)
     451    noconfigdirs="$noconfigdirs ${libgcj}"
     452    ;;
     453  d10v-*-*)
     454    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
     455    ;;
     456  d30v-*-*)
     457    noconfigdirs="$noconfigdirs ${libgcj}"
     458    ;;
     459  fr30-*-elf*)
     460    noconfigdirs="$noconfigdirs ${libgcj}"
     461    ;;
     462  frv-*-*)
     463    noconfigdirs="$noconfigdirs ${libgcj}"
     464    ;;
     465  h8300*-*-*)
     466    noconfigdirs="$noconfigdirs target-libgloss"
     467    ;;
     468  h8500-*-*)
     469    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} target-libf2c"
     470    ;;
     471  hppa*64*-*-linux* | parisc*64*-*-linux*)
     472    # In this case, it's because the hppa64-linux target is for
     473    # the kernel only at this point and has no libc, and thus no
     474    # headers, crt*.o, etc., all of which are needed by these.
     475    noconfigdirs="$noconfigdirs target-zlib"
     476    ;;
     477  hppa*-*-*elf* | \
     478  parisc*-*-linux* | hppa*-*-linux* | \
     479  hppa*-*-lites* | \
     480  hppa*-*-openbsd* | \
     481  hppa*64*-*-*)
     482    noconfigdirs="$noconfigdirs ${libgcj}"
     483    # Do configure ld/binutils/gas for this case.
     484    ;;
     485  hppa*-*-*)
     486    # According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
     487    # build on HP-UX 10.20.
     488    noconfigdirs="$noconfigdirs ld shellutils ${libgcj}"
     489    ;;
     490  ia64*-*-elf*)
     491    # No gdb support yet.
     492    noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
     493    ;;
     494  ia64*-**-hpux*)
     495    # No gdb or ld support yet.
     496    noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
     497    ;;
     498  i[[3456]]86-*-coff | i[[3456]]86-*-elf)
     499    noconfigdirs="$noconfigdirs ${libgcj}"
     500    ;;
     501  i[[34567]]86-*-freebsd*)
     502    noconfigdirs="$noconfigdirs target-newlib target-libgloss"
     503    ;;
     504  i[[3456]]86-*-linux*)
     505    # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
     506    # not build java stuff by default.
     507    case "${target}" in
     508      *-*-*libc1*)
     509        noconfigdirs="$noconfigdirs ${libgcj}";;
     510    esac
     511
     512    # This section makes it possible to build newlib natively on linux.
     513    # If we are using a cross compiler then don't configure newlib.
     514    if test x${is_cross_compiler} != xno ; then
     515      noconfigdirs="$noconfigdirs target-newlib"
     516    fi
     517    noconfigdirs="$noconfigdirs target-libgloss"
     518    # If we are not using a cross compiler, do configure newlib.
     519    # Note however, that newlib will only be configured in this situation
     520    # if the --with-newlib option has been given, because otherwise
     521    # 'target-newlib' will appear in skipdirs.
     522    ;;
     523  i[[3456]]86-*-mingw32*)
     524    target_configdirs="$target_configdirs target-mingw"
     525    noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}"
     526
     527    # Can't build gdb for mingw32 if not native.
     528    case "${host}" in
     529      i[[3456]]86-*-mingw32) ;; # keep gdb tcl tk expect etc.
     530      *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix gnuserv"
     531         ;;
     532    esac
     533    ;;
     534  *-*-cygwin*)
     535    target_configdirs="$target_configdirs target-libtermcap target-winsup"
     536    noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
     537    # always build newlib.
     538    skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
     539
     540    # Can't build gdb for Cygwin if not native.
     541    case "${host}" in
     542      *-*-cygwin*) ;; # keep gdb tcl tk expect etc.
     543      *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui gnuserv"
     544         ;;
     545    esac
     546    ;;
     547  i[[3456]]86-*-pe)
     548    noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
     549    ;;
     550  i[[3456]]86-*-sco3.2v5*)
     551    # The linker does not yet know about weak symbols in COFF,
     552    # and is not configured to handle mixed ELF and COFF.
     553    noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
     554    ;;
     555  i[[3456]]86-*-sco*)
     556    noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
     557    ;;
     558  i[[3456]]86-*-solaris2*)
     559    noconfigdirs="$noconfigdirs target-libgloss"
     560    ;;
     561  i[[3456]]86-*-sysv4*)
     562    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     563    ;;
     564  i[[3456]]86-*-beos*)
     565    noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
     566    ;;
     567  m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
     568    noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
     569    ;;
     570  m68k-*-elf*)
     571    noconfigdirs="$noconfigdirs ${libgcj}"
     572    ;;
     573  m68k-*-coff*)
     574    noconfigdirs="$noconfigdirs ${libgcj}"
     575    ;;
     576  mcore-*-pe*)
     577  # The EPOC C++ environment does not support exceptions or rtti,
     578  # and so building libstdc++-v3 tends not to always work.
     579    noconfigdirs="$noconfigdirs target-libstdc++-v3"
     580    ;;
     581  mmix-*-*)
     582    noconfigdirs="$noconfigdirs ${libgcj} gdb libgloss"
     583    ;;
     584  mn10200-*-*)
     585    noconfigdirs="$noconfigdirs ${libgcj}"
     586    ;;
     587  mn10300-*-*)
     588    noconfigdirs="$noconfigdirs ${libgcj}"
     589    ;;
     590  powerpc-*-aix*)
     591    # copied from rs6000-*-* entry
     592    noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
     593    ;;
     594  powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
     595    target_configdirs="$target_configdirs target-winsup"
     596    noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix gnuserv ${libgcj}"
     597    # always build newlib.
     598    skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
     599    ;;
     600    # This is temporary until we can link against shared libraries
     601  powerpcle-*-solaris*)
     602    noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix gnuserv ${libgcj}"
     603    ;;
     604  powerpc-*-beos*)
     605    noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
     606    ;;
     607  powerpc-*-eabi)
     608    noconfigdirs="$noconfigdirs ${libgcj}"
     609    ;;
     610  rs6000-*-lynxos*)
     611    noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}"
     612    ;;
     613  rs6000-*-aix*)
     614    noconfigdirs="$noconfigdirs gprof ${libgcj}"
     615    ;;
     616  rs6000-*-*)
     617    noconfigdirs="$noconfigdirs gprof ${libgcj}"
     618    ;;
     619  m68k-apollo-*)
     620    noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
     621    ;;
     622  mips*-*-irix5*)
     623    # The GNU linker does not support shared libraries.
     624    noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}"
     625    ;;
     626  mips*-*-irix6*)
     627    # Linking libjava exceeds command-line length limits on at least
     628    # IRIX 6.2, but not on IRIX 6.5.
     629    # Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham
     630    # <oldham@codesourcery.com>
     631    noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
     632    ;;
     633  mips*-dec-bsd*)
     634    noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
     635    ;;
     636  mips*-*-bsd*)
     637    noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
     638    ;;
     639  mipstx39-*-*)
     640    noconfigdirs="$noconfigdirs gprof ${libgcj}"   # same as generic mips
     641    ;;
     642  mips*-*-linux*)
     643    noconfigdirs="$noconfigdirs target-newlib target-libgloss"
     644    ;;
     645  mips*-*-*)
     646    noconfigdirs="$noconfigdirs gprof ${libgcj}"
     647    ;;
     648  romp-*-*)
     649    noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
     650    ;;
     651  sh-*-*)
     652    case "${host}" in
     653      i[[3456]]86-*-vsta) ;; # don't add gprof back in
     654      i[[3456]]86-*-go32*) ;; # don't add gprof back in
     655      i[[3456]]86-*-msdosdjgpp*) ;; # don't add gprof back in
     656      *) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
     657    esac
     658    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     659    ;;
     660  sh64-*-*)
     661    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     662    ;;
     663  sparc-*-elf*)
     664    noconfigdirs="$noconfigdirs ${libgcj}"
     665    ;;
     666  sparc64-*-elf*)
     667    noconfigdirs="$noconfigdirs ${libgcj}"
     668    ;;
     669  sparclite-*-*)
     670    noconfigdirs="$noconfigdirs ${libgcj}"
     671    ;;
     672  sparc-*-sunos4*)
     673    noconfigdirs="$noconfigdirs ${libgcj}"
     674    if test x${is_cross_compiler} != xno ; then
     675           noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
     676    else
     677           use_gnu_ld=no
     678    fi
     679    ;;
     680  sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
     681    ;;
     682  v810-*-*)
     683    noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}"
     684    ;;
     685  v850-*-*)
     686    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     687    ;;
     688  v850e-*-*)
     689    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     690    ;;
     691  v850ea-*-*)
     692    noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
     693    ;;
     694  vax-*-vms)
     695    noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
     696    ;;
     697  vax-*-*)
     698    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     699    ;;
     700  ip2k-*-*)
     701    noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
     702    ;;
     703  *-*-linux*)
     704    noconfigdirs="$noconfigdirs target-newlib target-libgloss"
     705    ;;
     706  *-*-lynxos*)
     707    noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
     708    ;;
     709  *-*-*)
     710    noconfigdirs="$noconfigdirs ${libgcj}"
     711    ;;
     712esac
     713
     714# If we aren't building newlib, then don't build libgloss, since libgloss
     715# depends upon some newlib header files.
     716case "${noconfigdirs}" in
     717  *target-libgloss*) ;;
     718  *target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
     719esac
     720
     721# Figure out what language subdirectories are present.
     722# Look if the user specified --enable-languages="..."; if not, use
     723# the environment variable $LANGUAGES if defined. $LANGUAGES might
     724# go away some day.
     725# NB:  embedded tabs in this IF block -- do not untabify
     726if test x"${enable_languages+set}" != xset; then
     727  if test x"${LANGUAGES+set}" = xset; then
     728    enable_languages="${LANGUAGES}"
     729      echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
     730  else
     731    enable_languages=all
     732  fi
     733else
     734  if test x"${enable_languages}" = x ||
     735     test x"${enable_languages}" = xyes;
     736     then
     737    echo configure.in: --enable-languages needs at least one language argument 1>&2
     738    exit 1
     739  fi
     740fi
     741enable_languages=`echo "${enable_languages}" | sed -e 's/[[     ,]][[   ,]]*/,/g' -e 's/,$//'`
     742
     743# First scan to see if an enabled language requires some other language.
     744# We assume that a given config-lang.in will list all the language
     745# front ends it requires, even if some are required indirectly.
     746for lang in ${srcdir}/gcc/*/config-lang.in ..
     747do
     748  case $lang in
     749    ..) ;;
     750    # The odd quoting in the next line works around
     751    # an apparent bug in bash 1.12 on linux.
     752    ${srcdir}/gcc/[[*]]/config-lang.in) ;;
     753    *)
     754      lang_alias=`sed -n -e 's,^language=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^language=\([[^  ]]*\).*$,\1,p' $lang`
     755      this_lang_requires=`sed -n -e 's,^lang_requires=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^lang_requires=\([[^        ]]*\).*$,\1,p' $lang`
     756      for other in $this_lang_requires
     757      do
     758        case ,${enable_languages}, in
     759          *,$other,*) ;;
     760          *,all,*) ;;
     761          *,$lang_alias,*)
     762            echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2
     763            enable_languages="$enable_languages,$other"
     764            ;;
     765        esac
     766      done
     767      ;;
     768  esac
     769done
     770
     771subdirs=
     772for lang in ${srcdir}/gcc/*/config-lang.in ..
     773do
     774  case $lang in
     775    ..) ;;
     776    # The odd quoting in the next line works around
     777    # an apparent bug in bash 1.12 on linux.
     778    ${srcdir}/gcc/[[*]]/config-lang.in) ;;
     779    *)
     780      lang_alias=`sed -n -e 's,^language=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^language=\([[^  ]]*\).*$,\1,p' $lang`
     781      this_lang_libs=`sed -n -e 's,^target_libs=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^target_libs=\([[^        ]]*\).*$,\1,p' $lang`
     782      this_lang_dirs=`sed -n -e 's,^lang_dirs=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^lang_dirs=\([[^    ]]*\).*$,\1,p' $lang`
     783      build_by_default=`sed -n -e 's,^build_by_default=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^build_by_default=\([[^    ]]*\).*$,\1,p' $lang`
     784      if test "x$lang_alias" = x
     785         then
     786        echo "$lang doesn't set \$language." 1>&2
     787        exit 1
     788      fi
     789      case ${build_by_default},${enable_languages}, in
     790        *,$lang_alias,*) add_this_lang=yes ;;
     791        no,*) add_this_lang=no ;;
     792        *,all,*) add_this_lang=yes ;;
     793        *) add_this_lang=no ;;
     794      esac
     795      if test x"${add_this_lang}" = xyes; then
     796        eval target_libs='"$target_libs "'\"$this_lang_libs\"
     797      else
     798        eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs $this_lang_dirs\"
     799      fi
     800      ;;
     801  esac
     802done
     803
     804# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
     805# $target_configdirs.
     806# If we have the source for $noconfigdirs entries, add them to $notsupp.
     807
     808notsupp=""
     809for dir in . $skipdirs $noconfigdirs ; do
     810  dirname=`echo $dir | sed -e s/target-//g`
     811  if test $dir != .  && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     812    configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
     813    if test -r $srcdir/$dirname/configure ; then
     814      if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     815        true
     816      else
     817        notsupp="$notsupp $dir"
     818      fi
     819    fi
     820  fi
     821  if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     822    target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
     823    if test -r $srcdir/$dirname/configure ; then
     824      if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     825        true
     826      else
     827        notsupp="$notsupp $dir"
     828      fi
     829    fi
     830  fi
     831done
     832
     833# Sometimes the tools are distributed with libiberty but with no other
     834# libraries.  In that case, we don't want to build target-libiberty.
     835if test -n "${target_configdirs}" ; then
     836  others=
     837  for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
     838    if test "$i" != "libiberty" ; then
     839      if test -r $srcdir/$i/configure ; then
     840        others=yes;
     841        break;
     842      fi
     843    fi
     844  done
     845  if test -z "${others}" ; then
     846    target_configdirs=
     847  fi
     848fi
     849
     850# Quietly strip out all directories which aren't configurable in this tree.
     851# This relies on all configurable subdirectories being autoconfiscated, which
     852# is now the case.
     853configdirs_all="$configdirs"
     854configdirs=
     855for i in ${configdirs_all} ; do
     856  if test -f ${srcdir}/$i/configure ; then
     857    configdirs="${configdirs} $i"
     858  fi
     859done
     860target_configdirs_all="$target_configdirs"
     861target_configdirs=
     862for i in ${target_configdirs_all} ; do
     863  j=`echo $i | sed -e s/target-//g`
     864  if test -f ${srcdir}/$j/configure ; then
     865    target_configdirs="${target_configdirs} $i"
     866  fi
     867done
     868
     869# Produce a warning message for the subdirs we can't configure.
     870# This isn't especially interesting in the Cygnus tree, but in the individual
     871# FSF releases, it's important to let people know when their machine isn't
     872# supported by the one or two programs in a package.
     873
     874if test -n "${notsupp}" && test -z "${norecursion}" ; then
     875  # If $appdirs is non-empty, at least one of those directories must still
     876  # be configured, or we error out.  (E.g., if the gas release supports a
     877  # specified target in some subdirs but not the gas subdir, we shouldn't
     878  # pretend that all is well.)
     879  if test -n "$appdirs" ; then
     880    for dir in $appdirs ; do
     881      if test -r $dir/Makefile.in ; then
     882        if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     883          appdirs=""
     884          break
     885        fi
     886        if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
     887          appdirs=""
     888          break
     889        fi
     890      fi
     891    done
     892    if test -n "$appdirs" ; then
     893      echo "*** This configuration is not supported by this package." 1>&2
     894      exit 1
     895    fi
     896  fi
     897  # Okay, some application will build, or we don't care to check.  Still
     898  # notify of subdirs not getting built.
     899  echo "*** This configuration is not supported in the following subdirectories:" 1>&2
     900  echo "    ${notsupp}" 1>&2
     901  echo "    (Any other directories should still work fine.)" 1>&2
     902fi
     903
     904case "$host" in
     905  *msdosdjgpp*)
     906    enable_gdbtk=no ;;
     907esac
     908
     909copy_dirs=
     910
     911# Handle --with-headers=XXX.  If the value is not "yes", the contents of
     912# the named directory are copied to $(tooldir)/sys-include.
     913if test x"${with_headers}" != x ; then
     914  if test x${is_cross_compiler} = xno ; then
     915    echo 1>&2 '***' --with-headers is only supported when cross compiling
     916    exit 1
     917  fi
     918  if test x"${with_headers}" != xyes ; then
     919    case "${exec_prefixoption}" in
     920    "") x=${prefix} ;;
     921    *) x=${exec_prefix} ;;
     922    esac
     923    copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
     924  fi
     925fi
     926
     927# Handle --with-libs=XXX.  If the value is not "yes", the contents of
     928# the name directories are copied to $(tooldir)/lib.  Multiple directories
     929# are permitted.
     930if test x"${with_libs}" != x ; then
     931  if test x${is_cross_compiler} = xno ; then
     932    echo 1>&2 '***' --with-libs is only supported when cross compiling
     933    exit 1
     934  fi
     935  if test x"${with_libs}" != xyes ; then
     936    # Copy the libraries in reverse order, so that files in the first named
     937    # library override files in subsequent libraries.
     938    case "${exec_prefixoption}" in
     939    "") x=${prefix} ;;
     940    *) x=${exec_prefix} ;;
     941    esac
     942    for l in ${with_libs}; do
     943      copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
     944    done
     945  fi
     946fi
     947
     948# Handle ${copy_dirs}
     949set fnord ${copy_dirs}
     950shift
     951while test $# != 0 ; do
     952  if test -f $2/COPIED && test x"`cat $2/COPIED`" = x"$1" ; then
     953    :
     954  else
     955    echo Copying $1 to $2
     956
     957    # Use the install script to create the directory and all required
     958    # parent directories.
     959    if test -d $2 ; then
     960      :
     961    else
     962      echo >config.temp
     963      ${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
     964    fi
     965
     966    # Copy the directory, assuming we have tar.
     967    # FIXME: Should we use B in the second tar?  Not all systems support it.
     968    (cd $1; tar -cf - .) | (cd $2; tar -xpf -)
     969
     970    # It is the responsibility of the user to correctly adjust all
     971    # symlinks.  If somebody can figure out how to handle them correctly
     972    # here, feel free to add the code.
     973
     974    echo $1 > $2/COPIED
     975  fi
     976  shift; shift
     977done
    126978
    127979# Work in distributions that contain no compiler tools, like Autoconf.
    128 if [ -d ${srcdir}/config ]; then
     980tentative_cc=""
     981host_makefile_frag=/dev/null
     982if test -d ${srcdir}/config ; then
    129983case "${host}" in
    130984  m68k-hp-hpux*)
    131     host_makefile_frag="${host_makefile_frag} config/mh-hp300"
     985    # Avoid "too much defining" errors from HPUX compiler.
     986    tentative_cc="cc -Wp,-H256000"
     987    # If "ar" in $PATH is GNU ar, the symbol table may need rebuilding.
     988    # If it's HP/UX ar, this should be harmless.
     989    RANLIB="ar ts"
    132990    ;;
    133991  m68k-apollo-sysv*)
    134     host_makefile_frag="${host_makefile_frag} config/mh-apollo68"
     992    tentative_cc="cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG"
    135993    ;;
    136994  m68k-apollo-bsd*)
    137     host_makefile_frag="${host_makefile_frag} config/mh-a68bsd"
     995    #None of the Apollo compilers can compile gas or binutils.  The preprocessor
     996    # chokes on bfd, the compiler won't let you assign integers to enums, and
     997    # other problems.  Defining CC to gcc is a questionable way to say "don't use
     998    # the apollo compiler" (the preferred version of GCC could be called cc,
     999    # or whatever), but I'm not sure leaving CC as cc is any better...
     1000    #CC=cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DNO_STDARG
     1001    # Used to have BISON=yacc.
     1002    tentative_cc=gcc
    1381003    ;;
    1391004  m88k-dg-dgux*)
    140     host_makefile_frag="${host_makefile_frag} config/mh-dgux"
     1005    tentative_cc="gcc -Wall -ansi -D__using_DGUX"
    1411006    ;;
    1421007  m88k-harris-cxux*)
    143     host_makefile_frag="${host_makefile_frag} config/mh-cxux"
     1008    # Under CX/UX, we want to tell the compiler to use ANSI mode.
     1009    tentative_cc="cc -Xa"
     1010    host_makefile_frag="config/mh-cxux"
    1441011    ;;
    1451012  m88k-motorola-sysv*)
    146     host_makefile_frag="${host_makefile_frag} config/mh-delta88"
    1471013    ;;
    1481014  mips*-dec-ultrix*)
    149     host_makefile_frag="${host_makefile_frag} config/mh-decstation"
     1015    tentative_cc="cc -Wf,-XNg1000"
     1016    host_makefile_frag="config/mh-decstation"
    1501017    ;;
    1511018  mips*-nec-sysv4*)
    152     host_makefile_frag="${host_makefile_frag} config/mh-necv4"
    153     ;;
    154   mips*-sgi-irix6*)
    155     host_makefile_frag="${host_makefile_frag} config/mh-irix6"
    156     ;;
    157   mips*-sgi-irix5*)
    158     host_makefile_frag="${host_makefile_frag} config/mh-irix5"
     1019    # The C compiler on NEC MIPS SVR4 needs bigger tables.
     1020    tentative_cc="cc -ZXNd=5000 -ZXNg=1000"
     1021    host_makefile_frag="config/mh-necv4"
    1591022    ;;
    1601023  mips*-sgi-irix4*)
    161     host_makefile_frag="${host_makefile_frag} config/mh-irix4"
    162     ;;
    163   mips*-sgi-irix3*)
    164     host_makefile_frag="${host_makefile_frag} config/mh-sysv"
     1024    # Tell compiler to use K&R C.  We can't compile under the SGI Ansi
     1025    # environment.  Also bump switch table size so that cp-parse will
     1026    # compile.  Bump string length limit so linker builds.
     1027    tentative_cc="cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192"
    1651028    ;;
    1661029  mips*-*-sysv4*)
    167     host_makefile_frag="${host_makefile_frag} config/mh-sysv4"
     1030    host_makefile_frag="config/mh-sysv4"
    1681031    ;;
    1691032  mips*-*-sysv*)
    170     host_makefile_frag="${host_makefile_frag} config/mh-riscos"
     1033    # This is for a MIPS running RISC/os 4.52C.
     1034
     1035    # This is needed for GDB, but needs to be in the top-level make because
     1036    # if a library is compiled with the bsd headers and gets linked with the
     1037    # sysv system libraries all hell can break loose (e.g. a jmp_buf might be
     1038    # a different size).
     1039    # ptrace(2) apparently has problems in the BSD environment.  No workaround is
     1040    # known except to select the sysv environment.  Could we use /proc instead?
     1041    # These "sysv environments" and "bsd environments" often end up being a pain.
     1042    #
     1043    # This is not part of CFLAGS because perhaps not all C compilers have this
     1044    # option.
     1045    tentative_cc="cc -systype sysv"
    1711046    ;;
    1721047  i370-ibm-opened*)
    173     host_makefile_frag="${host_makefile_frag} config/mh-openedition"
    174     ;;
    175   i[3456]86-*-sysv5*)
    176     host_makefile_frag="${host_makefile_frag} config/mh-sysv5"
    177     ;;
    178   i[3456]86-*-dgux*)
    179     host_makefile_frag="${host_makefile_frag} config/mh-dgux386"
    180     ;;
    181   i[3456]86-ncr-sysv4.3*)
    182     host_makefile_frag="${host_makefile_frag} config/mh-ncrsvr43"
    183     ;;
    184   i[3456]86-ncr-sysv4*)
    185     host_makefile_frag="${host_makefile_frag} config/mh-ncr3000"
    186     ;;
    187   i[3456]86-*-sco3.2v5*)
    188     host_makefile_frag="${host_makefile_frag} config/mh-sysv"
    189     ;;
    190   i[3456]86-*-sco*)
    191     host_makefile_frag="${host_makefile_frag} config/mh-sco"
    192     ;;
    193   i[3456]86-*-udk*)
    194     host_makefile_frag="${host_makefile_frag} config/mh-sysv5"
    195     ;;
    196   i[3456]86-*-isc*)
    197     host_makefile_frag="${host_makefile_frag} config/mh-sysv"
    198     ;;
    199   i[3456]86-*-solaris2*)
    200     host_makefile_frag="${host_makefile_frag} config/mh-sysv4"
    201     ;;
    202   i[3456]86-*-aix*)
    203     host_makefile_frag="${host_makefile_frag} config/mh-aix386"
    204     ;;
    205   i[3456]86-*-msdosdjgpp*)
    206     host_makefile_frag="${host_makefile_frag} config/mh-djgpp"
     1048    tentative_cc="c89"
     1049    ;;
     1050  i[[3456]]86-*-sysv5*)
     1051    host_makefile_frag="config/mh-sysv5"
     1052    ;;
     1053  i[[3456]]86-*-dgux*)
     1054    tentative_cc="gcc -Wall -ansi -D__using_DGUX"
     1055    host_makefile_frag="config/mh-dgux386"
     1056    ;;
     1057  i[[3456]]86-ncr-sysv4.3*)
     1058    # The MetaWare compiler will generate a copyright message unless you
     1059    # turn it off by adding the -Hnocopyr flag.
     1060    tentative_cc="cc -Hnocopyr"
     1061    ;;
     1062  i[[3456]]86-ncr-sysv4*)
     1063    # for an NCR 3000 (i486/SVR4) system.
     1064    # The NCR 3000 ships with a MetaWare compiler installed as /bin/cc.
     1065    # This compiler not only emits obnoxious copyright messages every time
     1066    # you run it, but it chokes and dies on a whole bunch of GNU source
     1067    # files.  Default to using the AT&T compiler installed in /usr/ccs/ATT/cc.
     1068    tentative_cc="/usr/ccs/ATT/cc"
     1069    host_makefile_frag="config/mh-ncr3000"
     1070    ;;
     1071  i[[3456]]86-*-sco3.2v5*)
     1072    ;;
     1073  i[[3456]]86-*-sco*)
     1074    # The native C compiler botches some simple uses of const.  Unfortunately,
     1075    # it doesn't defined anything like "__sco__" for us to test for in ansidecl.h.
     1076    tentative_cc="cc -Dconst="
     1077    host_makefile_frag="config/mh-sco"
     1078    ;;
     1079  i[[3456]]86-*-udk*)
     1080    host_makefile_frag="config/mh-sysv5"
     1081    ;;
     1082  i[[3456]]86-*-solaris2*)
     1083    host_makefile_frag="config/mh-sysv4"
     1084    ;;
     1085  i[[3456]]86-*-msdosdjgpp*)
     1086    host_makefile_frag="config/mh-djgpp"
     1087    ;;
     1088  i[3456]86-*-os2*)
     1089    host_makefile_frag="config/mh-emx"
    2071090    ;;
    2081091  *-cygwin*)
    209     host_makefile_frag="${host_makefile_frag} config/mh-cygwin"
     1092    host_makefile_frag="config/mh-cygwin"
    2101093    ;;
    2111094  *-mingw32*)
    212     host_makefile_frag="${host_makefile_frag} config/mh-mingw32"
     1095    host_makefile_frag="config/mh-mingw32"
    2131096    ;;
    2141097  *-interix*)
    215     host_makefile_frag="${host_makefile_frag} config/mh-interix"
    216     ;;
    217   *-windows*)
    218     host_makefile_frag="${host_makefile_frag} config/mh-windows"
    219     ;;
    220   i[3456]86-*-os2*)
    221     host_makefile_frag="${host_makefile_frag} config/mh-emx"
     1098    host_makefile_frag="config/mh-interix"
    2221099    ;;
    2231100  vax-*-ultrix2*)
    224     host_makefile_frag="${host_makefile_frag} config/mh-vaxult2"
     1101    # The old BSD pcc isn't up to compiling parts of gdb so use gcc
     1102    tentative_cc=gcc
    2251103    ;;
    2261104  *-*-solaris2*)
    227     host_makefile_frag="${host_makefile_frag} config/mh-solaris"
     1105    host_makefile_frag="config/mh-solaris"
    2281106    ;;
    2291107  m68k-sun-sunos*)
    230     host_makefile_frag="${host_makefile_frag} config/mh-sun3"
    231     ;;
    232   *-hp-hpux[78]*)
    233     host_makefile_frag="${host_makefile_frag} config/mh-hpux8"
     1108    # Sun's C compiler needs the -J flag to be able to compile cp-parse.c
     1109    # without overflowing the jump tables (-J says to use a 32 bit table)
     1110    tentative_cc="cc -J"
    2341111    ;;
    2351112  *-hp-hpux*)
    236     host_makefile_frag="${host_makefile_frag} config/mh-hpux"
     1113    tentative_cc="cc -Wp,-H256000"
    2371114    ;;
    2381115  *-*-hiux*)
    239     host_makefile_frag="${host_makefile_frag} config/mh-hpux"
     1116    tentative_cc="cc -Wp,-H256000"
    2401117    ;;
    2411118  rs6000-*-lynxos*)
    242     host_makefile_frag="${host_makefile_frag} config/mh-lynxrs6k"
     1119    # /bin/cc is less than useful for our purposes.  Always use GCC
     1120    tentative_cc="/usr/cygnus/progressive/bin/gcc"
     1121    host_makefile_frag="config/mh-lynxrs6k"
    2431122    ;;
    2441123  *-*-lynxos*)
    245     host_makefile_frag="${host_makefile_frag} config/mh-lynxos"
     1124    # /bin/cc is less than useful for our purposes.  Always use GCC
     1125    tentative_cc="/bin/gcc"
    2461126    ;;
    2471127  *-*-sysv4*)
    248     host_makefile_frag="${host_makefile_frag} config/mh-sysv4"
    249     ;;
    250   *-*-sysv*)
    251     host_makefile_frag="${host_makefile_frag} config/mh-sysv"
    252     ;;
    253 esac
    254 fi
     1128    host_makefile_frag="config/mh-sysv4"
     1129    ;;
     1130esac
     1131fi
     1132
     1133extra_arflags_for_target=
     1134extra_nmflags_for_target=
     1135extra_ranlibflags_for_target=
     1136target_makefile_frag=/dev/null
     1137case "${target}" in
     1138  i[[3456]]86-*-netware*)
     1139    target_makefile_frag="config/mt-netware"
     1140    ;;
     1141  powerpc-*-netware*)
     1142    target_makefile_frag="config/mt-netware"
     1143    ;;
     1144  *-*-linux*)
     1145    target_makefile_frag="config/mt-linux"
     1146    ;;
     1147  *-*-aix4.[[3456789]]* | *-*-aix[[56789]].*)
     1148    # nm and ar from AIX 4.3 and above require -X32_64 flag to all ar and nm
     1149    # commands to handle both 32-bit and 64-bit objects.  These flags are
     1150    # harmless if we're using GNU nm or ar.
     1151    extra_arflags_for_target=" -X32_64"
     1152    extra_nmflags_for_target=" -B -X32_64"
     1153    ;;
     1154  *-*-darwin*)
     1155    # ranlib from Darwin requires the -c flag to look at common symbols.
     1156    extra_ranlibflags_for_target=" -c"
     1157    ;;
     1158  mips*-*-pe | sh*-*-pe | *arm-wince-pe)
     1159    target_makefile_frag="config/mt-wince"
     1160    ;;
     1161esac
     1162
     1163alphaieee_frag=/dev/null
     1164case $target in
     1165  alpha*-*-*)
     1166    # This just makes sure to use the -mieee option to build target libs.
     1167    # This should probably be set individually by each library.
     1168    alphaieee_frag="config/mt-alphaieee"
     1169    ;;
     1170esac
     1171
     1172# If --enable-target-optspace always use -Os instead of -O2 to build
     1173# the target libraries, similarly if it is not specified, use -Os
     1174# on selected platforms.
     1175ospace_frag=/dev/null
     1176case "${enable_target_optspace}:${target}" in
     1177  yes:*)
     1178    ospace_frag="config/mt-ospace"
     1179    ;;
     1180  :d30v-*)
     1181    ospace_frag="config/mt-d30v"
     1182    ;;
     1183  :m32r-* | :d10v-* | :fr30-*)
     1184    ospace_frag="config/mt-ospace"
     1185    ;;
     1186  no:* | :*)
     1187    ;;
     1188  *)
     1189    echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
     1190    ;;
     1191esac
     1192
     1193# Set with_gnu_as and with_gnu_ld as appropriate.
     1194#
     1195# This is done by determining whether or not the appropriate directory
     1196# is available, and by checking whether or not specific configurations
     1197# have requested that this magic not happen.
     1198#
     1199# The command line options always override the explicit settings in
     1200# configure.in, and the settings in configure.in override this magic.
     1201#
     1202# If the default for a toolchain is to use GNU as and ld, and you don't
     1203# want to do that, then you should use the --without-gnu-as and
     1204# --without-gnu-ld options for the configure script.
     1205
     1206if test x${use_gnu_as} = x &&
     1207   echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
     1208  with_gnu_as=yes
     1209  extra_host_args="$extra_host_args --with-gnu-as"
     1210fi
     1211
     1212if test x${use_gnu_ld} = x &&
     1213   echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
     1214  with_gnu_ld=yes
     1215  extra_host_args="$extra_host_args --with-gnu-ld"
     1216fi
     1217
     1218# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
     1219# can detect this case.
     1220
     1221if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
     1222  with_newlib=yes
     1223  extra_host_args="$extra_host_args --with-newlib"
     1224fi
     1225
     1226
     1227# Default to using --with-stabs for certain targets.
     1228if test x${with_stabs} = x ; then
     1229  case "${target}" in
     1230  mips*-*-irix6*o32)
     1231    with_stabs=yes;
     1232    extra_host_args="${extra_host_args} --with-stabs"
     1233    ;;
     1234  mips*-*-irix6*)
     1235    ;;
     1236  mips*-*-* | alpha*-*-osf*)
     1237    with_stabs=yes;
     1238    extra_host_args="${extra_host_args} --with-stabs"
     1239    ;;
     1240  esac
     1241fi
     1242
     1243# hpux11 in 64bit mode has libraries in a weird place.  Arrange to find
     1244# them automatically.
     1245case "${host}" in
     1246  hppa*64*-*-hpux11*)   
     1247    extra_host_args="$extra_host_args -x-libraries=/usr/lib/pa20_64 -x-includes=/usr/X11R6/include"
     1248    ;;
     1249esac
    2551250
    2561251# If we aren't going to be using gcc, see if we can extract a definition
    2571252# of CC from the fragment.
    258 if [ -z "${CC}" ] && [ "${build}" = "${host}" ]; then
     1253# Actually, use the 'pre-extracted' version above.
     1254if test -z "${CC}" && test "${build}" = "${host}" ; then
    2591255  IFS="${IFS=   }"; save_ifs="$IFS"; IFS="${IFS}:"
    2601256  found=
     
    2671263  done
    2681264  IFS="$save_ifs"
    269   if [ -z "${found}" ] && [ -n "${host_makefile_frag}" ] && [ -f "${srcdir}/${host_makefile_frag}" ]; then
    270     xx=`sed -n -e 's/^[         ]*CC[   ]*=[    ]*\(.*\)$/\1/p' < ${srcdir}/${host_makefile_frag}`
    271     if [ -n "${xx}" ] ; then
    272       CC=$xx
     1265  if test -z "${found}" && test -n "${tentative_cc}" ; then
     1266    CC=$tentative_cc
     1267  fi
     1268fi
     1269
     1270# Some systems (e.g., one of the i386-aix systems the gas testers are
     1271# using) don't handle "\$" correctly, so don't use it here.
     1272tooldir='$(exec_prefix)'/${target_alias}
     1273build_tooldir=${tooldir}
     1274
     1275# Generate a default definition for YACC.  This is used if the makefile can't
     1276# locate bison or byacc in objdir.
     1277
     1278for prog in 'bison -y' byacc yacc
     1279do
     1280  set dummy $prog; tmp=$2
     1281  IFS="${IFS=   }"; save_ifs="$IFS"; IFS="${IFS}:"
     1282  for dir in $PATH; do
     1283    test -z "$dir" && dir=.
     1284    if test -f $dir/$tmp; then
     1285      DEFAULT_YACC="$prog"
     1286      break
    2731287    fi
    274   fi
    275 fi
    276 
    277 # We default to --with-shared on platforms where -fpic is meaningless.
    278 # Well, we don't yet, but we will.
    279 if false && [ "${host}" = "${target}" ] && [ x${enable_shared} = x ]; then
    280   case "${target}" in
    281     alpha*-dec-osf*)    enable_shared=yes ;;
    282     alpha*-*-linux*)    enable_shared=yes ;;
    283     mips-sgi-irix5*)    enable_shared=yes ;;
    284     *)                  enable_shared=no ;;
    285   esac
    286 fi
    287 
    288 case "${enable_shared}" in
    289   yes) shared=yes ;;
    290   no) shared=no ;;
    291   "") shared=no ;;
    292   *) shared=yes ;;
    293 esac
    294 
    295 if [ x${shared} = xyes ]; then
    296   case "${host}" in
    297     alpha*-*-linux*)
    298       host_makefile_frag="${host_makefile_frag} config/mh-elfalphapic"
    299       ;;
    300     arm*-*-*)
    301       host_makefile_frag="${host_makefile_frag} config/mh-armpic"
    302       ;;
    303     hppa*-*-*)
    304       host_makefile_frag="${host_makefile_frag} config/mh-papic"
    305       ;;
    306     i[3456]86-*-cygwin*)
    307       # We don't want -fPIC on Cygwin.
    308       ;;
    309     i[3456]86-*-*)
    310       host_makefile_frag="${host_makefile_frag} config/mh-x86pic"
    311       ;;
    312     i370-*-*)
    313       host_makefile_frag="${host_makefile_frag} config/mh-i370pic"
    314       ;;
    315     ia64-*-*)
    316       host_makefile_frag="${host_makefile_frag} config/mh-ia64pic"
    317       ;;
    318     sparc64-*-*)
    319       host_makefile_frag="${host_makefile_frag} config/mh-sparcpic"
    320       ;;
    321     powerpc*-*-aix*)
    322       # We don't want -fPIC on AIX.
    323       ;;
    324     powerpc*-*-*)
    325       host_makefile_frag="${host_makefile_frag} config/mh-ppcpic"
    326       ;;
    327     *-*-*)
    328       if test -f ${srcdir}/config/mh-${host_cpu}pic; then
    329         host_makefile_frag="${host_makefile_frag} config/mh-${host_cpu}pic"
     1288  done
     1289  IFS="$save_ifs"
     1290
     1291  test -n "$DEFAULT_YACC" && break
     1292done
     1293
     1294# Generate a default definition for M4.  This is used if the makefile can't
     1295# locate m4 in objdir.
     1296
     1297for prog in gm4 gnum4 m4
     1298do
     1299  set dummy $prog; tmp=$2
     1300  IFS="${IFS=   }"; save_ifs="$IFS"; IFS="${IFS}:"
     1301  for dir in $PATH; do
     1302    test -z "$dir" && dir=.
     1303    if test -f $dir/$tmp; then
     1304      DEFAULT_M4="$prog"
     1305      break
     1306    fi
     1307  done
     1308  IFS="$save_ifs"
     1309
     1310  test -n "$DEFAULT_M4" && break
     1311done
     1312
     1313# Generate a default definition for LEX.  This is used if the makefile can't
     1314# locate flex in objdir.
     1315
     1316for prog in flex lex
     1317do
     1318  set dummy $prog; tmp=$2
     1319  IFS="${IFS=   }"; save_ifs="$IFS"; IFS="${IFS}:"
     1320  for dir in $PATH; do
     1321    test -z "$dir" && dir=.
     1322    if test -f $dir/$tmp; then
     1323      DEFAULT_LEX="$prog"
     1324      break
     1325    fi
     1326  done
     1327  IFS="$save_ifs"
     1328
     1329  test -n "$DEFAULT_LEX" && break
     1330done
     1331
     1332if test "${build}" != "${host}" ; then
     1333  # If we are doing a Canadian Cross, in which the host and build systems
     1334  # are not the same, we set reasonable default values for the tools.
     1335
     1336  BISON=${BISON-bison}
     1337  CC=${CC-${host_alias}-gcc}
     1338  CFLAGS=${CFLAGS-"-g -O2"}
     1339  CXX=${CXX-${host_alias}-c++}
     1340  CXXFLAGS=${CXXFLAGS-"-g -O2"}
     1341  CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
     1342  CC_FOR_TARGET=${CC_FOR_TARGET-${target_alias}-gcc}
     1343  CXX_FOR_TARGET=${CXX_FOR_TARGET-${target_alias}-c++}
     1344  GCJ_FOR_TARGET=${GCJ_FOR_TARGET-${target_alias}-gcj}
     1345  GCC_FOR_TARGET=${GCC_FOR_TARGET-${CC_FOR_TARGET-${target_alias}-gcc}}
     1346  BUILD_PREFIX=${build_alias}-
     1347  BUILD_PREFIX_1=${build_alias}-
     1348  MAKEINFO=${MAKEINFO-makeinfo}
     1349
     1350  if test -z "${YACC}" ; then
     1351    IFS="${IFS=         }"; save_ifs="$IFS"; IFS="${IFS}:"
     1352    for dir in $PATH; do
     1353      test -z "$dir" && dir=.
     1354      if test -f $dir/bison; then
     1355        YACC="bison -y"
     1356        break
    3301357      fi
    331       ;;
    332   esac
    333 fi
    334 
    335 rm -f mh-frag
    336 if [ -n "${host_makefile_frag}" ] ; then
    337   for f in ${host_makefile_frag}
    338   do
    339     cat ${srcdir}/$f >> mh-frag
    340   done
    341   host_makefile_frag=mh-frag
    342 fi
    343 
    344 # per-target:
    345 
    346 case "${target}" in
    347   v810*)
    348     target_makefile_frag="${target_makefile_frag} config/mt-v810"
    349     ;;
    350   i[3456]86-*-netware*)
    351     target_makefile_frag="${target_makefile_frag} config/mt-netware"
    352     ;;
    353   powerpc-*-netware*)
    354     target_makefile_frag="${target_makefile_frag} config/mt-netware"
    355     ;;
    356   *-*-linux-gnu*)
    357     target_makefile_frag="${target_makefile_frag} config/mt-linux"
    358     ;;
    359   *-*-aix4.[3456789]* | *-*-aix[56789].*)
    360     target_makefile_frag="${target_makefile_frag} config/mt-aix43"
    361     ;;
    362   mips*-*-pe | sh*-*-pe | *arm-wince-pe)
    363     target_makefile_frag="${target_makefile_frag} config/mt-wince"
    364     ;;
    365 esac
    366 
    367 # If --enable-target-optspace always use -Os instead of -O2 to build
    368 # the target libraries, similarly if it is not specified, use -Os
    369 # on selected platforms.
    370 case "${enable_target_optspace}:${target}" in
    371   yes:*)
    372     target_makefile_frag="${target_makefile_frag} config/mt-ospace"
    373     ;;
    374   :d30v-*)
    375     target_makefile_frag="${target_makefile_frag} config/mt-d30v"
    376     ;;
    377   :m32r-* | :d10v-* | :fr30-*)
    378     target_makefile_frag="${target_makefile_frag} config/mt-ospace"
    379     ;;
    380   no:* | :*)
    381     ;;
    382   *)
    383     echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
    384     ;;
    385 esac
    386 
    387 skipdirs=
    388 gasdir=gas
    389 use_gnu_ld=
    390 use_gnu_as=
    391 
    392 # some tools are so dependent upon X11 that if we're not building with X,
    393 # it's not even worth trying to configure, much less build, that tool.
    394 
    395 case ${with_x} in
    396   yes | "")  # the default value for this tree is that X11 is available
    397         ;;
    398   no)
    399         skipdirs="${skipdirs} tk libgui gash"
    400         ;;
    401   *)
    402         echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2
    403         ;;
    404 esac
    405 
    406 # Some tools are only suitable for building in a "native" situation.
    407 # Those are added when we have a host==target configuration.  For cross
    408 # toolchains, we add some directories that should only be useful in a
    409 # cross-compiler.
    410 
    411 is_cross_compiler=
    412 
    413 if [ x"${host}" = x"${target}" ] ; then
    414         # when doing a native toolchain, don't build the targets
    415         # that are in the 'cross only' list
    416         skipdirs="${skipdirs} ${cross_only}"
    417         is_cross_compiler=no
     1358      if test -f $dir/byacc; then
     1359        YACC=byacc
     1360        break
     1361      fi
     1362      if test -f $dir/yacc; then
     1363        YACC=yacc
     1364        break
     1365      fi
     1366    done
     1367    IFS="$save_ifs"
     1368    if test -z "${YACC}" ; then
     1369      YACC="bison -y"
     1370    fi
     1371  fi
     1372
     1373  if test -z "${LEX}" ; then
     1374    IFS="${IFS=         }"; save_ifs="$IFS"; IFS="${IFS}:"
     1375    for dir in $PATH; do
     1376      test -z "$dir" && dir=.
     1377      if test -f $dir/flex; then
     1378        LEX=flex
     1379        break
     1380      fi
     1381      if test -f $dir/lex; then
     1382        LEX=lex
     1383        break
     1384      fi
     1385    done
     1386    IFS="$save_ifs"
     1387    LEX=${LEX-flex}
     1388  fi
     1389
    4181390else
    419         # similarly, don't build the targets in the 'native only'
    420         # list when building a cross compiler
    421         skipdirs="${skipdirs} ${native_only}"
    422         is_cross_compiler=yes
    423 fi     
    424 
    425 # We always want to use the same name for this directory, so that dejagnu
    426 # can reliably find it.
    427 target_subdir=${target_alias}
    428 
    429 if [ ! -d ${target_subdir} ] ; then
    430   if mkdir ${target_subdir} ; then true
     1391  # Set reasonable default values for some tools even if not Canadian.
     1392  # Of course, these are different reasonable default values, originally
     1393  # specified directly in the Makefile.
     1394  # We don't export, so that autoconf can do its job.
     1395  # Note that all these settings are above the fragment inclusion point
     1396  # in Makefile.in, so can still be overridden by fragments.
     1397  # This is all going to change when we autoconfiscate...
     1398
     1399  BISON="\$(USUAL_BISON)"
     1400  CC_FOR_BUILD="\$(CC)"
     1401  GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
     1402  BUILD_PREFIX=
     1403  BUILD_PREFIX_1=loser-
     1404  MAKEINFO="\$(USUAL_MAKEINFO)"
     1405  LEX="\$(USUAL_LEX)"
     1406  YACC="\$(USUAL_YACC)"
     1407
     1408  # If CC is still not set, try to get gcc.
     1409  cc_prog_is_gcc=
     1410  if test -z "${CC}" ; then
     1411    IFS="${IFS=         }"; save_ifs="$IFS"; IFS="${IFS}:"
     1412    for dir in $PATH; do
     1413      test -z "$dir" && dir=.
     1414      if test -f $dir/gcc; then
     1415        CC="gcc"
     1416        cc_prog_is_gcc=yes
     1417        echo 'void f(){}' > conftest.c
     1418        if test -z "`${CC} -g -c conftest.c 2>&1`"; then
     1419          CFLAGS=${CFLAGS-"-g -O2"}
     1420          CXXFLAGS=${CXXFLAGS-"-g -O2"}
     1421        else
     1422          CFLAGS=${CFLAGS-"-O2"}
     1423          CXXFLAGS=${CXXFLAGS-"-O2"}
     1424        fi
     1425        rm -f conftest*
     1426        break
     1427      fi
     1428    done
     1429    IFS="$save_ifs"
     1430    CC=${CC-cc}
    4311431  else
    432     echo "'*** could not make ${PWD=`pwd`}/${target_subdir}" 1>&2
    433     exit 1
    434   fi
    435 fi
    436 
    437 copy_dirs=
    438 
    439 # Handle --with-headers=XXX.  The contents of the named directory are
    440 # copied to $(tooldir)/sys-include.
    441 if [ x"${with_headers}" != x ]; then
    442   if [ x${is_cross_compiler} = xno ]; then
    443     echo 1>&2 '***' --with-headers is only supported when cross compiling
    444     exit 1
    445   fi
    446   case "${exec_prefixoption}" in
    447   "") x=${prefix} ;;
    448   *) x=${exec_prefix} ;;
    449   esac
    450   copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
    451 fi
    452 
    453 # Handle --with-libs=XXX.  Multiple directories are permitted.  The
    454 # contents are copied to $(tooldir)/lib.
    455 if [ x"${with_libs}" != x ]; then
    456   if [ x${is_cross_compiler} = xno ]; then
    457     echo 1>&2 '***' --with-libs is only supported when cross compiling
    458     exit 1
    459   fi
    460   # Copy the libraries in reverse order, so that files in the first named
    461   # library override files in subsequent libraries.
    462   case "${exec_prefixoption}" in
    463   "") x=${prefix} ;;
    464   *) x=${exec_prefix} ;;
    465   esac
    466   for l in ${with_libs}; do
    467     copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
    468   done
    469 fi
    470 
    471 # If both --with-headers and --with-libs are specified, default to
    472 # --without-newlib.
    473 if [ x"${with_headers}" != x ] && [ x"${with_libs}" != x ]; then
    474   if [ x"${with_newlib}" = x ]; then
    475     with_newlib=no
    476   fi
    477 fi
    478 
    479 # Recognize --with-newlib/--without-newlib.
    480 if [ x${with_newlib} = xno ]; then
    481   skipdirs="${skipdirs} target-newlib"
    482 elif [ x${with_newlib} = xyes ]; then
    483   skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
    484 fi
    485 
    486 # Default to using --with-stabs for certain targets.
    487 if [ x${with_stabs} = x ]; then
    488   case "${target}" in
    489   mips*-*-irix6*)
    490     ;;
    491   mips*-*-* | alpha*-*-osf*)
    492     with_stabs=yes;
    493     withoptions="${withoptions} --with-stabs"
    494     ;;
    495   esac
    496 fi
    497 
    498 # Handle ${copy_dirs}
    499 set fnord ${copy_dirs}
    500 shift
    501 while [ $# != 0 ]; do
    502   if [ -f $2/COPIED ] && [ x"`cat $2/COPIED`" = x"$1" ]; then
    503     :
    504   else
    505     echo Copying $1 to $2
    506 
    507     # Use the install script to create the directory and all required
    508     # parent directories.
    509     if [ -d $2 ]; then
    510       :
    511     else
    512       echo >config.temp
    513       ${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
     1432    # Determine if we are using gcc.
     1433    cat > conftest.c <<EOF
     1434#ifdef __GNUC__
     1435  yes;
     1436#endif
     1437EOF
     1438    if ${CC} -E conftest.c | grep yes >/dev/null 2>&1; then
     1439      cc_prog_is_gcc=yes
    5141440    fi
    515 
    516     # Copy the directory, assuming we have tar.
    517     # FIXME: Should we use B in the second tar?  Not all systems support it.
    518     (cd $1; tar -cf - .) | (cd $2; tar -xpf -)
    519 
    520     # It is the responsibility of the user to correctly adjust all
    521     # symlinks.  If somebody can figure out how to handle them correctly
    522     # here, feel free to add the code.
    523 
    524     echo $1 > $2/COPIED
    525   fi
    526   shift; shift
    527 done
    528 
    529 # Configure extra directories which are host specific
    530 
    531 case "${host}" in
    532         i[3456]86-*-go32*)
    533           configdirs="$configdirs dosrel" ;;
    534         i[3456]86-*-mingw32*)
    535           configdirs="$configdirs dosrel" ;;
    536         *-cygwin*)
    537           configdirs="$configdirs libtermcap dosrel" ;;
    538 esac
    539 
    540 # Remove more programs from consideration, based on the host or
    541 # target this usually means that a port of the program doesn't
    542 # exist yet.
    543 
    544 noconfigdirs=""
    545 
    546 case "${host}" in
    547   i[3456]86-*-vsta)
    548     noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext"
    549     ;;
    550   i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
    551     noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext libffi"
    552         ;;
    553   i[3456]86-*-mingw32*)
    554     # noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv"
    555      noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool"
    556         ;;
    557   i[3456]86-*-beos*)
    558      noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
    559      ;;
    560   *-*-cygwin*)
    561      noconfigdirs="autoconf automake send-pr rcs guile perl texinfo apache inet"
    562     ;;
    563   *-*-netbsd*)
    564     noconfigdirs="rcs"
    565     ;;
    566   ppc*-*-pe)
    567      noconfigdirs="patch diff make tk tcl expect dejagnu cvssrc autoconf automake texinfo bison send-pr gprof rcs guile perl apache inet itcl tix db snavigator gnuserv"
    568     ;;
    569   powerpc-*-beos*)
    570     noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
    571     ;;
    572 esac
    573 
    574 
    575 case "${target}" in
    576   *-*-netware)
    577     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss target-libffi"
    578     ;;
    579   *-*-rtems*)
    580     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    581     ;;
    582   *-*-vxworks*)
    583     noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
    584     ;;
    585   alpha*-dec-osf*)
    586     # ld works, but does not support shared libraries.  emacs doesn't
    587     # work.  newlib is not 64 bit ready.  I'm not sure about fileutils.
    588     # gas doesn't generate exception information.
    589     noconfigdirs="$noconfigdirs gas ld emacs fileutils target-newlib target-libgloss"
    590     ;;
    591   alpha*-*-*vms*)
    592     noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss target-libffi"
    593     ;;
    594   alpha*-*-*)
    595     # newlib is not 64 bit ready
    596     noconfigdirs="$noconfigdirs target-newlib target-libgloss"
    597     ;;
    598   sh*-*-pe|mips*-*-pe|*arm-wince-pe)
    599     noconfigdirs="$noconfigdirs target-libjava target-libffi target-zlib"
    600     noconfigdirs="$noconfigdirs target-boehm-gc target-qthreads target-examples"
    601     noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr"
    602     noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim"
    603     noconfigdirs="$noconfigdirs expect dejagnu"
    604     # the C++ libraries don't build on top of CE's C libraries
    605     noconfigdirs="$noconfigdirs ${libstdcxx_version}"
    606     skipdirs="$skipdirs target-newlib"
    607     case "${host}" in
    608       *-*-cygwin*) ;; # keep gdb and readline
    609       *) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version}"
    610          ;;
    611     esac
    612     ;;
    613   arc-*-*)
    614     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    615     ;;
    616   arm-*-pe*)
    617     noconfigdirs="$noconfigdirs target-libgloss"
    618     ;;
    619   arm-*-coff*)
    620     noconfigdirs="$noconfigdirs target-libgloss"
    621     if [ x${is_cross_compiler} != xno ] ; then
    622            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    623     fi
    624     ;;
    625   arm-*-elf*)
    626     noconfigdirs="$noconfigdirs target-libgloss"
    627     if [ x${is_cross_compiler} != xno ] ; then
    628            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    629     fi
    630     ;;
    631   arm-*-oabi*)
    632     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    633     ;;
    634   thumb-*-coff)
    635     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    636     ;;
    637   thumb-*-elf)
    638     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    639     ;;
    640   thumb-*-oabi)
    641     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    642     ;;
    643   strongarm-*-elf)
    644     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    645     if [ x${is_cross_compiler} != xno ] ; then
    646            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    647     fi
    648     ;;
    649   strongarm-*-coff)
    650     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    651     if [ x${is_cross_compiler} != xno ] ; then
    652            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    653     fi
    654     ;;
    655   xscale-*-elf)
    656     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    657     if [ x${is_cross_compiler} != xno ] ; then
    658            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    659     fi
    660     ;;
    661   xscale-*-coff)
    662     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    663     if [ x${is_cross_compiler} != xno ] ; then
    664            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    665     fi
    666     ;;
    667   thumb-*-pe)
    668     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    669     ;;
    670   arm-*-riscix*)
    671     noconfigdirs="$noconfigdirs ld target-libgloss target-libffi"
    672     ;;
    673   c4x-*-*)
    674     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi"
    675     ;;
    676   c54x*-*-* | tic54x-*-*)
    677     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi gcc gdb newlib"
    678     ;;
    679   d10v-*-*)
    680     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi"
    681     ;;
    682   d30v-*-*)
    683     ;;
    684   fr30-*-elf*)
    685     if [ x${is_cross_compiler} != xno ] ; then
    686            target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
    687     fi
    688     ;;
    689   h8300*-*-* | \
    690   h8500-*-*)
    691     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi"
    692     ;;
    693   hppa*-*-*elf* | \
    694   hppa*-*-linux-gnu* | \
    695   hppa*-*-lites* | \
    696   hppa*64*-*-*)
    697     # Do configure ld/binutils/gas for this case.
    698     ;;
    699   hppa*-*-*)
    700     # HP's C compiler doesn't handle Emacs correctly (but on BSD and Mach
    701     # cc is gcc, and on any system a user should be able to link cc to
    702     # whatever they want.  FIXME, emacs emacs19).
    703     case "${CC}" in
    704         "" | cc*) noconfigdirs="$noconfigdirs emacs emacs19" ;;
    705         *) ;;
    706     esac
    707     noconfigdirs="$noconfigdirs ld shellutils"
    708     ;;
    709   ia64*-*-elf*)
    710     # No gdb support yet.
    711     noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb"
    712     ;;
    713   i[3456]86-*-coff | i[3456]86-*-elf)
    714     if [ x${is_cross_compiler} != xno ] ; then
    715          target_configdirs="${target_configdirs} target-libstub target-cygmon"
    716     fi
    717     ;;
    718   i[3456]86-*-go32* | i[3456]-*-msdosdjgpp*)
    719     # but don't build gdb
    720     noconfigdirs="$noconfigdirs gdb ${libstdcxx_version} target-libffi"
    721     ;;
    722   i[3456]86-*-mingw32*)
    723     target_configdirs="$target_configdirs target-mingw"
    724     noconfigdirs="$noconfigdirs expect target-libgloss target-libffi"
    725 
    726     # Can't build gdb for mingw32 if not native.
    727     case "${host}" in
    728       i[3456]86-*-mingw32) ;; # keep gdb tcl tk expect etc.
    729       *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix db snavigator gnuserv"
    730          ;;
    731     esac
    732     ;;   
    733   *-*-cygwin*)
    734     target_configdirs="$target_configdirs target-libtermcap target-winsup"
    735     noconfigdirs="$noconfigdirs target-gperf target-libgloss target-libffi"
    736     # always build newlib.
    737     skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
    738 
    739     # Can't build gdb for Cygwin if not native.
    740     case "${host}" in
    741       *-*-cygwin*) ;; # keep gdb tcl tk expect etc.
    742       *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv"
    743          ;;
    744     esac
    745     ;;   
    746   i[3456]86-*-pe)
    747     noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi"
    748     ;;
    749   i[3456]86-*-sco3.2v5*)
    750     # The linker does not yet know about weak symbols in COFF,
    751     # and is not configured to handle mixed ELF and COFF.
    752     noconfigdirs="$noconfigdirs ld target-libgloss target-libffi"
    753     ;;
    754   i[3456]86-*-sco*)
    755     noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
    756     ;;
    757   i[3456]86-*-solaris2*)
    758     noconfigdirs="$noconfigdirs target-libgloss"
    759     ;;
    760   i[3456]86-*-sysv4*)
    761     # The SYSV4 C compiler doesn't handle Emacs correctly
    762     case "${CC}" in
    763         "" | cc*) noconfigdirs="$noconfigdirs emacs emacs19" ;;
    764         *) ;;
    765     esac
    766     # but that's okay since emacs doesn't work anyway
    767     noconfigdirs="$noconfigdirs emacs emacs19 target-libgloss target-libffi"
    768     ;;
    769   i[3456]86-*-beos*)
    770      noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
    771      ;;
    772  m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
    773     noconfigdirs="$noconfigdirs target-libiberty target-librx target-libg++ target-libstdc++ target-libio target-libf2c target-libchill target-zlib target-libobjc"
    774     ;;
    775  m68k-*-elf*)
    776     if [ x${is_cross_compiler} != xno ] ; then
    777            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    778     fi
    779     ;;
    780   m68k-*-coff*)
    781     if [ x${is_cross_compiler} != xno ] ; then
    782            target_configdirs="${target_configdirs} target-bsp target-cygmon"
    783     fi
    784     ;;
    785   mn10200-*-*)
    786     noconfigdirs="$noconfigdirs target-libffi"
    787     if [ x${is_cross_compiler} != xno ] ; then
    788            target_configdirs="${target_configdirs} target-libstub target-cygmon"
    789     fi
    790     ;;
    791   mn10300-*-*)
    792     noconfigdirs="$noconfigdirs target-libffi"
    793     if [ x${is_cross_compiler} != xno ] ; then
    794            target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
    795     fi
    796     ;;
    797   powerpc-*-aix*)
    798     # copied from rs6000-*-* entry
    799     # The configure and build of ld are currently disabled because
    800     # GNU ld is known to be broken for AIX 4.2 and 4.3 (at least)
    801     # The symptom is that GDBtk 4.18 fails at startup with a segfault
    802     # if linked by GNU ld, but not if linked by the native ld.
    803     noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss target-libffi ld"
    804     use_gnu_ld=no
    805     ;;
    806   powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
    807     target_configdirs="$target_configdirs target-winsup"
    808     noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix db snavigator gnuserv target-libffi"
    809     # always build newlib.
    810     skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
    811     ;;
    812     # This is temporary until we can link against shared libraries
    813   powerpcle-*-solaris*)
    814     noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv target-libffi"
    815     ;;
    816   powerpc-*-beos*)
    817     noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
    818     ;;
    819   powerpc-*-eabi)
    820     if [ x${is_cross_compiler} != xno ] ; then
    821            target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
    822     fi
    823     ;;
    824   rs6000-*-lynxos*)
    825     # The CVS server code doesn't work on the RS/6000
    826     noconfigdirs="$noconfigdirs target-newlib gprof cvssrc target-libffi"
    827     ;;
    828   rs6000-*-aix*)
    829     # The configure and build of ld are currently disabled because
    830     # GNU ld is known to be broken for AIX 4.2 and 4.3 (at least)
    831     # The symptom is that GDBtk 4.18 fails at startup with a segfault
    832     # if linked by GNU ld, but not if linked by the native ld.
    833     noconfigdirs="$noconfigdirs gprof target-libffi ld"
    834     use_gnu_ld=no
    835     ;;
    836   rs6000-*-*)
    837     noconfigdirs="$noconfigdirs gprof target-libffi"
    838     ;;
    839   m68k-apollo-*)
    840     noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss target-libffi"
    841     ;;
    842   mips*-*-irix5*)
    843     # The GNU linker does not support shared libraries.
    844     # emacs is emacs 18, which does not work on Irix 5 (emacs19 does work)
    845     noconfigdirs="$noconfigdirs ld gprof emacs target-libgloss"
    846     ;;
    847   mips*-*-irix6*)
    848     # The GNU assembler does not support IRIX 6.
    849     # emacs is emacs 18, which does not work on Irix 5 (emacs19 does work)
    850     noconfigdirs="$noconfigdirs gas gprof emacs target-libgloss"
    851     ;;
    852   mips*-dec-bsd*)
    853     noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
    854     ;;
    855   mips*-*-bsd*)
    856     noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
    857     ;;
    858   mipstx39-*-*)
    859     noconfigdirs="$noconfigdirs gprof target-libffi"   # same as generic mips
    860     target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
    861    ;;
    862   mips*-*-*)
    863     noconfigdirs="$noconfigdirs gprof target-libffi"
    864     ;;
    865   romp-*-*)
    866     noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss target-libffi"
    867     ;;
    868   sh-*-*)
    869     case "${host}" in
    870       i[3456]86-*-vsta) ;; # don't add gprof back in
    871       i[3456]86-*-go32*) ;; # don't add gprof back in
    872       i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in
    873       *) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
    874     esac
    875     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    876     ;;
    877   sparc-*-elf*)
    878     if [ x${is_cross_compiler} != xno ] ; then
    879            target_configdirs="${target_configdirs} target-libstub target-cygmon"
    880     fi
    881     ;;
    882   sparc64-*-elf*)
    883     if [ x${is_cross_compiler} != xno ] ; then
    884            target_configdirs="${target_configdirs} target-libstub target-cygmon"
    885     fi
    886     noconfigdirs="target-libffi"
    887     ;;
    888   sparclite-*-*)
    889     if [ x${is_cross_compiler} != xno ] ; then
    890            target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
    891     fi
    892     noconfigdirs="target-libffi"
    893     ;;
    894   sparc-*-sunos4*)
    895     if [ x${is_cross_compiler} != xno ] ; then
    896            noconfigdirs="$noconfigdirs gdb gdbtest target-newlib target-libgloss"
    897     else
    898            use_gnu_ld=no
    899     fi
    900     ;;
    901   v810-*-*)
    902     noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss target-libffi"
    903     ;;
    904   v850-*-*)
    905     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    906     ;;
    907   v850e-*-*)
    908     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    909     ;;
    910   v850ea-*-*)
    911     noconfigdirs="$noconfigdirs target-libgloss target-libffi"
    912     ;;
    913   vax-*-vms)
    914     noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss target-libffi"
    915     ;;
    916   vax-*-*)
    917     noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
    918     ;;
    919   *-*-lynxos*)
    920     noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
    921     ;;
    922   *-*-macos* | \
    923   *-*-mpw*)
    924     # Macs want a resource compiler.
    925     configdirs="$configdirs grez"
    926     noconfigdirs="target-libffi"
    927     ;;   
    928 esac
    929 
    930 # If we aren't building newlib, then don't build libgloss, since libgloss
    931 # depends upon some newlib header files.
    932 case "${noconfigdirs}" in
    933   *target-libgloss*) ;;
    934   *target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
    935 esac
    936 
    937 # Make sure we don't let GNU ld be added if we didn't want it.
    938 if [ x$with_gnu_ld = xno ]; then
    939   use_gnu_ld=no
    940   noconfigdirs="$noconfigdirs ld"
    941 fi
    942 
    943 # Make sure we don't let GNU as be added if we didn't want it.
    944 if [ x$with_gnu_as = xno ]; then
    945   use_gnu_as=no
    946   noconfigdirs="$noconfigdirs gas"
    947 fi
    948 
    949 # Figure out what language subdirectories are present.
    950 # Look if the user specified --enable-languages="..."; if not, use
    951 # the environment variable $LANGUAGES if defined. $LANGUAGES might
    952 # go away some day.
    953 if test x"${enable_languages+set}" != xset; then
    954         if test x"${LANGUAGES+set}" = xset; then
    955                 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
     1441    rm -f conftest.c
     1442    if test -z "${CFLAGS}"; then
     1443      # Here CC is set but CFLAGS is not.  Use a quick hack to use -O2 if CC
     1444      # is set to a version of gcc.
     1445      if test "$cc_prog_is_gcc" = yes; then
     1446        echo 'void f(){}' > conftest.c
     1447        if test -z "`${CC} -g -c conftest.c 2>&1`"; then
     1448          CFLAGS=${CFLAGS-"-g -O2"}
     1449          CXXFLAGS=${CXXFLAGS-"-g -O2"}
    9561450        else
    957                 enable_languages=all
     1451          CFLAGS=${CFLAGS-"-O2"}
     1452          CXXFLAGS=${CXXFLAGS-"-O2"}
    9581453        fi
    959 else
    960         if test x"${enable_languages}" = x; then
    961                 echo configure.in: --enable-languages needs at least one argument 1>&2
    962                 exit 1
    963         fi
    964 fi
    965 subdirs=
    966 for lang in ${srcdir}/gcc/*/config-lang.in ..
    967 do
    968         case $lang in
    969         ..) ;;
    970         # The odd quoting in the next line works around
    971         # an apparent bug in bash 1.12 on linux.
    972         ${srcdir}/gcc/[*]/config-lang.in) ;;
    973         *)
    974           lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^   ]*\).*$,\1,p' $lang`
    975           this_lang_libs=`sed -n -e 's,^target_libs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^target_libs=\([^         ]*\).*$,\1,p' $lang`
    976           build_by_default=`sed -n -e 's,^build_by_default=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^build_by_default=\([^     ]*\).*$,\1,p' $lang`
    977           if test "x$lang_alias" = x
    978           then
    979                 echo "$lang doesn't set \$language." 1>&2
    980                 exit 1
    981           fi
    982           case ${build_by_default},${enable_languages}, in
    983           *,$lang_alias,*) add_this_lang=yes ;;
    984           no,*) add_this_lang=no ;;
    985           *,all,*) add_this_lang=yes ;;
    986           *) add_this_lang=no ;;
    987           esac
    988           if test x"${add_this_lang}" = xyes; then
    989               eval target_libs='"$target_libs "'\"$this_lang_libs\"
    990           else
    991               eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs\"
    992           fi
    993           ;;
    994         esac
    995 done
    996 
    997 
    998 # Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
    999 # $target_configdirs.
    1000 # If we have the source for $noconfigdirs entries, add them to $notsupp.
    1001 
    1002 notsupp=""
    1003 for dir in . $skipdirs $noconfigdirs ; do
    1004   dirname=`echo $dir | sed -e s/target-//g`
    1005   if [ $dir != . ]  && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1006     configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
    1007     if [ -r $srcdir/$dirname/configure ] \
    1008         || [ -r $srcdir/$dirname/configure.in ]; then
    1009       if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1010         true
    1011       else
    1012         notsupp="$notsupp $dir"
     1454        rm -f conftest*
    10131455      fi
    10141456    fi
    10151457  fi
    1016   if [ $dir != . ]  && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1017     target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
    1018     if [ -r $srcdir/$dirname/configure ] \
    1019         || [ -r $srcdir/$dirname/configure.in ]; then
    1020       if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1021         true
    1022       else
    1023         notsupp="$notsupp $dir"
    1024       fi
     1458
     1459  # We must set the default linker to the linker used by gcc for the correct
     1460  # operation of libtool.  If LD is not defined and we are using gcc, try to
     1461  # set the LD default to the ld used by gcc.
     1462  if test -z "$LD"; then
     1463    if test "$cc_prog_is_gcc" = yes; then
     1464      case $build in
     1465      *-*-mingw*)
     1466        gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'` ;;
     1467      *)
     1468        gcc_prog_ld=`$CC -print-prog-name=ld 2>&1` ;;
     1469      esac
     1470      case $gcc_prog_ld in
     1471      # Accept absolute paths.
     1472      [[\\/]* | [A-Za-z]:[\\/]*)]
     1473        LD="$gcc_prog_ld" ;;
     1474      esac
    10251475    fi
    10261476  fi
     1477
     1478  CXX=${CXX-"c++"}
     1479  CFLAGS=${CFLAGS-"-g"}
     1480  CXXFLAGS=${CXXFLAGS-"-g -O2"}
     1481fi
     1482
     1483# FIXME Should this be done recursively ??? (Useful for e.g. gdbtest)
     1484# Set up the list of links to be made.
     1485# ${links} is the list of link names, and ${files} is the list of names to link to.
     1486
     1487# Make the links.
     1488configlinks="${links}"
     1489if test -r ./config.status  ; then
     1490  mv -f ./config.status ./config.back
     1491fi
     1492while test -n "${files}" ; do
     1493  # set file to car of files, files to cdr of files
     1494  set ${files}; file=$1; shift; files=$*
     1495  set ${links}; link=$1; shift; links=$*
     1496
     1497  if test ! -r ${srcdir}/${file} ; then
     1498    if test ! -r ${file} ; then
     1499      echo '***' "${progname}: cannot create a link \"${link}\"," 1>&2
     1500      echo '***' "since the file \"${srcdir}/${file}\" does not exist." 1>&2
     1501      exit 1
     1502    else
     1503      srcfile=${file}
     1504    fi
     1505  else
     1506    srcfile=${srcdir}/${file}
     1507  fi
     1508
     1509  ${remove} -f ${link}
     1510  # Make a symlink if possible, otherwise try a hard link
     1511  if ${symbolic_link} ${srcfile} ${link} >/dev/null 2>&1 ; then
     1512    true
     1513  else
     1514    # We need to re-remove the file because Lynx leaves a
     1515    # very strange directory there when it fails an NFS symlink.
     1516    ${remove} -r -f ${link}
     1517    ${hard_link} ${srcfile} ${link}
     1518  fi
     1519  if test ! -r ${link} ; then
     1520    echo '***' "${progname}: unable to link \"${link}\" to \"${srcfile}\"." 1>&2
     1521    exit 1
     1522  fi
     1523
     1524  echo "Linked \"${link}\" to \"${srcfile}\"."
    10271525done
    10281526
    1029 # Sometimes the tools are distributed with libiberty but with no other
    1030 # libraries.  In that case, we don't want to build target-libiberty.
    1031 if [ -n "${target_configdirs}" ]; then
    1032   others=
    1033   for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
    1034     if [ "$i" != "libiberty" ]; then
    1035       if [ -r $srcdir/$i/configure ] || [ -r $srcdir/$i/configure.in ]; then
    1036         others=yes;
    1037         break;
    1038       fi
    1039     fi
    1040   done
    1041   if [ -z "${others}" ]; then
    1042     target_configdirs=
    1043   fi
    1044 fi
    1045 
    1046 # Deconfigure all subdirectories, in case we are changing the
    1047 # configuration from one where a subdirectory is supported to one where it
    1048 # is not.
    1049 if [ -z "${norecursion}" ] && [ -n "${configdirs}" ]; then
    1050   for i in `echo ${configdirs} | sed -e s/target-//g` ; do
    1051     rm -f $i/Makefile
    1052   done
    1053 fi
    1054 if [ -z "${norecursion}" ] && [ -n "${target_configdirs}" ]; then
    1055   for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
    1056     rm -f ${target_subdir}/$i/Makefile
    1057   done
    1058 fi
    1059 
    1060 # Produce a warning message for the subdirs we can't configure.
    1061 # This isn't especially interesting in the Cygnus tree, but in the individual
    1062 # FSF releases, it's important to let people know when their machine isn't
    1063 # supported by the one or two programs in a package.
    1064 
    1065 if [ -n "${notsupp}" ] && [ -z "${norecursion}" ]; then
    1066   # If $appdirs is non-empty, at least one of those directories must still
    1067   # be configured, or we error out.  (E.g., if the gas release supports a
    1068   # specified target in some subdirs but not the gas subdir, we shouldn't
    1069   # pretend that all is well.)
    1070   if [ -n "$appdirs" ]; then
    1071     for dir in $appdirs ; do
    1072       if [ -r $dir/Makefile.in ]; then
    1073         if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1074           appdirs=""
    1075           break
    1076         fi
    1077         if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
    1078           appdirs=""
    1079           break
    1080         fi
    1081       fi
    1082     done
    1083     if [ -n "$appdirs" ]; then
    1084       echo "*** This configuration is not supported by this package." 1>&2
    1085       exit 1
    1086     fi
    1087   fi
    1088   # Okay, some application will build, or we don't care to check.  Still
    1089   # notify of subdirs not getting built.
    1090   echo "*** This configuration is not supported in the following subdirectories:" 1>&2
    1091   echo "    ${notsupp}" 1>&2
    1092   echo "    (Any other directories should still work fine.)" 1>&2
    1093 fi
    1094 
    1095 # Set with_gnu_as and with_gnu_ld as appropriate.
    1096 #
    1097 # This is done by determining whether or not the appropriate directory
    1098 # is available, and by checking whether or not specific configurations
    1099 # have requested that this magic not happen.
    1100 #
    1101 # The command line options always override the explicit settings in
    1102 # configure.in, and the settings in configure.in override this magic.
    1103 #
    1104 # If the default for a toolchain is to use GNU as and ld, and you don't
    1105 # want to do that, then you should use the --without-gnu-as and
    1106 # --without-gnu-ld options for the configure script.
    1107 
    1108 if [ x${use_gnu_as} = x ] ; then
    1109   if [ x${with_gnu_as} != xno ] && echo " ${configdirs} " | grep " ${gasdir} " > /dev/null 2>&1 && [ -d ${srcdir}/${gasdir} ] ; then
    1110     with_gnu_as=yes
    1111     withoptions="$withoptions --with-gnu-as"
    1112   fi
    1113 fi
    1114 
    1115 if [ x${use_gnu_ld} = x ] ; then
    1116   if [ x${with_gnu_ld} != xno ] && echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 && [ -d ${srcdir}/ld ] ; then
    1117     with_gnu_ld=yes
    1118     withoptions="$withoptions --with-gnu-ld"
    1119   fi
    1120 fi
    1121 
    1122 # If using newlib, add --with-newlib to the withoptions so that gcc/configure
    1123 # can detect this case.
    1124 
    1125 if [ x${with_newlib} != xno ] && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 && [ -d ${srcdir}/newlib ] ; then
    1126   with_newlib=yes
    1127   withoptions="$withoptions --with-newlib"
    1128 fi
    1129 
    1130 if [ x${shared} = xyes ]; then
    1131   case "${target}" in
    1132     hppa*)
    1133       target_makefile_frag="${target_makefile_frag} config/mt-papic"
    1134       ;;
    1135     i[3456]86-*)
    1136       target_makefile_frag="${target_makefile_frag} config/mt-x86pic"
    1137       ;;
    1138     ia64-*)
    1139       target_makefile_frag="${target_makefile_frag} config/mt-ia64pic"
    1140       ;;
    1141     powerpc*-*-aix*)
    1142       # We don't want -fPIC on AIX.
    1143       ;;
    1144     powerpc*-*)
    1145       target_makefile_frag="${target_makefile_frag} config/mt-ppcpic"
    1146       ;;
    1147     alpha*-*-linux*)
    1148       target_makefile_frag="${target_makefile_frag} config/mt-elfalphapic"
    1149       ;;
    1150     *)
    1151       if test -f ${srcdir}/config/mt-${target_cpu}pic; then
    1152         target_makefile_frag="${target_makefile_frag} config/mt-${target_cpu}pic"
    1153       fi
    1154       ;;
     1527# Create a .gdbinit file which runs the one in srcdir
     1528# and tells GDB to look there for source files.
     1529
     1530if test -r ${srcdir}/.gdbinit ; then
     1531  case ${srcdir} in
     1532    .) ;;
     1533    *) cat > ./.gdbinit <<EOF
     1534# ${NO_EDIT}
     1535dir ${srcdir}
     1536dir .
     1537source ${srcdir}/.gdbinit
     1538EOF
     1539    ;;
    11551540  esac
    11561541fi
    1157 
    1158 rm -f mt-frag
    1159 if [ -n "${target_makefile_frag}" ] ; then
    1160   for f in ${target_makefile_frag}
    1161   do
    1162     cat ${srcdir}/$f >> mt-frag
    1163   done
    1164   target_makefile_frag=mt-frag
    1165 fi
    1166 
    1167 # post-target:
    11681542
    11691543# Make sure that the compiler is able to generate an executable.  If it
     
    11711545# executable--we might be using a cross compiler--we only care whether it
    11721546# can be created.  At this point the main configure script has set CC.
     1547we_are_ok=no
    11731548echo "int main () { return 0; }" > conftest.c
    11741549${CC} -o conftest ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} conftest.c
    1175 if [ $? = 0 ] && [ -s conftest -o -s conftest.exe ]; then
    1176   :
    1177 else
    1178   echo 1>&2 "*** The command '${CC} -o conftest ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} conftest.c' failed."
    1179   echo 1>&2 "*** You must set the environment variable CC to a working compiler."
    1180   rm -f conftest*
    1181   exit 1
    1182 fi
     1550if test $? = 0 ; then
     1551  if test -s conftest || test -s conftest.exe ; then
     1552    we_are_ok=yes
     1553  fi
     1554fi
     1555case $we_are_ok in
     1556  no)
     1557    echo 1>&2 "*** The command '${CC} -o conftest ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} conftest.c' failed."
     1558    echo 1>&2 "*** You must set the environment variable CC to a working compiler."
     1559    rm -f conftest*
     1560    exit 1
     1561    ;;
     1562esac
    11831563rm -f conftest*
    11841564
     
    11871567  sparc-sun-solaris2*)
    11881568      CCBASE="`echo ${CC-cc} | sed 's/ .*$//'`"
    1189       if [ "`/usr/bin/which $CCBASE`" = "/usr/ucb/cc" ] ; then
     1569      if test "`type $CCBASE | sed 's/^[[^/]]*//'`" = "/usr/ucb/cc" ; then
    11901570          could_use=
    1191           [ -d /opt/SUNWspro/bin ] && could_use="/opt/SUNWspro/bin"
    1192           if [ -d /opt/cygnus/bin ] ; then
    1193               if [ "$could_use" = "" ] ; then
     1571          test -d /opt/SUNWspro/bin && could_use="/opt/SUNWspro/bin"
     1572          if test -d /opt/cygnus/bin ; then
     1573              if test "$could_use" = "" ; then
    11941574                  could_use="/opt/cygnus/bin"
    11951575              else
     
    11971577              fi
    11981578          fi
    1199         if [ "$could_use" = "" ] ; then
     1579        if test "$could_use" = "" ; then
    12001580            echo "Warning: compilation may fail because you're using"
    12011581            echo "/usr/ucb/cc.  You should change your PATH or CC "
     
    12131593# If --enable-shared was set, we must set LD_LIBRARY_PATH so that the
    12141594# binutils tools will find libbfd.so.
    1215 if [ "${shared}" = "yes" ]; then
    1216   sed -e 's/^SET_LIB_PATH[      ]*=.*$/SET_LIB_PATH = $(REALLY_SET_LIB_PATH)/' \
    1217       Makefile > Makefile.tem
    1218   rm -f Makefile
    1219   mv -f Makefile.tem Makefile
    1220 
    1221   case "${host}" in
    1222   *-*-hpux*)
    1223     sed -e 's/^RPATH_ENVVAR[    ]*=.*$/RPATH_ENVVAR = SHLIB_PATH/' \
    1224         Makefile > Makefile.tem
    1225     rm -f Makefile
    1226     mv -f Makefile.tem Makefile
    1227     ;;
     1595case "${enable_shared}" in
     1596  no | "") SET_LIB_PATH= ;;
     1597  *) SET_LIB_PATH="\$(REALLY_SET_LIB_PATH)" ;;
     1598esac
     1599
     1600case "${host}" in
     1601  *-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;;
     1602  *) RPATH_ENVVAR=LD_LIBRARY_PATH ;;
     1603esac
     1604
     1605# Record target_configdirs and the configure arguments for target and
     1606# build configuration in Makefile.
     1607target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
     1608
     1609# This is the final value for target_configdirs.  configdirs already
     1610# has its final value.  It's time to create some lists of valid targets.
     1611
     1612# While at that, we remove Makefiles if we were started for recursive
     1613# configuration, such that the top-level Makefile reconfigures them,
     1614# like we used to do when configure itself was recursive.
     1615
     1616all_build_modules=
     1617configure_build_modules=
     1618# Only make build modules if build != host.
     1619# This should be done more generally, but at the moment it doesn't matter.
     1620if test ${host_alias} != ${build_alias} ; then
     1621  for module in libiberty ; do
     1622    all_build_modules=all-build-${module}
     1623    configure_build_modules=configure-build-${module}
     1624    if test -z "${no_recursion}" \
     1625       && test -f ${build_subdir}/${module}/Makefile; then
     1626      echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure"
     1627      rm -f ${build_subdir}/${module}/Makefile
     1628    fi
     1629  done
     1630fi
     1631
     1632all_host_modules=
     1633check_host_modules=
     1634install_host_modules=
     1635configure_host_modules=
     1636for module in ${configdirs} ; do
     1637  all_host_modules="${all_host_modules} all-${module}"
     1638  check_host_modules="${check_host_modules} check-${module}"
     1639  install_host_modules="${install_host_modules} install-${module}"
     1640  configure_host_modules="${configure_host_modules} configure-${module}"
     1641  if test -z "${no_recursion}" \
     1642     && test -f ${module}/Makefile; then
     1643    echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
     1644    rm -f ${module}/Makefile
     1645  fi
     1646done
     1647install_host_modules_nogcc=`echo "${install_host_modules}" | sed -e 's/install-gcc//g'`
     1648
     1649all_target_modules=
     1650check_target_modules=
     1651install_target_modules=
     1652configure_target_modules=
     1653for module in ${target_configdirs} ; do
     1654  all_target_modules="${all_target_modules} all-target-${module}"
     1655  check_target_modules="${check_target_modules} check-target-${module}"
     1656  install_target_modules="${install_target_modules} install-target-${module}"
     1657  configure_target_modules="${configure_target_modules} configure-target-${module}"
     1658  if test -z "${no_recursion}" \
     1659     && test -f ${target_subdir}/${module}/Makefile; then
     1660    echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure"
     1661    rm -f ${target_subdir}/${module}/Makefile
     1662  fi
     1663done
     1664
     1665# Determine whether gdb needs tk/tcl or not.
     1666# Use 'maybe' since enable_gdbtk might be true even if tk isn't available
     1667# and in that case we want gdb to be built without tk.  Ugh!
     1668# In fact I believe gdb is the *only* package directly dependent on tk,
     1669# so we should be able to put the 'maybe's in unconditionally and
     1670# leave out the maybe dependencies when enable_gdbtk is false.  I'm not
     1671# 100% sure that that's safe though.
     1672
     1673gdb_tk="maybe-all-tcl maybe-all-tk maybe-all-itcl maybe-all-tix maybe-all-libgui"
     1674case "$enable_gdbtk" in
     1675  no)
     1676    GDB_TK="" ;;
     1677  yes)
     1678    GDB_TK="${gdb_tk}" ;;
     1679  *)
     1680    # Only add the dependency on gdbtk when GDBtk is part of the gdb
     1681    # distro.  Eventually someone will fix this and move Insight, nee
     1682    # gdbtk to a separate directory.
     1683    if test -d ${srcdir}/gdb/gdbtk ; then
     1684      GDB_TK="${gdb_tk}"
     1685    else
     1686      GDB_TK=""
     1687    fi
     1688    ;;
     1689esac
     1690
     1691# Create the 'maybe dependencies'.  This uses a temporary file.
     1692rm -f maybedep.tmp
     1693echo '# maybedep.tmp' > maybedep.tmp
     1694for item in ${all_build_modules} ${all_host_modules} ${all_target_modules} \
     1695        ${install_host_modules} ${install_target_modules} \
     1696        ${configure_build_modules} ${configure_host_modules} ${configure_target_modules} \
     1697        ; do
     1698  echo "maybe-${item}: ${item}" >> maybedep.tmp
     1699done
     1700maybe_dependencies=maybedep.tmp
     1701AC_SUBST_FILE(maybe_dependencies)
     1702
     1703# Create the serialization dependencies.  This uses a temporary file.
     1704
     1705AC_ARG_ENABLE([serial-configure],
     1706[  --disable-serial-[{host,target,build}-]configure
     1707                          Don't force sequential configuration of
     1708                          sub-packages for the host, target or build
     1709                          machine, or of any sub-packages at all])
     1710
     1711# These force 'configure's to be done one at a time, to avoid problems
     1712# with contention over a shared config.cache.
     1713rm -f serdep.tmp
     1714echo '# serdep.tmp' > serdep.tmp
     1715olditem=
     1716test "x${enable_serial_configure}" = xno ||
     1717test "x${enable_serial_build_configure}" = xno ||
     1718for item in ${build_configdirs} ; do
     1719  case ${olditem} in
     1720    "") ;;
     1721    *) echo "configure-build-${item}: configure-build-${olditem}" >> serdep.tmp ;;
    12281722  esac
    1229 fi
    1230 
    1231 # Record target_configdirs and the configure arguments in Makefile.
    1232 target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
    1233 targargs=`echo "${arguments}" | \
    1234         sed -e 's/--no[^        ]*//' \
    1235             -e 's/--cache[a-z-]*=[^     ]*//' \
    1236             -e 's/--ho[a-z-]*=[^        ]*//' \
    1237             -e 's/--bu[a-z-]*=[^        ]*//' \
    1238             -e 's/--ta[a-z-]*=[^        ]*//'`
     1723  olditem=${item}
     1724done
     1725olditem=
     1726test "x${enable_serial_configure}" = xno ||
     1727test "x${enable_serial_host_configure}" = xno ||
     1728for item in ${configdirs} ; do
     1729  case ${olditem} in
     1730    "") ;;
     1731    *) echo "configure-${item}: configure-${olditem}" >> serdep.tmp ;;
     1732  esac
     1733  olditem=${item}
     1734done
     1735olditem=
     1736test "x${enable_serial_configure}" = xno ||
     1737test "x${enable_serial_target_configure}" = xno ||
     1738for item in ${target_configdirs} ; do
     1739  case ${olditem} in
     1740    "") ;;
     1741    *) echo "configure-target-${item}: configure-target-${olditem}" >> serdep.tmp ;;
     1742  esac
     1743  olditem=${item}
     1744done
     1745serialization_dependencies=serdep.tmp
     1746AC_SUBST_FILE(serialization_dependencies)
     1747
     1748# Base args.  Strip norecursion, cache-file, srcdir, host, build,
     1749# target and nonopt.  These are the ones we might not want to pass
     1750# down to subconfigures.
     1751baseargs=`echo " ${ac_configure_args} " | \
     1752        sed -e 's/ --no[[^ ]]* / /' \
     1753            -e 's/ --c[[a-z-]]*[[= ]][[^ ]]* / /' \
     1754            -e 's/ --sr[[a-z-]]*[[= ]][[^ ]]* / /' \
     1755            -e 's/ --ho[[a-z-]]*[[= ]][[^ ]]* / /' \
     1756            -e 's/ --bu[[a-z-]]*[[= ]][[^ ]]* / /' \
     1757            -e 's/ --t[[a-z-]]*[[= ]][[^ ]]* / /' \
     1758            -e 's/ -cache-file[[= ]][[^ ]]* / /' \
     1759            -e 's/ -srcdir[[= ]][[^ ]]* / /' \
     1760            -e 's/ -host[[= ]][[^ ]]* / /' \
     1761            -e 's/ -build[[= ]][[^ ]]* / /' \
     1762            -e 's/ -target[[= ]][[^ ]]* / /' \
     1763            -e "s/ [[^' -][^ ]*] / /" \
     1764            -e 's/^ *//;s/ *$//'`
     1765
     1766# For the build-side libraries, we just need to pretend we're native,
     1767# and not use the same cache file.  Multilibs are neither needed nor
     1768# desired.
     1769build_configargs="--cache-file=../config.cache --build=${build_alias} --host=${build_alias} ${baseargs}"
     1770
     1771# For host modules, accept cache file option, or specification as blank.
     1772case "${cache_file}" in
     1773"") # empty
     1774  cache_file_option="" ;;
     1775/* | [[A-Za-z]]:[[\\/]]* ) # absolute path
     1776  cache_file_option="--cache-file=${cache_file}" ;;
     1777*) # relative path
     1778  cache_file_option="--cache-file=../${cache_file}" ;;
     1779esac
     1780
     1781host_configargs="${cache_file_option} --build=${build_alias} --host=${host_alias} --target=${target_alias} ${extra_host_args} ${baseargs}"
     1782
     1783target_configargs=${baseargs}
    12391784
    12401785# Passing a --with-cross-host argument lets the target libraries know
     
    12431788# sorts of decisions they want to make on this basis.  Please consider
    12441789# this option to be deprecated.  FIXME.
    1245 if [ x${is_cross_compiler} = xyes ]; then
    1246   targargs="--with-cross-host=${host_alias} ${targargs}"
     1790if test x${is_cross_compiler} = xyes ; then
     1791  target_configargs="--with-cross-host=${host_alias} ${target_configargs}"
    12471792fi
    12481793
    12491794# Default to --enable-multilib.
    1250 if [ x${enable_multilib} = x ]; then
    1251   targargs="--enable-multilib ${targargs}"
     1795if test x${enable_multilib} = x ; then
     1796  target_configargs="--enable-multilib ${target_configargs}"
    12521797fi
    12531798
    12541799# Pass --with-newlib if appropriate.  Note that target_configdirs has
    12551800# changed from the earlier setting of with_newlib.
    1256 if [ x${with_newlib} != xno ] && echo " ${target_configdirs} " | grep " newlib " > /dev/null 2>&1 && [ -d ${srcdir}/newlib ] ; then
    1257   targargs="--with-newlib ${targargs}"
    1258 fi
     1801if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " newlib " > /dev/null 2>&1 && test -d ${srcdir}/newlib ; then
     1802  target_configargs="--with-newlib ${target_configargs}"
     1803fi
     1804
     1805# Pass the appropriate --host, --build, and --cache-file arguments.
     1806target_configargs="--cache-file=../config.cache --host=${target_alias} --build=${build_alias} ${target_configargs}"
    12591807
    12601808# provide a proper gxx_include_dir.
    12611809# Note, if you change the default, make sure to fix both here and in
    1262 # the gcc, libio, and libstdc++ subdirectories.
     1810# the gcc and libstdc++-v3 subdirectories.
    12631811# Check whether --with-gxx-include-dir or --without-gxx-include-dir was given.
    1264 gxx_include_dir=
    1265 if test -n "${with_gxx_include_dir}"; then
    1266   case "${with_gxx_include_dir}" in
    1267     yes )
    1268       echo "configure.in: error: bad value ${withval} given for g++ include directory" 1>&2
    1269       exit 1
    1270       ;;
    1271     no )
    1272       ;;
    1273     * )
    1274       gxx_include_dir=${with_gxx_include_dir}
    1275       ;;
    1276   esac
    1277 fi
    1278 if test x${gxx_include_dir} = x; then
    1279   if test x${enable_version_specific_runtime_libs} = xyes; then
    1280     gxx_include_dir='${libsubdir}/include/g++'
    1281   else
    1282     . ${topsrcdir}/config.if
    1283     gxx_include_dir='${prefix}/include/g++'-${libstdcxx_interface}
    1284   fi
    1285 else
    1286   gxx_include_dir=${gxx_include_dir}
    1287 fi
     1812case "${with_gxx_include_dir}" in
     1813  yes)
     1814    AC_MSG_ERROR([--with-gxx-include-dir=[[dir]] requires a directory])
     1815    ;;
     1816  no | "")
     1817    case "${enable_version_specific_runtime_libs}" in
     1818      yes) gxx_include_dir='${libsubdir}/include/c++' ;;
     1819      *)
     1820        . ${srcdir}/config.if
     1821        gxx_include_dir='${prefix}/include/'${libstdcxx_incdir} ;;
     1822    esac ;;
     1823  *) gxx_include_dir=${with_gxx_include_dir} ;;
     1824esac
    12881825
    12891826FLAGS_FOR_TARGET=
    1290 case " $skipdirs " in
    1291 *" target-newlib "*) ;;
    1292 *)
     1827case " $target_configdirs " in
     1828 *" newlib "*)
     1829  case " $target_configargs " in
     1830  *" --with-newlib "*)
    12931831   case "$target" in
    12941832   *-cygwin*)
     
    12971835
    12981836   # If we're not building GCC, don't discard standard headers.
    1299    if test -d ${topsrcdir}/gcc; then
     1837   if test -d ${srcdir}/gcc; then
    13001838     FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -nostdinc'
    13011839
     
    13191857   fi
    13201858
    1321    # If we're building newlib, use its generic headers last, but search
    1322    # for any libc-related directories first (so make it the last -B
    1323    # switch).
    1324    FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
     1859   case "${target}-${is_cross_compiler}" in
     1860   i[[3456]]86-*-linux*-no)
     1861      # Here host == target, so we don't need to build gcc,
     1862      # so we don't want to discard standard headers.
     1863      FLAGS_FOR_TARGET=`echo " $FLAGS_FOR_TARGET " | sed -e 's/ -nostdinc / /'`
     1864      ;;
     1865   *)
     1866      # If we're building newlib, use its generic headers last, but search
     1867      # for any libc-related directories first (so make it the last -B
     1868      # switch).
     1869      FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$$r/$(TARGET_SUBDIR)/newlib/ -isystem $$r/$(TARGET_SUBDIR)/newlib/targ-include -isystem $$s/newlib/libc/include'
     1870      ;;
     1871   esac
    13251872   ;;
     1873  esac
     1874  ;;
    13261875esac
    13271876
     
    13301879# flags for directories within the install tree of the compiler
    13311880# being built; programs in there won't even run.
    1332 if test "${build}" = "${host}" && test -d ${topsrcdir}/gcc; then
     1881if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then
    13331882  # Search for pre-installed headers if nothing else fits.
    1334   FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -isystem $(build_tooldir)/include'
    1335 fi
    1336 
    1337 if test "x${use_gnu_ld}" = x && test "x${with_gnu_ld}" != xno &&
    1338    echo " ${configdirs} " | grep " ld " > /dev/null &&
    1339    test -d ${srcdir}/ld; then
     1883  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
     1884fi
     1885
     1886if test "x${use_gnu_ld}" = x &&
     1887   echo " ${configdirs} " | grep " ld " > /dev/null ; then
    13401888  # Arrange for us to find uninstalled linker scripts.
    13411889  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld'
     
    13441892if test "x${CC_FOR_TARGET+set}" = xset; then
    13451893  :
    1346 elif test -d ${topsrcdir}/gcc; then
     1894elif test -d ${srcdir}/gcc; then
    13471895  CC_FOR_TARGET='$$r/gcc/xgcc -B$$r/gcc/'
    13481896elif test "$host" = "$target"; then
    13491897  CC_FOR_TARGET='$(CC)'
    13501898else
    1351   CC_FOR_TARGET=`echo gcc | sed -e 's/x/x/' ${program_transform_name}`
    1352 fi
    1353 # On Canadian crosses, configure reads CC_FOR_TARGET from Makefile,
    1354 # if Makefile exists.  Prevent $(FLAGS_FOR_TARGET) from being duplicated.
    1355 case $CC_FOR_TARGET in
    1356 *' $(FLAGS_FOR_TARGET)') ;;
    1357 *) CC_FOR_TARGET=$CC_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;;
    1358 esac
    1359 
    1360 if test "x${CHILL_FOR_TARGET+set}" = xset; then
     1899  CC_FOR_TARGET=`echo gcc | sed "${program_transform_name}"`
     1900fi
     1901CC_FOR_TARGET=$CC_FOR_TARGET' $(FLAGS_FOR_TARGET)'
     1902
     1903if test "x${GCJ_FOR_TARGET+set}" = xset; then
    13611904  :
    1362 elif test -d ${topsrcdir}/gcc; then
    1363   CHILL_FOR_TARGET='$$r/gcc/xgcc -B$$r/gcc/ -L$$r/gcc/ch/runtime/'
     1905elif test -d ${srcdir}/gcc; then
     1906  GCJ_FOR_TARGET='$$r/gcc/gcj -B$$r/gcc/'
    13641907elif test "$host" = "$target"; then
    1365   CHILL_FOR_TARGET='$(CC)'
     1908  GCJ_FOR_TARGET='gcj'
    13661909else
    1367   CHILL_FOR_TARGET=`echo gcc | sed -e 's/x/x/' ${program_transform_name}`
    1368 fi
    1369 case $CHILL_FOR_TARGET in
    1370 *' $(FLAGS_FOR_TARGET)') ;;
    1371 *) CHILL_FOR_TARGET=$CHILL_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;;
    1372 esac
     1910  GCJ_FOR_TARGET=`echo gcj | sed "${program_transform_name}"`
     1911fi
     1912GCJ_FOR_TARGET=$GCJ_FOR_TARGET' $(FLAGS_FOR_TARGET)'
     1913
     1914# Don't use libstdc++-v3's flags to configure/build itself.
     1915libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
     1916raw_libstdcxx_flags=' -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
    13731917
    13741918if test "x${CXX_FOR_TARGET+set}" = xset; then
    13751919  :
    1376 elif test -d ${topsrcdir}/gcc; then
     1920elif test -d ${srcdir}/gcc; then
     1921  # We add -shared-libgcc to CXX_FOR_TARGET whenever we use xgcc instead
     1922  # of g++ for linking C++ or Java, because g++ has -shared-libgcc by
     1923  # default whereas gcc does not.
     1924  # RAW_CXX_FOR_TARGET is for linking C++ or java; CXX_FOR_TARGET is for
     1925  # all other cases.
    13771926  CXX_FOR_TARGET='$$r/gcc/g++ -B$$r/gcc/ -nostdinc++ '$libstdcxx_flags
     1927  RAW_CXX_FOR_TARGET='$$r/gcc/xgcc -shared-libgcc -B$$r/gcc/ -nostdinc++ '$raw_libstdcxx_flags
    13781928elif test "$host" = "$target"; then
    13791929  CXX_FOR_TARGET='$(CXX)'
     1930  RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
    13801931else
    1381   CXX_FOR_TARGET=`echo c++ | sed -e 's/x/x/' ${program_transform_name}`
    1382 fi
    1383 case $CXX_FOR_TARGET in
    1384 *' $(FLAGS_FOR_TARGET)') ;;
    1385 *) CXX_FOR_TARGET=$CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;;
    1386 esac
    1387 qCXX_FOR_TARGET=`echo "$CXX_FOR_TARGET" | sed 's,&,\\\&,g'`
    1388 
    1389 targargs="--cache-file=../config.cache --host=${target_alias} --build=${build_alias} ${targargs}"
    1390 sed -e "s:^TARGET_CONFIGDIRS[   ]*=.*$:TARGET_CONFIGDIRS = ${target_configdirs}:" \
    1391     -e "s%^CONFIG_ARGUMENTS[    ]*=.*$%CONFIG_ARGUMENTS = ${targargs}%" \
    1392     -e "s%^FLAGS_FOR_TARGET[    ]*=.*$%FLAGS_FOR_TARGET = ${FLAGS_FOR_TARGET}%" \
    1393     -e "s%^CC_FOR_TARGET[       ]*=.*$%CC_FOR_TARGET = ${CC_FOR_TARGET}%" \
    1394     -e "s%^CHILL_FOR_TARGET[    ]*=.*$%CHILL_FOR_TARGET = ${CHILL_FOR_TARGET}%" \
    1395     -e "s%^CXX_FOR_TARGET[      ]*=.*$%CXX_FOR_TARGET = ${qCXX_FOR_TARGET}%" \
    1396     -e "s%^TARGET_SUBDIR[       ]*=.*$%TARGET_SUBDIR = ${target_subdir}%" \
    1397     -e "s%^gxx_include_dir[     ]*=.*$%gxx_include_dir=${gxx_include_dir}%" \
    1398        Makefile > Makefile.tem
    1399 rm -f Makefile
    1400 mv -f Makefile.tem Makefile
    1401 
    1402 #
    1403 # Local Variables:
    1404 # fill-column: 131
    1405 # End:
    1406 #
     1932  CXX_FOR_TARGET=`echo c++ | sed "${program_transform_name}"`
     1933  RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
     1934fi
     1935CXX_FOR_TARGET=$CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
     1936RAW_CXX_FOR_TARGET=$RAW_CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
     1937
     1938qCXX_FOR_TARGET=`echo "$CXX_FOR_TARGET" | sed 's,[[&%]],\\\&,g'`
     1939qRAW_CXX_FOR_TARGET=`echo "$RAW_CXX_FOR_TARGET" | sed 's,[[&%]],\\\&,g'`
     1940
     1941# We want to defer the evaluation of `cmd`s and shell variables in
     1942# CXX_FOR_TARGET when recursing in the top-level Makefile, such as for
     1943# bootstrap.  We'll enclose CXX_FOR_TARGET_FOR_RECURSIVE_MAKE in single
     1944# quotes, but we still have to duplicate `$'s so that shell variables
     1945# can be expanded by the nested make as shell variables, not as make
     1946# macros.
     1947qqCXX_FOR_TARGET=`echo "$qCXX_FOR_TARGET" | sed -e 's,[[$]][[$]],$$$$,g'`
     1948qqRAW_CXX_FOR_TARGET=`echo "$qRAW_CXX_FOR_TARGET" | sed -e 's,[[$]][[$]],$$$$,g'`
     1949
     1950# Wrap CC_FOR_TARGET and friends, for certain types of builds.
     1951CC_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${CC_FOR_TARGET}"
     1952GCJ_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GCJ_FOR_TARGET}"
     1953CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qCXX_FOR_TARGET}"
     1954RAW_CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qRAW_CXX_FOR_TARGET}"
     1955CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqCXX_FOR_TARGET}"
     1956RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqRAW_CXX_FOR_TARGET}"
     1957
     1958# Makefile fragments.
     1959host_makefile_frag=${srcdir}/${host_makefile_frag}
     1960target_makefile_frag=${srcdir}/${target_makefile_frag}
     1961alphaieee_frag=${srcdir}/${alphaieee_frag}
     1962ospace_frag=${srcdir}/${ospace_frag}
     1963AC_SUBST_FILE(host_makefile_frag)
     1964AC_SUBST_FILE(target_makefile_frag)
     1965AC_SUBST_FILE(alphaieee_frag)
     1966AC_SUBST_FILE(ospace_frag)
     1967
     1968# Miscellanea: directories, flags, etc.
     1969AC_SUBST(SET_LIB_PATH)
     1970AC_SUBST(RPATH_ENVVAR)
     1971AC_SUBST(BUILD_PREFIX)
     1972AC_SUBST(BUILD_PREFIX_1)
     1973AC_SUBST(configlinks)
     1974AC_SUBST(gcc_version_trigger)
     1975AC_SUBST(gcc_version)
     1976AC_SUBST(tooldir)
     1977AC_SUBST(build_tooldir)
     1978AC_SUBST(GDB_TK)
     1979AC_SUBST(gxx_include_dir)
     1980AC_SUBST(libstdcxx_incdir)
     1981
     1982# Build module lists & subconfigure args.
     1983AC_SUBST(build_subdir)
     1984AC_SUBST(build_configargs)
     1985AC_SUBST(configure_build_modules)
     1986AC_SUBST(all_build_modules)
     1987
     1988# Host module lists & subconfigure args.
     1989AC_SUBST(host_configargs)
     1990AC_SUBST(configdirs)
     1991AC_SUBST(configure_host_modules)
     1992AC_SUBST(all_host_modules)
     1993AC_SUBST(check_host_modules)
     1994AC_SUBST(install_host_modules)
     1995AC_SUBST(install_host_modules_nogcc)
     1996
     1997# Target module lists & subconfigure args.
     1998AC_SUBST(target_subdir)
     1999AC_SUBST(target_configargs)
     2000AC_SUBST(target_configdirs)
     2001AC_SUBST(configure_target_modules)
     2002AC_SUBST(all_target_modules)
     2003AC_SUBST(check_target_modules)
     2004AC_SUBST(install_target_modules)
     2005
     2006# Build tools.
     2007AC_SUBST(BISON)
     2008AC_SUBST(CC_FOR_BUILD)
     2009AC_SUBST(LEX)
     2010AC_SUBST(MAKEINFO)
     2011AC_SUBST(YACC)
     2012AC_SUBST(config_shell)
     2013
     2014# Host tools.
     2015NCN_STRICT_CHECK_TOOL(AR, ar)
     2016NCN_STRICT_CHECK_TOOL(AS, as)
     2017NCN_STRICT_CHECK_TOOL(DLLTOOL, dlltool)
     2018NCN_STRICT_CHECK_TOOL(LD, ld)
     2019NCN_STRICT_CHECK_TOOL(NM, nm)
     2020NCN_STRICT_CHECK_TOOL(RANLIB, ranlib, :)
     2021NCN_STRICT_CHECK_TOOL(WINDRES, windres)
     2022NCN_STRICT_CHECK_TOOL(OBJCOPY, objcopy)
     2023NCN_STRICT_CHECK_TOOL(OBJDUMP, objdump)
     2024AC_SUBST(CC)
     2025AC_SUBST(CXX)
     2026AC_SUBST(CFLAGS)
     2027AC_SUBST(CXXFLAGS)
     2028AC_SUBST(DEFAULT_YACC)
     2029AC_SUBST(DEFAULT_LEX)
     2030AC_SUBST(DEFAULT_M4)
     2031
     2032# Target tools.
     2033NCN_STRICT_CHECK_TARGET_TOOL(AR_FOR_TARGET, ar)
     2034NCN_STRICT_CHECK_TARGET_TOOL(AS_FOR_TARGET, as)
     2035NCN_STRICT_CHECK_TARGET_TOOL(DLLTOOL_FOR_TARGET, dlltool)
     2036NCN_STRICT_CHECK_TARGET_TOOL(LD_FOR_TARGET, ld)
     2037NCN_STRICT_CHECK_TARGET_TOOL(NM_FOR_TARGET, nm)
     2038NCN_STRICT_CHECK_TARGET_TOOL(RANLIB_FOR_TARGET, ranlib, :)
     2039NCN_STRICT_CHECK_TARGET_TOOL(WINDRES_FOR_TARGET, windres)
     2040
     2041AC_SUBST(GCC_FOR_TARGET)
     2042AC_SUBST(FLAGS_FOR_TARGET)
     2043AC_SUBST(CC_FOR_TARGET)
     2044AC_SUBST(GCJ_FOR_TARGET)
     2045AC_SUBST(CXX_FOR_TARGET)
     2046AC_SUBST(RAW_CXX_FOR_TARGET)
     2047AC_SUBST(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)
     2048AC_SUBST(RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)
     2049
     2050# Fix up target tools.
     2051if test "x${build}" = "x${host}" ; then
     2052  # In this case, the newly built tools can and should be used,
     2053  # so we override the results of the autoconf tests.
     2054  # This should really only happen when the tools are actually being built,
     2055  # but that's a further refinement.  The new build scheme, where
     2056  # tools are built into a structure paralleling where they're installed,
     2057  # should also eliminate all of this cleanly.
     2058  AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)"
     2059  AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)"
     2060  DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)"
     2061  LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)"
     2062  NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
     2063  RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
     2064  WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
     2065fi
     2066# Certain tools may need extra flags.
     2067AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
     2068RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
     2069NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
     2070
     2071AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
     2072AC_ARG_ENABLE(maintainer-mode,
     2073[  --enable-maintainer-mode enable make rules and dependencies not useful
     2074                          (and sometimes confusing) to the casual installer],
     2075      USE_MAINTAINER_MODE=$enableval,
     2076      USE_MAINTAINER_MODE=no)
     2077AC_MSG_RESULT($USE_MAINTAINER_MODE)
     2078AC_SUBST(MAINTAINER_MODE_TRUE)
     2079AC_SUBST(MAINTAINER_MODE_FALSE)
     2080if test "$USE_MAINTAINER_MODE" = yes; then
     2081  MAINTAINER_MODE_TRUE=
     2082  MAINTAINER_MODE_FALSE='#'
     2083else
     2084  MAINTAINER_MODE_TRUE='#'
     2085  MAINTAINER_MODE_FALSE=
     2086fi     
     2087MAINT=$MAINTAINER_MODE_TRUE
     2088AC_SUBST(MAINT)dnl
     2089
     2090AC_OUTPUT(Makefile)
Note: See TracChangeset for help on using the changeset viewer.