From 05a1325405543281f5529720bdcae4bc9f2d1b83 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Mon, 23 Jan 2017 11:55:48 +0000 Subject: Sync top-level make and configure files with FSF GCC mainline versions. * configure.ac: Update year in copyright notice. Sync from FSF GCC mainline, bringing in the following patches. * Makefile.def: Likewise. * Makefile.tpl: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. 2016-12-21 Jakub Jelinek * configure.ac: Don't bootstrap libmpx unless --with-build-config includes bootstrap-mpx. 2016-12-01 Matthias Klose * configure.ac: Don't use pkg-config to check for bdw-gc. 2016-11-30 Matthias Klose * Makefile.def: Remove reference to boehm-gc target module. * configure.ac: Include pkg.m4, check for --with-target-bdw-gc options and for the bdw-gc pkg-config module. 2016-11-15 Matthias Klose * config-ml.in: Remove references to GCJ. * configure.ac: Likewise. 2016-09-30 Jakub Jelinek * configure.ac: Add target-libffi to target_libraries. Readd libgcj target disablings, modified to only target-libffi. Readd target addition of go to unsupported languages. 2016-09-30 Andrew Haley * Makefile.def: Remove libjava. * Makefile.tpl: Likewise. * configure.ac: Likewise. 2016-09-26 Anton Kolesov * configure.ac: Disable "sim" directory for arc*-*-*. 2016-09-12 Maciej W. Rozycki * configure.ac: Check for the minimum in-tree MPFR version handled. --- configure.ac | 277 +++++++++++++++++++---------------------------------------- 1 file changed, 86 insertions(+), 191 deletions(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 3ec86c19df7..532c5c27f9b 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, # 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, -# 2014, 2015, 2016 Free Software Foundation, Inc. +# 2014, 2015, 2016, 2017 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -142,11 +142,6 @@ host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktr # 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 libcc1 gotools" -# libgcj represents the runtime libraries only used by gcj. -libgcj="target-libffi \ - target-zlib \ - 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. @@ -166,8 +161,7 @@ target_libraries="target-libgcc \ target-libssp \ target-libquadmath \ target-libgfortran \ - target-boehm-gc \ - ${libgcj} \ + target-libffi \ target-libobjc \ target-libada \ target-libgo" @@ -507,41 +501,6 @@ else fi]) AC_SUBST(extra_liboffloadmic_configure_flags) -# 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 -case $enable_libgcj in -yes) - # If we reset it here, it won't get added to noconfigdirs in the - # target-specific build rules, so it will be forcibly enabled - # (unless the Java language itself isn't enabled). - libgcj= - ;; -no) - # Make sure we get it printed in the list of not supported target libs. - # Don't disable libffi, though, other languages use it. - noconfigdirs="$noconfigdirs `echo ${libgcj} | sed -e 's/target-libffi//'`" - # Clear libgcj_saved so that even if java is enabled libffi won't be - # built. - libgcj_saved= - ;; -esac - -AC_ARG_ENABLE(static-libjava, -[AS_HELP_STRING([[--enable-static-libjava[=ARG]]], - [build static libjava @<:@default=no@:>@])], -ENABLE_STATIC_LIBJAVA=$enableval, -ENABLE_STATIC_LIBJAVA=no) -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 -AC_SUBST(EXTRA_CONFIGARGS_LIBJAVA) - # Enable libgomp by default on hosted POSIX systems, and a few others. if test x$enable_libgomp = x ; then case "${target}" in @@ -738,62 +697,7 @@ case "${target}" in ;; esac -# Disable Java if libffi is not supported. -case "${target}" in - aarch64-*-*) - ;; - alpha*-*-*) - ;; - arm*-*-*) - ;; - cris-*-*) - ;; - frv-*-*) - ;; - hppa*-*-linux*) - ;; - hppa*-*-hpux*) - ;; - i?86-*-*) - ;; - ia64*-*-*) - ;; - m32r*-*-*) - ;; - m68k-*-*) - ;; - mips*-*-rtems*) - ;; - mips*-*-linux*) - ;; - powerpc*-*-linux*) - ;; - powerpc-*-darwin*) - ;; - 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 - -# Disable Java, libgcj or related libraries for some systems. +# Disable libffi for some systems. case "${target}" in powerpc-*-darwin*) ;; @@ -802,90 +706,84 @@ case "${target}" in x86_64-*-darwin[[912]]*) ;; *-*-darwin*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-netware*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" + ;; + *-*-phoenix*) + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-rtems*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-tpf*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-uclinux*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-vxworks*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" + ;; + aarch64*-*-freebsd*) + noconfigdirs="$noconfigdirs target-libffi" ;; alpha*-*-*vms*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; arm*-*-freebsd*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; arm-wince-pe) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; arm*-*-symbianelf*) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; - bfin-*-*) - noconfigdirs="$noconfigdirs target-boehm-gc" + noconfigdirs="$noconfigdirs target-libffi" ;; cris-*-* | crisv32-*-*) - unsupported_languages="$unsupported_languages java" case "${target}" in *-*-linux*) ;; *) # See PR46792 regarding target-libffi. - noconfigdirs="$noconfigdirs target-libffi target-boehm-gc";; + noconfigdirs="$noconfigdirs target-libffi";; esac ;; - 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 target-libffi" ;; hppa*-hp-hpux11*) ;; hppa*-*-hpux*) - # According to Alexandre Oliva , libjava won't - # build on HP-UX 10.20. - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; ia64*-*-*vms*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; i[[3456789]]86-w64-mingw*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; i[[3456789]]86-*-mingw*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; x86_64-*-mingw*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; mmix-*-*) - noconfigdirs="$noconfigdirs target-libffi target-boehm-gc" + noconfigdirs="$noconfigdirs target-libffi" ;; powerpc-*-aix*) # copied from rs6000-*-* entry - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; rs6000-*-aix*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; ft32-*-*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; *-*-lynxos*) - noconfigdirs="$noconfigdirs ${libgcj}" + noconfigdirs="$noconfigdirs target-libffi" ;; esac @@ -1063,6 +961,9 @@ case "${target}" in ;; *-*-netware*) ;; + *-*-phoenix*) + noconfigdirs="$noconfigdirs target-libgloss" + ;; *-*-rtems*) noconfigdirs="$noconfigdirs target-libgloss" # this is not caught below because this stanza matches earlier @@ -1094,8 +995,8 @@ case "${target}" in sh*-*-pe|mips*-*-pe|*arm-wince-pe) noconfigdirs="$noconfigdirs tcl tk itcl libgui sim" ;; - arc-*-*|arceb-*-*) - noconfigdirs="$noconfigdirs target-libgloss" + arc*-*-*) + noconfigdirs="$noconfigdirs sim" ;; arm-*-pe*) noconfigdirs="$noconfigdirs target-libgloss" @@ -1103,8 +1004,6 @@ case "${target}" in arm-*-riscix*) noconfigdirs="$noconfigdirs ld target-libgloss" ;; - avr-*-rtems*) - ;; avr-*-*) if test x${with_avrlibc} != xno; then noconfigdirs="$noconfigdirs target-newlib target-libgloss" @@ -1279,7 +1178,7 @@ case "${target}" in or1k*-*-*) noconfigdirs="$noconfigdirs gdb" ;; - sh-*-* | sh64-*-*) + sh-*-*) case "${target}" in sh*-*-elf) ;; @@ -1295,12 +1194,9 @@ case "${target}" in tic6x-*-*) noconfigdirs="$noconfigdirs sim" ;; - tilegx*-*-*) + tilepro*-*-* | tilegx*-*-*) noconfigdirs="$noconfigdirs sim" ;; - tilepro*-*-*) - noconfigdirs="$noconfigdirs gdb sim" - ;; v810-*-*) noconfigdirs="$noconfigdirs bfd binutils gas gdb ld opcodes target-libgloss" ;; @@ -1359,7 +1255,6 @@ if test "${build}" != "${host}" ; then AS_FOR_BUILD=${AS_FOR_BUILD-as} CC_FOR_BUILD=${CC_FOR_BUILD-gcc} CXX_FOR_BUILD=${CXX_FOR_BUILD-g++} - GCJ_FOR_BUILD=${GCJ_FOR_BUILD-gcj} GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran} GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo} DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool} @@ -1373,7 +1268,6 @@ else AS_FOR_BUILD="\$(AS)" CC_FOR_BUILD="\$(CC)" CXX_FOR_BUILD="\$(CXX)" - GCJ_FOR_BUILD="\$(GCJ)" GFORTRAN_FOR_BUILD="\$(GFORTRAN)" GOC_FOR_BUILD="\$(GOC)" DLLTOOL_FOR_BUILD="\$(DLLTOOL)" @@ -1551,15 +1445,13 @@ if test "x$with_mpfr_lib" != x; then fi if test "x$with_mpfr$with_mpfr_include$with_mpfr_lib" = x && test -d ${srcdir}/mpfr; then # 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" + if ! test -d ${srcdir}/mpfr/src; then + AC_MSG_ERROR([dnl +Building GCC with MPFR in the source tree is only handled for MPFR 3.1.0+.]) fi + 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" # 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 @@ -2167,24 +2059,34 @@ done AC_ARG_ENABLE(objc-gc, [AS_HELP_STRING([--enable-objc-gc], [enable use of Boehm's garbage collector with the - GNU Objective-C runtime])], -[case ,${enable_languages},:${enable_objc_gc}:${noconfigdirs} in - *,objc,*:*:yes:*target-boehm-gc*) - AC_MSG_ERROR([Boehm's garbage collector was requested yet not supported in this configuration]) - ;; -esac]) - -# Make sure we only build Boehm's garbage collector if required. -case ,${enable_languages},:${enable_objc_gc} in - *,objc,*:yes) - # Keep target-boehm-gc if requested for Objective-C. - ;; - *) - # Otherwise remove target-boehm-gc depending on target-libjava. - if echo " ${noconfigdirs} " | grep "target-libjava" >/dev/null 2>&1; then - noconfigdirs="$noconfigdirs target-boehm-gc" + GNU Objective-C runtime])]) +AC_ARG_WITH([target-bdw-gc], +[AS_HELP_STRING([--with-target-bdw-gc=PATHLIST], + [specify prefix directory for installed bdw-gc package. + Equivalent to --with-target-bdw-gc-include=PATH/include + plus --with-target-bdw-gc-lib=PATH/lib])]) +AC_ARG_WITH([target-bdw-gc-include], +[AS_HELP_STRING([--with-target-bdw-gc-include=PATHLIST], + [specify directories for installed bdw-gc include files])]) +AC_ARG_WITH([target-bdw-gc-lib], +[AS_HELP_STRING([--with-target-bdw-gc-lib=PATHLIST], + [specify directories for installed bdw-gc library])]) + +case ,${enable_languages},:${enable_objc_gc} in *,objc,*:yes|*,objc,*:auto) + AC_MSG_CHECKING([for bdw garbage collector]) + if test "x$with_target_bdw_gc$with_target_bdw_gc_include$with_target_bdw_gc_lib" = x; then + dnl no bdw-gw options, assume default locations + AC_MSG_RESULT([using bdw-gc in default locations]) + else + dnl bdw-gw options, first error checking, complete checking in libobjc + if test "x$with_target_bdw_gc_include" = x && test "x$with_target_bdw_gc_lib" != x; then + AC_MSG_ERROR([found --with-target-bdw-gc-lib but --with-target-bdw-gc-include missing]) + elif test "x$with_target_bdw_gc_include" != x && test "x$with_target_bdw_gc_lib" = x; then + AC_MSG_ERROR([found --with-target-bdw-gc-include but --with-target-bdw-gc-lib missing]) + else + AC_MSG_RESULT([using paths configured with --with-target-bdw-gc options]) fi - ;; + fi esac # Disable libcilkrts, libitm, libsanitizer, libvtv, liboffloadmic if we're not building C++ @@ -2271,15 +2173,6 @@ for i in ${target_configdirs_all} ; do fi done -# Exclude target-zlib if target-libjava isn't built. -case ${target_configdirs} in -*target-libjava*) - ;; -*) - target_configdirs="`echo ${target_configdirs} | sed -e 's/target-zlib//'`" - ;; -esac - # 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 @@ -2750,9 +2643,14 @@ 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 we are building libmpx and $BUILD_CONFIG contains bootstrap-mpx, +# bootstrap it. if echo " ${target_configdirs} " | grep " libmpx " > /dev/null 2>&1; then - bootstrap_target_libs=${bootstrap_target_libs}target-libmpx, + case "$BUILD_CONFIG" in + *bootstrap-mpx* ) + bootstrap_target_libs=${bootstrap_target_libs}target-libmpx, + ;; + esac fi # Determine whether gdb needs tk/tcl or not. @@ -3299,7 +3197,6 @@ AC_SUBST(CFLAGS_FOR_BUILD) AC_SUBST(CXXFLAGS_FOR_BUILD) AC_SUBST(CXX_FOR_BUILD) AC_SUBST(DLLTOOL_FOR_BUILD) -AC_SUBST(GCJ_FOR_BUILD) AC_SUBST(GFORTRAN_FOR_BUILD) AC_SUBST(GOC_FOR_BUILD) AC_SUBST(LDFLAGS_FOR_BUILD) @@ -3409,7 +3306,6 @@ AC_ARG_WITH([build-time-tools], NCN_STRICT_CHECK_TARGET_TOOLS(CC_FOR_TARGET, cc gcc) NCN_STRICT_CHECK_TARGET_TOOLS(CXX_FOR_TARGET, c++ g++ cxx gxx) NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TARGET, gcc, ${CC_FOR_TARGET}) -NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj) NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran) NCN_STRICT_CHECK_TARGET_TOOLS(GOC_FOR_TARGET, gccgo) @@ -3441,8 +3337,6 @@ GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX, c++) GCC_TARGET_TOOL(dlltool, DLLTOOL_FOR_TARGET, DLLTOOL, [binutils/dlltool]) GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/]) -GCC_TARGET_TOOL(gcj, GCJ_FOR_TARGET, GCJ, - [gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/], java) GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN, [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran) GCC_TARGET_TOOL(gccgo, GOC_FOR_TARGET, GOC, @@ -3530,16 +3424,17 @@ AC_ARG_ENABLE(stage1-checking, # For --disable-checking or implicit --enable-checking=release, avoid # setting --enable-checking=gc in the default stage1 checking for LTO # bootstraps. See PR62077. - stage1_checking=--enable-checking=release,misc,gimple,rtlflag,tree,types case $BUILD_CONFIG in *lto*) - if test "x$enable_checking" = x && \ - test -d ${srcdir}/gcc && \ - test x"`cat ${srcdir}/gcc/DEV-PHASE`" = xexperimental; then - stage1_checking=--enable-checking=yes,types - fi;; - *) stage1_checking=--enable-checking=yes,types;; + stage1_checking=--enable-checking=release,misc,gimple,rtlflag,tree,types;; + *) + stage1_checking=--enable-checking=yes,types;; esac + if test "x$enable_checking" = x && \ + test -d ${srcdir}/gcc && \ + test x"`cat ${srcdir}/gcc/DEV-PHASE`" = xexperimental; then + stage1_checking=--enable-checking=yes,types,extra + fi else stage1_checking=--enable-checking=$enable_checking,types fi]) -- cgit v1.2.1