X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure;h=87677bc2169f9dda29db68a358857fd802771066;hb=720a66cfb68d5d7d8f2e18e9b44c346ac630c68b;hp=fea4aa70e09cbfe4c2017842a10f4d1dc4b4369a;hpb=f6c1938b0740520970786aabf972f0f759f7b6d3;p=platform%2Fupstream%2Fbinutils.git diff --git a/configure b/configure index fea4aa7..87677bc 100755 --- a/configure +++ b/configure @@ -556,6 +556,7 @@ enable_option_checking=no ac_subst_vars='LTLIBOBJS LIBOBJS compare_exclusions +host_shared stage2_werror_flag stage1_checking stage1_cflags @@ -570,6 +571,7 @@ RAW_CXX_FOR_TARGET WINDMC_FOR_TARGET WINDRES_FOR_TARGET STRIP_FOR_TARGET +READELF_FOR_TARGET RANLIB_FOR_TARGET OBJDUMP_FOR_TARGET NM_FOR_TARGET @@ -584,6 +586,7 @@ GCJ_FOR_TARGET GCC_FOR_TARGET CXX_FOR_TARGET CC_FOR_TARGET +READELF OBJDUMP OBJCOPY WINDMC @@ -634,6 +637,7 @@ target_configargs host_configargs build_configargs BUILD_CONFIG +LDFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET @@ -642,12 +646,12 @@ stage1_languages extra_host_libiberty_configure_flags clooginc clooglibs -pplinc -ppllibs +islinc poststage1_ldflags poststage1_libs -stage1_libs stage1_ldflags +stage1_libs +extra_isl_gmp_configure_flags extra_mpc_mpfr_configure_flags extra_mpc_gmp_configure_flags extra_mpfr_configure_flags @@ -666,6 +670,7 @@ CPPFLAGS LDFLAGS CFLAGS CC +EXTRA_CONFIGARGS_LIBJAVA target_subdir host_subdir build_subdir @@ -745,7 +750,9 @@ enable_libquadmath enable_libquadmath_support enable_libada enable_libssp -enable_build_with_cxx +enable_libstdcxx +enable_static_libjava +enable_bootstrap with_mpc with_mpc_include with_mpc_lib @@ -758,31 +765,31 @@ with_gmp with_gmp_include with_gmp_lib with_host_libstdcxx -with_stage1_ldflags with_stage1_libs +with_stage1_ldflags with_boot_libs with_boot_ldflags -with_ppl -with_ppl_include -with_ppl_lib -enable_ppl_version_check with_cloog +with_isl +with_isl_include +with_isl_lib +enable_isl_version_check with_cloog_include with_cloog_lib -enable_cloog_backend enable_cloog_version_check enable_lto enable_stage1_languages enable_objc_gc with_build_sysroot with_debug_prefix_map -enable_bootstrap with_build_config +enable_vtable_verify enable_serial_configure with_build_time_tools enable_maintainer_mode enable_stage1_checking enable_werror +enable_host_shared ' ac_precious_vars='build_alias host_alias @@ -810,6 +817,7 @@ WINDRES WINDMC OBJCOPY OBJDUMP +READELF CC_FOR_TARGET CXX_FOR_TARGET GCC_FOR_TARGET @@ -824,6 +832,7 @@ LIPO_FOR_TARGET NM_FOR_TARGET OBJDUMP_FOR_TARGET RANLIB_FOR_TARGET +READELF_FOR_TARGET STRIP_FOR_TARGET WINDRES_FOR_TARGET WINDMC_FOR_TARGET' @@ -1459,12 +1468,12 @@ Optional Features: disable libquadmath support for Fortran --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 - --enable-cloog-backend[=BACKEND] - set the CLooG BACKEND used to either isl, ppl or - ppl-legacy (default) + --disable-libstdcxx do not build libstdc++-v3 directory + --enable-static-libjava[=ARG] + build static libjava [default=no] + --enable-bootstrap enable bootstrapping [yes if native build] + --disable-isl-version-check + disable check for ISL version --disable-cloog-version-check disable check for CLooG version --enable-lto enable link time optimization support @@ -1473,7 +1482,7 @@ Optional Features: Mostly useful for compiler development --enable-objc-gc enable use of Boehm's garbage collector with the GNU Objective-C runtime - --enable-bootstrap enable bootstrapping [yes if native build] + --enable-vtable-verify Enable vtable verification feature --enable-serial-[{host,target,build}-]configure force sequential configuration of sub-packages for the host, target or build machine, or all @@ -1485,6 +1494,7 @@ Optional Features: choose additional checking for stage1 of the compiler --enable-werror enable -Werror in bootstrap stage2 and later + --enable-host-shared build host code as shared libraries Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -1511,22 +1521,22 @@ Optional Packages: --with-gmp-lib=PATH specify directory for the installed GMP library --with-host-libstdcxx=L use linker arguments L to link with libstdc++ when linking with PPL + --with-stage1-libs=LIBS libraries for stage1 --with-stage1-ldflags=FLAGS linker flags for stage1 - --with-stage1-libs=LIBS libraries for stage1 --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 - --with-ppl-include=PATH specify directory for installed PPL include files - --with-ppl-lib=PATH specify directory for the installed PPL library - --with-cloog=PATH Specify prefix directory for the installed CLooG-PPL + --with-cloog=PATH Specify prefix directory for the installed CLooG-ISL package. Equivalent to --with-cloog-include=PATH/include plus --with-cloog-lib=PATH/lib + --with-isl=PATH Specify prefix directory for the installed ISL + package. Equivalent to + --with-isl-include=PATH/include plus + --with-isl-lib=PATH/lib + --with-isl-include=PATH Specify directory for installed ISL include files + --with-isl-lib=PATH Specify the directory for the installed ISL library --with-cloog-include=PATH Specify directory for installed CLooG include files --with-cloog-lib=PATH Specify the directory for the installed CLooG @@ -1568,6 +1578,7 @@ Some influential environment variables: WINDMC WINDMC for the host OBJCOPY OBJCOPY for the host OBJDUMP OBJDUMP for the host + READELF READELF for the host CC_FOR_TARGET CC for the target CXX_FOR_TARGET @@ -1596,6 +1607,8 @@ Some influential environment variables: OBJDUMP for the target RANLIB_FOR_TARGET RANLIB for the target + READELF_FOR_TARGET + READELF for the target STRIP_FOR_TARGET STRIP for the target WINDRES_FOR_TARGET @@ -1759,6 +1772,52 @@ fi } # ac_fn_cxx_try_compile +# ac_fn_cxx_try_link LINENO +# ------------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_cxx_try_link + # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. @@ -1804,6 +1863,48 @@ fi return $ac_retval } # ac_fn_c_try_link + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_run cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. @@ -2646,11 +2747,11 @@ extra_host_args= build_libs="build-libiberty" # these tools are built for the build environment -build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fixincludes" +build_tools="build-texinfo build-flex build-bison build-m4 build-fixincludes" # 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 libelf libiconv" +host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libdecnumber gmp mpfr mpc isl 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 @@ -2658,24 +2759,27 @@ host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib l # 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" 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" +host_tools="texinfo flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gprof etc expect dejagnu m4 utils guile fastjar gnattools" # libgcj represents the runtime libraries only used by gcj. libgcj="target-libffi \ target-zlib \ - target-qthreads \ target-libjava" # these libraries are built for the target environment, and are built after # the host libraries and the host tools (which may be a cross compiler) -# +# Note that libiberty is not a target library. target_libraries="target-libgcc \ - target-libiberty \ + target-libbacktrace \ target-libgloss \ target-newlib \ target-libgomp \ + target-libcilkrts \ + target-libatomic \ + target-libitm \ target-libstdc++-v3 \ - target-libmudflap \ + target-libsanitizer \ + target-libvtv \ target-libssp \ target-libquadmath \ target-libgfortran \ @@ -2691,7 +2795,7 @@ target_libraries="target-libgcc \ # note: any program that *uses* libraries that are in the "target_libraries" # list belongs in this list. # -target_tools="target-examples target-gperf target-rda" +target_tools="target-rda" ################################################################################ @@ -2852,9 +2956,9 @@ case "${ENABLE_GOLD}" in is_elf=no case "${target}" in *-*-elf* | *-*-sysv4* | *-*-unixware* | *-*-eabi* | hppa*64*-*-hpux* \ - | *-*-linux* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \ + | *-*-linux* | *-*-gnu* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \ | *-*-netbsd* | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* \ - | *-*-solaris2* | *-*-nto*) + | *-*-solaris2* | *-*-nto* | *-*-nacl*) case "${target}" in *-*-linux*aout* | *-*-linux*oldld*) ;; @@ -2867,7 +2971,8 @@ case "${ENABLE_GOLD}" in if test "$is_elf" = "yes"; then # Check for target supported by gold. case "${target}" in - i?86-*-* | x86_64-*-* | sparc*-*-* | powerpc*-*-* | arm*-*-*) + i?86-*-* | x86_64-*-* | sparc*-*-* | powerpc*-*-* | arm*-*-* \ + | aarch64*-*-* | tilegx*-*-*) configdirs="$configdirs gold" if test x${ENABLE_GOLD} = xdefault; then default_ld=gold @@ -2978,6 +3083,17 @@ else fi +# Check whether --enable-libstdcxx was given. +if test "${enable_libstdcxx+set}" = set; then : + enableval=$enable_libstdcxx; ENABLE_LIBSTDCXX=$enableval +else + ENABLE_LIBSTDCXX=default +fi + +if test "${ENABLE_LIBSTDCXX}" = "no" ; then + noconfigdirs="$noconfigdirs libstdc++-v3" +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 @@ -2998,23 +3114,23 @@ no) ;; esac +# Check whether --enable-static-libjava was given. +if test "${enable_static_libjava+set}" = set; then : + enableval=$enable_static_libjava; ENABLE_STATIC_LIBJAVA=$enableval +else + ENABLE_STATIC_LIBJAVA=no +fi -# Disable libmudflap on some systems. -if test x$enable_libmudflap = x ; then - case "${target}" in - *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | bfin*-*-uclinux* | *-*-kopensolaris*-gnu) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) - # Enable libmudflap by default in FreeBSD. - ;; - *) - # Disable it by default everywhere else. - noconfigdirs="$noconfigdirs target-libmudflap" - ;; - esac +enable_static_libjava= +if test "${ENABLE_STATIC_LIBJAVA}" = "yes" ; then + enable_static_libjava=yes fi +if test x$enable_static_libjava != xyes ; then + EXTRA_CONFIGARGS_LIBJAVA=--disable-static +fi + + # Disable libgomp on non POSIX hosted systems. if test x$enable_libgomp = x ; then # Enable libgomp by default on hosted POSIX systems. @@ -3023,7 +3139,7 @@ if test x$enable_libgomp = x ; then ;; *-*-netbsd* | *-*-freebsd* | *-*-openbsd* | *-*-dragonfly*) ;; - *-*-solaris2* | *-*-irix6* | *-*-osf* | *-*-hpux11*) + *-*-solaris2* | *-*-hpux11*) ;; *-*-darwin* | *-*-aix*) ;; @@ -3033,225 +3149,505 @@ if test x$enable_libgomp = x ; then esac fi +# Disable libatomic on unsupported systems. +if test -d ${srcdir}/libatomic; then + if test x$enable_libatomic = x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libatomic support" >&5 +$as_echo_n "checking for libatomic support... " >&6; } + if (srcdir=${srcdir}/libatomic; \ + . ${srcdir}/configure.tgt; \ + test -n "$UNSUPPORTED") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libatomic" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + fi +fi + +# Disable libcilkrts on unsupported systems. +if test -d ${srcdir}/libcilkrts; then + if test x$enable_libcilkrts = x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libcilkrts support" >&5 +$as_echo_n "checking for libcilkrts support... " >&6; } + if (srcdir=${srcdir}/libcilkrts; \ + . ${srcdir}/configure.tgt; \ + test -n "$UNSUPPORTED") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libcilkrts" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + fi +fi + +# Disable libitm on unsupported systems. +if test -d ${srcdir}/libitm; then + if test x$enable_libitm = x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libitm support" >&5 +$as_echo_n "checking for libitm support... " >&6; } + if (srcdir=${srcdir}/libitm; \ + . ${srcdir}/configure.tgt; \ + test -n "$UNSUPPORTED") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libitm" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + fi +fi + +# Disable libsanitizer on unsupported systems. +if test -d ${srcdir}/libsanitizer; then + if test x$enable_libsanitizer = x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsanitizer support" >&5 +$as_echo_n "checking for libsanitizer support... " >&6; } + if (srcdir=${srcdir}/libsanitizer; \ + . ${srcdir}/configure.tgt; \ + test -n "$UNSUPPORTED") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libsanitizer" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + fi +fi + +# Disable libvtv on unsupported systems. +if test -d ${srcdir}/libvtv; then + if test x$enable_libvtv = x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libvtv support" >&5 +$as_echo_n "checking for libvtv support... " >&6; } + if (srcdir=${srcdir}/libvtv; \ + . ${srcdir}/configure.tgt; \ + test "$VTV_SUPPORTED" != "yes") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libvtv" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + fi +fi + +# Disable libquadmath for some systems. +case "${target}" in + avr-*-*) + noconfigdirs="$noconfigdirs target-libquadmath" + ;; + # libquadmath is unused on AIX and libquadmath build process use of + # LD_LIBRARY_PATH can break AIX bootstrap. + powerpc-*-aix* | rs6000-*-aix*) + noconfigdirs="$noconfigdirs target-libquadmath" + ;; +esac + # Disable libssp for some systems. case "${target}" in avr-*-*) + # No hosted I/O support. noconfigdirs="$noconfigdirs target-libssp" ;; powerpc-*-aix* | rs6000-*-aix*) noconfigdirs="$noconfigdirs target-libssp" ;; - microblaze*) + rl78-*-*) + # libssp uses a misaligned load to trigger a fault, but the RL78 + # doesn't fault for those - instead, it gives a build-time error + # for explicit misaligned loads. noconfigdirs="$noconfigdirs target-libssp" ;; esac -# Disable target libiberty for some systems. +# Disable libstdc++-v3 for some systems. +# Allow user to override this if they pass --enable-libstdc++-v3 +if test "${ENABLE_LIBSTDCXX}" = "default" ; then + case "${target}" in + *-*-vxworks*) + # VxWorks uses the Dinkumware C++ library. + noconfigdirs="$noconfigdirs target-libstdc++-v3" + ;; + arm*-wince-pe*) + # the C++ libraries don't build on top of CE's C libraries + noconfigdirs="$noconfigdirs target-libstdc++-v3" + ;; + avr-*-*) + noconfigdirs="$noconfigdirs target-libstdc++-v3" + ;; + esac +fi + +# Disable Fortran for some systems. case "${target}" in - *-*-kaos*) - # Remove unsupported stuff on all kaOS configurations. - skipdirs="target-libiberty" + mmix-*-*) + # See . + unsupported_languages="$unsupported_languages fortran" ;; - *-*-netbsd*) - # Skip some stuff on all NetBSD configurations. - noconfigdirs="$noconfigdirs target-libiberty" +esac + +# Disable Java if libffi is not supported. +case "${target}" in + aarch64-*-*) ;; - *-*-netware*) - noconfigdirs="$noconfigdirs target-libiberty" + alpha*-*-*) ;; - *-*-rtems*) - skipdirs="${skipdirs} target-libiberty" + arm*-*-*) ;; - *-*-tpf*) - noconfigdirs="$noconfigdirs target-libiberty" + cris-*-*) ;; - *-*-vxworks*) - noconfigdirs="$noconfigdirs target-libiberty" + frv-*-*) ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) - noconfigdirs="$noconfigdirs target-libiberty" + hppa*-*-linux*) ;; - arm*-*-symbianelf*) - noconfigdirs="$noconfigdirs target-libiberty" + hppa*-*-hpux*) ;; - avr-*-*) - noconfigdirs="$noconfigdirs target-libiberty" + i?86-*-*) ;; - m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*) - noconfigdirs="$noconfigdirs target-libiberty" + ia64*-*-*) ;; - picochip-*-*) - noconfigdirs="$noconfigdirs target-libiberty" + m32r*-*-*) ;; - mips*-sde-elf*) - skipdirs="$skipdirs target-libiberty" + m68k-*-*) ;; - ip2k-*-*) - noconfigdirs="$noconfigdirs target-libiberty" + mips*-*-rtems*) ;; -esac - -# Disable libstdc++-v3 for some systems. -case "${target}" in - *-*-vxworks*) - # VxWorks uses the Dinkumware C++ library. - noconfigdirs="$noconfigdirs target-libstdc++-v3" + mips*-*-linux*) ;; - arm*-wince-pe*) - # the C++ libraries don't build on top of CE's C libraries - noconfigdirs="$noconfigdirs target-libstdc++-v3" + powerpc*-*-linux*) ;; - avr-*-*) - noconfigdirs="$noconfigdirs target-libstdc++-v3" + powerpc-*-darwin*) ;; -esac - -# Disable Fortran for some systems. -case "${target}" in - mmix-*-*) - # See . - unsupported_languages="$unsupported_languages fortran" + powerpc-*-aix* | rs6000-*-aix*) + ;; + powerpc-*-freebsd*) + ;; + powerpc64-*-freebsd*) + ;; + powerpc*-*-rtems*) + ;; + s390-*-* | s390x-*-*) + ;; + sh-*-* | sh[34]*-*-*) + ;; + sh64-*-* | sh5*-*-*) + ;; + sparc*-*-*) + ;; + x86_64-*-*) + ;; + *-*-*) + unsupported_languages="$unsupported_languages java" ;; esac -# Default libgloss CPU subdirectory. -libgloss_dir="$target_cpu" - +# Disable Java, libgcj or related libraries for some systems. case "${target}" in - *-*-chorusos) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; powerpc-*-darwin*) - noconfigdirs="$noconfigdirs ld gas gdb gprof" - noconfigdirs="$noconfigdirs sim target-rda" ;; i[3456789]86-*-darwin*) - noconfigdirs="$noconfigdirs ld gprof" - noconfigdirs="$noconfigdirs sim target-rda" ;; x86_64-*-darwin[912]*) - noconfigdirs="$noconfigdirs ld gas gprof" - noconfigdirs="$noconfigdirs sim target-rda" ;; *-*-darwin*) - noconfigdirs="$noconfigdirs ld gas gdb gprof" - noconfigdirs="$noconfigdirs sim target-rda" noconfigdirs="$noconfigdirs ${libgcj}" ;; - *-*-dragonfly*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; - *-*-freebsd*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - if test "x$with_gmp" = x && test "x$with_gmp_dir" = x \ - && test -f /usr/local/include/gmp.h; then - with_gmp=/usr/local - fi - - # Skip some stuff that's unsupported on some FreeBSD configurations. - case "${target}" in - i*86-*-*) ;; - alpha*-*-*) ;; - x86_64-*-*) ;; - *) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - esac - ;; - *-*-kaos*) - # Remove unsupported stuff on all kaOS configurations. - noconfigdirs="$noconfigdirs target-libgloss" - ;; - *-*-netbsd*) - # Skip some stuff on all NetBSD configurations. - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - - # Skip some stuff that's unsupported on some NetBSD configurations. - case "${target}" in - i*86-*-netbsdelf*) ;; - arm*-*-netbsdelf*) ;; - *) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - esac - ;; *-*-netware*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; *-*-rtems*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; - # The tpf target doesn't support gdb yet. *-*-tpf*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj} gdb tcl tk libgui itcl" + noconfigdirs="$noconfigdirs ${libgcj}" ;; *-*-uclinux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; *-*-vxworks*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" - ;; - alpha*-dec-osf*) - # ld works, but does not support shared libraries. - # newlib is not 64 bit ready. - # gas doesn't generate exception information. - noconfigdirs="$noconfigdirs gas ld target-newlib target-libgloss" + noconfigdirs="$noconfigdirs ${libgcj}" ;; alpha*-*-*vms*) - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; - alpha*-*-linux*) - # newlib is not 64 bit ready - noconfigdirs="$noconfigdirs target-newlib target-libgloss" + arm-wince-pe) + noconfigdirs="$noconfigdirs ${libgcj}" ;; - alpha*-*-*) - # newlib is not 64 bit ready - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" + arm*-*-symbianelf*) + noconfigdirs="$noconfigdirs ${libgcj}" ;; - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" + bfin-*-*) + noconfigdirs="$noconfigdirs target-boehm-gc" ;; - sh-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" + cris-*-* | crisv32-*-*) + unsupported_languages="$unsupported_languages java" + case "${target}" in + *-*-linux*) + ;; + *) # See PR46792 regarding target-libffi. + noconfigdirs="$noconfigdirs target-libffi target-boehm-gc";; + esac ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) + hppa*64*-*-linux*) + # In this case, it's because the hppa64-linux target is for + # the kernel only at this point and has no libc, and thus no + # headers, crt*.o, etc., all of which are needed by these. + unsupported_languages="$unsupported_languages java" + ;; + hppa*64*-*-hpux*) noconfigdirs="$noconfigdirs ${libgcj}" - noconfigdirs="$noconfigdirs tcl tk itcl libgui sim" - noconfigdirs="$noconfigdirs target-newlib" + ;; + hppa*-hp-hpux11*) + ;; + hppa*-*-hpux*) + # According to Alexandre Oliva , libjava won't + # build on HP-UX 10.20. + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + ia64*-*-*vms*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + i[3456789]86-w64-mingw*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + i[3456789]86-*-mingw*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + x86_64-*-mingw*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + mmix-*-*) + noconfigdirs="$noconfigdirs target-libffi target-boehm-gc" + ;; + powerpc-*-aix*) + # copied from rs6000-*-* entry + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + rs6000-*-aix*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + *-*-lynxos*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; +esac + +# Disable libgo for some systems where it is known to not work. +# For testing, you can easily override this with --enable-libgo. +if test x$enable_libgo = x; then + case "${target}" in + *-*-darwin*) + # PR 46986 + noconfigdirs="$noconfigdirs target-libgo" + ;; + *-*-cygwin* | *-*-mingw*) + noconfigdirs="$noconfigdirs target-libgo" + ;; + *-*-aix*) + noconfigdirs="$noconfigdirs target-libgo" + ;; + esac +fi + +# Default libgloss CPU subdirectory. +libgloss_dir="$target_cpu" + +case "${target}" in + sh*-*-pe|mips*-*-pe|*arm-wince-pe) libgloss_dir=wince ;; - arc-*-*) - noconfigdirs="$noconfigdirs target-libgloss" + aarch64*-*-* ) + libgloss_dir=aarch64 ;; - arm-*-coff) + arm*-*-*) libgloss_dir=arm ;; - arm-*-elf* | arm*-*-eabi* ) - noconfigdirs="$noconfigdirs target-libffi" - libgloss_dir=arm + cris-*-* | crisv32-*-*) + libgloss_dir=cris + ;; + hppa*-*-*) + libgloss_dir=pa + ;; + i[3456789]86-*-*) + libgloss_dir=i386 + ;; + m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*) + libgloss_dir=m68hc11 + ;; + m68*-*-* | fido-*-*) + libgloss_dir=m68k + ;; + mips*-*-*) + libgloss_dir=mips + ;; + powerpc*-*-*) + libgloss_dir=rs6000 + ;; + sparc*-*-*) + libgloss_dir=sparc + ;; +esac + +# Disable newlib and libgloss for various target OSes. +case "${target}" in + alpha*-dec-osf*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - arm*-*-linux-gnueabi) - case ${with_newlib} in - no) noconfigdirs="$noconfigdirs target-newlib target-libgloss" + i[3456789]86-*-linux*) + # This section makes it possible to build newlib natively on linux. + # If we are using a cross compiler then don't configure newlib. + if test x${is_cross_compiler} != xno ; then + noconfigdirs="$noconfigdirs target-newlib" + fi + noconfigdirs="$noconfigdirs target-libgloss" + # If we are not using a cross compiler, do configure newlib. + # Note however, that newlib will only be configured in this situation + # if the --with-newlib option has been given, because otherwise + # 'target-newlib' will appear in skipdirs. + ;; + i[3456789]86-*-rdos*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + sh*-*-pe|mips*-*-pe|arm-wince-pe) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + sparc-*-sunos4*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-aix*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-beos*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-chorusos) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-dragonfly*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-freebsd*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-lynxos*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-mingw*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-netbsd*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-netware*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-tpf*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-uclinux*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + *-*-vxworks*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; +esac + +case "${target}" in + *-*-chorusos) + ;; + powerpc-*-darwin*) + noconfigdirs="$noconfigdirs ld gas gdb gprof" + noconfigdirs="$noconfigdirs sim target-rda" + ;; + i[3456789]86-*-darwin*) + noconfigdirs="$noconfigdirs ld gprof" + noconfigdirs="$noconfigdirs sim target-rda" + ;; + x86_64-*-darwin[912]*) + noconfigdirs="$noconfigdirs ld gas gprof" + noconfigdirs="$noconfigdirs sim target-rda" + ;; + *-*-darwin*) + noconfigdirs="$noconfigdirs ld gas gdb gprof" + noconfigdirs="$noconfigdirs sim target-rda" + ;; + *-*-dragonfly*) + ;; + *-*-freebsd*) + if test "x$with_gmp" = x && test "x$with_gmp_dir" = x \ + && test -f /usr/local/include/gmp.h; then + with_gmp=/usr/local + fi + ;; + *-*-kaos*) + # Remove unsupported stuff on all kaOS configurations. + noconfigdirs="$noconfigdirs target-libgloss" + ;; + *-*-netbsd*) + ;; + *-*-netware*) + ;; + *-*-rtems*) + noconfigdirs="$noconfigdirs target-libgloss" + # this is not caught below because this stanza matches earlier + case $target in + or1k*-*-*) noconfigdirs="$noconfigdirs gdb" ;; esac - libgloss_dir=arm ;; - arm*-*-symbianelf*) - noconfigdirs="$noconfigdirs ${libgcj}" - libgloss_dir=arm + # The tpf target doesn't support gdb yet. + *-*-tpf*) + noconfigdirs="$noconfigdirs gdb tcl tk libgui itcl" + ;; + *-*-uclinux*) + noconfigdirs="$noconfigdirs target-rda" + ;; + *-*-vxworks*) + ;; + alpha*-dec-osf*) + # ld works, but does not support shared libraries. + # gas doesn't generate exception information. + noconfigdirs="$noconfigdirs gas ld" + ;; + alpha*-*-*vms*) + noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" + ;; + alpha*-*-*) + # newlib is not 64 bit ready + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + sh*-*-pe|mips*-*-pe|*arm-wince-pe) + noconfigdirs="$noconfigdirs tcl tk itcl libgui sim" + ;; + arc-*-*|arceb-*-*) + noconfigdirs="$noconfigdirs target-libgloss" ;; arm-*-pe*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs target-libgloss" ;; arm-*-riscix*) noconfigdirs="$noconfigdirs ld target-libgloss" ;; - avr-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" + avr-*-rtems*) ;; - bfin-*-*) - unsupported_languages="$unsupported_languages java" - noconfigdirs="$noconfigdirs target-boehm-gc" + avr-*-*) + if test x${with_avrlibc} != xno; then + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + fi ;; c4x-*-* | tic4x-*-*) noconfigdirs="$noconfigdirs target-libgloss" @@ -3259,19 +3655,6 @@ case "${target}" in tic54x-*-*) noconfigdirs="$noconfigdirs target-libgloss gdb" ;; - cr16-*-*) - noconfigdirs="$noconfigdirs ${libgcj} gdb" - ;; - cris-*-* | crisv32-*-*) - unsupported_languages="$unsupported_languages java" - case "${target}" in - *-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss";; - *) # See PR46792 regarding target-libffi. - noconfigdirs="$noconfigdirs target-libffi target-boehm-gc";; - esac - libgloss_dir=cris - ;; d10v-*-*) noconfigdirs="$noconfigdirs target-libgloss" ;; @@ -3279,17 +3662,13 @@ case "${target}" in noconfigdirs="$noconfigdirs gdb" ;; fr30-*-elf*) - noconfigdirs="$noconfigdirs ${libgcj} gdb" - ;; - frv-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs gdb" ;; moxie-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs gprof" ;; h8300*-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs target-libgloss" ;; h8500-*-*) noconfigdirs="$noconfigdirs target-libgloss" @@ -3297,10 +3676,6 @@ case "${target}" in hppa1.1-*-osf* | hppa1.1-*-bsd* ) ;; hppa*64*-*-linux*) - # In this case, it's because the hppa64-linux target is for - # the kernel only at this point and has no libc, and thus no - # headers, crt*.o, etc., all of which are needed by these. - noconfigdirs="$noconfigdirs target-zlib" ;; hppa*-*-linux*) ;; @@ -3308,18 +3683,14 @@ case "${target}" in hppa*-*-lites* | \ hppa*-*-openbsd* | \ hppa*64*-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" ;; hppa*-hp-hpux11*) noconfigdirs="$noconfigdirs ld" ;; hppa*-*-pro*) - libgloss_dir=pa ;; hppa*-*-*) - # According to Alexandre Oliva , libjava won't - # build on HP-UX 10.20. - noconfigdirs="$noconfigdirs ld ${libgcj}" + noconfigdirs="$noconfigdirs ld" ;; i960-*-*) noconfigdirs="$noconfigdirs gdb" @@ -3330,37 +3701,16 @@ case "${target}" in ;; ia64*-**-hpux*) # No ld support yet. - noconfigdirs="$noconfigdirs ${libgcj} libgui itcl ld" + noconfigdirs="$noconfigdirs libgui itcl ld" ;; ia64*-*-*vms*) - # No gdb or ld support yet. - noconfigdirs="$noconfigdirs ${libgcj} readline libgui itcl gdb ld" - ;; - i[3456789]86-*-coff | i[3456789]86-*-elf) - noconfigdirs="$noconfigdirs ${libgcj}" - libgloss_dir=i386 - ;; - i[3456789]86-*-linux*) - # This section makes it possible to build newlib natively on linux. - # If we are using a cross compiler then don't configure newlib. - if test x${is_cross_compiler} != xno ; then - noconfigdirs="$noconfigdirs target-newlib" - fi - noconfigdirs="$noconfigdirs target-libgloss" - # If we are not using a cross compiler, do configure newlib. - # Note however, that newlib will only be configured in this situation - # if the --with-newlib option has been given, because otherwise - # 'target-newlib' will appear in skipdirs. + # No ld support yet. + noconfigdirs="$noconfigdirs libgui itcl ld" ;; i[3456789]86-w64-mingw*) - noconfigdirs="$noconfigdirs target-libgloss target-newlib ${libgcj}" ;; i[3456789]86-*-mingw*) target_configdirs="$target_configdirs target-winsup" - noconfigdirs="$noconfigdirs target-libgloss target-newlib ${libgcj}" - ;; - x86_64-*-mingw*) - noconfigdirs="$noconfigdirs target-libgloss target-newlib ${libgcj}" ;; *-*-cygwin*) target_configdirs="$target_configdirs target-libtermcap target-winsup" @@ -3372,8 +3722,6 @@ case "${target}" in echo "Warning: winsup/cygwin is missing so newlib can't be built." fi ;; - i[3456789]86-*-interix* ) - ;; i[3456789]86-*-pe) noconfigdirs="$noconfigdirs target-libgloss" ;; @@ -3385,40 +3733,27 @@ case "${target}" in i[3456789]86-*-sco*) noconfigdirs="$noconfigdirs gprof target-libgloss" ;; - i[3456789]86-*-solaris2*) + i[3456789]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) noconfigdirs="$noconfigdirs target-libgloss" ;; i[3456789]86-*-sysv4*) noconfigdirs="$noconfigdirs target-libgloss" ;; i[3456789]86-*-beos*) - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" + noconfigdirs="$noconfigdirs gdb" ;; i[3456789]86-*-rdos*) - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" - ;; - m32r-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*) - libgloss_dir=m68hc11 - ;; - m68k-*-elf*) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - m68*-*-* | fido-*-*) - libgloss_dir=m68k + noconfigdirs="$noconfigdirs gdb" ;; mmix-*-*) - noconfigdirs="$noconfigdirs target-libffi target-boehm-gc gdb" - unsupported_languages="$unsupported_languages java" + noconfigdirs="$noconfigdirs gdb" ;; mt-*-*) noconfigdirs="$noconfigdirs sim" ;; powerpc-*-aix*) # copied from rs6000-*-* entry - noconfigdirs="$noconfigdirs gprof target-libgloss target-newlib ${libgcj}" + noconfigdirs="$noconfigdirs gprof" ;; powerpc*-*-winnt* | powerpc*-*-pe*) target_configdirs="$target_configdirs target-winsup" @@ -3429,108 +3764,79 @@ case "${target}" in # This is temporary until we can link against shared libraries powerpcle-*-solaris*) noconfigdirs="$noconfigdirs gdb sim tcl tk itcl" - libgloss_dir=rs6000 ;; powerpc-*-beos*) - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" - ;; - powerpc-*-eabi) - noconfigdirs="$noconfigdirs ${libgcj}" - libgloss_dir=rs6000 - ;; - powerpc-*-eabi* | powerpcle-*-eabi* | powerpc-*-rtems* ) - libgloss_dir=rs6000 + noconfigdirs="$noconfigdirs gdb" ;; rs6000-*-lynxos*) - noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}" + noconfigdirs="$noconfigdirs gprof" ;; rs6000-*-aix*) - noconfigdirs="$noconfigdirs gprof target-libgloss target-newlib ${libgcj}" + noconfigdirs="$noconfigdirs gprof" ;; rs6000-*-*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" + noconfigdirs="$noconfigdirs gprof" ;; m68k-apollo-*) noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss" ;; microblaze*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" + noconfigdirs="$noconfigdirs gprof" ;; - mips*-sde-elf*) - noconfigdirs="$noconfigdirs ${libgcj}" + mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) if test x$with_newlib = xyes; then noconfigdirs="$noconfigdirs gprof" fi - libgloss_dir=mips ;; mips*-*-irix5*) noconfigdirs="$noconfigdirs gprof target-libgloss" ;; mips*-*-irix6*) - # Linking libjava exceeds command-line length limits on at least - # IRIX 6.2, but not on IRIX 6.5. - # Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham - # - noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs gprof target-libgloss" ;; mips*-*-bsd*) - noconfigdirs="$noconfigdirs gprof target-libgloss" + noconfigdirs="$noconfigdirs ld gas gprof target-libgloss" ;; mips*-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; + mips*-*-ultrix* | mips*-*-osf* | mips*-*-ecoff* | mips*-*-pe* \ + | mips*-*-irix* | mips*-*-lnews* | mips*-*-riscos*) + noconfigdirs="$noconfigdirs ld gas gprof" ;; mips*-*-*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" - libgloss_dir=mips + noconfigdirs="$noconfigdirs gprof" + ;; + nds32*-*-*) + noconfigdirs="$noconfigdirs gdb" + ;; + or1k*-*-*) + noconfigdirs="$noconfigdirs gdb" ;; sh-*-* | sh64-*-*) case "${target}" in sh*-*-elf) - noconfigdirs="$noconfigdirs ${libgcj}" ;; + ;; *) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; + noconfigdirs="$noconfigdirs target-libgloss" ;; esac ;; - sparclet-*-aout* | sparc86x-*-*) - libgloss_dir=sparc - ;; - sparc-*-elf*) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - sparc64-*-elf*) - noconfigdirs="$noconfigdirs ${libgcj}" - libgloss_dir=sparc - ;; - sparclite-*-*) - libgloss_dir=sparc - ;; sparc-*-sunos4*) - if test x${is_cross_compiler} != xno ; then - noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" - else + if test x${is_cross_compiler} = xno ; then use_gnu_ld=no fi ;; - sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*) - ;; tic6x-*-*) - noconfigdirs="$noconfigdirs gdb sim ${libgcj}" + noconfigdirs="$noconfigdirs sim" + ;; + tilepro*-*-* | tilegx*-*-*) + noconfigdirs="$noconfigdirs sim" ;; v810-*-*) noconfigdirs="$noconfigdirs bfd binutils gas gdb ld opcodes target-libgloss" ;; vax-*-*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" - ;; - *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - *-*-lynxos*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" - ;; - *-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; esac # If we aren't building newlib, then don't build libgloss, since libgloss @@ -3573,9 +3879,6 @@ fi *-mingw*) host_makefile_frag="config/mh-mingw" ;; - *-interix*) - host_makefile_frag="config/mh-interix" - ;; hppa*-hp-hpux10*) host_makefile_frag="config/mh-pa-hpux10" ;; @@ -4669,6 +4972,48 @@ if test -z "$LD"; then fi fi +# Check whether -static-libstdc++ -static-libgcc is supported. +have_static_libs=no +if test "$GCC" = yes; then + saved_LDFLAGS="$LDFLAGS" + + LDFLAGS="$LDFLAGS -static-libstdc++ -static-libgcc" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether g++ accepts -static-libstdc++ -static-libgcc" >&5 +$as_echo_n "checking whether g++ accepts -static-libstdc++ -static-libgcc... " >&6; } + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if (__GNUC__ < 4) || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) +#error -static-libstdc++ not implemented +#endif +int main() {} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; }; have_static_libs=yes +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + LDFLAGS="$saved_LDFLAGS" +fi + @@ -4882,7 +5227,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_cv_cc_gcc_supports_ada" >&5 $as_echo "$acx_cv_cc_gcc_supports_ada" >&6; } -if test x$GNATBIND != xno && test x$GNATMAKE != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then +if test "x$GNATBIND" != xno && test "x$GNATMAKE" != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then have_gnat=yes else have_gnat=no @@ -4919,14 +5264,52 @@ do_compare="$gcc_cv_prog_cmp_skip" -# See if we are building gcc with C++. -# Check whether --enable-build-with-cxx was given. -if test "${enable_build_with_cxx+set}" = set; then : - enableval=$enable_build_with_cxx; ENABLE_BUILD_WITH_CXX=$enableval +# Check whether --enable-bootstrap was given. +if test "${enable_bootstrap+set}" = set; then : + enableval=$enable_bootstrap; else - ENABLE_BUILD_WITH_CXX=no + enable_bootstrap=default +fi + + +# Issue errors and warnings for invalid/strange bootstrap combinations. +if test -r $srcdir/gcc/configure; then + have_compiler=yes +else + have_compiler=no fi +case "$have_compiler:$host:$target:$enable_bootstrap" in + *:*:*:no) ;; + + # Default behavior. Enable bootstrap if we have a compiler + # and we are in a native configuration. + yes:$build:$build:default) + enable_bootstrap=yes ;; + + *:*:*:default) + enable_bootstrap=no ;; + + # We have a compiler and we are in a native configuration, bootstrap is ok + yes:$build:$build:yes) + ;; + + # Other configurations, but we have a compiler. Assume the user knows + # what he's doing. + yes:*:*:yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: trying to bootstrap a cross compiler" >&5 +$as_echo "$as_me: WARNING: trying to bootstrap a cross compiler" >&2;} + ;; + + # No compiler: if they passed --enable-bootstrap explicitly, fail + no:*:*:yes) + as_fn_error "cannot bootstrap without a compiler" "$LINENO" 5 ;; + + # Fail if wrong command line + *) + as_fn_error "invalid option for --enable-bootstrap" "$LINENO" 5 + ;; +esac # Used for setting $lt_cv_objdir { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 @@ -5044,9 +5427,16 @@ 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/'"$lt_cv_objdir $gmplibs" - gmpinc='-I$$r/$(HOST_SUBDIR)/mpfr -I$$s/mpfr '"$gmpinc" - extra_mpc_mpfr_configure_flags='--with-mpfr-include=$$s/mpfr --with-mpfr-lib=$$r/$(HOST_SUBDIR)/mpfr/'"$lt_cv_objdir" + # MPFR v3.1.0 moved the sources into a src sub-directory. + if test -d ${srcdir}/mpfr/src; then + gmplibs='-L$$r/$(HOST_SUBDIR)/mpfr/src/'"$lt_cv_objdir $gmplibs" + gmpinc='-I$$r/$(HOST_SUBDIR)/mpfr/src -I$$s/mpfr/src '"$gmpinc" + extra_mpc_mpfr_configure_flags='--with-mpfr-include=$$s/mpfr/src --with-mpfr-lib=$$r/$(HOST_SUBDIR)/mpfr/src/'"$lt_cv_objdir" + else + 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 --with-mpfr-lib=$$r/$(HOST_SUBDIR)/mpfr/'"$lt_cv_objdir" + fi # 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 @@ -5098,6 +5488,7 @@ if test "x$with_gmp$with_gmp_include$with_gmp_lib" = x && test -d ${srcdir}/gmp; gmpinc='-I$$r/$(HOST_SUBDIR)/gmp -I$$s/gmp '"$gmpinc" 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" + extra_isl_gmp_configure_flags='--with-gmp-builddir=$$r/$(HOST_SUBDIR)/gmp' # 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 @@ -5122,7 +5513,7 @@ 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,2,0) + #if GCC_GMP_VERSION < GCC_GMP_VERSION_NUM(4,2,3) choke me #endif @@ -5175,7 +5566,7 @@ int main () { - #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1) + #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,0) choke me #endif @@ -5318,7 +5709,7 @@ rm -f core conftest.err conftest.$ac_objext \ # 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+, MPFR 2.3.1+ and MPC 0.8.0+. + as_fn_error "Building GCC requires GMP 4.2+, MPFR 2.4.0+ 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 @@ -5337,6 +5728,7 @@ fi + # Allow host libstdc++ to be specified for static linking with PPL. # Check whether --with-host-libstdcxx was given. @@ -5351,32 +5743,38 @@ case $with_host_libstdcxx in ;; esac -# Linker flags to use for stage1 or when not boostrapping. +# Libraries to use for stage1 or when not bootstrapping. -# Check whether --with-stage1-ldflags was given. -if test "${with_stage1_ldflags+set}" = set; then : - withval=$with_stage1_ldflags; if test "$withval" = "no" -o "$withval" = "yes"; then - stage1_ldflags= +# Check whether --with-stage1-libs was given. +if test "${with_stage1_libs+set}" = set; then : + withval=$with_stage1_libs; if test "$withval" = "no" -o "$withval" = "yes"; then + stage1_libs= else - stage1_ldflags=$withval + stage1_libs=$withval fi else - stage1_ldflags= + stage1_libs=$with_host_libstdcxx fi -# Libraries to use for stage1 or when not bootstrapping. +# Linker flags to use for stage1 or when not bootstrapping. -# Check whether --with-stage1-libs was given. -if test "${with_stage1_libs+set}" = set; then : - withval=$with_stage1_libs; if test "$withval" = "no" -o "$withval" = "yes"; then - stage1_libs= +# Check whether --with-stage1-ldflags was given. +if test "${with_stage1_ldflags+set}" = set; then : + withval=$with_stage1_ldflags; if test "$withval" = "no" -o "$withval" = "yes"; then + stage1_ldflags= else - stage1_libs=$withval + stage1_ldflags=$withval fi else - stage1_libs=$with_host_libstdcxx + stage1_ldflags= + # In stage 1, default to linking libstdc++ and libgcc statically with GCC + # if supported. But if the user explicitly specified the libraries to use, + # trust that they are doing what they want. + if test "$stage1_libs" = "" -a "$have_static_libs" = yes; then + stage1_ldflags="-static-libstdc++ -static-libgcc" + fi fi @@ -5418,164 +5816,256 @@ fi -# Check for PPL -ppllibs= -pplinc= -pwllib= +# GCC GRAPHITE dependences, ISL and CLOOG which in turn requires ISL. +# Basic setup is inlined here, actual checks are in config/cloog.m4 and +# config/isl.m4 -# Check whether --with-ppl was given. -if test "${with_ppl+set}" = set; then : - withval=$with_ppl; +# Check whether --with-cloog was given. +if test "${with_cloog+set}" = set; then : + withval=$with_cloog; fi -# Check whether --with-ppl-include was given. -if test "${with_ppl_include+set}" = set; then : - withval=$with_ppl_include; +# Check whether --with-isl was given. +if test "${with_isl+set}" = set; then : + withval=$with_isl; fi -# Check whether --with-ppl-lib was given. -if test "${with_ppl_lib+set}" = set; then : - withval=$with_ppl_lib; -fi +# Treat either --without-cloog or --without-isl as a request to disable +# GRAPHITE support and skip all following checks. +if test "x$with_isl" != "xno" && + test "x$with_cloog" != "xno"; then + # Check for ISL -# Check whether --enable-ppl-version-check was given. -if test "${enable_ppl_version_check+set}" = set; then : - enableval=$enable_ppl_version_check; +# Check whether --with-isl-include was given. +if test "${with_isl_include+set}" = set; then : + withval=$with_isl_include; fi -case $with_ppl in - yes | no | "") - ;; - *) - ppllibs="-L$with_ppl/lib" - pplinc="-I$with_ppl/include $pplinc" - if test -d "$with_ppl/lib" && test -d "$with_ppl/include"; then - with_ppl=yes - else - as_fn_error "cannot find directories \"$with_ppl/lib\" or \"$with_ppl/include\"" "$LINENO" 5 - fi - ;; -esac - -if test x"$with_ppl_include" != x; then - pplinc="-I$with_ppl_include $pplinc" - with_ppl=yes +# Check whether --with-isl-lib was given. +if test "${with_isl_lib+set}" = set; then : + withval=$with_isl_lib; fi -if test "x$with_ppl_lib" != x; then - ppllibs="-L$with_ppl_lib" - with_ppl=yes + + # Check whether --enable-isl-version-check was given. +if test "${enable_isl_version_check+set}" = set; then : + enableval=$enable_isl_version_check; ENABLE_ISL_CHECK=$enableval +else + ENABLE_ISL_CHECK=yes fi -if test x"$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then - if test x"$enable_watchdog" = xyes; then - pwllib="-lpwl" + + # Initialize isllibs and islinc. + case $with_isl in + no) + isllibs= + islinc= + ;; + "" | yes) + ;; + *) + isllibs="-L$with_isl/lib" + islinc="-I$with_isl/include" + ;; + esac + if test "x${with_isl_include}" != x ; then + islinc="-I$with_isl_include" + fi + if test "x${with_isl_lib}" != x; then + isllibs="-L$with_isl_lib" + fi + if test "x${islinc}" = x && test "x${isllibs}" = x \ + && test -d ${srcdir}/isl; then + isllibs='-L$$r/$(HOST_SUBDIR)/isl/'"$lt_cv_objdir"' ' + islinc='-I$$r/$(HOST_SUBDIR)/isl/include -I$$s/isl/include' + ENABLE_ISL_CHECK=no + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using in-tree ISL, disabling version check" >&5 +$as_echo "$as_me: WARNING: using in-tree ISL, disabling version check" >&2;} fi - ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/interfaces/C/'"$lt_cv_objdir"' -L$$r/$(HOST_SUBDIR)/ppl/src/'"$lt_cv_objdir" - pplinc='-I$$r/$(HOST_SUBDIR)/ppl/src -I$$r/$(HOST_SUBDIR)/ppl/interfaces/C ' - enable_ppl_version_check=no - with_ppl=yes -fi -if test "x$with_ppl" != xno; then - if test "x$pwllib" = x; then - saved_LIBS="$LIBS" - LIBS="$LIBS $ppllibs -lstdc++ -lm" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PWL_handle_timeout in -lpwl" >&5 -$as_echo_n "checking for PWL_handle_timeout in -lpwl... " >&6; } -if test "${ac_cv_lib_pwl_PWL_handle_timeout+set}" = set; then : - $as_echo_n "(cached) " >&6 + + + if test "${ENABLE_ISL_CHECK}" = yes ; then + _isl_saved_CFLAGS=$CFLAGS + _isl_saved_LDFLAGS=$LDFLAGS + _isl_saved_LIBS=$LIBS + + CFLAGS="${_isl_saved_CFLAGS} ${islinc} ${gmpinc}" + LDFLAGS="${_isl_saved_LDFLAGS} ${isllibs}" + LIBS="${_isl_saved_LIBS} -lisl" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.10 of ISL" >&5 +$as_echo_n "checking for version 0.10 of ISL... " >&6; } + if test "$cross_compiling" = yes; then : + gcc_cv_isl=yes else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpwl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char PWL_handle_timeout (); +#include + #include int main () { -return PWL_handle_timeout (); +if (strncmp (isl_version (), "isl-0.10", strlen ("isl-0.10")) != 0) + return 1; + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pwl_PWL_handle_timeout=yes +if ac_fn_c_try_run "$LINENO"; then : + gcc_cv_isl=yes else - ac_cv_lib_pwl_PWL_handle_timeout=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS + gcc_cv_isl=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pwl_PWL_handle_timeout" >&5 -$as_echo "$ac_cv_lib_pwl_PWL_handle_timeout" >&6; } -if test "x$ac_cv_lib_pwl_PWL_handle_timeout" = x""yes; then : - pwllib="-lpwl" +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - LIBS="$saved_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_isl" >&5 +$as_echo "$gcc_cv_isl" >&6; } + + CFLAGS=$_isl_saved_CFLAGS + LDFLAGS=$_isl_saved_LDFLAGS + LIBS=$_isl_saved_LIBS fi - ppllibs="$ppllibs -lppl_c -lppl $pwllib -lgmpxx" - if test "$enable_ppl_version_check" != no; then - saved_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $pplinc $gmpinc" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.11 (revision 0 or later) of PPL" >&5 -$as_echo_n "checking for version 0.11 (revision 0 or later) of PPL... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${gcc_cv_isl}" = no ; then + + if test "${ENABLE_ISL_CHECK}" = yes ; then + _isl_saved_CFLAGS=$CFLAGS + _isl_saved_LDFLAGS=$LDFLAGS + _isl_saved_LIBS=$LIBS + + CFLAGS="${_isl_saved_CFLAGS} ${islinc} ${gmpinc}" + LDFLAGS="${_isl_saved_LDFLAGS} ${isllibs}" + LIBS="${_isl_saved_LIBS} -lisl" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.11 of ISL" >&5 +$as_echo_n "checking for version 0.11 of ISL... " >&6; } + if test "$cross_compiling" = yes; then : + gcc_cv_isl=yes +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "ppl_c.h" +#include + #include int main () { - - #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 11 - choke me - #endif +if (strncmp (isl_version (), "isl-0.11", strlen ("isl-0.11")) != 0) + return 1; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } +if ac_fn_c_try_run "$LINENO"; then : + gcc_cv_isl=yes +else + gcc_cv_isl=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_isl" >&5 +$as_echo "$gcc_cv_isl" >&6; } + + CFLAGS=$_isl_saved_CFLAGS + LDFLAGS=$_isl_saved_LDFLAGS + LIBS=$_isl_saved_LIBS + fi + + + if test "${gcc_cv_isl}" = no ; then + + if test "${ENABLE_ISL_CHECK}" = yes ; then + _isl_saved_CFLAGS=$CFLAGS + _isl_saved_LDFLAGS=$LDFLAGS + _isl_saved_LIBS=$LIBS + + CFLAGS="${_isl_saved_CFLAGS} ${islinc} ${gmpinc}" + LDFLAGS="${_isl_saved_LDFLAGS} ${isllibs}" + LIBS="${_isl_saved_LIBS} -lisl" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.12 of ISL" >&5 +$as_echo_n "checking for version 0.12 of ISL... " >&6; } + if test "$cross_compiling" = yes; then : + gcc_cv_isl=yes +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main () +{ +if (strncmp (isl_version (), "isl-0.12", strlen ("isl-0.12")) != 0) + return 1; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gcc_cv_isl=yes else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; ppllibs= ; pplinc= ; with_ppl=no + gcc_cv_isl=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$saved_CFLAGS" - fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -# Flags needed for PPL + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_isl" >&5 +$as_echo "$gcc_cv_isl" >&6; } + CFLAGS=$_isl_saved_CFLAGS + LDFLAGS=$_isl_saved_LDFLAGS + LIBS=$_isl_saved_LIBS + fi + fi + fi -# Check for CLOOG -# Check whether --with-cloog was given. -if test "${with_cloog+set}" = set; then : - withval=$with_cloog; -fi + if test "x${with_isl}" = xno; then + graphite_requested=no + elif test "x${with_isl}" != x \ + || test "x${with_isl_include}" != x \ + || test "x${with_isl_lib}" != x ; then + graphite_requested=yes + else + graphite_requested=no + fi + + + + if test "${gcc_cv_isl}" = no ; then + isllibs= + islinc= + fi + + if test "${graphite_requested}" = yes \ + && test "x${isllibs}" = x \ + && test "x${islinc}" = x ; then + + as_fn_error "Unable to find a usable ISL. See config.log for details." "$LINENO" 5 + fi + + + + if test "x$gcc_cv_isl" != "xno"; then + # Check for CLOOG # Check whether --with-cloog-include was given. @@ -5590,19 +6080,6 @@ if test "${with_cloog_lib+set}" = set; then : fi - # Check whether --enable-cloog-backend was given. -if test "${enable_cloog_backend+set}" = set; then : - enableval=$enable_cloog_backend; if test "x${enableval}" = "xisl"; then - cloog_backend=isl - elif test "x${enableval}" = "xppl"; then - cloog_backend=ppl - else - cloog_backend=ppl-legacy - fi -else - cloog_backend=ppl-legacy -fi - # Check whether --enable-cloog-version-check was given. if test "${enable_cloog_version_check+set}" = set; then : enableval=$enable_cloog_version_check; ENABLE_CLOOG_CHECK=$enableval @@ -5630,179 +6107,61 @@ fi if test "x${with_cloog_lib}" != x; then clooglibs="-L$with_cloog_lib" fi - - - - - -if test "x$with_ppl" = "xno"; then - - - - if test "x${with_cloog}" = xno; then - graphite_requested=no - elif test "x${with_cloog}" != x \ - || test "x${with_cloog_include}" != x \ - || test "x${with_cloog_lib}" != x ; then - graphite_requested=yes - else - graphite_requested=no + if test "x${clooginc}" = x && test "x${clooglibs}" = x \ + && test -d ${srcdir}/cloog; then + clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' ' + clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include -I'${srcdir}'/cloog/include ' + ENABLE_CLOOG_CHECK=no + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using in-tree CLooG, disabling version check" >&5 +$as_echo "$as_me: WARNING: using in-tree CLooG, disabling version check" >&2;} fi + clooginc="-DCLOOG_INT_GMP ${clooginc}" + clooglibs="${clooglibs} -lcloog-isl ${isllibs} -lisl" - if test "${graphite_requested}" = yes; then - as_fn_error "Unable to find a usable PPL. See config.log for details." "$LINENO" 5 - fi - with_cloog=no -fi -if test "x${with_cloog}" = x && test "x${with_cloog_include}" = x \ - && test "x${with_cloog_lib}" = x && test -d ${srcdir}/cloog; then - clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' ' - clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include ' -fi -if test "x$with_cloog" != "xno"; then - _cloog_saved_CFLAGS=$CFLAGS - _cloog_saved_CPPFLAGS=$CPPFLAGS - _cloog_saved_LDFLAGS=$LDFLAGS - _cloog_saved_LIBS=$LIBS - _cloogorginc="-DCLOOG_INT_GMP -DCLOOG_ORG" + if test "${ENABLE_CLOOG_CHECK}" = yes ; then + _cloog_saved_CFLAGS=$CFLAGS + _cloog_saved_LDFLAGS=$LDFLAGS - CFLAGS="${CFLAGS} ${clooginc} ${gmpinc}" - CPPFLAGS="${CPPFLAGS} ${_cloogorginc}" - LDFLAGS="${LDFLAGS} ${clooglibs}" + CFLAGS="${_cloog_saved_CFLAGS} ${clooginc} ${islinc} ${gmpinc}" + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${isllibs} ${gmplib}" - case $cloog_backend in - "ppl-legacy") - CFLAGS="${CFLAGS} ${pplinc}" - LDFLAGS="${LDFLAGS} ${ppllibs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for installed CLooG PPL Legacy" >&5 -$as_echo_n "checking for installed CLooG PPL Legacy... " >&6; } -if test "${gcc_cv_cloog_type+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - LIBS="-lcloog ${_cloog_saved_LIBS}" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17.0 of CLooG" >&5 +$as_echo_n "checking for version 0.17.0 of CLooG... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "cloog/cloog.h" +#include "cloog/version.h" int main () { -#ifndef CLOOG_PPL_BACKEND +#if CLOOG_VERSION_MAJOR != 0 \ + || CLOOG_VERSION_MINOR != 17 \ + || CLOOG_VERSION_REVISION < 0 choke me #endif ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gcc_cv_cloog_type="PPL Legacy" -else - gcc_cv_cloog_type=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_type" >&5 -$as_echo "$gcc_cv_cloog_type" >&6; } - ;; - "isl") - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for installed CLooG ISL" >&5 -$as_echo_n "checking for installed CLooG ISL... " >&6; } -if test "${gcc_cv_cloog_type+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - LIBS="-lcloog-isl ${_cloog_saved_LIBS}" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "cloog/cloog.h" -int -main () -{ -cloog_version () - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gcc_cv_cloog_type="ISL" -else - gcc_cv_cloog_type=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_type" >&5 -$as_echo "$gcc_cv_cloog_type" >&6; } - ;; - "ppl") - CFLAGS="${CFLAGS} ${pplinc}" - LDFLAGS="${LDFLAGS} ${ppllibs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for installed CLooG PPL" >&5 -$as_echo_n "checking for installed CLooG PPL... " >&6; } -if test "${gcc_cv_cloog_type+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - LIBS="-lcloog-ppl ${_cloog_saved_LIBS}" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "cloog/cloog.h" - #include "cloog/ppl/cloog.h" -int -main () -{ -cloog_version () - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gcc_cv_cloog_type="PPL" +if ac_fn_c_try_compile "$LINENO"; then : + gcc_cv_cloog=yes else - gcc_cv_cloog_type=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext + gcc_cv_cloog=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_type" >&5 -$as_echo "$gcc_cv_cloog_type" >&6; } - ;; - *) - gcc_cv_cloog_type="" - esac - - case $gcc_cv_cloog_type in - "PPL Legacy") - clooginc="${clooginc}" - clooglibs="${clooglibs} -lcloog" - cloog_org=no - ;; - "ISL") - clooginc="${clooginc} ${_cloogorginc}" - clooglibs="${clooglibs} -lcloog-isl -lisl" - cloog_org=yes - ;; - "PPL") - clooginc="${clooginc} ${_cloogorginc}" - clooglibs="${clooglibs} -lcloog-ppl" - cloog_org=yes - ;; - *) - clooglibs= - clooginc= - cloog_org= - ;; - esac +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog" >&5 +$as_echo "$gcc_cv_cloog" >&6; } - LIBS=$_cloog_saved_LIBS - CFLAGS=$_cloog_saved_CFLAGS - CPPFLAGS=$_cloog_saved_CPPFLAGS - LDFLAGS=$_cloog_saved_LDFLAGS + CFLAGS=$_cloog_saved_CFLAGS + LDFLAGS=$_cloog_saved_LDFLAGS + fi + if test "${gcc_cv_cloog}" = no ; then @@ -5810,70 +6169,20 @@ $as_echo "$gcc_cv_cloog_type" >&6; } _cloog_saved_CFLAGS=$CFLAGS _cloog_saved_LDFLAGS=$LDFLAGS - CFLAGS="${_cloog_saved_CFLAGS} ${clooginc} ${pplinc} ${gmpinc}" - LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}" + CFLAGS="${_cloog_saved_CFLAGS} ${clooginc} ${islinc} ${gmpinc}" + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${isllibs} ${gmplib}" - if test "${cloog_org}" = yes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5 -$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; } -if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "cloog/cloog.h" -int -main () -{ -#if CLOOG_VERSION_MAJOR != 0 \ - || CLOOG_VERSION_MINOR != 16 \ - || CLOOG_VERSION_REVISION < 1 - choke me - #endif - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gcc_cv_cloog_ct_0_14_0=yes -else - gcc_cv_cloog_ct_0_14_0=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_ct_0_14_0" >&5 -$as_echo "$gcc_cv_cloog_ct_0_14_0" >&6; } - elif test "${cloog_org}" = no ; then - { $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; } -if test "${gcc_cv_cloog_ct_0_15_5+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.18.0 of CLooG" >&5 +$as_echo_n "checking for version 0.18.0 of CLooG... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "cloog/cloog.h" +#include "cloog/version.h" int main () { #if CLOOG_VERSION_MAJOR != 0 \ - || CLOOG_VERSION_MINOR != 15 \ - || CLOOG_VERSION_REVISION < 9 + || CLOOG_VERSION_MINOR != 18 \ + || CLOOG_VERSION_REVISION < 0 choke me #endif ; @@ -5881,25 +6190,20 @@ main () } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gcc_cv_cloog_ct_0_15_5=yes + gcc_cv_cloog=yes else - gcc_cv_cloog_ct_0_15_5="buggy but acceptable" + gcc_cv_cloog=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - gcc_cv_cloog_ct_0_15_5=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_ct_0_15_5" >&5 -$as_echo "$gcc_cv_cloog_ct_0_15_5" >&6; } - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog" >&5 +$as_echo "$gcc_cv_cloog" >&6; } CFLAGS=$_cloog_saved_CFLAGS LDFLAGS=$_cloog_saved_LDFLAGS fi + fi @@ -5917,9 +6221,7 @@ $as_echo "$gcc_cv_cloog_ct_0_15_5" >&6; } - if test "${gcc_cv_cloog_ct_0_14_0}" = no \ - || test "${gcc_cv_cloog_rt_0_14_0}" = no \ - || test "${gcc_cv_cloog_ct_0_15_5}" = no; then + if test "${gcc_cv_cloog}" = no ; then clooglibs= clooginc= fi @@ -5928,12 +6230,30 @@ $as_echo "$gcc_cv_cloog_ct_0_15_5" >&6; } && test "x${clooglibs}" = x \ && test "x${clooginc}" = x ; then - as_fn_error "Unable to find a usable CLooG. See config.log for details." "$LINENO" 5 + as_fn_error "Unable to find a usable CLooG. See config.log for details." "$LINENO" 5 fi + fi +fi + +# If either the ISL or the CLooG check failed, disable builds of in-tree +# variants of both +if test "x$with_isl" = xno || + test "x$with_cloog" = xno || + test "x$gcc_cv_cloog" = xno || + test "x$gcc_cv_isl" = xno; then + noconfigdirs="$noconfigdirs cloog isl" + islinc= + clooginc= + clooglibs= fi + + + + + # Check for LTO support. # Check whether --enable-lto was given. if test "${enable_lto+set}" = set; then : @@ -5949,7 +6269,7 @@ fi target_elf=no case $target in *-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \ - *-msdosdjgpp* | *-netware* | *-vms* | *-wince* | *-*-pe* | \ + *-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \ alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux*) target_elf=no ;; @@ -5965,7 +6285,7 @@ if test $target_elf = yes; then : else if test x"$default_enable_lto" = x"yes" ; then case $target in - *-apple-darwin9 | *-cygwin* | *-mingw*) ;; + *-apple-darwin9* | *-cygwin* | *-mingw*) ;; # On other non-ELF platforms, LTO has yet to be validated. *) enable_lto=no ;; esac @@ -5994,7 +6314,7 @@ fi -# By default, C is the only stage 1 language. +# By default, C and C++ are the only stage 1 languages. stage1_languages=,c, # Target libraries that we bootstrap. @@ -6032,6 +6352,18 @@ if test -d ${srcdir}/gcc; then ;; esac + # If bootstrapping, C++ must be enabled. + case ",$enable_languages,:$enable_bootstrap" in + *,c++,*:*) ;; + *:yes) + if test -f ${srcdir}/gcc/cp/config-lang.in; then + enable_languages="${enable_languages},c++" + else + as_fn_error "bootstrapping requires c++ sources" "$LINENO" 5 + fi + ;; + esac + # 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. @@ -6121,22 +6453,24 @@ if test -d ${srcdir}/gcc; then exit 1 fi - if test "$language" = "c++" \ - && test "$ENABLE_BUILD_WITH_CXX" = "yes"; then + if test "$language" = "c++"; then boot_language=yes fi + add_this_lang=no case ,${enable_languages}, in *,${language},*) - # Language was explicitly selected; include it. - add_this_lang=yes + # Language was explicitly selected; include it + # unless it is C, which is enabled by default. + if test "$language" != "c"; then + add_this_lang=yes + fi ;; *,all,*) # 'all' was selected, select it if it is a default language - add_this_lang=${build_by_default} - ;; - *) - add_this_lang=no + if test "$language" != "c"; then + add_this_lang=${build_by_default} + fi ;; esac @@ -6305,6 +6639,14 @@ case ,${enable_languages},:${enable_objc_gc} in ;; esac +# Disable libitm, libsanitizer, libvtv if we're not building C++ +case ,${enable_languages}, in + *,c++,*) ;; + *) + noconfigdirs="$noconfigdirs target-libcilkrts target-libitm target-libsanitizer target-libvtv" + ;; +esac + # Remove the entries in $skipdirs and $noconfigdirs from $configdirs, # $build_configdirs and $target_configdirs. # If we have the source for $noconfigdirs entries, add them to $notsupp. @@ -6344,27 +6686,6 @@ for dir in . $skipdirs $noconfigdirs ; do 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. -# Don't let libgcc imply libiberty either. -if test -n "${target_configdirs}" ; then - libgcc= - others= - for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do - if test "$i" = "libgcc"; then - libgcc=target-libgcc - elif test "$i" != "libiberty" ; then - if test -r $srcdir/$i/configure ; then - others=yes; - break; - fi - fi - done - if test -z "${others}" ; then - target_configdirs=$libgcc - 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. @@ -6521,11 +6842,11 @@ if test "x$CFLAGS_FOR_TARGET" = x; then CFLAGS_FOR_TARGET=$CFLAGS case " $CFLAGS " in *" -O2 "*) ;; - *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;; + *) CFLAGS_FOR_TARGET="-O2 $CFLAGS_FOR_TARGET" ;; esac case " $CFLAGS " in *" -g "* | *" -g3 "*) ;; - *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;; + *) CFLAGS_FOR_TARGET="-g $CFLAGS_FOR_TARGET" ;; esac fi @@ -6534,15 +6855,17 @@ if test "x$CXXFLAGS_FOR_TARGET" = x; then CXXFLAGS_FOR_TARGET=$CXXFLAGS case " $CXXFLAGS " in *" -O2 "*) ;; - *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;; + *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS_FOR_TARGET" ;; esac case " $CXXFLAGS " in *" -g "* | *" -g3 "*) ;; - *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;; + *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS_FOR_TARGET" ;; esac fi + + # 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 @@ -6671,7 +6994,7 @@ case "${target}" in spu-*-*) target_makefile_frag="config/mt-spu" ;; - mips*-sde-elf*) + mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) target_makefile_frag="config/mt-sde" ;; mipsisa*-*-elfoabi*) @@ -6680,6 +7003,9 @@ case "${target}" in mips*-*-*linux* | mips*-*-gnu*) target_makefile_frag="config/mt-mips-gnu" ;; + nios2-*-elf*) + target_makefile_frag="config/mt-nios2-elf" + ;; *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) target_makefile_frag="config/mt-gnu" ;; @@ -6690,10 +7016,6 @@ case "${target}" in extra_arflags_for_target=" -X32_64" extra_nmflags_for_target=" -B -X32_64" ;; - *-*-darwin[3-9]*) - # ranlib before Darwin10 requires the -c flag to look at common symbols. - extra_ranlibflags_for_target=" -c" - ;; esac alphaieee_frag=/dev/null @@ -6726,26 +7048,6 @@ case "${enable_target_optspace}:${target}" in ;; esac -# 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_noncanonical} @@ -6789,61 +7091,116 @@ case $we_are_ok in esac rm -f conftest* -# The Solaris /usr/ucb/cc compiler does not appear to work. +# Decide which environment variable is used to find dynamic libraries. case "${host}" in - sparc-sun-solaris2*) - CCBASE="`echo ${CC-cc} | sed 's/ .*$//'`" - if test "`type $CCBASE | sed 's/^[^/]*//'`" = "/usr/ucb/cc" ; then - could_use= - test -d /opt/SUNWspro/bin && could_use="/opt/SUNWspro/bin" - if test -d /opt/cygnus/bin ; then - if test "$could_use" = "" ; then - could_use="/opt/cygnus/bin" - else - could_use="$could_use or /opt/cygnus/bin" - fi - fi - if test "$could_use" = "" ; then - echo "Warning: compilation may fail because you're using" - echo "/usr/ucb/cc. You should change your PATH or CC " - echo "variable and rerun configure." - else - echo "Warning: compilation may fail because you're using" - echo "/usr/ucb/cc, when you should use the C compiler from" - echo "$could_use. You should change your" - echo "PATH or CC variable and rerun configure." - fi - fi - ;; + *-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;; + *-*-darwin*) RPATH_ENVVAR=DYLD_LIBRARY_PATH ;; + *-*-mingw* | *-*-cygwin ) RPATH_ENVVAR=PATH ;; + *) RPATH_ENVVAR=LD_LIBRARY_PATH ;; +esac + +# On systems where the dynamic library environment variable is PATH, +# gcc/ will put dynamic libraries into a subdirectory to avoid adding +# built executables to PATH. +if test "$RPATH_ENVVAR" = PATH; then + GCC_SHLIB_SUBDIR=/shlib +else + GCC_SHLIB_SUBDIR= +fi + +# Adjust the toplevel makefile according to whether bootstrap was selected. +case $enable_bootstrap in + yes) + bootstrap_suffix=bootstrap + BUILD_CONFIG=bootstrap-debug + ;; + no) + bootstrap_suffix=no-bootstrap + BUILD_CONFIG= + ;; esac -# Decide which environment variable is used to find dynamic libraries. -case "${host}" in - *-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;; - *-*-darwin*) RPATH_ENVVAR=DYLD_LIBRARY_PATH ;; - *-*-mingw* | *-*-cygwin ) RPATH_ENVVAR=PATH ;; - *) RPATH_ENVVAR=LD_LIBRARY_PATH ;; -esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for default BUILD_CONFIG" >&5 +$as_echo_n "checking for default BUILD_CONFIG... " >&6; } + + +# Check whether --with-build-config was given. +if test "${with_build_config+set}" = set; then : + withval=$with_build_config; case $with_build_config in + yes) with_build_config= ;; + no) with_build_config= BUILD_CONFIG= ;; + esac +fi + + +if test "x${with_build_config}" != x; then + BUILD_CONFIG=$with_build_config +else + case $BUILD_CONFIG in + bootstrap-debug) + if echo "int f (void) { return 0; }" > conftest.c && + ${CC} -c conftest.c && + 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 > /dev/null 2>&1; then + : + else + BUILD_CONFIG= + fi + rm -f conftest.c conftest.o conftest.o.g0 conftest.o.g + ;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $BUILD_CONFIG" >&5 +$as_echo "$BUILD_CONFIG" >&6; } + -# On systems where the dynamic library environment variable is PATH, -# gcc/ will put dynamic libraries into a subdirectory to avoid adding -# built executables to PATH. -if test "$RPATH_ENVVAR" = PATH; then - GCC_SHLIB_SUBDIR=/shlib +# Use same top-level configure hooks in libgcc/libstdc++/libvtv. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-vtable-verify" >&5 +$as_echo_n "checking for --enable-vtable-verify... " >&6; } +# Check whether --enable-vtable-verify was given. +if test "${enable_vtable_verify+set}" = set; then : + enableval=$enable_vtable_verify; case "$enableval" in + yes) enable_vtable_verify=yes ;; + no) enable_vtable_verify=no ;; + *) enable_vtable_verify=no;; + esac else - GCC_SHLIB_SUBDIR= + enable_vtable_verify=no fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_vtable_verify" >&5 +$as_echo "$enable_vtable_verify" >&6; } + # Record target_configdirs and the configure arguments for target and # build configuration in Makefile. target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'` build_configdirs=`echo "${build_configdirs}" | sed -e 's/build-//g'` +bootstrap_fixincludes=no # 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 +# If we are building libsanitizer and $BUILD_CONFIG contains bootstrap-asan +# or bootstrap-ubsan, bootstrap it. +if echo " ${target_configdirs} " | grep " libsanitizer " > /dev/null 2>&1; then + case "$BUILD_CONFIG" in + *bootstrap-asan* | *bootstrap-ubsan* ) + bootstrap_target_libs=${bootstrap_target_libs}target-libsanitizer, + bootstrap_fixincludes=yes + ;; + esac +fi + +# If we are building libvtv and --enable-vtable-verify, bootstrap it. +if echo " ${target_configdirs} " | grep " libvtv " > /dev/null 2>&1 && + test "$enable_vtable_verify" != no; then + bootstrap_target_libs=${bootstrap_target_libs}target-libvtv, +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! @@ -6886,59 +7243,6 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g` # 99 commands in a script, for HP-UX sed. # Do not nest @if/@endif pairs, because configure will not warn you at all. -# Check whether --enable-bootstrap was given. -if test "${enable_bootstrap+set}" = set; then : - enableval=$enable_bootstrap; -else - enable_bootstrap=default -fi - - -# Issue errors and warnings for invalid/strange bootstrap combinations. -case "$configdirs" in - *gcc*) have_compiler=yes ;; - *) have_compiler=no ;; -esac - -case "$have_compiler:$host:$target:$enable_bootstrap" in - *:*:*:no) ;; - - # Default behavior. Enable bootstrap if we have a compiler - # and we are in a native configuration. - yes:$build:$build:default) - enable_bootstrap=yes ;; - - *:*:*:default) - enable_bootstrap=no ;; - - # We have a compiler and we are in a native configuration, bootstrap is ok - yes:$build:$build:yes) - ;; - - # Other configurations, but we have a compiler. Assume the user knows - # what he's doing. - yes:*:*:yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: trying to bootstrap a cross compiler" >&5 -$as_echo "$as_me: WARNING: trying to bootstrap a cross compiler" >&2;} - ;; - - # No compiler: if they passed --enable-bootstrap explicitly, fail - no:*:*:yes) - as_fn_error "cannot bootstrap without a compiler" "$LINENO" 5 ;; - - # Fail if wrong command line - *) - as_fn_error "invalid option for --enable-bootstrap" "$LINENO" 5 - ;; -esac - -case ",$enable_languages,:$ENABLE_BUILD_WITH_CXX:$enable_bootstrap" in - *,c++,*:yes:yes) ;; - *:yes:yes) - as_fn_error "bootstrapping with --enable-build-with-cxx requires c++ in --enable-languages" "$LINENO" 5 - ;; -esac - case "$enable_bootstrap:$ENABLE_GOLD: $configdirs :,$stage1_languages," in yes:yes:*\ gold\ *:*,c++,*) ;; yes:yes:*\ gold\ *:*) @@ -6946,54 +7250,6 @@ case "$enable_bootstrap:$ENABLE_GOLD: $configdirs :,$stage1_languages," in ;; esac -# Adjust the toplevel makefile according to whether bootstrap was selected. -case $enable_bootstrap in - yes) - bootstrap_suffix=bootstrap - BUILD_CONFIG=bootstrap-debug - ;; - no) - bootstrap_suffix=no-bootstrap - BUILD_CONFIG= - ;; -esac - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for default BUILD_CONFIG" >&5 -$as_echo_n "checking for default BUILD_CONFIG... " >&6; } - - -# Check whether --with-build-config was given. -if test "${with_build_config+set}" = set; then : - withval=$with_build_config; case $with_build_config in - yes) with_build_config= ;; - no) with_build_config= BUILD_CONFIG= ;; - esac -fi - - -if test "x${with_build_config}" != x; then - BUILD_CONFIG=$with_build_config -else - case $BUILD_CONFIG in - bootstrap-debug) - if echo "int f (void) { return 0; }" > conftest.c && - ${CC} -c conftest.c && - 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 > /dev/null 2>&1; then - : - else - BUILD_CONFIG= - fi - rm -f conftest.c conftest.o conftest.o.g0 conftest.o.g - ;; - esac -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $BUILD_CONFIG" >&5 -$as_echo "$BUILD_CONFIG" >&6; } - - extrasub_build= for module in ${build_configdirs} ; do if test -z "${no_recursion}" \ @@ -7017,11 +7273,15 @@ for module in ${configdirs} ; do fi done fi + case ${module},${bootstrap_fixincludes} in + fixincludes,no) host_bootstrap_suffix=no-bootstrap ;; + *) host_bootstrap_suffix=$bootstrap_suffix ;; + esac extrasub_host="$extrasub_host /^@if $module\$/d /^@endif $module\$/d -/^@if $module-$bootstrap_suffix\$/d -/^@endif $module-$bootstrap_suffix\$/d" +/^@if $module-$host_bootstrap_suffix\$/d +/^@endif $module-$host_bootstrap_suffix\$/d" done extrasub_target= for module in ${target_configdirs} ; do @@ -7164,7 +7424,7 @@ do case $lib in - mpc | mpfr | gmp | ppl | cloog) + mpc | mpfr | gmp | cloog) # If we're processing --with-$lib, --with-$lib-include or # --with-$lib-lib, for one of the libs above, and target is # different from host, don't pass the current argument to any @@ -7285,6 +7545,26 @@ if test x${is_cross_compiler} = xyes ; then target_configargs="--with-cross-host=${host_noncanonical} ${target_configargs}" fi +# Special user-friendly check for native x86_64-linux build, if +# multilib is not explicitly enabled. +case "$target:$have_compiler:$host:$target:$enable_multilib" in + x86_64-*linux*:yes:$build:$build:) + # Make sure we have a developement environment that handles 32-bit + dev64=no + echo "int main () { return 0; }" > conftest.c + ${CC} -m32 -o conftest ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} conftest.c + if test $? = 0 ; then + if test -s conftest || test -s conftest.exe ; then + dev64=yes + fi + fi + rm -f conftest* + if test x${dev64} != xyes ; then + as_fn_error "I suspect your system does not have 32-bit developement libraries (libc and headers). If you have them, rerun configure with --enable-multilib. If you do not have them, and want to build a 64-bit-only compiler, rerun configure with --disable-multilib." "$LINENO" 5 + fi + ;; +esac + # Default to --enable-multilib. if test x${enable_multilib} = x ; then target_configargs="--enable-multilib ${target_configargs}" @@ -7317,7 +7597,7 @@ case " $target_configdirs " 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' + FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -isystem $$s/winsup/cygwin/include' ;; esac @@ -7520,7 +7800,6 @@ test -n "$YACC" || YACC="$MISSING bison -y" case " $build_configdirs " in *" bison "*) YACC='$$r/$(BUILD_SUBDIR)/bison/tests/bison -y' ;; - *" byacc "*) YACC='$$r/$(BUILD_SUBDIR)/byacc/byacc' ;; esac for ac_prog in bison @@ -9469,17 +9748,158 @@ fi done fi -for ncn_progname in objdump; do +for ncn_progname in objdump; do + if test -n "$ncn_tool_prefix"; then + # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_OBJDUMP+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OBJDUMP"; then + ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_OBJDUMP="${ncn_tool_prefix}${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OBJDUMP=$ac_cv_prog_OBJDUMP +if test -n "$OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +$as_echo "$OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + if test -z "$ac_cv_prog_OBJDUMP" && test $build = $host ; then + # Extract the first word of "${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_OBJDUMP+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OBJDUMP"; then + ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_OBJDUMP="${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OBJDUMP=$ac_cv_prog_OBJDUMP +if test -n "$OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +$as_echo "$OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + test -n "$ac_cv_prog_OBJDUMP" && break +done + +if test -z "$ac_cv_prog_OBJDUMP" ; then + set dummy objdump + if test $build = $host ; then + OBJDUMP="$2" + else + OBJDUMP="${ncn_tool_prefix}$2" + fi +fi + + + +if test -n "$READELF"; then + ac_cv_prog_READELF=$READELF +elif test -n "$ac_cv_prog_READELF"; then + READELF=$ac_cv_prog_READELF +fi + +if test -n "$ac_cv_prog_READELF"; then + for ncn_progname in readelf; do + # Extract the first word of "${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_READELF+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$READELF"; then + ac_cv_prog_READELF="$READELF" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_READELF="${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +READELF=$ac_cv_prog_READELF +if test -n "$READELF"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5 +$as_echo "$READELF" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + done +fi + +for ncn_progname in readelf; do if test -n "$ncn_tool_prefix"; then # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args. set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OBJDUMP+set}" = set; then : +if test "${ac_cv_prog_READELF+set}" = set; then : $as_echo_n "(cached) " >&6 else - if test -n "$OBJDUMP"; then - ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. + if test -n "$READELF"; then + ac_cv_prog_READELF="$READELF" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -9488,7 +9908,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OBJDUMP="${ncn_tool_prefix}${ncn_progname}" + ac_cv_prog_READELF="${ncn_tool_prefix}${ncn_progname}" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -9498,10 +9918,10 @@ IFS=$as_save_IFS fi fi -OBJDUMP=$ac_cv_prog_OBJDUMP -if test -n "$OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -$as_echo "$OBJDUMP" >&6; } +READELF=$ac_cv_prog_READELF +if test -n "$READELF"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5 +$as_echo "$READELF" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -9509,16 +9929,16 @@ fi fi - if test -z "$ac_cv_prog_OBJDUMP" && test $build = $host ; then + if test -z "$ac_cv_prog_READELF" && test $build = $host ; then # Extract the first word of "${ncn_progname}", so it can be a program name with args. set dummy ${ncn_progname}; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OBJDUMP+set}" = set; then : +if test "${ac_cv_prog_READELF+set}" = set; then : $as_echo_n "(cached) " >&6 else - if test -n "$OBJDUMP"; then - ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. + if test -n "$READELF"; then + ac_cv_prog_READELF="$READELF" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -9527,7 +9947,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_OBJDUMP="${ncn_progname}" + ac_cv_prog_READELF="${ncn_progname}" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -9537,10 +9957,10 @@ IFS=$as_save_IFS fi fi -OBJDUMP=$ac_cv_prog_OBJDUMP -if test -n "$OBJDUMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -$as_echo "$OBJDUMP" >&6; } +READELF=$ac_cv_prog_READELF +if test -n "$READELF"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5 +$as_echo "$READELF" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -9548,15 +9968,15 @@ fi fi - test -n "$ac_cv_prog_OBJDUMP" && break + test -n "$ac_cv_prog_READELF" && break done -if test -z "$ac_cv_prog_OBJDUMP" ; then - set dummy objdump +if test -z "$ac_cv_prog_READELF" ; then + set dummy readelf if test $build = $host ; then - OBJDUMP="$2" + READELF="$2" else - OBJDUMP="${ncn_tool_prefix}$2" + READELF="${ncn_tool_prefix}$2" fi fi @@ -12401,6 +12821,236 @@ fi +if test -z "$ac_cv_path_READELF_FOR_TARGET" ; then + if test -n "$with_build_time_tools"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readelf in $with_build_time_tools" >&5 +$as_echo_n "checking for readelf in $with_build_time_tools... " >&6; } + if test -x $with_build_time_tools/readelf; then + READELF_FOR_TARGET=`cd $with_build_time_tools && pwd`/readelf + ac_cv_path_READELF_FOR_TARGET=$READELF_FOR_TARGET + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_READELF_FOR_TARGET" >&5 +$as_echo "$ac_cv_path_READELF_FOR_TARGET" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + elif test $build != $host && test $have_gcc_for_target = yes; then + READELF_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=readelf` + test $READELF_FOR_TARGET = readelf && READELF_FOR_TARGET= + test -n "$READELF_FOR_TARGET" && ac_cv_path_READELF_FOR_TARGET=$READELF_FOR_TARGET + fi +fi +if test -z "$ac_cv_path_READELF_FOR_TARGET" && test -n "$gcc_cv_tool_dirs"; then + # Extract the first word of "readelf", so it can be a program name with args. +set dummy readelf; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_READELF_FOR_TARGET+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + case $READELF_FOR_TARGET in + [\\/]* | ?:[\\/]*) + ac_cv_path_READELF_FOR_TARGET="$READELF_FOR_TARGET" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $gcc_cv_tool_dirs +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_READELF_FOR_TARGET="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +READELF_FOR_TARGET=$ac_cv_path_READELF_FOR_TARGET +if test -n "$READELF_FOR_TARGET"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF_FOR_TARGET" >&5 +$as_echo "$READELF_FOR_TARGET" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_READELF_FOR_TARGET" ; then + + +if test -n "$READELF_FOR_TARGET"; then + ac_cv_prog_READELF_FOR_TARGET=$READELF_FOR_TARGET +elif test -n "$ac_cv_prog_READELF_FOR_TARGET"; then + READELF_FOR_TARGET=$ac_cv_prog_READELF_FOR_TARGET +fi + +if test -n "$ac_cv_prog_READELF_FOR_TARGET"; then + for ncn_progname in readelf; do + # Extract the first word of "${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_READELF_FOR_TARGET+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$READELF_FOR_TARGET"; then + ac_cv_prog_READELF_FOR_TARGET="$READELF_FOR_TARGET" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_READELF_FOR_TARGET="${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +READELF_FOR_TARGET=$ac_cv_prog_READELF_FOR_TARGET +if test -n "$READELF_FOR_TARGET"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF_FOR_TARGET" >&5 +$as_echo "$READELF_FOR_TARGET" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + done +fi + +if test -z "$ac_cv_prog_READELF_FOR_TARGET" && test -n "$with_build_time_tools"; then + for ncn_progname in readelf; do + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ncn_progname} in $with_build_time_tools" >&5 +$as_echo_n "checking for ${ncn_progname} in $with_build_time_tools... " >&6; } + if test -x $with_build_time_tools/${ncn_progname}; then + ac_cv_prog_READELF_FOR_TARGET=$with_build_time_tools/${ncn_progname} + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + break + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + done +fi + +if test -z "$ac_cv_prog_READELF_FOR_TARGET"; then + for ncn_progname in readelf; do + if test -n "$ncn_target_tool_prefix"; then + # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_READELF_FOR_TARGET+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$READELF_FOR_TARGET"; then + ac_cv_prog_READELF_FOR_TARGET="$READELF_FOR_TARGET" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_READELF_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +READELF_FOR_TARGET=$ac_cv_prog_READELF_FOR_TARGET +if test -n "$READELF_FOR_TARGET"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF_FOR_TARGET" >&5 +$as_echo "$READELF_FOR_TARGET" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + if test -z "$ac_cv_prog_READELF_FOR_TARGET" && test $build = $target ; then + # Extract the first word of "${ncn_progname}", so it can be a program name with args. +set dummy ${ncn_progname}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_READELF_FOR_TARGET+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$READELF_FOR_TARGET"; then + ac_cv_prog_READELF_FOR_TARGET="$READELF_FOR_TARGET" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_READELF_FOR_TARGET="${ncn_progname}" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +READELF_FOR_TARGET=$ac_cv_prog_READELF_FOR_TARGET +if test -n "$READELF_FOR_TARGET"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READELF_FOR_TARGET" >&5 +$as_echo "$READELF_FOR_TARGET" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + test -n "$ac_cv_prog_READELF_FOR_TARGET" && break + done +fi + +if test -z "$ac_cv_prog_READELF_FOR_TARGET" ; then + set dummy readelf + if test $build = $target ; then + READELF_FOR_TARGET="$2" + else + READELF_FOR_TARGET="${ncn_target_tool_prefix}$2" + fi +else + READELF_FOR_TARGET="$ac_cv_prog_READELF_FOR_TARGET" +fi + +else + READELF_FOR_TARGET=$ac_cv_path_READELF_FOR_TARGET +fi + + + + if test -z "$ac_cv_path_STRIP_FOR_TARGET" ; then if test -n "$with_build_time_tools"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strip in $with_build_time_tools" >&5 @@ -13242,7 +13892,7 @@ else esac if test $ok = yes; then # An in-tree tool is available and we can use it - CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `if test -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags; then $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' + CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xg++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `if test -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags; then $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs' { $as_echo "$as_me:${as_lineno-$LINENO}: result: just compiled" >&5 $as_echo "just compiled" >&6; } elif expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then @@ -13287,7 +13937,7 @@ else esac if test $ok = yes; then # An in-tree tool is available and we can use it - RAW_CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' + RAW_CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs' { $as_echo "$as_me:${as_lineno-$LINENO}: result: just compiled" >&5 $as_echo "just compiled" >&6; } elif expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then @@ -13725,6 +14375,48 @@ $as_echo "pre-installed" >&6; } fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target readelf" >&5 +$as_echo_n "checking where to find the target readelf... " >&6; } +if test "x${build}" != "x${host}" ; then + if expr "x$READELF_FOR_TARGET" : "x/" > /dev/null; then + # We already found the complete path + ac_dir=`dirname $READELF_FOR_TARGET` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5 +$as_echo "pre-installed in $ac_dir" >&6; } + else + # Canadian cross, just use what we found + { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5 +$as_echo "pre-installed" >&6; } + fi +else + ok=yes + case " ${configdirs} " in + *" binutils "*) ;; + *) ok=no ;; + esac + + if test $ok = yes; then + # An in-tree tool is available and we can use it + READELF_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/readelf' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: just compiled" >&5 +$as_echo "just compiled" >&6; } + elif expr "x$READELF_FOR_TARGET" : "x/" > /dev/null; then + # We already found the complete path + ac_dir=`dirname $READELF_FOR_TARGET` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5 +$as_echo "pre-installed in $ac_dir" >&6; } + elif test "x$target" = "x$host"; then + # We can use an host tool + READELF_FOR_TARGET='$(READELF)' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: host tool" >&5 +$as_echo "host tool" >&6; } + else + # We need a cross tool + { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5 +$as_echo "pre-installed" >&6; } + fi +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target strip" >&5 $as_echo_n "checking where to find the target strip... " >&6; } if test "x${build}" != "x${host}" ; then @@ -13915,43 +14607,6 @@ case $build in esac ;; esac -# This is aimed to mimic bootstrap with a non-GCC compiler to catch problems. -if test "$GCC" = yes -a "$ENABLE_BUILD_WITH_CXX" != yes; then - saved_CFLAGS="$CFLAGS" - - # Pass -fkeep-inline-functions for stage 1 if the GCC version supports it. - CFLAGS="$CFLAGS -fkeep-inline-functions" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fkeep-inline-functions is supported" >&5 -$as_echo_n "checking whether -fkeep-inline-functions is supported... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if (__GNUC__ < 3) \ - || (__GNUC__ == 3 && (__GNUC_MINOR__ < 3 \ - || (__GNUC_MINOR__ == 3 && __GNUC_PATCHLEVEL__ < 1))) -#error http://gcc.gnu.org/PR29382 -#endif - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; }; stage1_cflags="$stage1_cflags -fkeep-inline-functions" -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - - CFLAGS="$saved_CFLAGS" -fi - # Enable --enable-checking in stage1 of the compiler. @@ -13986,15 +14641,23 @@ case ${enable_werror} in esac +# Enable --enable-host-shared. +# Check whether --enable-host-shared was given. +if test "${enable_host_shared+set}" = set; then : + enableval=$enable_host_shared; host_shared=$enableval +else + host_shared=no +fi + + + # Specify what files to not compare during bootstrap. compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*" 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" ;; + powerpc*-ibm-aix*) compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/* | *libgomp*\$(objext)" ;; esac