diff options
author | Joachim Nilsson <jocke@vmlinux.org> | 2010-01-06 15:04:38 +0100 |
---|---|---|
committer | Joachim Nilsson <jocke@vmlinux.org> | 2010-01-06 15:04:38 +0100 |
commit | 05621d33d4a93e9f0fdfe52d8a1ec619ac61a2af (patch) | |
tree | 038c3e6581540683c6932743a36f281abd87310d /patches/gcc | |
parent | f0b5c37abf28eebfdb6abc5773bec630e957fa48 (diff) | |
download | crosstool-ng-05621d33d4a93e9f0fdfe52d8a1ec619ac61a2af.tar.gz crosstool-ng-05621d33d4a93e9f0fdfe52d8a1ec619ac61a2af.tar.bz2 crosstool-ng-05621d33d4a93e9f0fdfe52d8a1ec619ac61a2af.zip |
cc/gcc: add patch to fix armeb in gcc-4.4
On x86, gcc-4.4.x breaks when building for target armeb.
It is still required to configure with: --disable-shared
Note: if building on an x86_64, there is no need to pass --disable-shared
Diffstat (limited to 'patches/gcc')
-rw-r--r-- | patches/gcc/4.4.0/360-arm-bigendian.patch | 32 | ||||
-rw-r--r-- | patches/gcc/4.4.1/360-arm-bigendian.patch | 32 | ||||
-rw-r--r-- | patches/gcc/4.4.2/360-arm-bigendian.patch | 32 |
3 files changed, 96 insertions, 0 deletions
diff --git a/patches/gcc/4.4.0/360-arm-bigendian.patch b/patches/gcc/4.4.0/360-arm-bigendian.patch new file mode 100644 index 00000000..f0f10aaf --- /dev/null +++ b/patches/gcc/4.4.0/360-arm-bigendian.patch @@ -0,0 +1,32 @@ +By Lennert Buytenhek <buytenh@wantstofly.org> +Adds support for arm*b-linux* big-endian ARM targets + +See http://gcc.gnu.org/PR16350 + +--- gcc-4.4.2.orig/gcc/config/arm/linux-elf.h 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.2/gcc/config/arm/linux-elf.h 2009-12-31 14:19:20.000000000 +0100 +@@ -51,7 +51,7 @@ + + #undef MULTILIB_DEFAULTS + #define MULTILIB_DEFAULTS \ +- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } ++ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } + + /* Now we define the strings used to build the spec file. */ + #undef LIB_SPEC +diff -ru gcc-4.4.2.orig/gcc/config.gcc gcc-4.4.2/gcc/config.gcc +--- gcc-4.4.2.orig/gcc/config.gcc 2009-12-31 14:43:17.000000000 +0100 ++++ gcc-4.4.2/gcc/config.gcc 2010-01-05 09:27:42.000000000 +0100 +@@ -733,6 +733,11 @@ + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h" + tmake_file="arm/t-arm arm/t-arm-elf" + case ${target} in ++ arm*b-*) ++ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ++ ;; ++ esac ++ case ${target} in + arm*-*-uclinux*eabi) + tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h" + tmake_file="$tmake_file arm/t-bpabi" + diff --git a/patches/gcc/4.4.1/360-arm-bigendian.patch b/patches/gcc/4.4.1/360-arm-bigendian.patch new file mode 100644 index 00000000..f0f10aaf --- /dev/null +++ b/patches/gcc/4.4.1/360-arm-bigendian.patch @@ -0,0 +1,32 @@ +By Lennert Buytenhek <buytenh@wantstofly.org> +Adds support for arm*b-linux* big-endian ARM targets + +See http://gcc.gnu.org/PR16350 + +--- gcc-4.4.2.orig/gcc/config/arm/linux-elf.h 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.2/gcc/config/arm/linux-elf.h 2009-12-31 14:19:20.000000000 +0100 +@@ -51,7 +51,7 @@ + + #undef MULTILIB_DEFAULTS + #define MULTILIB_DEFAULTS \ +- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } ++ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } + + /* Now we define the strings used to build the spec file. */ + #undef LIB_SPEC +diff -ru gcc-4.4.2.orig/gcc/config.gcc gcc-4.4.2/gcc/config.gcc +--- gcc-4.4.2.orig/gcc/config.gcc 2009-12-31 14:43:17.000000000 +0100 ++++ gcc-4.4.2/gcc/config.gcc 2010-01-05 09:27:42.000000000 +0100 +@@ -733,6 +733,11 @@ + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h" + tmake_file="arm/t-arm arm/t-arm-elf" + case ${target} in ++ arm*b-*) ++ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ++ ;; ++ esac ++ case ${target} in + arm*-*-uclinux*eabi) + tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h" + tmake_file="$tmake_file arm/t-bpabi" + diff --git a/patches/gcc/4.4.2/360-arm-bigendian.patch b/patches/gcc/4.4.2/360-arm-bigendian.patch new file mode 100644 index 00000000..f0f10aaf --- /dev/null +++ b/patches/gcc/4.4.2/360-arm-bigendian.patch @@ -0,0 +1,32 @@ +By Lennert Buytenhek <buytenh@wantstofly.org> +Adds support for arm*b-linux* big-endian ARM targets + +See http://gcc.gnu.org/PR16350 + +--- gcc-4.4.2.orig/gcc/config/arm/linux-elf.h 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.2/gcc/config/arm/linux-elf.h 2009-12-31 14:19:20.000000000 +0100 +@@ -51,7 +51,7 @@ + + #undef MULTILIB_DEFAULTS + #define MULTILIB_DEFAULTS \ +- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } ++ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } + + /* Now we define the strings used to build the spec file. */ + #undef LIB_SPEC +diff -ru gcc-4.4.2.orig/gcc/config.gcc gcc-4.4.2/gcc/config.gcc +--- gcc-4.4.2.orig/gcc/config.gcc 2009-12-31 14:43:17.000000000 +0100 ++++ gcc-4.4.2/gcc/config.gcc 2010-01-05 09:27:42.000000000 +0100 +@@ -733,6 +733,11 @@ + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h" + tmake_file="arm/t-arm arm/t-arm-elf" + case ${target} in ++ arm*b-*) ++ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ++ ;; ++ esac ++ case ${target} in + arm*-*-uclinux*eabi) + tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h" + tmake_file="$tmake_file arm/t-bpabi" + |