From cbe7e9a04fbe029c9e163f39125106d9e593af5f Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Thu, 20 Aug 2009 10:10:57 +0200 Subject: [PATCH] bump version Signed-off-by: aldot --- toolchain/gcc/4.3.3/301-missing-execinfo_h.patch | 8 +++- toolchain/gcc/4.4.1/100-uclibc-conf.patch | 33 ++++++++++++++ .../{4.3.3 => 4.4.1}/301-missing-execinfo_h.patch | 8 +++- toolchain/gcc/4.4.1/302-c99-snprintf.patch | 13 ++++++ .../gcc/4.4.1/305-libmudflap-susv3-legacy.patch | 49 +++++++++++++++++++++ .../4.4.1/410-prefer-GCJ_FOR_ECJX-from-env.patch | 51 ++++++++++++++++++++++ .../4.4.1/993-arm_insn-opinit-RTX_CODE-fixup.patch | 36 +++++++++++++++ toolchain/gcc/4.4.1/995-short-enums.diff | 42 ++++++++++++++++++ toolchain/gcc/Config.in | 17 +++++--- 9 files changed, 249 insertions(+), 8 deletions(-) create mode 100644 toolchain/gcc/4.4.1/100-uclibc-conf.patch copy toolchain/gcc/{4.3.3 => 4.4.1}/301-missing-execinfo_h.patch (64%) create mode 100644 toolchain/gcc/4.4.1/302-c99-snprintf.patch create mode 100644 toolchain/gcc/4.4.1/305-libmudflap-susv3-legacy.patch create mode 100644 toolchain/gcc/4.4.1/410-prefer-GCJ_FOR_ECJX-from-env.patch create mode 100644 toolchain/gcc/4.4.1/993-arm_insn-opinit-RTX_CODE-fixup.patch create mode 100644 toolchain/gcc/4.4.1/995-short-enums.diff diff --git a/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch b/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch index 0e2092f..121eab0 100644 --- a/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch +++ b/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch @@ -1,3 +1,9 @@ +boehm-gc/ChangeLog: +2008-10-07 Bernhard Reutner-Fischer <> + + * include/gc.h (GC_HAVE_BUILTIN_BACKTRACE): Add check for + __UCLIBC_HAS_BACKTRACE__. + --- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500 +++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500 @@ -500,7 +500,7 @@ @@ -5,7 +11,7 @@ # include # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ - && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) ++ && !defined(__ia64__) || defined(__UCLIBC_HAS_BACKTRACE__) # ifndef GC_HAVE_BUILTIN_BACKTRACE # define GC_HAVE_BUILTIN_BACKTRACE # endif diff --git a/toolchain/gcc/4.4.1/100-uclibc-conf.patch b/toolchain/gcc/4.4.1/100-uclibc-conf.patch new file mode 100644 index 0000000..cca8c82 --- /dev/null +++ b/toolchain/gcc/4.4.1/100-uclibc-conf.patch @@ -0,0 +1,33 @@ +--- gcc/gcc/config/--- gcc/contrib/regression/objs-gcc.sh ++++ gcc/contrib/regression/objs-gcc.sh +@@ -105,6 +105,10 @@ + then + make all-gdb all-dejagnu all-ld || exit 1 + make install-gdb install-dejagnu install-ld || exit 1 ++elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] ++ then ++ make all-gdb all-dejagnu all-ld || exit 1 ++ make install-gdb install-dejagnu install-ld || exit 1 + elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then + make bootstrap || exit 1 + make install || exit 1 +--- gcc/libjava/classpath/ltconfig ++++ gcc/libjava/classpath/ltconfig +@@ -603,7 +603,7 @@ + + # Transform linux* to *-*-linux-gnu*, to support old configure scripts. + case $host_os in +-linux-gnu*) ;; ++linux-gnu*|linux-uclibc*) ;; + linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` + esac + +@@ -1251,7 +1251,7 @@ + ;; + + # This must be Linux ELF. +-linux-gnu*) ++linux*) + version_type=linux + need_lib_prefix=no + need_version=no diff --git a/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch b/toolchain/gcc/4.4.1/301-missing-execinfo_h.patch similarity index 64% copy from toolchain/gcc/4.3.3/301-missing-execinfo_h.patch copy to toolchain/gcc/4.4.1/301-missing-execinfo_h.patch index 0e2092f..121eab0 100644 --- a/toolchain/gcc/4.3.3/301-missing-execinfo_h.patch +++ b/toolchain/gcc/4.4.1/301-missing-execinfo_h.patch @@ -1,3 +1,9 @@ +boehm-gc/ChangeLog: +2008-10-07 Bernhard Reutner-Fischer <> + + * include/gc.h (GC_HAVE_BUILTIN_BACKTRACE): Add check for + __UCLIBC_HAS_BACKTRACE__. + --- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500 +++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500 @@ -500,7 +500,7 @@ @@ -5,7 +11,7 @@ # include # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ - && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) ++ && !defined(__ia64__) || defined(__UCLIBC_HAS_BACKTRACE__) # ifndef GC_HAVE_BUILTIN_BACKTRACE # define GC_HAVE_BUILTIN_BACKTRACE # endif diff --git a/toolchain/gcc/4.4.1/302-c99-snprintf.patch b/toolchain/gcc/4.4.1/302-c99-snprintf.patch new file mode 100644 index 0000000..ba51a0e --- /dev/null +++ b/toolchain/gcc/4.4.1/302-c99-snprintf.patch @@ -0,0 +1,13 @@ +Index: gcc-4.3.0/libstdc++-v3/include/c_global/cstdio +=================================================================== +--- gcc-4.3.0/libstdc++-v3/include/c_global/cstdio (revision 129202) ++++ gcc-4.3.0/libstdc++-v3/include/c_global/cstdio (working copy) +@@ -144,7 +144,7 @@ + + _GLIBCXX_END_NAMESPACE + +-#if _GLIBCXX_USE_C99 ++#if _GLIBCXX_USE_C99 || defined __UCLIBC__ + + #undef snprintf + #undef vfscanf diff --git a/toolchain/gcc/4.4.1/305-libmudflap-susv3-legacy.patch b/toolchain/gcc/4.4.1/305-libmudflap-susv3-legacy.patch new file mode 100644 index 0000000..374b1f8 --- /dev/null +++ b/toolchain/gcc/4.4.1/305-libmudflap-susv3-legacy.patch @@ -0,0 +1,49 @@ +Index: gcc-4.2/libmudflap/mf-hooks2.c +=================================================================== +--- gcc-4.2/libmudflap/mf-hooks2.c (revision 119834) ++++ gcc-4.2/libmudflap/mf-hooks2.c (working copy) +@@ -427,7 +427,7 @@ + { + TRACE ("%s\n", __PRETTY_FUNCTION__); + MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region"); +- bzero (s, n); ++ memset (s, 0, n); + } + + +@@ -437,7 +437,7 @@ + TRACE ("%s\n", __PRETTY_FUNCTION__); + MF_VALIDATE_EXTENT(src, n, __MF_CHECK_READ, "bcopy src"); + MF_VALIDATE_EXTENT(dest, n, __MF_CHECK_WRITE, "bcopy dest"); +- bcopy (src, dest, n); ++ memmove (dest, src, n); + } + + +@@ -447,7 +447,7 @@ + TRACE ("%s\n", __PRETTY_FUNCTION__); + MF_VALIDATE_EXTENT(s1, n, __MF_CHECK_READ, "bcmp 1st arg"); + MF_VALIDATE_EXTENT(s2, n, __MF_CHECK_READ, "bcmp 2nd arg"); +- return bcmp (s1, s2, n); ++ return n == 0 ? 0 : memcmp (s1, s2, n); + } + + +@@ -456,7 +456,7 @@ + size_t n = strlen (s); + TRACE ("%s\n", __PRETTY_FUNCTION__); + MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "index region"); +- return index (s, c); ++ return strchr (s, c); + } + + +@@ -465,7 +465,7 @@ + size_t n = strlen (s); + TRACE ("%s\n", __PRETTY_FUNCTION__); + MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "rindex region"); +- return rindex (s, c); ++ return strrchr (s, c); + } + + /* XXX: stpcpy, memccpy */ diff --git a/toolchain/gcc/4.4.1/410-prefer-GCJ_FOR_ECJX-from-env.patch b/toolchain/gcc/4.4.1/410-prefer-GCJ_FOR_ECJX-from-env.patch new file mode 100644 index 0000000..8cac5e9 --- /dev/null +++ b/toolchain/gcc/4.4.1/410-prefer-GCJ_FOR_ECJX-from-env.patch @@ -0,0 +1,51 @@ +If you want to use e.g. gcj-4.4-local for building ecj for your host +and do not have a $cross_host-gcj then bootstrap previously failed. + +libjava/ChangeLog +2009-02-20 Bernhard Reutner-Fischer <> + + * configure.ac (GCJ_FOR_ECJX): Allow override from environment. + * configure: Regenerate. + +diff -rdup gcc-4.3.3.orig/libjava/configure gcc-4.3.3/libjava/configure +--- gcc-4.3.3.orig/libjava/configure 2009-01-24 11:32:29.000000000 +0100 ++++ gcc-4.3.3/libjava/configure 2009-02-20 16:19:18.000000000 +0100 +@@ -5273,14 +5273,15 @@ NATIVE=yes + # Which gcj and host gcj (for ecjx) do we use? + which_gcj=default + host_exeext=${ac_exeext} +-GCJ_FOR_ECJX= ++GCJ_FOR_ECJX=${GCJ_FOR_ECJX} + built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" + if test -n "${with_cross_host}"; then + # We are being configured with a cross compiler. We can't + # use ac_exeext, because that is for the target platform. + NATIVE=no + cross_host_exeext= +- GCJ_FOR_ECJX="${with_cross_host}-gcj" ++ test "x${GCJ_FOR_ECJX}" = "x" && ++ GCJ_FOR_ECJX="${with_cross_host}-gcj" + case "${with_cross_host}" in + *mingw* | *cygwin*) + cross_host_exeext=.exe +diff -rdup gcc-4.3.3.orig/libjava/configure.ac gcc-4.3.3/libjava/configure.ac +--- gcc-4.3.3.orig/libjava/configure.ac 2008-07-02 23:23:43.000000000 +0200 ++++ gcc-4.3.3/libjava/configure.ac 2009-02-20 16:19:25.000000000 +0100 +@@ -313,14 +313,15 @@ NATIVE=yes + # Which gcj and host gcj (for ecjx) do we use? + which_gcj=default + host_exeext=${ac_exeext} +-GCJ_FOR_ECJX= ++GCJ_FOR_ECJX=${GCJ_FOR_ECJX} + built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" + if test -n "${with_cross_host}"; then + # We are being configured with a cross compiler. We can't + # use ac_exeext, because that is for the target platform. + NATIVE=no + cross_host_exeext= +- GCJ_FOR_ECJX="${with_cross_host}-gcj" ++ test "x${GCJ_FOR_ECJX}" = "x" && ++ GCJ_FOR_ECJX="${with_cross_host}-gcj" + case "${with_cross_host}" in + *mingw* | *cygwin*) + cross_host_exeext=.exe diff --git a/toolchain/gcc/4.4.1/993-arm_insn-opinit-RTX_CODE-fixup.patch b/toolchain/gcc/4.4.1/993-arm_insn-opinit-RTX_CODE-fixup.patch new file mode 100644 index 0000000..16520bb --- /dev/null +++ b/toolchain/gcc/4.4.1/993-arm_insn-opinit-RTX_CODE-fixup.patch @@ -0,0 +1,36 @@ +gcc/ChangeLog +2007-11-27 Bernhard Fischer <> + + * config/arm/arm-protos.h (arm_vector_mode_supported_p, + arm_hard_regno_mode_ok, const_ok_for_arm): Do not hide non-rtx related + function prototypes in RTX_CODE. + * genopinit.c: Include tm_p.h. + +Index: gcc-4.3.0/gcc/genopinit.c +=================================================================== +--- gcc-4.3.0/gcc/genopinit.c (revision 130463) ++++ gcc-4.3.0/gcc/genopinit.c (working copy) +@@ -486,6 +486,7 @@ + printf ("#include \"expr.h\"\n"); + printf ("#include \"optabs.h\"\n"); + printf ("#include \"reload.h\"\n\n"); ++ printf ("#include \"tm_p.h\"\n\n"); + + printf ("void\ninit_all_optabs (void)\n{\n"); + +--- gcc-4.4.1/gcc/config/arm/arm-protos.h.orig 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.1/gcc/config/arm/arm-protos.h 2009-08-18 18:47:17.000000000 +0200 +@@ -41,12 +41,11 @@ + unsigned int); + extern unsigned int arm_dbx_register_number (unsigned int); + extern void arm_output_fn_unwind (FILE *, bool); +- + +-#ifdef RTX_CODE + extern bool arm_vector_mode_supported_p (enum machine_mode); + extern int arm_hard_regno_mode_ok (unsigned int, enum machine_mode); + extern int const_ok_for_arm (HOST_WIDE_INT); ++#ifdef RTX_CODE + extern int arm_split_constant (RTX_CODE, enum machine_mode, rtx, + HOST_WIDE_INT, rtx, rtx, int); + extern RTX_CODE arm_canonicalize_comparison (RTX_CODE, enum machine_mode, diff --git a/toolchain/gcc/4.4.1/995-short-enums.diff b/toolchain/gcc/4.4.1/995-short-enums.diff new file mode 100644 index 0000000..03c470c --- /dev/null +++ b/toolchain/gcc/4.4.1/995-short-enums.diff @@ -0,0 +1,42 @@ +see gcc PR34205 +Index: gcc-4.3.0/gcc/tree.h +=================================================================== +--- gcc-4.3.0/gcc/tree.h (revision 130511) ++++ gcc-4.3.0/gcc/tree.h (working copy) +@@ -38,6 +38,7 @@ + + LAST_AND_UNUSED_TREE_CODE /* A convenient way to get a value for + NUM_TREE_CODES. */ ++ ,__LAST_AND_UNUSED_TREE_CODE=32767 /* Force 16bit width. */ + }; + + #undef DEFTREECODE +Index: gcc-4.3.0/gcc/rtl.h +=================================================================== +--- gcc-4.3.0/gcc/rtl.h (revision 130511) ++++ gcc-4.3.0/gcc/rtl.h (working copy) +@@ -48,9 +48,11 @@ + #include "rtl.def" /* rtl expressions are documented here */ + #undef DEF_RTL_EXPR + +- LAST_AND_UNUSED_RTX_CODE}; /* A convenient way to get a value for ++ LAST_AND_UNUSED_RTX_CODE /* A convenient way to get a value for + NUM_RTX_CODE. + Assumes default enum value assignment. */ ++ ,__LAST_AND_UNUSED_RTX_CODE=32767 /* Force 16bit width. */ ++}; + + #define NUM_RTX_CODE ((int) LAST_AND_UNUSED_RTX_CODE) + /* The cast here, saves many elsewhere. */ +Index: gcc-4.3.0/gcc/c-common.h +=================================================================== +--- gcc-4.3.0/gcc/c-common.h (revision 130511) ++++ gcc-4.3.0/gcc/c-common.h (working copy) +@@ -125,6 +125,7 @@ + RID_LAST_AT = RID_AT_IMPLEMENTATION, + RID_FIRST_PQ = RID_IN, + RID_LAST_PQ = RID_ONEWAY ++ ,__LAST_AND_UNUSED_RID=32767 /* Force 16bit width. */ + }; + + #define OBJC_IS_AT_KEYWORD(rid) \ diff --git a/toolchain/gcc/Config.in b/toolchain/gcc/Config.in index 2a03c69..ed87319 100644 --- a/toolchain/gcc/Config.in +++ b/toolchain/gcc/Config.in @@ -60,14 +60,18 @@ choice depends on !BR2_avr32 && !BR2_nios2 bool "gcc 4.3.3" - config BR2_GCC_VERSION_4_4_0 + config BR2_GCC_VERSION_4_4_1 depends on !BR2_avr32 && !BR2_nios2 - bool "gcc 4.4.0 (local trunk checkout)" + bool "gcc 4.4.1" - config BR2_GCC_VERSION_4_4 + config BR2_GCC_VERSION_4_5_0 + depends on !BR2_avr32 && !BR2_nios2 + bool "gcc 4.5.0 (local trunk checkout)" + + config BR2_GCC_VERSION_4_5 depends on !BR2_avr32 && !BR2_nios2 select BR2_GCC_IS_SNAP - bool "gcc 4.4 (snapshot)" + bool "gcc 4.5 (snapshot)" endchoice config BR2_GCC_IS_SNAP @@ -106,8 +110,9 @@ config BR2_GCC_VERSION default "4.3.1" if BR2_GCC_VERSION_4_3_1 default "4.3.2" if BR2_GCC_VERSION_4_3_2 default "4.3.3" if BR2_GCC_VERSION_4_3_3 - default "4.4.0" if BR2_GCC_VERSION_4_4_0 - default "4.4" if BR2_GCC_VERSION_4_4 + default "4.4.1" if BR2_GCC_VERSION_4_4_1 + default "4.5.0" if BR2_GCC_VERSION_4_5_0 + default "4.5" if BR2_GCC_VERSION_4_5 config BR2_TOOLCHAIN_SYSROOT bool "Enable toolchain with --sysroot support" -- 2.11.4.GIT