diff options
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 687 |
1 files changed, 289 insertions, 398 deletions
@@ -643,11 +643,12 @@ CXXFLAGS_FOR_TARGET CFLAGS_FOR_TARGET DEBUG_PREFIX_CFLAGS_FOR_TARGET SYSROOT_CFLAGS_FOR_TARGET -stage1_languages extra_host_libiberty_configure_flags -clooginc -clooglibs +stage1_languages +extra_linker_plugin_flags +extra_linker_plugin_configure_flags islinc +isllibs poststage1_ldflags poststage1_libs stage1_ldflags @@ -672,6 +673,7 @@ LDFLAGS CFLAGS CC EXTRA_CONFIGARGS_LIBJAVA +extra_liboffloadmic_configure_flags target_subdir host_subdir build_subdir @@ -745,6 +747,8 @@ ospace_frag' ac_user_opts=' enable_option_checking with_build_libsubdir +enable_as_accelerator_for +enable_offload_targets enable_gold enable_ld enable_libquadmath @@ -752,6 +756,7 @@ enable_libquadmath_support enable_libada enable_libssp enable_libstdcxx +enable_liboffloadmic enable_static_libjava enable_bootstrap with_mpc @@ -770,15 +775,13 @@ with_stage1_libs with_stage1_ldflags with_boot_libs with_boot_ldflags -with_cloog with_isl with_isl_include with_isl_lib enable_isl_version_check -with_cloog_include -with_cloog_lib -enable_cloog_version_check enable_lto +enable_linker_plugin_configure_flags +enable_linker_plugin_flags enable_stage1_languages enable_objc_gc with_build_sysroot @@ -1463,6 +1466,13 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-as-accelerator-for=ARG + build as offload target compiler. Specify offload + host triple by ARG + --enable-offload-targets=LIST + enable offloading to devices from comma-separated + LIST of TARGET[=DIR]. Use optional path to find + offload target compiler during the build --enable-gold[=ARG] build gold [ARG={default,yes,no}] --enable-ld[=ARG] build ld [ARG={default,yes,no}] --disable-libquadmath do not build libquadmath directory @@ -1471,14 +1481,20 @@ Optional Features: --enable-libada build libada directory --enable-libssp build libssp directory --disable-libstdcxx do not build libstdc++-v3 directory + --enable-liboffloadmic=ARG + build liboffloadmic [ARG={no,host,target}] --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 + --enable-linker-plugin-configure-flags=FLAGS + additional flags for configuring linker plugins + [none] + --enable-linker-plugin-flags=FLAGS + additional flags for configuring and building linker + plugins [none] --enable-stage1-languages[=all] choose additional languages to build during stage1. Mostly useful for compiler development @@ -1529,20 +1545,12 @@ Optional Packages: --with-boot-libs=LIBS libraries for stage2 and later --with-boot-ldflags=FLAGS linker flags for stage2 and later - --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 - library --with-build-sysroot=SYSROOT use sysroot as the system root during the build --with-debug-prefix-map='A=B C=D ...' @@ -1867,48 +1875,6 @@ 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. @@ -2748,14 +2714,14 @@ extra_host_args= # these library is used by various programs built for the build # environment # -build_libs="build-libiberty" +build_libs="build-libiberty build-libcpp" # these tools are built for the build environment 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 libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libdecnumber gmp mpfr mpc isl cloog libelf libiconv" +#f +host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libdecnumber gmp mpfr mpc isl libelf libiconv" # these tools are built for the host environment # Note, the powerpc-eabi build depends on sim occurring before gdb in order to @@ -2763,7 +2729,7 @@ host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktr # 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 flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gprof etc expect dejagnu m4 utils guile 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 libcc1 gotools" # libgcj represents the runtime libraries only used by gcj. libgcj="target-libffi \ @@ -2779,11 +2745,13 @@ target_libraries="target-libgcc \ target-newlib \ target-libgomp \ target-libcilkrts \ + target-liboffloadmic \ target-libatomic \ target-libitm \ target-libstdc++-v3 \ target-libsanitizer \ target-libvtv \ + target-libmpx \ target-libssp \ target-libquadmath \ target-libgfortran \ @@ -2928,6 +2896,24 @@ case ${with_newlib} in yes) skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'` ;; esac +# Check whether --enable-as-accelerator-for was given. +if test "${enable_as_accelerator_for+set}" = set; then : + enableval=$enable_as_accelerator_for; +fi + + +# Check whether --enable-offload-targets was given. +if test "${enable_offload_targets+set}" = set; then : + enableval=$enable_offload_targets; + if test x"$enable_offload_targets" = x; then + as_fn_error "no offload targets specified" "$LINENO" 5 + fi + +else + enable_offload_targets= +fi + + # Handle --enable-gold, --enable-ld. # --disable-gold [--enable-ld] # Build only ld. Default option. @@ -3095,9 +3081,47 @@ else fi if test "${ENABLE_LIBSTDCXX}" = "no" ; then - noconfigdirs="$noconfigdirs libstdc++-v3" + noconfigdirs="$noconfigdirs target-libstdc++-v3" +fi + +# If this is accelerator compiler and its target is intelmic we enable +# target liboffloadmic by default. If this is compiler with offloading +# for intelmic we enable host liboffloadmic by default. Otherwise +# liboffloadmic is disabled by default. +# Check whether --enable-liboffloadmic was given. +if test "${enable_liboffloadmic+set}" = set; then : + enableval=$enable_liboffloadmic; case "$enableval" in + no | host | target) + enable_liboffloadmic=$enableval ;; + *) + as_fn_error "--enable-liboffloadmic=no/host/target" "$LINENO" 5 ;; +esac +else + if test x"$enable_as_accelerator_for" != x; then + case "${target}" in + *-intelmic-* | *-intelmicemul-*) + enable_liboffloadmic=target + extra_liboffloadmic_configure_flags="--enable-liboffloadmic=target" + ;; + *) + enable_liboffloadmic=no + ;; + esac +else + case "${enable_offload_targets}" in + *-intelmic-* | *-intelmicemul-*) + enable_liboffloadmic=host + extra_liboffloadmic_configure_flags="--enable-liboffloadmic=host" + ;; + *) + enable_liboffloadmic=no + ;; + esac +fi 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 @@ -3191,6 +3215,25 @@ $as_echo "yes" >&6; } fi fi +# Disable liboffloadmic on unsupported systems. +if test -d ${srcdir}/liboffloadmic; then + if test x$enable_liboffloadmic != xno; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for liboffloadmic support" >&5 +$as_echo_n "checking for liboffloadmic support... " >&6; } + if (srcdir=${srcdir}/liboffloadmic; \ + . ${srcdir}/configure.tgt; \ + test -n "$UNSUPPORTED") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-liboffloadmic" + 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 @@ -3248,6 +3291,30 @@ $as_echo "yes" >&6; } fi fi + +# Enable libmpx on supported systems by request. +if test -d ${srcdir}/libmpx; then + if test x$enable_libmpx = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libmpx support" >&5 +$as_echo_n "checking for libmpx support... " >&6; } + if (srcdir=${srcdir}/libmpx; \ + . ${srcdir}/configure.tgt; \ + test "$LIBMPX_SUPPORTED" != "yes") + then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + noconfigdirs="$noconfigdirs target-libmpx" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + fi + else + noconfigdirs="$noconfigdirs target-libmpx" + fi +fi + + + # Disable libquadmath for some systems. case "${target}" in avr-*-*) @@ -3275,6 +3342,10 @@ case "${target}" in # for explicit misaligned loads. noconfigdirs="$noconfigdirs target-libssp" ;; + visium-*-*) + # No hosted I/O support. + noconfigdirs="$noconfigdirs target-libssp" + ;; esac # Disable libstdc++-v3 for some systems. @@ -3387,6 +3458,9 @@ case "${target}" in alpha*-*-*vms*) noconfigdirs="$noconfigdirs ${libgcj}" ;; + arm*-*-freebsd*) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; arm-wince-pe) noconfigdirs="$noconfigdirs ${libgcj}" ;; @@ -3451,6 +3525,14 @@ case "${target}" in ;; esac +# Disable the go frontend on systems where it is known to not work. Please keep +# this in sync with contrib/config-list.mk. +case "${target}" in +*-*-darwin* | *-*-cygwin* | *-*-mingw* | *-*-aix*) + unsupported_languages="$unsupported_languages go" + ;; +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 @@ -3819,6 +3901,10 @@ case "${target}" in nds32*-*-*) noconfigdirs="$noconfigdirs gdb" ;; + nvptx*-*-*) + # nvptx is just a compiler + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; or1k*-*-*) noconfigdirs="$noconfigdirs gdb" ;; @@ -5826,15 +5912,8 @@ fi -# 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-cloog was given. -if test "${with_cloog+set}" = set; then : - withval=$with_cloog; -fi +# GCC GRAPHITE dependency ISL. +# Basic setup is inlined here, actual checks are in config/isl.m4 # Check whether --with-isl was given. @@ -5843,10 +5922,9 @@ if test "${with_isl+set}" = set; then : fi -# Treat either --without-cloog or --without-isl as a request to disable +# Treat --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 +if test "x$with_isl" != "xno"; then # Check for ISL @@ -5898,103 +5976,9 @@ fi $as_echo "$as_me: WARNING: using in-tree ISL, disabling version check" >&2;} fi + isllibs="${isllibs} -lisl" - 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 - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <isl/version.h> - #include <string.h> -int -main () -{ -if (strncmp (isl_version (), "isl-0.10", strlen ("isl-0.10")) != 0) - return 1; - - ; - return 0; -} -_ACEOF -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.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 <isl/version.h> - #include <string.h> -int -main () -{ -if (strncmp (isl_version (), "isl-0.11", strlen ("isl-0.11")) != 0) - return 1; - - ; - return 0; -} -_ACEOF -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 @@ -6005,34 +5989,26 @@ $as_echo "$gcc_cv_isl" >&6; } 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compatible ISL" >&5 +$as_echo_n "checking for compatible ISL... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include <isl/version.h> - #include <string.h> +#include <isl/val.h> 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 : +if ac_fn_c_try_link "$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 - +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_isl" >&5 $as_echo "$gcc_cv_isl" >&6; } @@ -6042,8 +6018,6 @@ $as_echo "$gcc_cv_isl" >&6; } fi - fi - fi @@ -6073,197 +6047,18 @@ $as_echo "$gcc_cv_isl" >&6; } fi - - if test "x$gcc_cv_isl" != "xno"; then - # Check for CLOOG - - -# Check whether --with-cloog-include was given. -if test "${with_cloog_include+set}" = set; then : - withval=$with_cloog_include; -fi - - -# Check whether --with-cloog-lib was given. -if test "${with_cloog_lib+set}" = set; then : - withval=$with_cloog_lib; -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 -else - ENABLE_CLOOG_CHECK=yes -fi - - - # Initialize clooglibs and clooginc. - case $with_cloog in - no) - clooglibs= - clooginc= - ;; - "" | yes) - ;; - *) - clooglibs="-L$with_cloog/lib" - clooginc="-I$with_cloog/include" - ;; - esac - if test "x${with_cloog_include}" != x ; then - clooginc="-I$with_cloog_include" - fi - if test "x${with_cloog_lib}" != x; then - clooglibs="-L$with_cloog_lib" - fi - 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 "${ENABLE_CLOOG_CHECK}" = yes ; then - _cloog_saved_CFLAGS=$CFLAGS - _cloog_saved_LDFLAGS=$LDFLAGS - - CFLAGS="${_cloog_saved_CFLAGS} ${clooginc} ${islinc} ${gmpinc}" - LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${isllibs} ${gmplib}" - - { $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/version.h" -int -main () -{ -#if CLOOG_VERSION_MAJOR != 0 \ - || CLOOG_VERSION_MINOR != 17 \ - || CLOOG_VERSION_REVISION < 0 - choke me - #endif - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gcc_cv_cloog=yes -else - gcc_cv_cloog=no -fi -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; } - - CFLAGS=$_cloog_saved_CFLAGS - LDFLAGS=$_cloog_saved_LDFLAGS - fi - - - if test "${gcc_cv_cloog}" = no ; then - - - - if test "${ENABLE_CLOOG_CHECK}" = yes ; then - _cloog_saved_CFLAGS=$CFLAGS - _cloog_saved_LDFLAGS=$LDFLAGS - - CFLAGS="${_cloog_saved_CFLAGS} ${clooginc} ${islinc} ${gmpinc}" - LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${isllibs} ${gmplib}" - - { $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/version.h" -int -main () -{ -#if CLOOG_VERSION_MAJOR != 0 \ - || CLOOG_VERSION_MINOR != 18 \ - || CLOOG_VERSION_REVISION < 0 - choke me - #endif - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gcc_cv_cloog=yes -else - gcc_cv_cloog=no -fi -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; } - - CFLAGS=$_cloog_saved_CFLAGS - LDFLAGS=$_cloog_saved_LDFLAGS - fi - - - fi - - - - - - 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 - fi - - - - if test "${gcc_cv_cloog}" = no ; then - clooglibs= - clooginc= - fi - - if test "${graphite_requested}" = yes \ - && 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 - fi - - - fi fi -# If either the ISL or the CLooG check failed, disable builds of in-tree -# variants of both +# If the ISL check failed, disable builds of in-tree variant of ISL 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" + noconfigdirs="$noconfigdirs isl" islinc= - clooginc= - clooglibs= fi - - # Check for LTO support. # Check whether --enable-lto was given. if test "${enable_lto+set}" = set; then : @@ -6280,7 +6075,8 @@ target_elf=no case $target in *-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \ *-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \ - alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux*) + alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux* | \ + nvptx-*-none) target_elf=no ;; *) @@ -6323,6 +6119,23 @@ else fi +# Check whether --enable-linker-plugin-configure-flags was given. +if test "${enable_linker_plugin_configure_flags+set}" = set; then : + enableval=$enable_linker_plugin_configure_flags; extra_linker_plugin_configure_flags=$enableval +else + extra_linker_plugin_configure_flags= +fi + + +# Check whether --enable-linker-plugin-flags was given. +if test "${enable_linker_plugin_flags+set}" = set; then : + enableval=$enable_linker_plugin_flags; extra_linker_plugin_flags=$enableval +else + extra_linker_plugin_flags= +fi + + + # By default, C and C++ are the only stage 1 languages. stage1_languages=,c, @@ -6423,7 +6236,6 @@ if test -d ${srcdir}/gcc; then new_enable_languages=,c, # If LTO is enabled, add the LTO front end. - extra_host_libiberty_configure_flags= if test "$enable_lto" = "yes" ; then case ,${enable_languages}, in *,lto,*) ;; @@ -6431,10 +6243,16 @@ if test -d ${srcdir}/gcc; then esac if test "${build_lto_plugin}" = "yes" ; then configdirs="$configdirs lto-plugin" - extra_host_libiberty_configure_flags=--enable-shared fi fi + # If we're building an offloading compiler, add the LTO front end. + if test x"$enable_as_accelerator_for" != x ; then + case ,${enable_languages}, in + *,lto,*) ;; + *) enable_languages="${enable_languages},lto" ;; + esac + fi missing_languages=`echo ",$enable_languages," | sed -e s/,all,/,/ -e s/,c,/,/ ` potential_languages=,c, @@ -6652,11 +6470,19 @@ case ,${enable_languages},:${enable_objc_gc} in ;; esac -# Disable libitm, libsanitizer, libvtv if we're not building C++ +# Disable libcilkrts, libitm, libsanitizer, libvtv, liboffloadmic if we're not building C++ case ,${enable_languages}, in - *,c++,*) ;; + *,c++,*) + # Disable libcilkrts, libitm, libsanitizer if we're not building libstdc++ + case "${noconfigdirs}" in + *target-libstdc++-v3*) + noconfigdirs="$noconfigdirs target-libcilkrts target-libitm target-libsanitizer" + ;; + *) ;; + esac + ;; *) - noconfigdirs="$noconfigdirs target-libcilkrts target-libitm target-libsanitizer target-libvtv" + noconfigdirs="$noconfigdirs target-libcilkrts target-liboffloadmic target-libitm target-libsanitizer target-libvtv" ;; esac @@ -6728,6 +6554,32 @@ for i in ${target_configdirs_all} ; do fi done +# libiberty-linker-plugin is special: it doesn't have its own source directory, +# so we have to add it after the preceding checks. +if test x"$extra_linker_plugin_flags$extra_linker_plugin_configure_flags" != x +then + case " $configdirs " in + *" libiberty "*) + # If we can build libiberty, we can also build libiberty-linker-plugin. + configdirs="$configdirs libiberty-linker-plugin" + extra_linker_plugin_configure_flags="$extra_linker_plugin_configure_flags \ + --with-libiberty=../libiberty-linker-plugin";; + *) + as_fn_error "libiberty missing" "$LINENO" 5;; + esac +fi + +# Sometimes we have special requirements for the host libiberty. +extra_host_libiberty_configure_flags= +case " $configdirs " in + *" lto-plugin "* | *" libcc1 "*) + # When these are to be built as shared libraries, the same applies to + # libiberty. + extra_host_libiberty_configure_flags=--enable-shared + ;; +esac + + # Produce a warning message for the subdirs we can't configure. # This isn't especially interesting in the Cygnus tree, but in the individual # FSF releases, it's important to let people know when their machine isn't @@ -6852,28 +6704,36 @@ fi # gcc) are built with "-O2 -g", so include those options when setting # CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET. if test "x$CFLAGS_FOR_TARGET" = x; then - CFLAGS_FOR_TARGET=$CFLAGS - case " $CFLAGS " in - *" -O2 "*) ;; - *) CFLAGS_FOR_TARGET="-O2 $CFLAGS_FOR_TARGET" ;; - esac - case " $CFLAGS " in - *" -g "* | *" -g3 "*) ;; - *) CFLAGS_FOR_TARGET="-g $CFLAGS_FOR_TARGET" ;; - esac + if test "x${is_cross_compiler}" = xyes; then + CFLAGS_FOR_TARGET="-g -O2" + else + CFLAGS_FOR_TARGET=$CFLAGS + case " $CFLAGS " in + *" -O2 "*) ;; + *) CFLAGS_FOR_TARGET="-O2 $CFLAGS_FOR_TARGET" ;; + esac + case " $CFLAGS " in + *" -g "* | *" -g3 "*) ;; + *) CFLAGS_FOR_TARGET="-g $CFLAGS_FOR_TARGET" ;; + esac + fi fi if test "x$CXXFLAGS_FOR_TARGET" = x; then - CXXFLAGS_FOR_TARGET=$CXXFLAGS - case " $CXXFLAGS " in - *" -O2 "*) ;; - *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS_FOR_TARGET" ;; - esac - case " $CXXFLAGS " in - *" -g "* | *" -g3 "*) ;; - *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS_FOR_TARGET" ;; - esac + if test "x${is_cross_compiler}" = xyes; then + CXXFLAGS_FOR_TARGET="-g -O2" + else + CXXFLAGS_FOR_TARGET=$CXXFLAGS + case " $CXXFLAGS " in + *" -O2 "*) ;; + *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS_FOR_TARGET" ;; + esac + case " $CXXFLAGS " in + *" -g "* | *" -g3 "*) ;; + *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS_FOR_TARGET" ;; + esac + fi fi @@ -7214,6 +7074,11 @@ if echo " ${target_configdirs} " | grep " libvtv " > /dev/null 2>&1 && bootstrap_target_libs=${bootstrap_target_libs}target-libvtv, fi +# If we are building libmpx, bootstrap it. +if echo " ${target_configdirs} " | grep " libmpx " > /dev/null 2>&1; then + bootstrap_target_libs=${bootstrap_target_libs}target-libmpx, +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! @@ -7437,7 +7302,7 @@ do case $lib in - mpc | mpfr | gmp | cloog) + mpc | mpfr | gmp | isl) # 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 @@ -7530,8 +7395,10 @@ tbaseargs="$tbaseargs --disable-option-checking" # For the build-side libraries, we just need to pretend we're native, # and not use the same cache file. Multilibs are neither needed nor -# desired. -build_configargs="$build_configargs --cache-file=../config.cache ${baseargs}" +# desired. We can't even use the same cache file for all build-side +# libraries, as they're compiled differently; some with C, some with +# C++ or with different feature-enabling options. +build_configargs="$build_configargs --cache-file=./config.cache ${baseargs}" # For host modules, accept cache file option, or specification as blank. case "${cache_file}" in @@ -14566,7 +14433,7 @@ $as_echo "just compiled" >&6; } $as_echo "pre-installed in $ac_dir" >&6; } elif test "x$target" = "x$host"; then # We can use an host tool - OBJCOPY_FOR_TARGET='$(OBJDUMP)' + OBJCOPY_FOR_TARGET='$(OBJCOPY)' { $as_echo "$as_me:${as_lineno-$LINENO}: result: host tool" >&5 $as_echo "host tool" >&6; } else @@ -14936,6 +14803,30 @@ fi +# PR jit/64780: Require the user to explicitly specify +# --enable-host-shared if the jit is enabled, hinting +# that they might want to do a separate configure/build of +# the jit, to avoid users from slowing down the rest of the +# compiler by enabling the jit. +if test ${host_shared} = "no" ; then + case "${enable_languages}" in + *jit*) + as_fn_error " +Enabling language \"jit\" requires --enable-host-shared. + +--enable-host-shared typically slows the rest of the compiler down by +a few %, so you must explicitly enable it. + +If you want to build both the jit and the regular compiler, it is often +best to do this via two separate configure/builds, in separate +directories, to avoid imposing the performance cost of +--enable-host-shared on the regular compiler." "$LINENO" 5 + ;; + *) + ;; + esac +fi + # Specify what files to not compare during bootstrap. compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*" |