diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | config/ChangeLog | 5 | ||||
-rw-r--r-- | config/gxx-include-dir.m4 | 8 | ||||
-rwxr-xr-x | configure | 31 | ||||
-rw-r--r-- | configure.in | 15 |
5 files changed, 68 insertions, 1 deletions
@@ -1,3 +1,13 @@ +2006-07-25 Paolo Bonzini <bonzini@gnu.org> + + Sync from GCC: + 2006-07-04 Eric Botcazou <ebotcazou@libertysurf.fr> + + PR bootstrap/18058 + * configure.in: Add -fkeep-inline-functions to CFLAGS for stage 1 + if the bootstrap compiler is a GCC version that supports it. + * configure: Regenerate. + 2006-07-22 Daniel Jacobowitz <dan@codesourcery.com> * configure.in: Allow mingw32 and cygwin targets to build cross-gdb. diff --git a/config/ChangeLog b/config/ChangeLog index 55ea2e2..bf0c5d6 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -9,6 +9,11 @@ PR target/26792 * unwind_ipinfo.m4: New. + 2006-07-21 David Daney <ddaney@avtrex.com> + + PR libgcj/28426 + * gxx-include-dir.m4: Use target_alias in path for cross build. + 2006-07-18 Paolo Bonzini <bonzini@gnu.org> * acx.m4: Support --with-build-libsubdir and AC_SUBST diff --git a/config/gxx-include-dir.m4 b/config/gxx-include-dir.m4 index 0e6e4ff..4f54d42 100644 --- a/config/gxx-include-dir.m4 +++ b/config/gxx-include-dir.m4 @@ -17,7 +17,13 @@ case "${with_gxx_include_dir}" in yes) gxx_include_dir='$(libsubdir)/include/c++' ;; *) libstdcxx_incdir='c++/$(gcc_version)' - gxx_include_dir='$(prefix)/include/$(libstdcxx_incdir)' ;; + gxx_include_dir='include/$(libstdcxx_incdir)' + if test -n "$with_cross_host" && + test x"$with_cross_host" != x"no"; then + gxx_include_dir='${prefix}/${target_alias}/'"$gxx_include_dir" + else + gxx_include_dir='${prefix}/'"$gxx_include_dir" + fi;; esac ;; *) gxx_include_dir=${with_gxx_include_dir} ;; esac @@ -7263,6 +7263,37 @@ case $build in ;; esac +# This is aimed to mimic bootstrap with a non-GCC compiler to catch problems. +if test "$GCC" = yes; then + saved_CFLAGS="$CFLAGS" + + # Pass -fkeep-inline-functions for stage 1 if the GCC version supports it. + CFLAGS="$CFLAGS -fkeep-inline-functions" + echo $ac_n "checking whether -fkeep-inline-functions is supported""... $ac_c" 1>&6 +echo "configure:7274: checking whether -fkeep-inline-functions is supported" >&5 + cat > conftest.$ac_ext <<EOF +#line 7276 "configure" +#include "confdefs.h" + +int main() { + +; return 0; } +EOF +if { (eval echo configure:7283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + echo "$ac_t""yes" 1>&6; stage1_cflags="$stage1_cflags -fkeep-inline-functions" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + echo "$ac_t""no" 1>&6 +fi +rm -f conftest* + + CFLAGS="$saved_CFLAGS" +fi + + # Enable -Werror in bootstrap stage2 and later. # Change the default to "no" on release branches. diff --git a/configure.in b/configure.in index 48b3a33..0c83351 100644 --- a/configure.in +++ b/configure.in @@ -2397,6 +2397,21 @@ case $build in stage1_cflags="-g -no-cpp-precomp -DHAVE_DESIGNATED_INITIALIZERS=0" ;; esac + +# This is aimed to mimic bootstrap with a non-GCC compiler to catch problems. +if test "$GCC" = yes; then + saved_CFLAGS="$CFLAGS" + + # Pass -fkeep-inline-functions for stage 1 if the GCC version supports it. + CFLAGS="$CFLAGS -fkeep-inline-functions" + AC_MSG_CHECKING([whether -fkeep-inline-functions is supported]) + AC_TRY_COMPILE(,, + [AC_MSG_RESULT([yes]); stage1_cflags="$stage1_cflags -fkeep-inline-functions"], + [AC_MSG_RESULT([no])]) + + CFLAGS="$saved_CFLAGS" +fi + AC_SUBST(stage1_cflags) # Enable -Werror in bootstrap stage2 and later. |