X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=configure;h=7c313e28c4c77da6e4752bc8376e95b3f4458c39;hb=68a8559758c79ba82b8e6c516cfb2c133a7232fc;hp=720fa239c0527fad5ae1ef17577c3017b173a20a;hpb=7b5fee3edd77803ca6c5b0ed9d4c06a556d14450;p=pf3gnuchains%2Fgcc-fork.git diff --git a/configure b/configure index 720fa239c05..7c313e28c4c 100755 --- a/configure +++ b/configure @@ -619,11 +619,9 @@ CFLAGS_FOR_BUILD CC_FOR_BUILD AS_FOR_BUILD AR_FOR_BUILD -target_configargs +target_configdirs configdirs -host_configargs build_configdirs -build_configargs INSTALL_GDB_TK GDB_TK CONFIGURE_GDB_TK @@ -631,18 +629,22 @@ build_tooldir tooldir GCC_SHLIB_SUBDIR RPATH_ENVVAR +target_configargs +host_configargs +build_configargs BUILD_CONFIG CXXFLAGS_FOR_TARGET CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET SYSROOT_CFLAGS_FOR_TARGET stage1_languages +extra_host_libiberty_configure_flags clooginc clooglibs pplinc ppllibs -poststage1_libs poststage1_ldflags +poststage1_libs stage1_libs stage1_ldflags extra_mpc_mpfr_configure_flags @@ -754,8 +756,8 @@ with_gmp_lib with_host_libstdcxx with_stage1_ldflags with_stage1_libs -with_boot_ldflags with_boot_libs +with_boot_ldflags with_ppl with_ppl_include with_ppl_lib @@ -764,6 +766,7 @@ with_cloog with_cloog_include with_cloog_lib enable_cloog_version_check +enable_lto enable_stage1_languages enable_objc_gc with_build_sysroot @@ -787,6 +790,9 @@ CPPFLAGS CXX CXXFLAGS CCC +build_configargs +host_configargs +target_configargs AR AS DLLTOOL @@ -1342,6 +1348,11 @@ fi case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac +case $srcdir in + *" "*) + as_fn_error "path to source, $srcdir, contains spaces" + ;; +esac ac_subdirs_all=`cd $srcdir && echo */configure | sed 's,/configure,,g'` for ac_var in $ac_precious_vars; do @@ -1435,12 +1446,13 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-gold use gold instead of ld + --enable-gold[=ARG] build gold [ARG={both}[/{gold,ld}]] --enable-libada build libada directory --enable-libssp build libssp directory --enable-build-with-cxx build with C++ compiler instead of C compiler --disable-ppl-version-check disable check for PPL version --disable-cloog-version-check disable check for CLooG version + --enable-lto enable link time optimization support --enable-stage1-languages[=all] choose additional languages to build during stage1. Mostly useful for compiler development. --enable-objc-gc enable use of Boehm's garbage collector with the @@ -1483,8 +1495,8 @@ Optional Packages: when linking with PPL --with-stage1-ldflags=FLAGS Linker flags for stage1 -with-stage1-libs=LIBS Libraries for stage1 - --with-boot-ldflags=FLAGS Linker flags for stage2 and later --with-boot-libs=LIBS Libraries for stage2 and later + --with-boot-ldflags=FLAGS Linker flags for stage2 and later --with-ppl=PATH Specify prefix directory for the installed PPL package Equivalent to --with-ppl-include=PATH/include plus --with-ppl-lib=PATH/lib @@ -1514,6 +1526,12 @@ Some influential environment variables: you have headers in a nonstandard directory CXX C++ compiler command CXXFLAGS C++ compiler flags + build_configargs + additional configure arguments for build directories + host_configargs + additional configure arguments for host directories + target_configargs + additional configure arguments for target directories AR AR for the host AS AS for the host DLLTOOL DLLTOOL for the host @@ -2642,14 +2660,14 @@ build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fix # these libraries are used by various programs built for the host environment # -host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber gmp mpfr mpc ppl cloog libiconv" +host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber gmp mpfr mpc ppl cloog libelf libiconv" # these tools are built for the host environment # Note, the powerpc-eabi build depends on sim occurring before gdb in order to # know that we are building the simulator. # binutils, gas and ld appear in that order because it makes sense to run # "make check" in that particular order. -# If --enable-gold is used, "gold" will replace "ld". +# If --enable-gold is used, "gold" may replace "ld". host_tools="texinfo byacc flex bison binutils gas ld fixincludes gcc cgen 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 gnattools" # libgcj represents the runtime libraries only used by gcj. @@ -2743,6 +2761,11 @@ fi # No prefix. target_subdir=${target_noncanonical} +# Be sure to cover against remnants of an in-tree build. +if test $srcdir != . && test -d $srcdir/host-${host_noncanonical}; then + as_fn_error "building out of tree but $srcdir contains host-${host_noncanonical}. +Use a pristine source tree when building in a separate tree" "$LINENO" 5 +fi # Skipdirs are removed silently. skipdirs= @@ -2763,6 +2786,13 @@ if test x$with_gnu_as = xno ; then noconfigdirs="$noconfigdirs gas" fi +use_included_zlib= +# Make sure we don't let ZLIB be added if we didn't want it. +if test x$with_system_zlib = xyes ; then + use_included_zlib=no + noconfigdirs="$noconfigdirs zlib" +fi + # some tools are so dependent upon X11 that if we're not building with X, # it's not even worth trying to configure, much less build, that tool. @@ -2805,6 +2835,11 @@ case ${with_newlib} in esac # Handle --enable-gold. +# --enable-gold Build only gold +# --disable-gold [default] Build only ld +# --enable-gold=both Build both gold and ld, ld is default +# --enable-gold=both/ld Same +# --enable-gold=both/gold Build both gold and ld, gold is default, ld is renamed ld.bfd # Check whether --enable-gold was given. if test "${enable_gold+set}" = set; then : @@ -2813,32 +2848,47 @@ else ENABLE_GOLD=no fi -if test "${ENABLE_GOLD}" = "yes"; then - # Check for ELF target. - is_elf=no - case "${target}" in - *-*-elf* | *-*-sysv4* | *-*-unixware* | *-*-eabi* | hppa*64*-*-hpux* \ - | *-*-linux* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \ - | *-*-netbsd* | *-*-openbsd* | *-*-freebsd* | *-*-solaris2* | *-*-nto*) + case "${ENABLE_GOLD}" in + yes|both|both/gold|both/ld) + # Check for ELF target. + is_elf=no + case "${target}" in + *-*-elf* | *-*-sysv4* | *-*-unixware* | *-*-eabi* | hppa*64*-*-hpux* \ + | *-*-linux* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \ + | *-*-netbsd* | *-*-openbsd* | *-*-freebsd* | *-*-solaris2* | *-*-nto*) + case "${target}" in + *-*-linux*aout* | *-*-linux*oldld*) + ;; + *) + is_elf=yes + ;; + esac + esac + + if test "$is_elf" = "yes"; then + # Check for target supported by gold. case "${target}" in - *-*-linux*aout* | *-*-linux*oldld*) - ;; - *) - is_elf=yes + i?86-*-* | x86_64-*-* | sparc*-*-* | powerpc*-*-* | arm*-*-*) + case "${ENABLE_GOLD}" in + both*) + configdirs="$configdirs gold" + ;; + *) + configdirs=`echo " ${configdirs} " | sed -e 's/ ld / gold /'` + ;; + esac + ENABLE_GOLD=yes ;; esac + fi + ;; + no) + ;; + *) + as_fn_error "invalid --enable-gold argument" "$LINENO" 5 + ;; esac - if test "$is_elf" = "yes"; then - # Check for target supported by gold. - case "${target}" in - i?86-*-* | x86_64-*-* | sparc*-*-* | powerpc*-*-* | arm*-*-*) - configdirs="`echo " ${configdirs} " | sed -e 's/ ld / gold /'`" - ;; - esac - fi -fi - # Configure extra directories which are host specific case "${host}" in @@ -2997,6 +3047,7 @@ case "${target}" in case "${target}" in i*86-*-*) ;; alpha*-*-*) ;; + x86_64-*-*) ;; *) noconfigdirs="$noconfigdirs ${libgcj}" ;; @@ -3026,6 +3077,7 @@ case "${target}" in noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap" ;; *-*-rtems*) + skipdirs="${skipdirs} target-libiberty" noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; # The tpf target doesn't support gdb yet. @@ -3045,7 +3097,7 @@ case "${target}" in noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss" ;; alpha*-*-*vms*) - noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}" ;; alpha*-*-linux*) # newlib is not 64 bit ready @@ -3246,12 +3298,14 @@ case "${target}" in # if the --with-newlib option has been given, because otherwise # 'target-newlib' will appear in skipdirs. ;; - i[3456789]86-*-mingw32*) + i[3456789]86-w64-mingw*) + noconfigdirs="$noconfigdirs expect target-libgloss target-newlib ${libgcj}" + ;; + i[3456789]86-*-mingw*) target_configdirs="$target_configdirs target-winsup" noconfigdirs="$noconfigdirs expect target-libgloss target-newlib ${libgcj}" ;; x86_64-*-mingw*) - target_configdirs="$target_configdirs target-winsup" noconfigdirs="$noconfigdirs expect target-libgloss target-newlib ${libgcj}" ;; *-*-cygwin*) @@ -3362,7 +3416,7 @@ case "${target}" in noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}" ;; microblaze*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" + noconfigdirs="$noconfigdirs gprof target-libssp ${libgcj}" ;; mips*-sde-elf*) skipdirs="$skipdirs target-libiberty" @@ -3436,17 +3490,14 @@ case "${target}" in ;; sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*) ;; + tic6x-*-*) + noconfigdirs="$noconfigdirs gdb sim ${libgcj}" + ;; v810-*-*) noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}" ;; - v850-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" - ;; - v850e-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" - ;; - v850ea-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" + v850*-*-*) + noconfigdirs="$noconfigdirs ${libgcj}" ;; vax-*-vms) noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}" @@ -3592,7 +3643,7 @@ case "${host}" in { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if cat works as expected" >&5 $as_echo_n "checking to see if cat works as expected... " >&6; } echo a >cygwin-cat-check -if test `cat cygwin-cat-check` == a ; then +if test `cat cygwin-cat-check` = a ; then rm cygwin-cat-check { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } @@ -3647,8 +3698,8 @@ fi tentative_cc="/usr/cygnus/progressive/bin/gcc" host_makefile_frag="config/mh-lynxrs6k" ;; - powerpc-*-darwin*) - host_makefile_frag="config/mh-ppc-darwin" + *-*-darwin*) + host_makefile_frag="config/mh-darwin" ;; powerpc-*-aix*) host_makefile_frag="config/mh-ppc-aix" @@ -5019,13 +5070,40 @@ else fi +# Used for setting $lt_cv_objdir +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if test "${lt_cv_objdir+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } +objdir=$lt_cv_objdir + + + + + +cat >>confdefs.h <<_ACEOF +#define LT_OBJDIR "$lt_cv_objdir/" +_ACEOF + + + # Check for GMP, MPFR and MPC -gmplibs="-lmpfr -lgmp" +gmplibs="-lmpc -lmpfr -lgmp" gmpinc= have_gmp=no -mpclibs=-lmpc -mpcinc= -have_mpc=no # Specify a location for mpc # check for this first so it ends up on the link line before mpfr. @@ -5049,23 +5127,23 @@ fi if test "x$with_mpc" != x; then - mpclibs="-L$with_mpc/lib -lmpc" - mpcinc="-I$with_mpc/include $mpcinc" + gmplibs="-L$with_mpc/lib $gmplibs" + gmpinc="-I$with_mpc/include $gmpinc" fi if test "x$with_mpc_include" != x; then - mpcinc="-I$with_mpc_include $mpcinc" + gmpinc="-I$with_mpc_include $gmpinc" fi if test "x$with_mpc_lib" != x; then - mpclibs="-L$with_mpc_lib -lmpc" + gmplibs="-L$with_mpc_lib $gmplibs" fi if test "x$with_mpc$with_mpc_include$with_mpc_lib" = x && test -d ${srcdir}/mpc; then - mpclibs='-L$$r/$(HOST_SUBDIR)/mpc/src/.libs -L$$r/$(HOST_SUBDIR)/mpc/src/_libs -lmpc' - mpcinc='-I$$s/mpc/src '"$mpcinc" + gmplibs='-L$$r/$(HOST_SUBDIR)/mpc/src/'"$lt_cv_objdir $gmplibs" + gmpinc='-I$$s/mpc/src '"$gmpinc" # Do not test the mpc version. Assume that it is sufficient, since # it is in the source tree, and the library has not been built yet # but it would be included on the link line in the version check below # hence making the test fail. - have_mpc=yes + have_gmp=yes fi # Specify a location for mpfr @@ -5099,18 +5177,18 @@ fi if test "x$with_mpfr" != x; then gmplibs="-L$with_mpfr/lib $gmplibs" - gmpinc="-I$with_mpfr/include" + gmpinc="-I$with_mpfr/include $gmpinc" fi if test "x$with_mpfr_include" != x; then - gmpinc="-I$with_mpfr_include" + gmpinc="-I$with_mpfr_include $gmpinc" fi if test "x$with_mpfr_lib" != x; then gmplibs="-L$with_mpfr_lib $gmplibs" fi if test "x$with_mpfr$with_mpfr_include$with_mpfr_lib" = x && test -d ${srcdir}/mpfr; then - gmplibs='-L$$r/$(HOST_SUBDIR)/mpfr/.libs -L$$r/$(HOST_SUBDIR)/mpfr/_libs '"$gmplibs" + gmplibs='-L$$r/$(HOST_SUBDIR)/mpfr/'"$lt_cv_objdir $gmplibs" gmpinc='-I$$r/$(HOST_SUBDIR)/mpfr -I$$s/mpfr '"$gmpinc" - extra_mpc_mpfr_configure_flags='--with-mpfr-include=$$s/mpfr' + extra_mpc_mpfr_configure_flags='--with-mpfr-include=$$s/mpfr --with-mpfr-lib=$$r/$(HOST_SUBDIR)/mpfr/'"$lt_cv_objdir" # Do not test the mpfr version. Assume that it is sufficient, since # it is in the source tree, and the library has not been built yet # but it would be included on the link line in the version check below @@ -5158,10 +5236,10 @@ if test "x$with_gmp_lib" != x; then gmplibs="-L$with_gmp_lib $gmplibs" fi if test "x$with_gmp$with_gmp_include$with_gmp_lib" = x && test -d ${srcdir}/gmp; then - gmplibs='-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/gmp/_libs '"$gmplibs" + gmplibs='-L$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir $gmplibs" gmpinc='-I$$r/$(HOST_SUBDIR)/gmp -I$$s/gmp '"$gmpinc" - extra_mpfr_configure_flags='--with-gmp-build=$$r/$(HOST_SUBDIR)/gmp' - extra_mpc_gmp_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp' + extra_mpfr_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir" + extra_mpc_gmp_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir" # Do not test the gmp version. Assume that it is sufficient, since # it is in the source tree, and the library has not been built yet # but it would be included on the link line in the version check below @@ -5173,9 +5251,9 @@ if test -d ${srcdir}/gcc && test "x$have_gmp" = xno; then have_gmp=yes saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $gmpinc" - # Check GMP actually works - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct version of gmp.h" >&5 -$as_echo_n "checking for correct version of gmp.h... " >&6; } + # Check for the recommended and required versions of GMP. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of gmp.h" >&5 +$as_echo_n "checking for the correct version of gmp.h... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5184,7 +5262,27 @@ int main () { - #if __GNU_MP_VERSION < 4 || (__GNU_MP_VERSION == 4 && __GNU_MP_VERSION_MINOR < 2) + #define GCC_GMP_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c)) + #define GCC_GMP_VERSION GCC_GMP_VERSION_NUM(__GNU_MP_VERSION,__GNU_MP_VERSION_MINOR,__GNU_MP_VERSION_PATCHLEVEL) + #if GCC_GMP_VERSION < GCC_GMP_VERSION_NUM(4,2,0) + choke me + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + #define GCC_GMP_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c)) + #define GCC_GMP_VERSION GCC_GMP_VERSION_NUM(__GNU_MP_VERSION,__GNU_MP_VERSION_MINOR,__GNU_MP_VERSION_PATCHLEVEL) + #if GCC_GMP_VERSION < GCC_GMP_VERSION_NUM(4,3,2) choke me #endif @@ -5196,6 +5294,11 @@ if ac_fn_c_try_compile "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy but acceptable" >&5 +$as_echo "buggy but acceptable" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; }; have_gmp=no fi @@ -5203,8 +5306,9 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext # If we have GMP, check the MPFR version. if test x"$have_gmp" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct version of mpfr.h" >&5 -$as_echo_n "checking for correct version of mpfr.h... " >&6; } + # Check for the recommended and required versions of MPFR. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of mpfr.h" >&5 +$as_echo_n "checking for the correct version of mpfr.h... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -5230,7 +5334,7 @@ int main () { - #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,2) + #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,2) choke me #endif @@ -5254,8 +5358,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi # Check for the MPC header version. - if test x"$have_mpc" != xyes ; then - CFLAGS="$CFLAGS $mpcinc" + if test x"$have_gmp" = xyes ; then + # Check for the recommended and required versions of MPC. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of mpc.h" >&5 $as_echo_n "checking for the correct version of mpc.h... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -5265,7 +5369,23 @@ int main () { - #if MPC_VERSION < MPC_VERSION_NUM (0,6,0) + #if MPC_VERSION < MPC_VERSION_NUM(0,8,0) + choke me + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + #if MPC_VERSION < MPC_VERSION_NUM(0,8,1) choke me #endif @@ -5275,10 +5395,15 @@ main () _ACEOF if ac_fn_c_try_compile "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; }; have_mpc=maybe +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy but acceptable" >&5 +$as_echo "buggy but acceptable" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; have_mpc=no; mpclibs= ; mpcinc= +$as_echo "no" >&6; }; have_gmp=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi @@ -5287,24 +5412,32 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test x"$have_gmp" = xyes; then saved_LIBS="$LIBS" LIBS="$LIBS $gmplibs" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of the gmp/mpfr libraries" >&5 -$as_echo_n "checking for the correct version of the gmp/mpfr libraries... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of the gmp/mpfr/mpc libraries" >&5 +$as_echo_n "checking for the correct version of the gmp/mpfr/mpc libraries... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include +#include int main () { mpfr_t n; mpfr_t x; + mpc_t c; int t; mpfr_init (n); mpfr_init (x); mpfr_atan2 (n, n, x, GMP_RNDN); mpfr_erfc (n, x, GMP_RNDN); mpfr_subnormalize (x, t, GMP_RNDN); + mpfr_clear(n); + mpfr_clear(x); + mpc_init2 (c, 53); + mpc_set_ui_ui (c, 1, 1, MPC_RNDNN); + mpc_cosh (c, c, MPC_RNDNN); + mpc_pow (c, c, c, MPC_RNDNN); + mpc_acosh (c, c, MPC_RNDNN); + mpc_clear (c); ; return 0; @@ -5322,73 +5455,23 @@ rm -f core conftest.err conftest.$ac_objext \ LIBS="$saved_LIBS" fi - if test x"$have_mpc" = xmaybe; then - saved_LIBS="$LIBS" - LIBS="$LIBS $mpclibs $gmplibs" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the correct version of the mpc library" >&5 -$as_echo_n "checking for the correct version of the mpc library... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ - - mpc_t n; - mpc_init2 (n, 53); - mpc_set_ui_ui (n, 1, 1, MPC_RNDNN); - mpc_sin (n, n, MPC_RNDNN); - mpc_cos (n, n, MPC_RNDNN); - mpc_tan (n, n, MPC_RNDNN); - mpc_sinh (n, n, MPC_RNDNN); - mpc_cosh (n, n, MPC_RNDNN); - mpc_tanh (n, n, MPC_RNDNN); - mpc_exp (n, n, MPC_RNDNN); - mpc_log (n, n, MPC_RNDNN); - mpc_sqrt (n, n, MPC_RNDNN); - mpc_proj (n, n, MPC_RNDNN); - mpc_neg (n, n, MPC_RNDNN); - mpc_sqr (n, n, MPC_RNDNN); - mpc_clear (n); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; }; have_mpc=yes -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; have_mpc=no; mpclibs= ; mpcinc= -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$saved_LIBS" - fi - CFLAGS="$saved_CFLAGS" +# The library versions listed in the error message below should match +# the HARD-minimums enforced above. if test x$have_gmp != xyes; then - as_fn_error "Building GCC requires GMP 4.2+ and MPFR 2.3.2+. -Try the --with-gmp and/or --with-mpfr options to specify their locations. -Copies of these libraries' source code can be found at their respective -hosting sites as well as at ftp://gcc.gnu.org/pub/gcc/infrastructure/. -See also http://gcc.gnu.org/install/prerequisites.html for additional info. -If you obtained GMP and/or MPFR from a vendor distribution package, make -sure that you have installed both the libraries and the header files. -They may be located in separate packages." "$LINENO" 5 + as_fn_error "Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+. +Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify +their locations. Source code for these libraries can be found at +their respective hosting sites as well as at +ftp://gcc.gnu.org/pub/gcc/infrastructure/. See also +http://gcc.gnu.org/install/prerequisites.html for additional info. If +you obtained GMP, MPFR and/or MPC from a vendor distribution package, +make sure that you have installed both the libraries and the header +files. They may be located in separate packages." "$LINENO" 5 fi fi -if test x$have_mpc != xyes ; then - mpcinc= - mpclibs= -fi - -gmpinc="$mpcinc $gmpinc" -gmplibs="$mpclibs $gmplibs" - # Flags needed for both GMP, MPFR and/or MPC. @@ -5440,25 +5523,6 @@ fi -# Linker flags to use for stage2 and later builds. - -# Check whether --with-boot-ldflags was given. -if test "${with_boot_ldflags+set}" = set; then : - withval=$with_boot_ldflags; if test "$withval" = "no" -o "$withval" = "yes"; then - poststage1_ldflags= - else - poststage1_ldflags=$withval - fi -else - if test "$ENABLE_BUILD_WITH_CXX" = "yes"; then - poststage1_ldflags=-static-libstdc++ - else - poststage1_ldflags= - fi -fi - - - # Libraries to use for stage2 and later builds. This defaults to the # argument passed to --with-host-libstdcxx. @@ -5475,9 +5539,28 @@ fi +# Linker flags to use for stage2 and later builds. + +# Check whether --with-boot-ldflags was given. +if test "${with_boot_ldflags+set}" = set; then : + withval=$with_boot_ldflags; if test "$withval" = "no" -o "$withval" = "yes"; then + poststage1_ldflags= + else + poststage1_ldflags=$withval + fi +else + poststage1_ldflags= + # With --enable-build-with-cxx, default to linking libstdc++ and + # libgcc statically. But if the user explicitly specified the + # libraries to use, trust that they are doing what they want. + if test "$ENABLE_BUILD_WITH_CXX" = "yes" -a "$poststage1_libs" = ""; then + poststage1_ldflags="-static-libstdc++ -static-libgcc" + fi +fi + + + # Check for PPL -ppl_major_version=0 -ppl_minor_version=10 ppllibs=" -lppl_c -lppl -lgmpxx" pplinc= @@ -5485,8 +5568,6 @@ pplinc= # Check whether --with-ppl was given. if test "${with_ppl+set}" = set; then : withval=$with_ppl; -else - with_ppl=no fi @@ -5506,10 +5587,11 @@ case $with_ppl in no) ppllibs= ;; + "" | yes) + ;; *) ppllibs="-L$with_ppl/lib -lppl_c -lppl -lgmpxx" pplinc="-I$with_ppl/include $pplinc" - LIBS="$ppllibs $LIBS" ;; esac if test "x$with_ppl_include" != x; then @@ -5517,12 +5599,11 @@ if test "x$with_ppl_include" != x; then fi if test "x$with_ppl_lib" != x; then ppllibs="-L$with_ppl_lib -lppl_c -lppl -lgmpxx" - LIBS="$ppllibs $LIBS" fi if test "x$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then - ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/.libs -L$$r/$(HOST_SUBDIR)/ppl/_libs -lppl_c -lppl -lgmpxx ' - pplinc='-I$$r/$(HOST_SUBDIR)/ppl/include -I$$s/ppl/include ' - LIBS="$ppllibs $LIBS" + ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/interfaces/C/'"$lt_cv_objdir"' -L$$r/$(HOST_SUBDIR)/ppl/src/'"$lt_cv_objdir"' -lppl_c -lppl -lgmpxx ' + pplinc='-I$$r/$(HOST_SUBDIR)/ppl/src -I$$r/$(HOST_SUBDIR)/ppl/interfaces/C ' + enable_ppl_version_check=no fi # Check whether --enable-ppl-version-check was given. @@ -5533,11 +5614,11 @@ else fi -if test "${ENABLE_PPL_CHECK}" = "yes"; then +if test "x$with_ppl" != "xno" -a "${ENABLE_PPL_CHECK}" = "yes"; then saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $pplinc $gmpinc" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version $ppl_major_version.$ppl_minor_version of PPL" >&5 -$as_echo_n "checking for version $ppl_major_version.$ppl_minor_version of PPL... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.10 (or later revision) of PPL" >&5 +$as_echo_n "checking for version 0.10 (or later revision) of PPL... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include "ppl_c.h" @@ -5545,7 +5626,7 @@ int main () { - #if PPL_VERSION_MAJOR != $ppl_major_version || PPL_VERSION_MINOR != $ppl_minor_version + #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 10 choke me #endif @@ -5558,7 +5639,7 @@ if ac_fn_c_try_compile "$LINENO"; then : $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; ppllibs= ; pplinc= +$as_echo "no" >&6; }; ppllibs= ; pplinc= ; with_ppl=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$saved_CFLAGS" @@ -5577,8 +5658,6 @@ clooginc=" -DCLOOG_PPL_BACKEND " # Check whether --with-cloog was given. if test "${with_cloog+set}" = set; then : withval=$with_cloog; -else - with_cloog=no fi @@ -5594,15 +5673,20 @@ if test "${with_cloog_lib+set}" = set; then : fi +if test "x$with_ppl" = "xno"; then + with_cloog=no +fi + case $with_cloog in no) clooglibs= clooginc= ;; + "" | yes) + ;; *) clooglibs="-L$with_cloog/lib -lcloog" clooginc="-I$with_cloog/include -DCLOOG_PPL_BACKEND " - LIBS="$clooglibs $LIBS" ;; esac if test "x$with_cloog_include" != x; then @@ -5610,12 +5694,11 @@ if test "x$with_cloog_include" != x; then fi if test "x$with_cloog_lib" != x; then clooglibs="-L$with_cloog_lib -lcloog" - LIBS="$clooglibs $LIBS" fi if test "x$with_cloog$with_cloog_include$with_cloog_lib" = x && test -d ${srcdir}/cloog; then - clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/.libs -L$$r/$(HOST_SUBDIR)/cloog/_libs -lcloog ' + clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' -lcloog ' clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include -DCLOOG_PPL_BACKEND ' - LIBS="$clooglibs $LIBS" + enable_cloog_version_check=no fi # Check whether --enable-cloog-version-check was given. @@ -5626,11 +5709,27 @@ else fi -if test "${ENABLE_CLOOG_CHECK}" = "yes"; then +if test "x$with_cloog" != "xno" -a "${ENABLE_CLOOG_CHECK}" = "yes"; then saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $clooginc $gmpinc $pplinc" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct version of CLooG" >&5 -$as_echo_n "checking for correct version of CLooG... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.15.5 (or later revision) of CLooG" >&5 +$as_echo_n "checking for version 0.15.5 (or later revision) of CLooG... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "cloog/cloog.h" +int +main () +{ + + #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 5 + choke me + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include "cloog/cloog.h" @@ -5638,7 +5737,7 @@ int main () { - #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 + #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 9 choke me #endif @@ -5650,6 +5749,11 @@ if ac_fn_c_try_compile "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy but acceptable" >&5 +$as_echo "buggy but acceptable" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; }; clooglibs= ; clooginc= fi @@ -5661,6 +5765,65 @@ fi +# Check for LTO support. +# Check whether --enable-lto was given. +if test "${enable_lto+set}" = set; then : + enableval=$enable_lto; enable_lto=$enableval +else + enable_lto=yes; default_enable_lto=yes +fi + + + + + +target_elf=no +case $target in + *-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \ + *-msdosdjgpp* | *-netware* | *-vms* | *-wince* | *-*-pe* | \ + alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux*) + target_elf=no + ;; + *) + target_elf=yes + ;; +esac + +if test $target_elf = yes; then : + # ELF platforms build the lto-plugin always. + build_lto_plugin=yes + +else + if test x"$default_enable_lto" = x"yes" ; then + case $target in + *-apple-darwin* | *-cygwin* | *-mingw*) ;; + # On other non-ELF platforms, LTO has yet to be validated. + *) enable_lto=no ;; + esac + else + # Apart from ELF platforms, only Windows and Darwin support LTO so far. + # It would also be nice to check the binutils support, but we don't + # have gcc_GAS_CHECK_FEATURE available here. For now, we'll just + # warn during gcc/ subconfigure; unless you're bootstrapping with + # -flto it won't be needed until after installation anyway. + case $target in + *-cygwin* | *-mingw* | *-apple-darwin*) ;; + *) if test x"$enable_lto" = x"yes"; then + as_fn_error "LTO support is not enabled for this target." "$LINENO" 5 + fi + ;; + esac + fi + # Among non-ELF, only Windows platforms support the lto-plugin so far. + # Build it unless LTO was explicitly disabled. + case $target in + *-cygwin* | *-mingw*) build_lto_plugin=$enable_lto ;; + *) ;; + esac + +fi + + # By default, C is the only stage 1 language. stage1_languages=,c, @@ -5729,6 +5892,21 @@ if test -d ${srcdir}/gcc; then done new_enable_languages=,c, + + # If LTO is enabled, add the LTO front end. + extra_host_libiberty_configure_flags= + if test "$enable_lto" = "yes" ; then + case ,${enable_languages}, in + *,lto,*) ;; + *) enable_languages="${enable_languages},lto" ;; + esac + if test "${build_lto_plugin}" = "yes" ; then + configdirs="$configdirs lto-plugin" + extra_host_libiberty_configure_flags=--enable-shared + fi + fi + + missing_languages=`echo ",$enable_languages," | sed -e s/,all,/,/ -e s/,c,/,/ ` potential_languages=,c, @@ -5753,7 +5931,8 @@ if test -d ${srcdir}/gcc; then exit 1 fi - if test "$language" = "c++" -a "$ENABLE_BUILD_WITH_CXX" = "yes"; then + if test "$language" = "c++" \ + && test "$ENABLE_BUILD_WITH_CXX" = "yes"; then boot_language=yes fi @@ -6191,7 +6370,7 @@ if test x"${with_libs}" != x && test x"${with_libs}" != xno ; then fi fi -# Set with_gnu_as and with_gnu_ld as appropriate. +# Set with_gnu_as, with_gnu_ld, and with_system_zlib as appropriate. # # This is done by determining whether or not the appropriate directory # is available, and by checking whether or not specific configurations @@ -6202,7 +6381,9 @@ fi # # 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. +# --without-gnu-ld options for the configure script. Similarly, if +# the default is to use the included zlib and you don't want to do that, +# you should use the --with-system-zlib option for the configure script. if test x${use_gnu_as} = x && echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then @@ -6216,6 +6397,14 @@ if test x${use_gnu_ld} = x && extra_host_args="$extra_host_args --with-gnu-ld" fi +if test x${use_included_zlib} = x && + echo " ${configdirs} " | grep " zlib " > /dev/null 2>&1 ; then + : +else + with_system_zlib=yes + extra_host_args="$extra_host_args --with-system-zlib" +fi + # If using newlib, add --with-newlib to the extra_host_args so that gcc/configure # can detect this case. @@ -6337,8 +6526,8 @@ case "${target}" in 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. + *-*-darwin[3-9]*) + # ranlib before Darwin10 requires the -c flag to look at common symbols. extra_ranlibflags_for_target=" -c" ;; mips*-*-pe | sh*-*-pe | *arm-wince-pe) @@ -6489,6 +6678,11 @@ fi target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'` build_configdirs=`echo "${build_configdirs}" | sed -e 's/build-//g'` +# If we are building libgomp, bootstrap it. +if echo " ${target_configdirs} " | grep " libgomp " > /dev/null 2>&1 ; then + bootstrap_target_libs=${bootstrap_target_libs}target-libgomp, +fi + # Determine whether gdb needs tk/tcl or not. # Use 'maybe' since enable_gdbtk might be true even if tk isn't available # and in that case we want gdb to be built without tk. Ugh! @@ -6626,7 +6820,7 @@ else mv conftest.o conftest.o.g0 && ${CC} -c -g conftest.c && mv conftest.o conftest.o.g && - ${srcdir}/contrib/compare-debug conftest.o.g0 conftest.o.g; then + ${srcdir}/contrib/compare-debug conftest.o.g0 conftest.o.g > /dev/null 2>&1; then : else BUILD_CONFIG= @@ -6745,9 +6939,11 @@ serialization_dependencies=serdep.tmp # Base args. Strip norecursion, cache-file, srcdir, host, build, # target, nonopt, and variable assignments. These are the ones we -# might not want to pass down to subconfigures. Also strip -# program-prefix, program-suffix, and program-transform-name, so that -# we can pass down a consistent program-transform-name. +# might not want to pass down to subconfigures. The exception being +# --cache-file=/dev/null, which is used to turn off the use of cache +# files altogether, and which should be passed on to subconfigures. +# Also strip program-prefix, program-suffix, and program-transform-name, +# so that we can pass down a consistent program-transform-name. baseargs= keep_next=no skip_next=no @@ -6786,6 +6982,13 @@ do esac case "$ac_arg" in + --cache-file=/dev/null | \ + -cache-file=/dev/null ) + # Handled here to avoid the test to skip args below. + baseargs="$baseargs '$ac_arg'" + # Assert: $separate_arg should always be no. + keep_next=$separate_arg + ;; --no*) continue ;; @@ -6844,10 +7047,15 @@ if test "$silent" = yes; then fi baseargs="$baseargs --disable-option-checking" +# Record and document user additions to sub configure arguments. + + + + # 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 # desired. -build_configargs="--cache-file=../config.cache ${baseargs}" +build_configargs="$build_configargs --cache-file=../config.cache ${baseargs}" # For host modules, accept cache file option, or specification as blank. case "${cache_file}" in @@ -6861,9 +7069,9 @@ esac # 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 ${extra_host_args} ${baseargs}" +host_configargs="$host_configargs --cache-file=./config.cache ${extra_host_args} ${baseargs}" -target_configargs=${baseargs} +target_configargs="$target_configargs ${baseargs}" # Passing a --with-cross-host argument lets the target libraries know # whether they are being built with a cross-compiler or being built @@ -6905,8 +7113,9 @@ case " $target_configdirs " in case " $target_configargs " in *" --with-newlib "*) case "$target" in - *-cygwin*) - FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/include -isystem $$s/winsup/cygwin/include -isystem $$s/winsup/w32api/include' ;; + *-cygwin*) + FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/include -isystem $$s/winsup/cygwin/include -isystem $$s/winsup/w32api/include' + ;; esac # If we're not building GCC, don't discard standard headers. @@ -6962,10 +7171,17 @@ case " $target_configdirs " in esac ;; esac + case "$target" in -*-mingw*) - # Can't be handled as Cygwin above since Mingw does not use newlib. - FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup/mingw -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/mingw/include -isystem $$s/winsup/w32api/include' ;; + x86_64-*mingw* | *-w64-mingw*) + # MinGW-w64 does not use newlib, nor does it use winsup. It may, + # however, use a symlink named 'mingw' in ${prefix} . + FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L${prefix}/${target}/lib -L${prefix}/mingw/lib -isystem ${prefix}/${target}/include -isystem ${prefix}/mingw/include' + ;; + *-mingw*) + # MinGW can't be handled as Cygwin above since it does not use newlib. + FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup/mingw -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/mingw/include -isystem $$s/winsup/w32api/include' + ;; esac # Allow the user to override the flags for @@ -7028,6 +7244,7 @@ done + # Target module lists & subconfigure args. @@ -8437,7 +8654,7 @@ fi done if test -z "$ac_cv_prog_RANLIB" ; then - RANLIB=":" + RANLIB="true" fi @@ -8573,7 +8790,7 @@ fi done if test -z "$ac_cv_prog_STRIP" ; then - STRIP=":" + STRIP="true" fi @@ -13367,6 +13584,9 @@ case "$target" in hppa*64*-*-hpux*) ;; hppa*-*-hpux*) compare_exclusions="gcc/cc*-checksum\$(objext) | */libgcc/lib2funcs* | gcc/ada/*tools/*" ;; esac +case " $configdirs " in +*" ppl "*) compare_exclusions="$compare_exclusions | ppl/src/ppl-config.o" ;; +esac ac_config_files="$ac_config_files Makefile"