diff options
Diffstat (limited to 'config')
-rw-r--r-- | config/ChangeLog | 43 | ||||
-rw-r--r-- | config/bootstrap-debug-big.mk | 8 | ||||
-rw-r--r-- | config/bootstrap-debug-ckovw.mk | 16 | ||||
-rw-r--r-- | config/bootstrap-debug-lean.mk | 11 | ||||
-rw-r--r-- | config/bootstrap-debug-lib.mk | 12 | ||||
-rw-r--r-- | config/bootstrap-debug.mk | 12 | ||||
-rw-r--r-- | config/bootstrap-time.mk | 2 | ||||
-rw-r--r-- | config/extensions.m4 | 7 | ||||
-rw-r--r-- | config/no-executables.m4 | 4 | ||||
-rw-r--r-- | config/override.m4 | 27 | ||||
-rw-r--r-- | config/tls.m4 | 4 |
11 files changed, 133 insertions, 13 deletions
diff --git a/config/ChangeLog b/config/ChangeLog index 6bd7bbf5416..ba8fd0011e6 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,41 @@ +2009-09-03 Alexandre Oliva <aoliva@redhat.com> + + * bootstrap-debug-big.mk (STAGE2_CFLAGS): Drop -gtoggle. + * bootstrap-debug-lean.mk: Update comments. + (STAGE2_CFLAGS): Likewise. + (do-compare): Don't override. + +2009-09-01 Alexandre Oliva <aoliva@redhat.com> + + * bootstrap-debug.mk: Add comments. + * bootstrap-debug-big.mk: New. + * bootstrap-debug-lean.mk: New. + * bootstrap-debug-ckovw.mk: Add comments. + * bootstrap-debug-lib.mk: Drop CFLAGS for stages. Use -g0 + for TFLAGS in stage1. Drop -fvar-tracking-assignments-toggle. + +2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64. + +2009-08-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * override.m4 (AC_DISABLE_OPTION_CHECKING): Define to be + empty if not defined, to avoid error with 2.59. + (_AC_LANG_IO_PROGRAM): When the Autoconf version is exactly + 2.64, avoid per-language instances to drop fopen from test + program. + +2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand + for Autoconf 2.62 or newer. + * tls.m4 (GCC_CHECK_TLS): Fix m4 quotation. + * no-executables.m4 (_AC_COMPILER_EXEEXT): Fix m4 quotation. + * override.m4 (m4_copy_force, m4_rename_force): Provide + macros if not defined. + (AC_PREREQ): Use m4_copy_force. + 2009-07-17 Joseph Myers <joseph@codesourcery.com> PR other/40784 @@ -25,10 +63,7 @@ * bootstrap-O3.mk: New. * bootstrap-debug.mk: New. -2009-05-07 Paolo Bonzini - - Sync from src: - 2009-02-02 Doug Evans <dje@google.com> +2009-02-02 Doug Evans <dje@google.com> * tcl.m4 (SC_PATH_TCLCONFIG): Don't exit 0 if tclconfig fails. (SC_PATH_TKCONFIG): Don't exit 0 if tkconfig fails. diff --git a/config/bootstrap-debug-big.mk b/config/bootstrap-debug-big.mk new file mode 100644 index 00000000000..855ddc2a642 --- /dev/null +++ b/config/bootstrap-debug-big.mk @@ -0,0 +1,8 @@ +# This BUILD_CONFIG option is a bit like bootstrap-debug-lean, but it +# trades space for speed: instead of recompiling programs during +# stage3, it generates dumps during stage2 and stage3, saving them all +# until the final compare. + +STAGE2_CFLAGS += -fdump-final-insns +STAGE3_CFLAGS += -fdump-final-insns +do-compare = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2 diff --git a/config/bootstrap-debug-ckovw.mk b/config/bootstrap-debug-ckovw.mk new file mode 100644 index 00000000000..909b9047fc2 --- /dev/null +++ b/config/bootstrap-debug-ckovw.mk @@ -0,0 +1,16 @@ +# This BUILD_CONFIG option is to be used along with +# bootstrap-debug-lean and bootstrap-debug-lib in a full bootstrap, to +# check that all host and target files are built with -fcompare-debug. + +# These arrange for a simple warning to be issued if -fcompare-debug +# is not given. +# BOOT_CFLAGS += -fcompare-debug="-w%n-fcompare-debug not overridden" +# TFLAGS += -fcompare-debug="-w%n-fcompare-debug not overridden" + +# GCC_COMPARE_DEBUG="-w%n-fcompare-debug not overridden"; + +FORCE_COMPARE_DEBUG = \ + GCC_COMPARE_DEBUG=$${GCC_COMPARE_DEBUG--fcompare-debug-not-overridden}; \ + export GCC_COMPARE_DEBUG; +POSTSTAGE1_HOST_EXPORTS += $(FORCE_COMPARE_DEBUG) +BASE_TARGET_EXPORTS += $(FORCE_COMPARE_DEBUG) diff --git a/config/bootstrap-debug-lean.mk b/config/bootstrap-debug-lean.mk new file mode 100644 index 00000000000..e215280b09f --- /dev/null +++ b/config/bootstrap-debug-lean.mk @@ -0,0 +1,11 @@ +# This BUILD_CONFIG option is a bit like bootstrap-debug, but rather +# than comparing stripped object files, it compares compiler internal +# state during stage3. Both can be used simultaneously. + +# This makes it slower than bootstrap-debug alone, for there's +# additional dumping and recompilation during stage3. +# bootstrap-debug-big can avoid the recompilation, if plenty of disk +# space is available. + +STAGE2_CFLAGS += -fcompare-debug= +STAGE3_CFLAGS += -fcompare-debug diff --git a/config/bootstrap-debug-lib.mk b/config/bootstrap-debug-lib.mk new file mode 100644 index 00000000000..32fdf4dd863 --- /dev/null +++ b/config/bootstrap-debug-lib.mk @@ -0,0 +1,12 @@ +# This BUILD_CONFIG option tests that target libraries built during +# stage3 would have generated the same executable code if they were +# compiled with -g0. + +# It uses -g0 rather than -gtoggle because -g is default on target +# library builds, and toggling it where it's supposed to be disabled +# breaks e.g. crtstuff on ppc. + +STAGE1_TFLAGS += -g0 -fcompare-debug= +STAGE2_TFLAGS += -fcompare-debug= +STAGE3_TFLAGS += -fcompare-debug=-g0 +do-compare = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2 diff --git a/config/bootstrap-debug.mk b/config/bootstrap-debug.mk index 521be824194..41389241c05 100644 --- a/config/bootstrap-debug.mk +++ b/config/bootstrap-debug.mk @@ -1,2 +1,12 @@ -STAGE2_CFLAGS += -g0 +# This BUILD_CONFIG option builds checks that toggling debug +# information generation doesn't affect the generated object code. + +# It is very lightweight: in addition to not performing any additional +# compilation (unlike bootstrap-debug-lean), it actually speeds up +# stage2, for no debug information is generated when compiling with +# the unoptimized stage1. + +# For more thorough testing, see bootstrap-debug-lean.mk + +STAGE2_CFLAGS += -gtoggle do-compare = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2 diff --git a/config/bootstrap-time.mk b/config/bootstrap-time.mk new file mode 100644 index 00000000000..08a8dff912b --- /dev/null +++ b/config/bootstrap-time.mk @@ -0,0 +1,2 @@ +BOOT_CFLAGS += -time=$(shell pwd)/time.log +TFLAGS += -time=$(shell pwd)/time.log diff --git a/config/extensions.m4 b/config/extensions.m4 index 8ae4a675e2b..eb59f272119 100644 --- a/config/extensions.m4 +++ b/config/extensions.m4 @@ -1,7 +1,7 @@ -# serial 5 -*- Autoconf -*- +# serial 6 -*- Autoconf -*- # Enable extensions on systems that normally disable them. -# Copyright (C) 2003, 2006, 2007 Free Software Foundation, Inc. +# Copyright (C) 2003, 2006, 2007, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -12,6 +12,8 @@ # enough in this area it's likely we'll need to redefine # AC_USE_SYSTEM_EXTENSIONS for quite some time. +m4_version_prereq([2.62],, [ + # AC_USE_SYSTEM_EXTENSIONS # ------------------------ # Enable extensions on systems that normally disable them, @@ -74,3 +76,4 @@ AC_BEFORE([$0], [AC_RUN_IFELSE])dnl AC_DEFINE([_TANDEM_SOURCE]) ])# AC_USE_SYSTEM_EXTENSIONS +]) diff --git a/config/no-executables.m4 b/config/no-executables.m4 index c4d0b70c375..90616245ef9 100644 --- a/config/no-executables.m4 +++ b/config/no-executables.m4 @@ -25,7 +25,7 @@ AC_BEFORE([$0], [_AC_COMPILER_EXEEXT]) AC_BEFORE([$0], [AC_LINK_IFELSE]) m4_define([_AC_COMPILER_EXEEXT], -AC_LANG_CONFTEST([AC_LANG_PROGRAM()]) +[AC_LANG_CONFTEST([AC_LANG_PROGRAM()]) # FIXME: Cleanup? AS_IF([AC_TRY_EVAL(ac_link)], [gcc_no_link=no], [gcc_no_link=yes]) if test x$gcc_no_link = xyes; then @@ -35,7 +35,7 @@ if test x$gcc_no_link = xyes; then cross_compiling=yes EXEEXT= else - m4_defn([_AC_COMPILER_EXEEXT])dnl + ]m4_defn([_AC_COMPILER_EXEEXT])dnl fi ) diff --git a/config/override.m4 b/config/override.m4 index 9bb149620c4..cfa225a339c 100644 --- a/config/override.m4 +++ b/config/override.m4 @@ -12,6 +12,16 @@ dnl dnl The _GCC_AUTOCONF_VERSION_TEST ensures that exactly the desired dnl Autoconf version is used. It should be kept for consistency. +dnl Provide m4_copy_force and m4_rename_force for old Autoconf versions. + +m4_ifndef([m4_copy_force], +[m4_define([m4_copy_force], +[m4_ifdef([$2], [m4_undefine([$2])])m4_copy($@)])]) + +m4_ifndef([m4_rename_force], +[m4_define([m4_rename_force], +[m4_ifdef([$2], [m4_undefine([$2])])m4_rename($@)])]) + dnl m4_PACKAGE_VERSION is an undocumented Autoconf macro. dnl We use it because this fix is intended for 2.59 only. dnl A feature test for the broken AC_CONFIG_SUBDIRS instead @@ -25,12 +35,12 @@ ifdef([m4_PACKAGE_VERSION], [dnl AC_DEFUN a commonly used macro so this file is picked up. m4_copy([AC_PREREQ], [_AC_PREREQ]) AC_DEFUN([AC_PREREQ], [frob]) -m4_copy([_AC_PREREQ], [AC_PREREQ]) +m4_copy_force([_AC_PREREQ], [AC_PREREQ]) dnl Ensure exactly this Autoconf version is used m4_ifndef([_GCC_AUTOCONF_VERSION], - [m4_define([_GCC_AUTOCONF_VERSION], [2.59])]) + [m4_define([_GCC_AUTOCONF_VERSION], [2.64])]) dnl Test for the exact version when AC_INIT is expanded. dnl This allows to update the tree in steps (for testing) @@ -48,6 +58,19 @@ m4_define([AC_INIT], m4_defn([AC_INIT])[ _GCC_AUTOCONF_VERSION_CHECK ]) + +dnl Turn AC_DISABLE_OPTION_CHECKING into a no-op if not defined. +m4_ifndef([AC_DISABLE_OPTION_CHECKING], + [m4_define([AC_DISABLE_OPTION_CHECKING])]) + + +dnl Fix 2.64 cross compile detection for AVR and RTEMS +dnl by not trying to compile fopen. +m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.64], + [m4_foreach([_GCC_LANG], [C, C++, Fortran, Fortran 77], + [m4_define([_AC_LANG_IO_PROGRAM(]_GCC_LANG[)], m4_defn([AC_LANG_PROGRAM(]_GCC_LANG[)]))])]) + + m4_version_prereq([2.60],, [ dnl We use $ac_pwd in some of the overrides below; ensure its definition m4_divert_push([PARSE_ARGS])dnl diff --git a/config/tls.m4 b/config/tls.m4 index 099bdc257a8..ef7e6d0b555 100644 --- a/config/tls.m4 +++ b/config/tls.m4 @@ -11,8 +11,8 @@ AC_DEFUN([GCC_CHECK_TLS], [ chktls_save_LDFLAGS="$LDFLAGS" LDFLAGS="-static $LDFLAGS" AC_LINK_IFELSE([int main() { return 0; }], - AC_RUN_IFELSE([__thread int a; int b; int main() { return a = b; }], - [gcc_cv_have_tls=yes], [gcc_cv_have_tls=no],[]), + [AC_RUN_IFELSE([__thread int a; int b; int main() { return a = b; }], + [gcc_cv_have_tls=yes], [gcc_cv_have_tls=no],[])], [gcc_cv_have_tls=yes]) LDFLAGS="$chktls_save_LDFLAGS" if test $gcc_cv_have_tls = yes; then |