-subdirs=
-for lang in ${srcdir}/gcc/*/config-lang.in ..
-do
- case $lang in
- ..) ;;
- # The odd quoting in the next line works around
- # an apparent bug in bash 1.12 on linux.
- ${srcdir}/gcc/[[*]]/config-lang.in) ;;
- *)
- lang_alias=`sed -n -e 's,^language=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^language=\([[^ ]]*\).*$,\1,p' $lang`
- this_lang_libs=`sed -n -e 's,^target_libs=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^target_libs=\([[^ ]]*\).*$,\1,p' $lang`
- this_lang_dirs=`sed -n -e 's,^lang_dirs=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^lang_dirs=\([[^ ]]*\).*$,\1,p' $lang`
- build_by_default=`sed -n -e 's,^build_by_default=[['"'"'"'"]]\(.*\)[["'"'"'"']].*$,\1,p' -e 's,^build_by_default=\([[^ ]]*\).*$,\1,p' $lang`
- if test "x$lang_alias" = x
- then
- echo "$lang doesn't set \$language." 1>&2
- exit 1
- fi
- case ${build_by_default},${enable_languages}, in
- *,$lang_alias,*) add_this_lang=yes ;;
- no,*) add_this_lang=no ;;
- *,all,*) add_this_lang=yes ;;
- *) add_this_lang=no ;;
- esac
- if test x"${add_this_lang}" = xyes; then
- eval target_libs='"$target_libs "'\"$this_lang_libs\"
- else
- eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs $this_lang_dirs\"
- fi
- ;;
- esac
-done
+# 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.
+if test -z "${CC}" && test "${build}" = "${host}" ; then
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
+ found=
+ for dir in $PATH; do
+ test -z "$dir" && dir=.
+ if test -f $dir/gcc; then
+ found=yes
+ break
+ fi
+ done
+ IFS="$save_ifs"
+ if test -z "${found}" && test -n "${tentative_cc}" ; then
+ CC=$tentative_cc
+ fi
+fi
+
+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.
+
+ CC=${CC-${host_alias}-gcc}
+ CFLAGS=${CFLAGS-"-g -O2"}
+ CXX=${CXX-${host_alias}-c++}
+ CXXFLAGS=${CXXFLAGS-"-g -O2"}
+ CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
+ CC_FOR_TARGET=${CC_FOR_TARGET-${target_alias}-gcc}
+ CXX_FOR_TARGET=${CXX_FOR_TARGET-${target_alias}-c++}
+ GCJ_FOR_TARGET=${GCJ_FOR_TARGET-${target_alias}-gcj}
+ GCC_FOR_TARGET=${GCC_FOR_TARGET-${CC_FOR_TARGET-${target_alias}-gcc}}
+ BUILD_DIR_PREFIX=${build_subdir}
+ BUILD_PREFIX=${build_alias}-
+ BUILD_PREFIX_1=${build_alias}-
+
+else
+ # Set reasonable default values for some tools even if not Canadian.
+ # Of course, these are different reasonable default values, originally
+ # specified directly in the Makefile.
+ # We don't export, so that autoconf can do its job.
+ # Note that all these settings are above the fragment inclusion point
+ # in Makefile.in, so can still be overridden by fragments.
+ # This is all going to change when we autoconfiscate...
+
+ CC_FOR_BUILD="\$(CC)"
+ GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
+ BUILD_DIR_PREFIX=
+ BUILD_PREFIX=
+ BUILD_PREFIX_1=loser-
+
+ AC_PROG_CC
+
+ # We must set the default linker to the linker used by gcc for the correct
+ # operation of libtool. If LD is not defined and we are using gcc, try to
+ # set the LD default to the ld used by gcc.
+ if test -z "$LD"; then
+ if test "$GCC" = yes; then
+ case $build in
+ *-*-mingw*)
+ gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'` ;;
+ *)
+ gcc_prog_ld=`$CC -print-prog-name=ld 2>&1` ;;
+ esac
+ case $gcc_prog_ld in
+ # Accept absolute paths.
+ [[\\/]* | [A-Za-z]:[\\/]*)]
+ LD="$gcc_prog_ld" ;;
+ esac
+ fi
+ fi
+
+ CXX=${CXX-"c++"}
+ CFLAGS=${CFLAGS-"-g"}
+ CXXFLAGS=${CXXFLAGS-"-g -O2"}
+fi
+
+ACX_PROG_GNAT
+ACX_PROG_CMP_IGNORE_INITIAL
+
+# Check for GMP and MPFR
+gmplibs=
+gmpinc=
+have_gmp=yes
+# Specify a location for mpfr
+# check for this first so it ends up on the link line before gmp.
+AC_ARG_WITH(mpfr-dir, [ --with-mpfr-dir=PATH Specify source directory for MPFR library])
+
+if test "x$with_mpfr_dir" != x; then
+ gmpinc="-I$with_mpfr_dir/mpfr"
+ gmplibs="$with_mpfr_dir/libmpfr.a"
+else
+ gmplibs="-lmpfr"
+fi
+
+AC_ARG_WITH(mpfr, [ --with-mpfr=PATH Specify directory for installed MPFR library])
+
+if test "x$with_mpfr" != x; then
+ gmplibs="-L$with_mpfr/lib $gmplibs"
+ gmpinc="-I$with_mpfr/include"
+fi
+
+# Specify a location for gmp
+AC_ARG_WITH(gmp-dir, [ --with-gmp-dir=PATH Specify source directory for GMP library])
+
+if test "x$with_gmp_dir" != x; then
+ gmpinc="$gmpinc -I$with_gmp_dir"
+ if test -f "$with_gmp_dir/.libs/libgmp.a"; then
+ gmplibs="$gmplibs $with_gmp_dir/.libs/libgmp.a"
+ elif test -f "$with_gmp_dir/_libs/libgmp.a"; then
+ gmplibs="$gmplibs $with_gmp_dir/_libs/libgmp.a"
+ fi
+ # One of the later tests will catch the error if neither library is present.
+else
+ gmplibs="$gmplibs -lgmp"
+fi
+
+AC_ARG_WITH(gmp, [ --with-gmp=PATH Specify directory for installed GMP library])
+
+if test "x$with_gmp" != x; then
+ gmplibs="-L$with_gmp/lib $gmplibs"
+ gmpinc="-I$with_gmp/include $gmpinc"
+fi
+
+saved_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $gmpinc"
+# Check GMP actually works
+AC_MSG_CHECKING([for correct version of gmp.h])
+AC_TRY_COMPILE([#include "gmp.h"],[
+#if __GNU_MP_VERSION < 3
+choke me
+#endif
+], [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no]); have_gmp=no])
+
+if test x"$have_gmp" = xyes; then
+ AC_MSG_CHECKING([for MPFR])
+
+ saved_LIBS="$LIBS"
+ LIBS="$LIBS $gmplibs"
+ AC_TRY_LINK([#include <gmp.h>
+#include <mpfr.h>], [mpfr_t n; mpfr_init(n);],
+ [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); have_gmp=no])
+ LIBS="$saved_LIBS"
+ CFLAGS="$saved_CFLAGS"
+fi
+
+# Flags needed for both GMP and/or MPFR
+AC_SUBST(gmplibs)
+AC_SUBST(gmpinc)
+
+# 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
+ 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
+
+ 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=
+ need_gmp=
+ . ${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
+
+ # Disable language that need GMP if it isn't available.
+ if test x"$need_gmp" = xyes && test x"$have_gmp" = xno; then
+ add_this_lang=no
+ fi
+
+ 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