diff options
-rw-r--r-- | conf/distro/angstrom-2008.1.conf | 10 | ||||
-rw-r--r-- | conf/distro/include/angstrom-uclibc.inc | 11 | ||||
-rw-r--r-- | packages/binutils/binutils-2.17/binutils-2.17.atmel.1.2.6.patch.bz2 | bin | 0 -> 184944 bytes | |||
-rw-r--r-- | packages/binutils/binutils.inc | 5 | ||||
-rw-r--r-- | packages/binutils/binutils_2.17.bb | 12 | ||||
-rw-r--r-- | packages/gcc/gcc-4.2.2.inc | 9 | ||||
-rw-r--r-- | packages/gcc/gcc-4.2.2/901-avr32-no-cond-exec-before-reload-by-default.patch | 13 | ||||
-rw-r--r-- | packages/gcc/gcc-4.2.2/gcc-4.2.2.atmel.1.0.8.patch.bz2 | bin | 0 -> 162791 bytes | |||
-rw-r--r-- | packages/gdb/gdb-cross.inc | 6 |
9 files changed, 55 insertions, 11 deletions
diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf index 16c7b7d14f..eb83cbcbb5 100644 --- a/conf/distro/angstrom-2008.1.conf +++ b/conf/distro/angstrom-2008.1.conf @@ -119,11 +119,11 @@ require conf/distro/include/preferred-gpe-versions-2.8.inc require conf/distro/include/preferred-e-versions.inc require conf/distro/include/preferred-xorg-versions-X11R7.3.inc -#avr32 only has patches for binutils 2.17 and gcc 4.2.1 in OE -PREFERRED_VERSION_gcc_avr32 = "4.2.1" -PREFERRED_VERSION_gcc-cross_avr32 = "4.2.1" -PREFERRED_VERSION_gcc-cross-sdk_avr32 = "4.2.1" -PREFERRED_VERSION_gcc-cross-initial_avr32 = "4.2.1" +#avr32 only has patches for binutils 2.17 and gcc 4.2.2 in OE +PREFERRED_VERSION_gcc_avr32 = "4.2.2" +PREFERRED_VERSION_gcc-cross_avr32 = "4.2.2" +PREFERRED_VERSION_gcc-cross-sdk_avr32 = "4.2.2" +PREFERRED_VERSION_gcc-cross-initial_avr32 = "4.2.2" PREFERRED_VERSION_binutils_avr32 = "2.17" PREFERRED_VERSION_binutils-cross_avr32 = "2.17" PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17" diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc index 7e8e60d7dd..7c713e65ea 100644 --- a/conf/distro/include/angstrom-uclibc.inc +++ b/conf/distro/include/angstrom-uclibc.inc @@ -16,8 +16,15 @@ FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-reg BUILD_OPTIMIZATION = "-Os" #Gcc will die with 'internal consistency error when using the above optimizations -FULL_OPTIMIZATION_avr32 = "" -BUILD_OPTIMIZATION_avr32 = "" +#with gcc-4.2.1-atmel.1.0.3 (and probably most other avr32 gcc ports). +#However, some packages require optimizations to compile (e.g. libmad). +#It appears the guilty optimization is "-frename-registers", leaving that one +#out allows the build to proceed normally. -fexpensive-optimizations may be OK, +#it was removed while debugging an issue that ultimately turned out to be due +#to the ICE fixed by gcc-pr32889.patch. It needs to be tested again. +#Note that this testing was done without the gcc-pr32889.patch. +FULL_OPTIMIZATION_avr32 = "-Os -fomit-frame-pointer" + CXXFLAGS += "-fvisibility-inlines-hidden" diff --git a/packages/binutils/binutils-2.17/binutils-2.17.atmel.1.2.6.patch.bz2 b/packages/binutils/binutils-2.17/binutils-2.17.atmel.1.2.6.patch.bz2 Binary files differnew file mode 100644 index 0000000000..583ea40a84 --- /dev/null +++ b/packages/binutils/binutils-2.17/binutils-2.17.atmel.1.2.6.patch.bz2 diff --git a/packages/binutils/binutils.inc b/packages/binutils/binutils.inc index 684cf54b8e..49d3aeaa3c 100644 --- a/packages/binutils/binutils.inc +++ b/packages/binutils/binutils.inc @@ -67,6 +67,11 @@ export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}" do_configure () { (cd ${S}; gnu-configize) || die "Failed to run gnu-configize" + + # Fix for issues when system's texinfo version >= 4.10 + # (See https://bugzilla.redhat.com/show_bug.cgi?id=345621) + sed -i -e "s@egrep 'texinfo.*'@egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|4.[1-9][0-9]+|[5-9])'@" '${S}/configure' + oe_runconf # # must prime config.cache to ensure the build of libiberty diff --git a/packages/binutils/binutils_2.17.bb b/packages/binutils/binutils_2.17.bb index 0696a24e72..e721cb41f3 100644 --- a/packages/binutils/binutils_2.17.bb +++ b/packages/binutils/binutils_2.17.bb @@ -1,6 +1,7 @@ require binutils.inc +require binutils-avr32.inc -PR = "r4" +PR = "r5" SRC_URI = \ "http://ftp.gnu.org/gnu/binutils/binutils-${PV}.tar.bz2 \ @@ -18,8 +19,13 @@ SRC_URI += "\ file://300-012_check_ldrunpath_length.patch;patch=1 \ file://300-001_ld_makefile_patch.patch;patch=1 \ file://400-mips-ELF_MAXPAGESIZE-4K.patch;patch=1 \ - file://500-avr32-atmel.1.3.0.patch;patch=1 \ - file://501-avr32-fix-pool-alignment.patch;patch=1 \ +" +# removed in favor of the atmel 1.2.6 patch which is supposedly newer (yes) +# file://500-avr32-atmel.1.3.0.patch;patch=1 \ +# file://501-avr32-fix-pool-alignment.patch;patch=1 \ + +SRC_URI_append_avr32 = "\ + file://binutils-2.17.atmel.1.2.6.patch.bz2;patch=1 \ " # Zecke's OSX fixes diff --git a/packages/gcc/gcc-4.2.2.inc b/packages/gcc/gcc-4.2.2.inc index 02fe1162bc..1392b3e830 100644 --- a/packages/gcc/gcc-4.2.2.inc +++ b/packages/gcc/gcc-4.2.2.inc @@ -40,6 +40,13 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://intermask-bigendian.patch;patch=1 \ " + +SRC_URI_append_avr32 = " \ + file://gcc-4.2.2.atmel.1.0.8.patch.bz2;patch=1 \ + file://901-avr32-no-cond-exec-before-reload-by-default.patch;patch=1 \ +" + + SRC_URI_append_ep93xx = " \ file://arm-crunch-saveregs.patch;patch=1 \ file://arm-crunch-20000320.patch;patch=1 \ @@ -71,4 +78,4 @@ JAVA = "" EXTRA_OECONF_BASE = "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap" -ARM_INSTRUCTION_SET = "arm"
\ No newline at end of file +ARM_INSTRUCTION_SET = "arm" diff --git a/packages/gcc/gcc-4.2.2/901-avr32-no-cond-exec-before-reload-by-default.patch b/packages/gcc/gcc-4.2.2/901-avr32-no-cond-exec-before-reload-by-default.patch new file mode 100644 index 0000000000..ab55ea4da1 --- /dev/null +++ b/packages/gcc/gcc-4.2.2/901-avr32-no-cond-exec-before-reload-by-default.patch @@ -0,0 +1,13 @@ +Index: gcc-4.2.2/gcc/config/avr32/avr32.c +=================================================================== +--- gcc-4.2.2.orig/gcc/config/avr32/avr32.c 2008-04-08 10:42:47.000000000 +0200 ++++ gcc-4.2.2/gcc/config/avr32/avr32.c 2008-04-08 10:43:33.000000000 +0200 +@@ -161,7 +161,7 @@ + /* Set default target_flags. */ + #undef TARGET_DEFAULT_TARGET_FLAGS + #define TARGET_DEFAULT_TARGET_FLAGS \ +- (MASK_HAS_ASM_ADDR_PSEUDOS | MASK_MD_REORG_OPTIMIZATION | MASK_COND_EXEC_BEFORE_RELOAD) ++ (MASK_HAS_ASM_ADDR_PSEUDOS | MASK_MD_REORG_OPTIMIZATION) + + void + avr32_optimization_options (int level, diff --git a/packages/gcc/gcc-4.2.2/gcc-4.2.2.atmel.1.0.8.patch.bz2 b/packages/gcc/gcc-4.2.2/gcc-4.2.2.atmel.1.0.8.patch.bz2 Binary files differnew file mode 100644 index 0000000000..4be097b095 --- /dev/null +++ b/packages/gcc/gcc-4.2.2/gcc-4.2.2.atmel.1.0.8.patch.bz2 diff --git a/packages/gdb/gdb-cross.inc b/packages/gdb/gdb-cross.inc index 480cce4931..9870b9870b 100644 --- a/packages/gdb/gdb-cross.inc +++ b/packages/gdb/gdb-cross.inc @@ -10,6 +10,12 @@ do_configure () { # override this function to avoid the autoconf/automake/aclocal/autoheader # calls for now (cd ${S} && gnu-configize) || die "failure in running gnu-configize" + + # Fix for issues when system's texinfo version >= 4.10 + # (See https://bugzilla.redhat.com/show_bug.cgi?id=345621) + sed -i -e 's/egrep `texinfo.*`/egrep `texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|4.[1-9][0-9]+|[5-9])`/' '${S}/configure' + + oe_runconf } |