configdirs="$configdirs gold"
;;
*)
- configdirs="`echo " ${configdirs} " | sed -e 's/ ld / gold /'`"
+ configdirs=`echo " ${configdirs} " | sed -e 's/ ld / gold /'`
;;
esac
ENABLE_GOLD=yes
noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap"
;;
*-*-rtems*)
+ skipdirs="${skipdirs} target-libiberty"
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
# The tpf target doesn't support gdb yet.
noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
;;
microblaze*)
- noconfigdirs="$noconfigdirs gprof ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libssp ${libgcj}"
;;
mips*-sde-elf*)
skipdirs="$skipdirs target-libiberty"
v810-*-*)
noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}"
;;
- v850-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
- ;;
- v850e-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
- ;;
- v850ea-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ v850*-*-*)
+ noconfigdirs="$noconfigdirs ${libgcj}"
;;
vax-*-vms)
noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
if test "x$with_gmp$with_gmp_include$with_gmp_lib" = x && test -d ${srcdir}/gmp; then
gmplibs='-L$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir $gmplibs"
gmpinc='-I$$r/$(HOST_SUBDIR)/gmp -I$$s/gmp '"$gmpinc"
- extra_mpfr_configure_flags='--with-gmp-build=$$r/$(HOST_SUBDIR)/gmp'
+ extra_mpfr_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir"
extra_mpc_gmp_configure_flags='--with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-gmp-lib=$$r/$(HOST_SUBDIR)/gmp/'"$lt_cv_objdir"
# Do not test the gmp version. Assume that it is sufficient, since
# it is in the source tree, and the library has not been built yet
#if GCC_GMP_VERSION < GCC_GMP_VERSION_NUM(4,2,0)
choke me
#endif
- ], AC_TRY_COMPILE([#include <gmp.h>],[
+ ], [AC_TRY_COMPILE([#include <gmp.h>],[
#define GCC_GMP_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
#define GCC_GMP_VERSION GCC_GMP_VERSION_NUM(__GNU_MP_VERSION,__GNU_MP_VERSION_MINOR,__GNU_MP_VERSION_PATCHLEVEL)
#if GCC_GMP_VERSION < GCC_GMP_VERSION_NUM(4,3,2)
choke me
#endif
- ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])]),
+ ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
[AC_MSG_RESULT([no]); have_gmp=no])
# If we have GMP, check the MPFR version.
#if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1)
choke me
#endif
- ], AC_TRY_COMPILE([#include <gmp.h>
+ ], [AC_TRY_COMPILE([#include <gmp.h>
#include <mpfr.h>],[
#if MPFR_VERSION < MPFR_VERSION_NUM(2,4,2)
choke me
#endif
- ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])]),
+ ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
[AC_MSG_RESULT([no]); have_gmp=no])
fi
#if MPC_VERSION < MPC_VERSION_NUM(0,8,0)
choke me
#endif
- ], AC_TRY_COMPILE([#include <mpc.h>],[
+ ], [AC_TRY_COMPILE([#include <mpc.h>],[
#if MPC_VERSION < MPC_VERSION_NUM(0,8,1)
choke me
#endif
- ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])]),
+ ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
[AC_MSG_RESULT([no]); have_gmp=no])
fi
AC_SUBST(poststage1_ldflags)
# Check for PPL
-ppl_major_version=0
-ppl_minor_version=10
ppllibs=" -lppl_c -lppl -lgmpxx"
pplinc=
if test "x$with_ppl" != "xno" -a "${ENABLE_PPL_CHECK}" = "yes"; then
saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $pplinc $gmpinc"
- AC_MSG_CHECKING([for version $ppl_major_version.$ppl_minor_version of PPL])
+ AC_MSG_CHECKING([for version 0.10 (or later revision) of PPL])
AC_TRY_COMPILE([#include "ppl_c.h"],[
- #if PPL_VERSION_MAJOR != $ppl_major_version || PPL_VERSION_MINOR != $ppl_minor_version
+ #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 10
choke me
#endif
], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); ppllibs= ; pplinc= ; with_ppl=no ])
#if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 5
choke me
#endif
- ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); clooglibs= ; clooginc= ])
+ ], [AC_TRY_COMPILE([#include "cloog/cloog.h"],[
+ #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 9
+ choke me
+ #endif
+ ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
+ [AC_MSG_RESULT([no]); clooglibs= ; clooginc= ])
CFLAGS="$saved_CFLAGS"
fi
elf_nextscn (0, 0);
elf_strptr (0, 0, 0);
elf_getident (0, 0);
- elf_getshdrstrndx (0, 0);
elf_begin (0, 0, 0);
elf_ndxscn (0);
elf_end (0);
[AC_MSG_RESULT([no]); enable_lto=no; libelflibs= ; libelfinc= ]
)
+ # Check for elf_getshdrstrndx or elf_getshstrndx. The latter's flavor
+ # is determined in gcc/configure.ac.
+ if test x"$enable_lto" = x"yes" ; then
+ AC_MSG_CHECKING([for elf_getshdrstrndx])
+ AC_TRY_LINK(
+ [#include <libelf.h>],[
+ elf_getshdrstrndx (0, 0);
+ ],
+ [AC_MSG_RESULT([yes]);],
+ [AC_MSG_RESULT([no]);
+ AC_MSG_CHECKING([for elf_getshstrndx])
+ AC_TRY_LINK(
+ [#include <libelf.h>],[
+ elf_getshstrndx (0, 0);
+ ],
+ [AC_MSG_RESULT([yes]);],
+ [AC_MSG_RESULT([no]); enable_lto=no; libelflibs= ; libelfinc= ]
+ )]
+ )
+ fi
+
# If we couldn't enable LTO and the user forced it, emit an error.
if test x"$enable_lto" = x"no" \
&& test x"$default_enable_lto" != x"yes" ; then
# Flags needed for libelf.
AC_SUBST(libelflibs)
AC_SUBST(libelfinc)
+ # ELF platforms build the lto-plugin when GOLD is in use.
+ build_lto_plugin=${ENABLE_GOLD}
fi],[if test x"$default_enable_lto" = x"yes" ; then
- # On non-ELF platforms, LTO must be explicitly enabled.
- enable_lto=no
+ case $target in
+ *-apple-darwin* | *-cygwin* | *-mingw*) ;;
+ # On other non-ELF platforms, LTO must be explicitly enabled.
+ *) enable_lto=no ;;
+ esac
else
- # Apart from ELF platforms, only Windows supports LTO so far. It
- # would also be nice to check the binutils support, but we don't
+ # Apart from ELF platforms, only Windows and Darwin support LTO so far.
+ # It would also be nice to check the binutils support, but we don't
# have gcc_GAS_CHECK_FEATURE available here. For now, we'll just
# warn during gcc/ subconfigure; unless you're bootstrapping with
# -flto it won't be needed until after installation anyway.
case $target in
- *-cygwin*|*-mingw*) ;;
- *-apple-darwin*) ;;
+ *-cygwin* | *-mingw* | *-apple-darwin*) ;;
*) if test x"$enable_lto" = x"yes"; then
AC_MSG_ERROR([LTO support is not enabled for this target.])
fi
;;
esac
fi
+ # Among non-ELF, only Windows platforms support the lto-plugin so far.
+ case $target in
+ *-cygwin* | *-mingw*) build_lto_plugin=yes ;;
+ *) ;;
+ esac
default_enable_lto=no])
*,lto,*) ;;
*) enable_languages="${enable_languages},lto" ;;
esac
- if test "${ENABLE_GOLD}" = "yes" ; then
+ if test "${build_lto_plugin}" = "yes" ; then
configdirs="$configdirs lto-plugin"
extra_host_libiberty_configure_flags=--enable-shared
fi
mv conftest.o conftest.o.g0 &&
${CC} -c -g conftest.c &&
mv conftest.o conftest.o.g &&
- ${srcdir}/contrib/compare-debug conftest.o.g0 conftest.o.g; then
+ ${srcdir}/contrib/compare-debug conftest.o.g0 conftest.o.g > /dev/null 2>&1; then
:
else
BUILD_CONFIG=
fi
baseargs="$baseargs --disable-option-checking"
+# Record and document user additions to sub configure arguments.
+AC_ARG_VAR([build_configargs],
+ [additional configure arguments for build directories])
+AC_ARG_VAR([host_configargs],
+ [additional configure arguments for host directories])
+AC_ARG_VAR([target_configargs],
+ [additional configure arguments for target directories])
+
# For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor
# desired.
-build_configargs="--cache-file=../config.cache ${baseargs}"
+build_configargs="$build_configargs --cache-file=../config.cache ${baseargs}"
# For host modules, accept cache file option, or specification as blank.
case "${cache_file}" in
# Host dirs don't like to share a cache file either, horribly enough.
# This seems to be due to autoconf 2.5x stupidity.
-host_configargs="--cache-file=./config.cache ${extra_host_args} ${baseargs}"
+host_configargs="$host_configargs --cache-file=./config.cache ${extra_host_args} ${baseargs}"
-target_configargs=${baseargs}
+target_configargs="$target_configargs ${baseargs}"
# Passing a --with-cross-host argument lets the target libraries know
# whether they are being built with a cross-compiler or being built