# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-# 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
if test -n "$PWD" ; then PWD=`${PWDCMD-pwd}`; fi
# Export original configure arguments for use by sub-configures. These
-# will be expanded once by make, and once by the shell, so they need to
-# have '$' quoted for make, and then each argument quoted for the shell.
-# What's more, the 'echo' below might expand backslashes.
-cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
+# will be expanded by make, so quote '$'.
+tmp="$progname $@"
+sed -e 's,\$,$$,g' <<EOF_SED > conftestsed.out
+$tmp
EOF_SED
-tmp="'$progname'"
-for ac_arg ; do
- tmp="$tmp '"`echo "$ac_arg" | sed -fconftestsed`
-done
-rm -f conftestsed
-TOPLEVEL_CONFIGURE_ARGUMENTS="$tmp"
+TOPLEVEL_CONFIGURE_ARGUMENTS=`cat conftestsed.out`
+rm -f conftestsed.out
AC_SUBST(TOPLEVEL_CONFIGURE_ARGUMENTS)
moveifchange=${srcdir}/move-if-change
target-libstdc++-v3 \
target-libf2c \
${libgcj} \
- target-libobjc"
+ target-libobjc \
+ target-libada"
# these tools are built using the target libraries, and are intended to
# run only in the target environment
noconfigdirs="$noconfigdirs byacc"
;;
i[[3456789]]86-*-vsta)
- noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl itcl tix gnuserv gettext"
+ noconfigdirs="$noconfigdirs tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl itcl tix gnuserv gettext"
;;
i[[3456789]]86-*-go32* | i[[3456789]]86-*-msdosdjgpp*)
- noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile itcl tix gnuserv libffi"
+ noconfigdirs="$noconfigdirs tcl tk expect dejagnu send-pr uudecode guile itcl tix gnuserv libffi"
;;
i[[3456789]]86-*-mingw32*)
# noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl itcl tix gnuserv"
- noconfigdirs="expect dejagnu autoconf automake send-pr rcs guile perl texinfo libtool"
+ noconfigdirs="$noconfigdirs expect dejagnu autoconf automake send-pr rcs guile perl texinfo libtool"
;;
i[[3456789]]86-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb"
;;
*-*-cygwin*)
- noconfigdirs="autoconf automake send-pr rcs guile perl"
+ noconfigdirs="$noconfigdirs autoconf automake send-pr rcs guile perl"
;;
*-*-netbsd*)
- noconfigdirs="rcs"
+ noconfigdirs="$noconfigdirs rcs"
;;
ppc*-*-pe)
- noconfigdirs="patch diff make tk tcl expect dejagnu autoconf automake texinfo bison send-pr gprof rcs guile perl itcl tix gnuserv"
+ noconfigdirs="$noconfigdirs patch diff make tk tcl expect dejagnu autoconf automake texinfo bison send-pr gprof rcs guile perl itcl tix gnuserv"
;;
powerpc-*-beos*)
noconfigdirs="$noconfigdirs tk itcl tix libgui gdb dejagnu readline"
;;
esac
+AC_ARG_ENABLE(libada,
+[ --enable-libada Builds libada directory],
+ENABLE_LIBADA=$enableval,
+ENABLE_LIBADA=yes)
+if test "${ENABLE_LIBADA}" != "yes" ; then
+ noconfigdirs="$noconfigdirs target-libada"
+fi
+
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
*) ;;
esac
;;
+ *-*-uclinux*)
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}"
+ ;;
*-*-vxworks*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj}"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
# newlib is not 64 bit ready
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
- alpha*-*-freebsd*)
+ alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
alpha*-*-*)
;;
ia64*-**-hpux*)
# No gdb or ld support yet.
- noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld"
+ noconfigdirs="$noconfigdirs ${libgcj} tix readline mmalloc libgui itcl gdb ld"
;;
i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
- i[[3456789]]86-*-freebsd*)
+ i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
i[[3456789]]86-*-linux*)
noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}"
;;
rs6000-*-aix*)
- noconfigdirs="$noconfigdirs gprof ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
rs6000-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
mipstx39-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
;;
+ mips64*-*-linux*)
+ noconfigdirs="$noconfigdirs target-newlib ${libgcj}"
+ ;;
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
*target-newlib*) noconfigdirs="$noconfigdirs target-libgloss" ;;
esac
-# Figure out what language subdirectories are present.
-# Look if the user specified --enable-languages="..."; if not, use
-# the environment variable $LANGUAGES if defined. $LANGUAGES might
-# go away some day.
-# NB: embedded tabs in this IF block -- do not untabify
-if test x"${enable_languages+set}" != xset; then
- if test x"${LANGUAGES+set}" = xset; then
- enable_languages="${LANGUAGES}"
- echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
- else
- enable_languages=all
- fi
-else
- if test x"${enable_languages}" = x ||
- test x"${enable_languages}" = xyes;
- then
- echo configure.in: --enable-languages needs at least one language argument 1>&2
- exit 1
- fi
-fi
-enable_languages=`echo "${enable_languages}" | sed -e 's/[[ ,]][[ ,]]*/,/g' -e 's/,$//'`
-
-# First scan to see if an enabled language requires some other language.
-# We assume that a given config-lang.in will list all the language
-# front ends it requires, even if some are required indirectly.
-for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do
- case ${lang_frag} in
- ..) ;;
- # The odd quoting in the next line works around
- # an apparent bug in bash 1.12 on linux.
- ${srcdir}/gcc/[[*]]/config-lang.in) ;;
- *)
- # From the config-lang.in, get $language, $lang_requires
- language=
- lang_requires=
- . ${lang_frag}
- for other in ${lang_requires} ; do
- case ,${enable_languages}, in
- *,$other,*) ;;
- *,all,*) ;;
- *,$language,*)
- echo " \`$other' language required by \`$language'; enabling" 1>&2
- enable_languages="${enable_languages},${other}"
- ;;
- esac
- done
- ;;
- esac
-done
-
-for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do
- case ${lang_frag} in
- ..) ;;
- # The odd quoting in the next line works around
- # an apparent bug in bash 1.12 on linux.
- ${srcdir}/gcc/[[*]]/config-lang.in) ;;
- *)
- # From the config-lang.in, get $language, $target_libs,
- # $lang_dirs, and $build_by_default
- language=
- target_libs=
- lang_dirs=
- build_by_default=
- . ${lang_frag}
- if test "x$language" = x ; then
- echo "${lang_frag} doesn't set \$language." 1>&2
- exit 1
- fi
- case ,${enable_languages}, in
- *,${language},*)
- # Language was explicitly selected; include it.
- add_this_lang=yes
- ;;
- *,all,*)
- # 'all' was selected; include 'default' languages.
- case ${build_by_default} in
- no) add_this_lang=no ;;
- *) add_this_lang=yes ;;
- esac
- ;;
- *) add_this_lang=no ;;
- esac
- case ${add_this_lang} in
- no)
- # Remove language-dependent dirs.
- eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\"
- ;;
- esac
- ;;
- esac
-done
-
-# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
-# $target_configdirs.
-# If we have the source for $noconfigdirs entries, add them to $notsupp.
-
-notsupp=""
-for dir in . $skipdirs $noconfigdirs ; do
- dirname=`echo $dir | sed -e s/target-//g`
- if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
- if test -r $srcdir/$dirname/configure ; then
- if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- true
- else
- notsupp="$notsupp $dir"
- fi
- fi
- fi
- if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
- if test -r $srcdir/$dirname/configure ; then
- if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- true
- else
- notsupp="$notsupp $dir"
- fi
- fi
- fi
-done
-
-# Sometimes the tools are distributed with libiberty but with no other
-# libraries. In that case, we don't want to build target-libiberty.
-if test -n "${target_configdirs}" ; then
- others=
- for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
- if test "$i" != "libiberty" ; then
- if test -r $srcdir/$i/configure ; then
- others=yes;
- break;
- fi
- fi
- done
- if test -z "${others}" ; then
- target_configdirs=
- fi
-fi
-
-# Quietly strip out all directories which aren't configurable in this tree.
-# This relies on all configurable subdirectories being autoconfiscated, which
-# is now the case.
-configdirs_all="$configdirs"
-configdirs=
-for i in ${configdirs_all} ; do
- if test -f ${srcdir}/$i/configure ; then
- configdirs="${configdirs} $i"
- fi
-done
-target_configdirs_all="$target_configdirs"
-target_configdirs=
-for i in ${target_configdirs_all} ; do
- j=`echo $i | sed -e s/target-//g`
- if test -f ${srcdir}/$j/configure ; then
- target_configdirs="${target_configdirs} $i"
- fi
-done
-
-# Produce a warning message for the subdirs we can't configure.
-# This isn't especially interesting in the Cygnus tree, but in the individual
-# FSF releases, it's important to let people know when their machine isn't
-# supported by the one or two programs in a package.
-
-if test -n "${notsupp}" && test -z "${norecursion}" ; then
- # If $appdirs is non-empty, at least one of those directories must still
- # be configured, or we error out. (E.g., if the gas release supports a
- # specified target in some subdirs but not the gas subdir, we shouldn't
- # pretend that all is well.)
- if test -n "$appdirs" ; then
- for dir in $appdirs ; do
- if test -r $dir/Makefile.in ; then
- if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- appdirs=""
- break
- fi
- if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- appdirs=""
- break
- fi
- fi
- done
- if test -n "$appdirs" ; then
- echo "*** This configuration is not supported by this package." 1>&2
- exit 1
- fi
- fi
- # Okay, some application will build, or we don't care to check. Still
- # notify of subdirs not getting built.
- echo "*** This configuration is not supported in the following subdirectories:" 1>&2
- echo " ${notsupp}" 1>&2
- echo " (Any other directories should still work fine.)" 1>&2
-fi
-
-case "$host" in
- *msdosdjgpp*)
- enable_gdbtk=no ;;
-esac
-
-copy_dirs=
-
-# Handle --with-headers=XXX. If the value is not "yes", the contents of
-# the named directory are copied to $(tooldir)/sys-include.
-if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
- if test x${is_cross_compiler} = xno ; then
- echo 1>&2 '***' --with-headers is only supported when cross compiling
- exit 1
- fi
- if test x"${with_headers}" != xyes ; then
- case "${exec_prefixoption}" in
- "") x=${prefix} ;;
- *) x=${exec_prefix} ;;
- esac
- copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
- fi
-fi
-
-# Handle --with-libs=XXX. If the value is not "yes", the contents of
-# the name directories are copied to $(tooldir)/lib. Multiple directories
-# are permitted.
-if test x"${with_libs}" != x && test x"${with_libs}" != xno ; then
- if test x${is_cross_compiler} = xno ; then
- echo 1>&2 '***' --with-libs is only supported when cross compiling
- exit 1
- fi
- if test x"${with_libs}" != xyes ; then
- # Copy the libraries in reverse order, so that files in the first named
- # library override files in subsequent libraries.
- case "${exec_prefixoption}" in
- "") x=${prefix} ;;
- *) x=${exec_prefix} ;;
- esac
- for l in ${with_libs}; do
- copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
- done
- fi
-fi
-
-# Handle ${copy_dirs}
-set fnord ${copy_dirs}
-shift
-while test $# != 0 ; do
- if test -f $2/COPIED && test x"`cat $2/COPIED`" = x"$1" ; then
- :
- else
- echo Copying $1 to $2
-
- # Use the install script to create the directory and all required
- # parent directories.
- if test -d $2 ; then
- :
- else
- echo >config.temp
- ${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
- fi
-
- # Copy the directory, assuming we have tar.
- # FIXME: Should we use B in the second tar? Not all systems support it.
- (cd $1; tar -cf - .) | (cd $2; tar -xpf -)
-
- # It is the responsibility of the user to correctly adjust all
- # symlinks. If somebody can figure out how to handle them correctly
- # here, feel free to add the code.
-
- echo $1 > $2/COPIED
- fi
- shift; shift
-done
-
# Work in distributions that contain no compiler tools, like Autoconf.
tentative_cc=""
host_makefile_frag=/dev/null
esac
fi
-extra_arflags_for_target=
-extra_nmflags_for_target=
-extra_ranlibflags_for_target=
-target_makefile_frag=/dev/null
-case "${target}" in
- i[[3456789]]86-*-netware*)
- target_makefile_frag="config/mt-netware"
- ;;
- powerpc-*-netware*)
- target_makefile_frag="config/mt-netware"
- ;;
- *-*-linux*)
- target_makefile_frag="config/mt-linux"
- ;;
- *-*-aix4.[[3456789]]* | *-*-aix[[56789]].*)
- # nm and ar from AIX 4.3 and above require -X32_64 flag to all ar and nm
- # commands to handle both 32-bit and 64-bit objects. These flags are
- # harmless if we're using GNU nm or ar.
- extra_arflags_for_target=" -X32_64"
- extra_nmflags_for_target=" -B -X32_64"
- ;;
- *-*-darwin*)
- # ranlib from Darwin requires the -c flag to look at common symbols.
- extra_ranlibflags_for_target=" -c"
- ;;
- mips*-*-pe | sh*-*-pe | *arm-wince-pe)
- target_makefile_frag="config/mt-wince"
- ;;
-esac
-
-alphaieee_frag=/dev/null
-case $target in
- alpha*-*-*)
- # This just makes sure to use the -mieee option to build target libs.
- # This should probably be set individually by each library.
- alphaieee_frag="config/mt-alphaieee"
- ;;
-esac
-
-# If --enable-target-optspace always use -Os instead of -O2 to build
-# the target libraries, similarly if it is not specified, use -Os
-# on selected platforms.
-ospace_frag=/dev/null
-case "${enable_target_optspace}:${target}" in
- yes:*)
- ospace_frag="config/mt-ospace"
- ;;
- :d30v-*)
- ospace_frag="config/mt-d30v"
- ;;
- :m32r-* | :d10v-* | :fr30-*)
- ospace_frag="config/mt-ospace"
- ;;
- no:* | :*)
- ;;
- *)
- echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
- ;;
-esac
-
-# Set with_gnu_as and with_gnu_ld as appropriate.
-#
-# This is done by determining whether or not the appropriate directory
-# is available, and by checking whether or not specific configurations
-# have requested that this magic not happen.
-#
-# The command line options always override the explicit settings in
-# configure.in, and the settings in configure.in override this magic.
-#
-# If the default for a toolchain is to use GNU as and ld, and you don't
-# want to do that, then you should use the --without-gnu-as and
-# --without-gnu-ld options for the configure script.
-
-if test x${use_gnu_as} = x &&
- echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
- with_gnu_as=yes
- extra_host_args="$extra_host_args --with-gnu-as"
-fi
-
-if test x${use_gnu_ld} = x &&
- echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
- with_gnu_ld=yes
- extra_host_args="$extra_host_args --with-gnu-ld"
-fi
-
-# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
-# can detect this case.
-
-if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
- with_newlib=yes
- extra_host_args="$extra_host_args --with-newlib"
-fi
-
-
-# Default to using --with-stabs for certain targets.
-if test x${with_stabs} = x ; then
- case "${target}" in
- mips*-*-irix6*)
- ;;
- mips*-*-* | alpha*-*-osf*)
- with_stabs=yes;
- extra_host_args="${extra_host_args} --with-stabs"
- ;;
- esac
-fi
-
-# hpux11 in 64bit mode has libraries in a weird place. Arrange to find
-# them automatically.
-case "${host}" in
- hppa*64*-*-hpux11*)
- extra_host_args="$extra_host_args -x-libraries=/usr/lib/pa20_64 -x-includes=/usr/X11R6/include"
- ;;
-esac
-
# If we aren't going to be using gcc, see if we can extract a definition
# of CC from the fragment.
# Actually, use the 'pre-extracted' version above.
fi
fi
-# Some systems (e.g., one of the i386-aix systems the gas testers are
-# using) don't handle "\$" correctly, so don't use it here.
-tooldir='${exec_prefix}'/${target_alias}
-build_tooldir=${tooldir}
-
-# Generate a default definition for YACC. This is used if the makefile can't
-# locate bison or byacc in objdir.
-
-for prog in 'bison -y' byacc yacc
-do
- set dummy $prog; tmp=$2
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/$tmp; then
- DEFAULT_YACC="$prog"
- break
- fi
- done
- IFS="$save_ifs"
-
- test -n "$DEFAULT_YACC" && break
-done
-
-# Generate a default definition for M4. This is used if the makefile can't
-# locate m4 in objdir.
-
-for prog in gm4 gnum4 m4
-do
- set dummy $prog; tmp=$2
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/$tmp; then
- DEFAULT_M4="$prog"
- break
- fi
- done
- IFS="$save_ifs"
-
- test -n "$DEFAULT_M4" && break
-done
-
-# Generate a default definition for LEX. This is used if the makefile can't
-# locate flex in objdir.
-
-for prog in flex lex
-do
- set dummy $prog; tmp=$2
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/$tmp; then
- DEFAULT_LEX="$prog"
- break
- fi
- done
- IFS="$save_ifs"
-
- test -n "$DEFAULT_LEX" && break
-done
-
if test "${build}" != "${host}" ; then
# If we are doing a Canadian Cross, in which the host and build systems
# are not the same, we set reasonable default values for the tools.
CXXFLAGS=${CXXFLAGS-"-g -O2"}
fi
-# FIXME Should this be done recursively ??? (Useful for e.g. gdbtest)
-# Set up the list of links to be made.
-# ${links} is the list of link names, and ${files} is the list of names to link to.
+ACX_PROG_GNAT
-# Make the links.
-configlinks="${links}"
-if test -r ./config.status ; then
- mv -f ./config.status ./config.back
-fi
-while test -n "${files}" ; do
- # set file to car of files, files to cdr of files
- set ${files}; file=$1; shift; files=$*
- set ${links}; link=$1; shift; links=$*
-
- if test ! -r ${srcdir}/${file} ; then
- if test ! -r ${file} ; then
- echo '***' "${progname}: cannot create a link \"${link}\"," 1>&2
- echo '***' "since the file \"${srcdir}/${file}\" does not exist." 1>&2
- exit 1
+# By default, C is the only stage 1 language.
+stage1_languages=c
+AC_SUBST(stage1_languages)
+
+# Figure out what language subdirectories are present.
+# Look if the user specified --enable-languages="..."; if not, use
+# the environment variable $LANGUAGES if defined. $LANGUAGES might
+# go away some day.
+# NB: embedded tabs in this IF block -- do not untabify
+if test -d ${srcdir}/gcc; then
+ if test x"${enable_languages+set}" != xset; then
+ if test x"${LANGUAGES+set}" = xset; then
+ enable_languages="${LANGUAGES}"
+ echo configure.in: warning: setting LANGUAGES is deprecated, use --enable-languages instead 1>&2
else
- srcfile=${file}
+ enable_languages=all
fi
else
- srcfile=${srcdir}/${file}
+ if test x"${enable_languages}" = x ||
+ test x"${enable_languages}" = xyes;
+ then
+ echo configure.in: --enable-languages needs at least one language argument 1>&2
+ exit 1
+ fi
fi
+ enable_languages=`echo "${enable_languages}" | sed -e 's/[[ ,]][[ ,]]*/,/g' -e 's/,$//'`
+
+ # First scan to see if an enabled language requires some other language.
+ # We assume that a given config-lang.in will list all the language
+ # front ends it requires, even if some are required indirectly.
+ for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do
+ case ${lang_frag} in
+ ..) ;;
+ # The odd quoting in the next line works around
+ # an apparent bug in bash 1.12 on linux.
+ ${srcdir}/gcc/[[*]]/config-lang.in) ;;
+ *)
+ # From the config-lang.in, get $language, $lang_requires
+ language=
+ lang_requires=
+ . ${lang_frag}
+ for other in ${lang_requires} ; do
+ case ,${enable_languages}, in
+ *,$other,*) ;;
+ *,all,*) ;;
+ *,$language,*)
+ echo " \`$other' language required by \`$language'; enabling" 1>&2
+ enable_languages="${enable_languages},${other}"
+ ;;
+ esac
+ done
+ ;;
+ esac
+ done
- ${remove} -f ${link}
- # Make a symlink if possible, otherwise try a hard link
- if ${symbolic_link} ${srcfile} ${link} >/dev/null 2>&1 ; then
- true
- else
- # We need to re-remove the file because Lynx leaves a
- # very strange directory there when it fails an NFS symlink.
- ${remove} -r -f ${link}
- ${hard_link} ${srcfile} ${link}
+ new_enable_languages=c
+ missing_languages=`echo ",$enable_languages," | sed -e s/,all,/,/ -e s/,c,/,/ `
+
+ for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do
+ case ${lang_frag} in
+ ..) ;;
+ # The odd quoting in the next line works around
+ # an apparent bug in bash 1.12 on linux.
+ ${srcdir}/gcc/[[*]]/config-lang.in) ;;
+ *)
+ # From the config-lang.in, get $language, $target_libs,
+ # $lang_dirs, $boot_language, and $build_by_default
+ language=
+ target_libs=
+ lang_dirs=
+ boot_language=
+ build_by_default=
+ . ${lang_frag}
+ # This is quite sensitive to the ordering of the case statement arms.
+ case ,${enable_languages},:${language}:${have_gnat}:${build_by_default} in
+ *::*:*)
+ echo "${lang_frag} doesn't set \$language." 1>&2
+ exit 1
+ ;;
+ *:ada:no:*)
+ # Ada was requested with no preexisting GNAT. Disable unconditionally.
+ add_this_lang=no
+ ;;
+ *,${language},*:*:*:*)
+ # Language was explicitly selected; include it.
+ add_this_lang=yes
+ ;;
+ *,all,*:*:*:no)
+ # 'all' was selected, but this is not a default language
+ # so do not include it.
+ add_this_lang=no
+ ;;
+ *,all,*:*:*:*)
+ # 'all' was selected and this is a default language; include it.
+ add_this_lang=yes
+ ;;
+ *)
+ add_this_lang=no
+ ;;
+ esac
+ case $add_this_lang in
+ no)
+ # Remove language-dependent dirs.
+ eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\"
+ ;;
+ *)
+ new_enable_languages="$new_enable_languages,$language"
+ missing_languages=`echo "$missing_languages" | sed "s/,$language,/,/"`
+ case ${boot_language} in
+ yes)
+ # Add to (comma-separated) list of stage 1 languages.
+ stage1_languages="${stage1_languages},${language}"
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ esac
+ done
+
+ missing_languages=`echo "$missing_languages" | sed -e "s/^,//" -e "s/,$//"`
+ if test "x$missing_languages" != x; then
+ AC_MSG_ERROR([
+The following requested languages were not found: ${missing_languages}])
+ fi
+
+ if test "x$new_enable_languages" != "x$enable_languages"; then
+ echo The following languages will be built: ${new_enable_languages}
+ fi
+ enable_languages="$new_enable_languages"
+ ac_configure_args=`echo " $ac_configure_args" | sed -e 's/ --enable-languages=[[^ ]]*//' -e 's/$/ --enable-languages='"$enable_languages"/ `
+fi
+
+# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
+# $target_configdirs.
+# If we have the source for $noconfigdirs entries, add them to $notsupp.
+
+notsupp=""
+for dir in . $skipdirs $noconfigdirs ; do
+ dirname=`echo $dir | sed -e s/target-//g`
+ if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
+ if test -r $srcdir/$dirname/configure ; then
+ if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ true
+ else
+ notsupp="$notsupp $dir"
+ fi
+ fi
+ fi
+ if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
+ if test -r $srcdir/$dirname/configure ; then
+ if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ true
+ else
+ notsupp="$notsupp $dir"
+ fi
+ fi
+ fi
+done
+
+# Sometimes the tools are distributed with libiberty but with no other
+# libraries. In that case, we don't want to build target-libiberty.
+if test -n "${target_configdirs}" ; then
+ others=
+ for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
+ if test "$i" != "libiberty" ; then
+ if test -r $srcdir/$i/configure ; then
+ others=yes;
+ break;
+ fi
+ fi
+ done
+ if test -z "${others}" ; then
+ target_configdirs=
+ fi
+fi
+
+# Quietly strip out all directories which aren't configurable in this tree.
+# This relies on all configurable subdirectories being autoconfiscated, which
+# is now the case.
+configdirs_all="$configdirs"
+configdirs=
+for i in ${configdirs_all} ; do
+ if test -f ${srcdir}/$i/configure ; then
+ configdirs="${configdirs} $i"
fi
- if test ! -r ${link} ; then
- echo '***' "${progname}: unable to link \"${link}\" to \"${srcfile}\"." 1>&2
+done
+target_configdirs_all="$target_configdirs"
+target_configdirs=
+for i in ${target_configdirs_all} ; do
+ j=`echo $i | sed -e s/target-//g`
+ if test -f ${srcdir}/$j/configure ; then
+ target_configdirs="${target_configdirs} $i"
+ fi
+done
+
+# Produce a warning message for the subdirs we can't configure.
+# This isn't especially interesting in the Cygnus tree, but in the individual
+# FSF releases, it's important to let people know when their machine isn't
+# supported by the one or two programs in a package.
+
+if test -n "${notsupp}" && test -z "${norecursion}" ; then
+ # If $appdirs is non-empty, at least one of those directories must still
+ # be configured, or we error out. (E.g., if the gas release supports a
+ # specified target in some subdirs but not the gas subdir, we shouldn't
+ # pretend that all is well.)
+ if test -n "$appdirs" ; then
+ for dir in $appdirs ; do
+ if test -r $dir/Makefile.in ; then
+ if echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ appdirs=""
+ break
+ fi
+ if echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
+ appdirs=""
+ break
+ fi
+ fi
+ done
+ if test -n "$appdirs" ; then
+ echo "*** This configuration is not supported by this package." 1>&2
+ exit 1
+ fi
+ fi
+ # Okay, some application will build, or we don't care to check. Still
+ # notify of subdirs not getting built.
+ echo "*** This configuration is not supported in the following subdirectories:" 1>&2
+ echo " ${notsupp}" 1>&2
+ echo " (Any other directories should still work fine.)" 1>&2
+fi
+
+case "$host" in
+ *msdosdjgpp*)
+ enable_gdbtk=no ;;
+esac
+
+copy_dirs=
+
+# Handle --with-headers=XXX. If the value is not "yes", the contents of
+# the named directory are copied to $(tooldir)/sys-include.
+if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
+ if test x${is_cross_compiler} = xno ; then
+ echo 1>&2 '***' --with-headers is only supported when cross compiling
exit 1
fi
+ if test x"${with_headers}" != xyes ; then
+ case "${exec_prefixoption}" in
+ "") x=${prefix} ;;
+ *) x=${exec_prefix} ;;
+ esac
+ copy_dirs="${copy_dirs} ${with_headers} $x/${target_alias}/sys-include"
+ fi
+fi
+
+# Handle --with-libs=XXX. If the value is not "yes", the contents of
+# the name directories are copied to $(tooldir)/lib. Multiple directories
+# are permitted.
+if test x"${with_libs}" != x && test x"${with_libs}" != xno ; then
+ if test x${is_cross_compiler} = xno ; then
+ echo 1>&2 '***' --with-libs is only supported when cross compiling
+ exit 1
+ fi
+ if test x"${with_libs}" != xyes ; then
+ # Copy the libraries in reverse order, so that files in the first named
+ # library override files in subsequent libraries.
+ case "${exec_prefixoption}" in
+ "") x=${prefix} ;;
+ *) x=${exec_prefix} ;;
+ esac
+ for l in ${with_libs}; do
+ copy_dirs="$l $x/${target_alias}/lib ${copy_dirs}"
+ done
+ fi
+fi
- echo "Linked \"${link}\" to \"${srcfile}\"."
+# Handle ${copy_dirs}
+set fnord ${copy_dirs}
+shift
+while test $# != 0 ; do
+ if test -f $2/COPIED && test x"`cat $2/COPIED`" = x"$1" ; then
+ :
+ else
+ echo Copying $1 to $2
+
+ # Use the install script to create the directory and all required
+ # parent directories.
+ if test -d $2 ; then
+ :
+ else
+ echo >config.temp
+ ${srcdir}/install-sh -c -m 644 config.temp $2/COPIED
+ fi
+
+ # Copy the directory, assuming we have tar.
+ # FIXME: Should we use B in the second tar? Not all systems support it.
+ (cd $1; tar -cf - .) | (cd $2; tar -xpf -)
+
+ # It is the responsibility of the user to correctly adjust all
+ # symlinks. If somebody can figure out how to handle them correctly
+ # here, feel free to add the code.
+
+ echo $1 > $2/COPIED
+ fi
+ shift; shift
done
+extra_arflags_for_target=
+extra_nmflags_for_target=
+extra_ranlibflags_for_target=
+target_makefile_frag=/dev/null
+case "${target}" in
+ i[[3456789]]86-*-netware*)
+ target_makefile_frag="config/mt-netware"
+ ;;
+ powerpc-*-netware*)
+ target_makefile_frag="config/mt-netware"
+ ;;
+ *-*-linux*)
+ target_makefile_frag="config/mt-linux"
+ ;;
+ *-*-aix4.[[3456789]]* | *-*-aix[[56789]].*)
+ # nm and ar from AIX 4.3 and above require -X32_64 flag to all ar and nm
+ # commands to handle both 32-bit and 64-bit objects. These flags are
+ # harmless if we're using GNU nm or ar.
+ extra_arflags_for_target=" -X32_64"
+ extra_nmflags_for_target=" -B -X32_64"
+ ;;
+ *-*-darwin*)
+ # ranlib from Darwin requires the -c flag to look at common symbols.
+ extra_ranlibflags_for_target=" -c"
+ ;;
+ mips*-*-pe | sh*-*-pe | *arm-wince-pe)
+ target_makefile_frag="config/mt-wince"
+ ;;
+esac
+
+alphaieee_frag=/dev/null
+case $target in
+ alpha*-*-*)
+ # This just makes sure to use the -mieee option to build target libs.
+ # This should probably be set individually by each library.
+ alphaieee_frag="config/mt-alphaieee"
+ ;;
+esac
+
+# If --enable-target-optspace always use -Os instead of -O2 to build
+# the target libraries, similarly if it is not specified, use -Os
+# on selected platforms.
+ospace_frag=/dev/null
+case "${enable_target_optspace}:${target}" in
+ yes:*)
+ ospace_frag="config/mt-ospace"
+ ;;
+ :d30v-*)
+ ospace_frag="config/mt-d30v"
+ ;;
+ :m32r-* | :d10v-* | :fr30-*)
+ ospace_frag="config/mt-ospace"
+ ;;
+ no:* | :*)
+ ;;
+ *)
+ echo "*** bad value \"${enable_target_optspace}\" for --enable-target-optspace flag; ignored" 1>&2
+ ;;
+esac
+
+# Set with_gnu_as and with_gnu_ld as appropriate.
+#
+# This is done by determining whether or not the appropriate directory
+# is available, and by checking whether or not specific configurations
+# have requested that this magic not happen.
+#
+# The command line options always override the explicit settings in
+# configure.in, and the settings in configure.in override this magic.
+#
+# If the default for a toolchain is to use GNU as and ld, and you don't
+# want to do that, then you should use the --without-gnu-as and
+# --without-gnu-ld options for the configure script.
+
+if test x${use_gnu_as} = x &&
+ echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
+ with_gnu_as=yes
+ extra_host_args="$extra_host_args --with-gnu-as"
+fi
+
+if test x${use_gnu_ld} = x &&
+ echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
+ with_gnu_ld=yes
+ extra_host_args="$extra_host_args --with-gnu-ld"
+fi
+
+# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
+# can detect this case.
+
+if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
+ with_newlib=yes
+ extra_host_args="$extra_host_args --with-newlib"
+fi
+
+
+# Default to using --with-stabs for certain targets.
+if test x${with_stabs} = x ; then
+ case "${target}" in
+ mips*-*-irix[[56]]*)
+ ;;
+ mips*-*-* | alpha*-*-osf*)
+ with_stabs=yes;
+ extra_host_args="${extra_host_args} --with-stabs"
+ ;;
+ esac
+fi
+
+# hpux11 in 64bit mode has libraries in a weird place. Arrange to find
+# them automatically.
+case "${host}" in
+ hppa*64*-*-hpux11*)
+ extra_host_args="$extra_host_args -x-libraries=/usr/lib/pa20_64 -x-includes=/usr/X11R6/include"
+ ;;
+esac
+
+# Some systems (e.g., one of the i386-aix systems the gas testers are
+# using) don't handle "\$" correctly, so don't use it here.
+tooldir='${exec_prefix}'/${target_alias}
+build_tooldir=${tooldir}
+
+# Generate default definitions for YACC, M4, LEX. These are used if the
+# Makefile can't locate these programs in objdir.
+MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
+AC_CHECK_PROGS([DEFAULT_YACC], ['bison -y' byacc yacc], [$MISSING bison])
+AC_CHECK_PROGS([DEFAULT_M4], [gm4 gnum4 m4], [$MISSING m4])
+AC_CHECK_PROGS([DEFAULT_LEX], [flex lex], [$MISSING flex])
+
# Create a .gdbinit file which runs the one in srcdir
# and tells GDB to look there for source files.
# Base args. Strip norecursion, cache-file, srcdir, host, build,
# target and nonopt. These are the ones we might not want to pass
-# down to subconfigures.
+# down to subconfigures. Also strip program-prefix, program-suffix,
+# and program-transform-name, so that we can pass down a consistent
+# program-transform-name. If autoconf has put single quotes around
+# any of these arguments (because they contain shell metacharacters)
+# then this will fail; in practice this only happens for
+# --program-transform-name, so be sure to override --program-transform-name
+# at the end of the argument list.
+# These will be expanded by make, so quote '$'.
cat <<\EOF_SED > conftestsed
-s/ --no[[^ ]]* / /
-s/ --c[[a-z-]]*[[= ]][[^ ]]* / /
-s/ --sr[[a-z-]]*[[= ]][[^ ]]* / /
-s/ --ho[[a-z-]]*[[= ]][[^ ]]* / /
-s/ --bu[[a-z-]]*[[= ]][[^ ]]* / /
-s/ --t[[a-z-]]*[[= ]][[^ ]]* / /
-s/ -cache-file[[= ]][[^ ]]* / /
-s/ -srcdir[[= ]][[^ ]]* / /
-s/ -host[[= ]][[^ ]]* / /
-s/ -build[[= ]][[^ ]]* / /
-s/ -target[[= ]][[^ ]]* / /
+s/ --no[[^ ]]*/ /g
+s/ --c[[a-z-]]*[[= ]][[^ ]]*//g
+s/ --sr[[a-z-]]*[[= ]][[^ ]]*//g
+s/ --ho[[a-z-]]*[[= ]][[^ ]]*//g
+s/ --bu[[a-z-]]*[[= ]][[^ ]]*//g
+s/ --t[[a-z-]]*[[= ]][[^ ]]*//g
+s/ --program-[[pst]][[a-z-]]*[[= ]][[^ ]]*//g
+s/ -cache-file[[= ]][[^ ]]*//g
+s/ -srcdir[[= ]][[^ ]]*//g
+s/ -host[[= ]][[^ ]]*//g
+s/ -build[[= ]][[^ ]]*//g
+s/ -target[[= ]][[^ ]]*//g
+s/ -program-prefix[[= ]][[^ ]]*//g
+s/ -program-suffix[[= ]][[^ ]]*//g
+s/ -program-transform-name[[= ]][[^ ]]*//g
s/ [[^' -][^ ]*] / /
s/^ *//;s/ *$//
-s,\\,\\\\,g; s,\$,$$,g
+s,\$,$$,g
EOF_SED
-baseargs=`echo " ${ac_configure_args} " | sed -fconftestsed`
-rm -f conftestsed
+sed -f conftestsed <<EOF_SED > conftestsed.out
+ ${ac_configure_args}
+EOF_SED
+baseargs=`cat conftestsed.out`
+rm -f conftestsed conftestsed.out
+
+# Add in --program-transform-name, after --program-prefix and
+# --program-suffix have been applied to it. Autoconf has already
+# doubled dollar signs and backslashes in program_transform_name; we want
+# the backslashes un-doubled, and then the entire thing wrapped in single
+# quotes, because this will be expanded first by make and then by the shell.
+# Also, because we want to override the logic in subdir configure scripts to
+# choose program_transform_name, replace any s,x,x, with s,y,y,.
+sed -e "s,\\\\\\\\,\\\\,g; s,','\\\\'',g; s/s,x,x,/s,y,y,/" <<EOF_SED > conftestsed.out
+${program_transform_name}
+EOF_SED
+gcc_transform_name=`cat conftestsed.out`
+rm -f conftestsed.out
+baseargs="$baseargs --program-transform-name='${gcc_transform_name}'"
# For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor
cache_file_option="--cache-file=../${cache_file}" ;;
esac
-host_configargs="${cache_file_option} --build=${build_alias} --host=${host_alias} --target=${target_alias} ${extra_host_args} ${baseargs}"
+# Host dirs don't like to share a cache file either, horribly enough.
+# This seems to be due to autoconf 2.5x stupidity.
+host_configargs="--cache-file=./config.cache --build=${build_alias} --host=${host_alias} --target=${target_alias} ${extra_host_args} ${baseargs}"
target_configargs=${baseargs}
target_configargs="--with-newlib ${target_configargs}"
fi
+# Different target subdirs use different values of certain variables
+# (notably CXX). Worse, multilibs use *lots* of different values.
+# Worse yet, autoconf 2.5x makes some of these 'precious', meaning that
+# it doesn't automatically accept command-line overrides of them.
+# This means it's not safe for target subdirs to share a cache file,
+# which is disgusting, but there you have it. Hopefully this can be
+# fixed in future. It's still worthwhile to use a cache file for each
+# directory. I think.
+
# Pass the appropriate --host, --build, and --cache-file arguments.
-target_configargs="--cache-file=../config.cache --host=${target_alias} --build=${build_alias} ${target_configargs}"
+target_configargs="--cache-file=./config.cache --host=${target_alias} --build=${build_alias} ${target_configargs}"
# provide a proper gxx_include_dir.
# Note, if you change the default, make sure to fix both here and in
;;
esac
+# Allow the user to override the flags for
+# our build compiler if desired.
+CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
+
# On Canadian crosses, we'll be searching the right directories for
# the previously-installed cross compiler, so don't bother to add
# flags for directories within the install tree of the compiler
# Don't use libstdc++-v3's flags to configure/build itself.
libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
-raw_libstdcxx_flags=' -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+raw_libstdcxx_flags='-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
if test "x${CXX_FOR_TARGET+set}" = xset; then
- :
+ if test "x${RAW_CXX_FOR_TARGET+set}" != xset; then
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+ fi
elif test -d ${srcdir}/gcc; then
# We add -shared-libgcc to CXX_FOR_TARGET whenever we use xgcc instead
# of g++ for linking C++ or Java, because g++ has -shared-libgcc by
AC_SUBST(RPATH_ENVVAR)
AC_SUBST(BUILD_PREFIX)
AC_SUBST(BUILD_PREFIX_1)
-AC_SUBST(configlinks)
AC_SUBST(gcc_version_trigger)
AC_SUBST(gcc_version)
AC_SUBST(tooldir)
AC_SUBST(CC)
AC_SUBST(CXX)
AC_SUBST(CFLAGS)
+AC_SUBST(CFLAGS_FOR_BUILD)
AC_SUBST(CXXFLAGS)
AC_SUBST(DEFAULT_YACC)
AC_SUBST(DEFAULT_LEX)
AC_SUBST(DEFAULT_M4)
# Target tools.
-NCN_STRICT_CHECK_TARGET_TOOL(AR_FOR_TARGET, ar)
-NCN_STRICT_CHECK_TARGET_TOOL(AS_FOR_TARGET, as)
-NCN_STRICT_CHECK_TARGET_TOOL(DLLTOOL_FOR_TARGET, dlltool)
-NCN_STRICT_CHECK_TARGET_TOOL(LD_FOR_TARGET, ld)
-NCN_STRICT_CHECK_TARGET_TOOL(NM_FOR_TARGET, nm)
-NCN_STRICT_CHECK_TARGET_TOOL(RANLIB_FOR_TARGET, ranlib, :)
-NCN_STRICT_CHECK_TARGET_TOOL(WINDRES_FOR_TARGET, windres)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AR_FOR_TARGET, ar)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AS_FOR_TARGET, as)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_DLLTOOL_FOR_TARGET, dlltool)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_LD_FOR_TARGET, ld)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_NM_FOR_TARGET, nm)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_RANLIB_FOR_TARGET, ranlib, :)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_WINDRES_FOR_TARGET, windres)
AC_SUBST(GCC_FOR_TARGET)
AC_SUBST(FLAGS_FOR_TARGET)
NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
+else
+ # Just use the ones we found.
+ AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)"
+ AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)"
+ DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)"
+ LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)"
+ NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)"
+ RANLIB_FOR_TARGET="\$(CONFIGURED_RANLIB_FOR_TARGET)"
+ WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)"
fi
+AC_SUBST(AR_FOR_TARGET)
+AC_SUBST(AS_FOR_TARGET)
+AC_SUBST(DLLTOOL_FOR_TARGET)
+AC_SUBST(LD_FOR_TARGET)
+AC_SUBST(NM_FOR_TARGET)
+AC_SUBST(RANLIB_FOR_TARGET)
+AC_SUBST(WINDRES_FOR_TARGET)
+
# Certain tools may need extra flags.
AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
MAINT=$MAINTAINER_MODE_TRUE
AC_SUBST(MAINT)dnl
+# ---------------------
+# GCC bootstrap support
+# ---------------------
+
+# Stage specific cflags for build.
+stage1_cflags="-g"
+case $build in
+ vax-*-*)
+ case ${GCC} in
+ yes) stage1_cflags="-g -Wa,-J" ;;
+ *) stage1_cflags="-g -J" ;;
+ esac ;;
+ powerpc-*-darwin*)
+ # The spiffy cpp-precomp chokes on some legitimate constructs in GCC
+ # sources; use -no-cpp-precomp to get to GNU cpp.
+ # Apple's GCC has bugs in designated initializer handling, so disable
+ # that too.
+ stage1_cflags="-g -no-cpp-precomp -DHAVE_DESIGNATED_INITIALIZERS=0"
+ ;;
+esac
+AC_SUBST(stage1_cflags)
+
+# Enable -Werror in bootstrap stage2 and later.
+# Change the default to "no" on release branches.
+AC_ARG_ENABLE(werror,
+[ --enable-werror enable -Werror in bootstrap stage2 and later], [],
+[enable_werror=yes])
+case ${enable_werror} in
+ yes) stage2_werror_flag="--enable-werror-always" ;;
+ *) stage2_werror_flag="" ;;
+esac
+AC_SUBST(stage2_werror_flag)
+
AC_OUTPUT(Makefile)