summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2012-12-03 14:54:28 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2012-12-05 17:36:47 +0100
commit712e333d57c7915e88505e20cdd4217818cd5c01 (patch)
tree45f30d258fad494d0b6ce555629db735e0d331bf
parent3a7ca083d5e6398c1956be5a772e14f3ecb93ce8 (diff)
downloadOSELAS.Toolchain-712e333d57c7915e88505e20cdd4217818cd5c01.tar.gz
OSELAS.Toolchain-712e333d57c7915e88505e20cdd4217818cd5c01.tar.xz
remove obsolete patches
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--patches/binutils-2.17/generic/series4
-rw-r--r--patches/binutils-2.17/generic/tc-arm.diff102
-rw-r--r--patches/binutils-2.17/generic/uclibc/100-uclibc-conf.patch188
-rw-r--r--patches/binutils-2.17/generic/uclibc/110-arm-eabi-conf.patch47
-rw-r--r--patches/gcc-4.0.4/generic/arm-softfloat.diff38
-rw-r--r--patches/gcc-4.0.4/generic/gcc-4.0-arm-bigendian.patch83
-rw-r--r--patches/gcc-4.0.4/generic/gcc_collect2-fix-open.diff38
-rw-r--r--patches/gcc-4.0.4/generic/series3
-rw-r--r--patches/gcc-4.5.2/0001-no-host-includes.diff54
-rw-r--r--patches/gcc-4.5.2/0002-arm-softfloat.diff44
-rw-r--r--patches/gcc-4.5.2/0003-pr39429.diff38
-rw-r--r--patches/gcc-4.5.2/0004-uclibc-conf.patch46
-rw-r--r--patches/gcc-4.5.2/0005-missing-execinfo_h.patch21
-rw-r--r--patches/gcc-4.5.2/0006-c99-snprintf.patch21
-rw-r--r--patches/gcc-4.5.2/0007-libmudflap-susv3-legacy.patch57
-rw-r--r--patches/gcc-4.5.2/0008-arm_insn-opinit-RTX_CODE-fixup.patch45
-rw-r--r--patches/gcc-4.5.2/0009-short-enums.diff53
-rw-r--r--patches/gcc-4.5.2/0010-all_gcc-trampolinewarn.patch44
-rw-r--r--patches/gcc-4.5.2/0011-flatten-switch-stmt-00.patch81
-rw-r--r--patches/gcc-4.5.2/0012-libiberty-pic.patch22
-rw-r--r--patches/gcc-4.5.2/0013-libstdc++-pic.patch56
-rw-r--r--patches/gcc-4.5.2/0014-arm-bswapsi2.patch19
-rw-r--r--patches/gcc-4.5.2/0015-Fix-libjava-cross-build-issue.patch201
-rw-r--r--patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch51
-rw-r--r--patches/gcc-4.5.2/series25
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0001-no-host-includes.diff54
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0002-arm-softfloat.diff44
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0003-pr39429.diff38
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0004-uclibc-conf.patch46
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0005-missing-execinfo_h.patch21
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0006-c99-snprintf.patch21
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0007-libmudflap-susv3-legacy.patch57
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0008-arm_insn-opinit-RTX_CODE-fixup.patch45
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0009-short-enums.diff53
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0010-all_gcc-trampolinewarn.patch44
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0011-flatten-switch-stmt-00.patch81
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0012-libiberty-pic.patch22
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0013-libstdc++-pic.patch56
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0015-Fix-libjava-cross-build-issue.patch201
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/0016-debian-patch-revert-issue1259.patch40
-rw-r--r--patches/gcc-linaro-4.5-2011.02-0/series24
-rw-r--r--patches/gcc-linaro-4.6-2011.11/series20
-rw-r--r--patches/glibc-2.13/0001-install-lib-all.patch45
-rw-r--r--patches/glibc-2.13/0002-fix-build-with-static-nss.patch55
-rw-r--r--patches/glibc-2.13/0003-glibc-configure-old-gcc.patch17
-rw-r--r--patches/glibc-2.13/0004-configure-in-sane-readelf.patch35
-rw-r--r--patches/glibc-2.13/0005-stdlib-longlong.patch37
-rw-r--r--patches/glibc-2.13/0006-respect-env-CPPFLAGS.patch36
-rw-r--r--patches/glibc-2.13/0007-i586-chk.patch32
-rw-r--r--patches/glibc-2.13/0008-i386-x86_64-revert-clone-cfi.patch55
-rw-r--r--patches/glibc-2.13/0009-queue-header-updates.patch89
-rw-r--r--patches/glibc-2.13/0010-manual-no-perl.patch29
-rw-r--r--patches/glibc-2.13/0011-localedef-fix-trampoline.patch74
-rw-r--r--patches/glibc-2.13/0012-posix-awk.patch23
-rw-r--r--patches/glibc-2.13/0013-resolv-dynamic.patch44
-rw-r--r--patches/glibc-2.13/0014-section-comments.patch29
-rw-r--r--patches/glibc-2.13/0015-no-inline-gmon.patch38
-rw-r--r--patches/glibc-2.13/0016-china.patch35
-rw-r--r--patches/glibc-2.13/0017-new-valencian-locale.patch122
-rw-r--r--patches/glibc-2.13/0018-strict-aliasing.patch91
-rw-r--r--patches/glibc-2.13/0019-undefine-__i686.patch49
-rw-r--r--patches/glibc-2.13/0020-dl_execstack-PaX-support.patch73
-rw-r--r--patches/glibc-2.13/0021-pre20040117-pt_pax.patch35
-rw-r--r--patches/glibc-2.13/0022-fpscr_values.patch42
-rw-r--r--patches/glibc-2.13/0023-Fix-prelinking.patch54
-rw-r--r--patches/glibc-2.13/0024-optimized-string-functions-for-NEON-from-Linaro.patch1295
-rw-r--r--patches/glibc-2.13/0025-add-libc_hidden_builtin_def-for-all-cortex-functions.patch79
-rw-r--r--patches/glibc-2.13/series25
-rw-r--r--patches/glibc-2.3.6/generic/0001-Handle-future-binutils-versions-correctly.patch75
-rw-r--r--patches/glibc-2.3.6/generic/csu_Makefile-quotes.diff22
-rw-r--r--patches/glibc-2.3.6/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch52
-rw-r--r--patches/glibc-2.3.6/generic/make-install-lib-all.patch26
-rw-r--r--patches/glibc-2.3.6/generic/series8
-rw-r--r--patches/glibc-2.3.6/generic/sysdeps_arm-fp-byteorder.diff205
-rw-r--r--patches/glibc-2.3.6/generic/sysdeps_arm_dl-machine_h-fix_bad_pc24.diff35
-rw-r--r--patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_ioperm_c-BUS_ISA.diff53
-rw-r--r--patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_socket_S-alias.diff64
-rw-r--r--patches/glibc-ports-2.13/0001-Revert-fix-unwinding-through-Thumb-2-system-calls.patch241
-rw-r--r--patches/glibc-ports-2.13/series1
-rw-r--r--patches/linux-2.6.18/generic/0001--POWERPC-Select-proper-defconfig-for-crosscompiles.patch42
-rw-r--r--patches/linux-2.6.18/generic/series1
81 files changed, 0 insertions, 5611 deletions
diff --git a/patches/binutils-2.17/generic/series b/patches/binutils-2.17/generic/series
deleted file mode 100644
index a577f60..0000000
--- a/patches/binutils-2.17/generic/series
+++ /dev/null
@@ -1,4 +0,0 @@
-tc-arm.diff
-
-uclibc/100-uclibc-conf.patch
-uclibc/110-arm-eabi-conf.patch
diff --git a/patches/binutils-2.17/generic/tc-arm.diff b/patches/binutils-2.17/generic/tc-arm.diff
deleted file mode 100644
index c3d51ef..0000000
--- a/patches/binutils-2.17/generic/tc-arm.diff
+++ /dev/null
@@ -1,102 +0,0 @@
-#
-# Submitted-By: Robert Schwebel, 2006-12-03
-# Committed-By: Robert Schwebel
-#
-# Error:
-#
-# rsc@isonoe:/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5/elf$
-# PATH=/media/rscusb1_plain/tmp//armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/bin:/media/rscusb1_plain/tmp//armeb-xscale
-# -linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/usr/bin:$PATH armeb-xscale-linux-gnueabi-gcc dl-lookup.c -c -std=gnu99 -O2 -Wall
-# -Winline -Wwrite-strings -fmerge-all-constants -g -Wstrict-prototypes -pg -fexceptions -fasynchronous-unwind-tables -I../include
-# -I/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf
-# -I/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build -I../ports/sysdeps/arm/elf
-# -I../ports/sysdeps/unix/sysv/linux/arm/eabi/nptl -I../ports/sysdeps/unix/sysv/linux/arm/eabi
-# -I../ports/sysdeps/unix/sysv/linux/arm/nptl -I../ports/sysdeps/unix/sysv/linux/arm -I../ports/sysdeps/unix/sysv/linux
-# -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu
-# -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../ports/sysdeps/unix/sysv -I../nptl/sysdeps/unix/sysv
-# -I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../ports/sysdeps/unix -I../nptl/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix
-# -I../ports/sysdeps/arm/eabi -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32
-# -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../ports -I../nptl -I.. -I../libio
-# -I. -nostdinc -isystem
-# /media/rscusb1_plain/tmp/armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/bin/../lib/gcc/armeb-xscale-linux-gnueabi/4.1.1/
-# include -isystem
-# /media/rscusb1_plain/tmp//armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/sysroot-armeb-xscale-linux-gnueabi/usr/include
-# -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DPROF -o
-# /media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op -MD -MP -MF
-# /media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op.dt -MT
-# /media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op
-# /tmp/ccuNAGqV.s: Assembler messages:
-# /tmp/ccuNAGqV.s:169: Error: junk at end of line, first unrecognized character is `,'
-#
-# Here's where the assember barfs (the second line):
-#
-# check_match.7984:
-# .fnstart
-# .LFB69:
-# .file 2 "do-lookup.h"
-# .loc 2 76 0
-# @ Nested: function declared inside another function.
-# @ args = 0, pretend = 0, frame = 0
-# @ frame_needed = 1, uses_anonymous_args = 0
-# .LVL19:
-# .pad #4
-# str ip, [sp, #-4]!
-#
-# .LCFI4:
-# .movsp ip, #4 <---------------------------------------
-# add ip, sp, #4
-#
-# The ", #4" seems to be bogus. This is built with binutils 2.17.
-#
-#
-# Description:
-#
-# http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-arm.c.diff?r1=1.292&r2=1.293&cvsroot=src
-#
-# State:
-#
-# fixed in upstream cvs
-#
-
----
- gas/config/tc-arm.c | 13 ++++++++++++-
- 1 file changed, 12 insertions(+), 1 deletion(-)
-
-Index: binutils-2.17/gas/config/tc-arm.c
-===================================================================
---- binutils-2.17.orig/gas/config/tc-arm.c
-+++ binutils-2.17/gas/config/tc-arm.c
-@@ -2710,6 +2710,7 @@ s_arm_unwind_movsp (int ignored ATTRIBUT
- {
- int reg;
- valueT op;
-+ int offset;
-
- reg = arm_reg_parse (&input_line_pointer, REG_TYPE_RN);
- if (reg == FAIL)
-@@ -2718,6 +2719,16 @@ s_arm_unwind_movsp (int ignored ATTRIBUT
- ignore_rest_of_line ();
- return;
- }
-+
-+ /* Optional constant. */
-+ if (skip_past_comma (&input_line_pointer) != FAIL)
-+ {
-+ if (immediate_for_directive (&offset) == FAIL)
-+ return;
-+ }
-+ else
-+ offset = 0;
-+
- demand_empty_rest_of_line ();
-
- if (reg == REG_SP || reg == REG_PC)
-@@ -2735,7 +2746,7 @@ s_arm_unwind_movsp (int ignored ATTRIBUT
-
- /* Record the information for later. */
- unwind.fp_reg = reg;
-- unwind.fp_offset = unwind.frame_size;
-+ unwind.fp_offset = unwind.frame_size - offset;
- unwind.sp_restored = 1;
- }
-
diff --git a/patches/binutils-2.17/generic/uclibc/100-uclibc-conf.patch b/patches/binutils-2.17/generic/uclibc/100-uclibc-conf.patch
deleted file mode 100644
index 6dd8a3c..0000000
--- a/patches/binutils-2.17/generic/uclibc/100-uclibc-conf.patch
+++ /dev/null
@@ -1,188 +0,0 @@
-From: svn://uclibc.org/trunk/buildroot/toolchain/binutils/2.17/100-uclibc-conf.patch
-
-Path: 100-uclibc-conf.patch
-Name: 100-uclibc-conf.patch
-URL: svn://uclibc.org/trunk/buildroot/toolchain/binutils/2.17/100-uclibc-conf.patch
-Repository Root: svn://uclibc.org
-Repository UUID: 69ca8d6d-28ef-0310-b511-8ec308f3f277
-Revision: 21884
-Node Kind: file
-Schedule: normal
-Last Changed Author: vapier
-Last Changed Rev: 14556
-Last Changed Date: 2006-03-18 03:48:49 +0100 (Sat, 18 Mar 2006)
-Text Last Updated: 2008-03-27 14:45:04 +0100 (Thu, 27 Mar 2008)
-Checksum: 78aedca7c3c0079f361f28104785556d
-
----
- bfd/configure | 2 +-
- binutils/configure | 2 +-
- configure | 4 ++--
- configure.in | 4 ++--
- gas/configure | 2 +-
- gprof/configure | 5 +++++
- ld/configure | 2 +-
- libtool.m4 | 2 +-
- ltconfig | 3 ++-
- opcodes/configure | 2 +-
- 10 files changed, 17 insertions(+), 11 deletions(-)
-
-Index: binutils-2.17/bfd/configure
-===================================================================
---- binutils-2.17.orig/bfd/configure
-+++ binutils-2.17/bfd/configure
-@@ -3576,7 +3576,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-Index: binutils-2.17/binutils/configure
-===================================================================
---- binutils-2.17.orig/binutils/configure
-+++ binutils-2.17/binutils/configure
-@@ -3411,7 +3411,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-Index: binutils-2.17/configure
-===================================================================
---- binutils-2.17.orig/configure
-+++ binutils-2.17/configure
-@@ -1276,7 +1276,7 @@ case "${target}" in
- am33_2.0-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
- ;;
-- sh-*-linux*)
-+ sh*-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
- ;;
- sh*-*-pe|mips*-*-pe|*arm-wince-pe)
-@@ -1584,7 +1584,7 @@ case "${target}" in
- romp-*-*)
- noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
- ;;
-- sh-*-* | sh64-*-*)
-+ sh*-*-* | sh64-*-*)
- case "${host}" in
- i[3456789]86-*-vsta) ;; # don't add gprof back in
- i[3456789]86-*-go32*) ;; # don't add gprof back in
-Index: binutils-2.17/configure.in
-===================================================================
---- binutils-2.17.orig/configure.in
-+++ binutils-2.17/configure.in
-@@ -468,7 +468,7 @@ case "${target}" in
- am33_2.0-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
- ;;
-- sh-*-linux*)
-+ sh*-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
- ;;
- sh*-*-pe|mips*-*-pe|*arm-wince-pe)
-@@ -776,7 +776,7 @@ case "${target}" in
- romp-*-*)
- noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
- ;;
-- sh-*-* | sh64-*-*)
-+ sh*-*-* | sh64-*-*)
- case "${host}" in
- i[[3456789]]86-*-vsta) ;; # don't add gprof back in
- i[[3456789]]86-*-go32*) ;; # don't add gprof back in
-Index: binutils-2.17/gas/configure
-===================================================================
---- binutils-2.17.orig/gas/configure
-+++ binutils-2.17/gas/configure
-@@ -3411,7 +3411,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-Index: binutils-2.17/gprof/configure
-===================================================================
---- binutils-2.17.orig/gprof/configure
-+++ binutils-2.17/gprof/configure
-@@ -3414,6 +3414,11 @@ linux-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-+linux-uclibc*)
-+ lt_cv_deplibs_check_method=pass_all
-+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
-+ ;;
-+
- netbsd* | knetbsd*-gnu)
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-Index: binutils-2.17/ld/configure
-===================================================================
---- binutils-2.17.orig/ld/configure
-+++ binutils-2.17/ld/configure
-@@ -3413,7 +3413,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-Index: binutils-2.17/libtool.m4
-===================================================================
---- binutils-2.17.orig/libtool.m4
-+++ binutils-2.17/libtool.m4
-@@ -739,7 +739,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-Index: binutils-2.17/ltconfig
-===================================================================
---- binutils-2.17.orig/ltconfig
-+++ binutils-2.17/ltconfig
-@@ -602,6 +602,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
-
- # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
- case $host_os in
-+linux-uclibc*) ;;
- linux-gnu*) ;;
- linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
- esac
-@@ -1247,7 +1248,7 @@ linux-gnuoldld* | linux-gnuaout* | linux
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
-Index: binutils-2.17/opcodes/configure
-===================================================================
---- binutils-2.17.orig/opcodes/configure
-+++ binutils-2.17/opcodes/configure
-@@ -3579,7 +3579,7 @@ irix5* | irix6*)
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|linux-uclibc*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
diff --git a/patches/binutils-2.17/generic/uclibc/110-arm-eabi-conf.patch b/patches/binutils-2.17/generic/uclibc/110-arm-eabi-conf.patch
deleted file mode 100644
index 19e4a96..0000000
--- a/patches/binutils-2.17/generic/uclibc/110-arm-eabi-conf.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From: svn://uclibc.org/trunk/buildroot/toolchain/binutils/2.17/110-arm-eabi-conf.patch
-
-Path: 110-arm-eabi-conf.patch
-Name: 110-arm-eabi-conf.patch
-URL: svn://uclibc.org/trunk/buildroot/toolchain/binutils/2.17/110-arm-eabi-conf.patch
-Repository Root: svn://uclibc.org
-Repository UUID: 69ca8d6d-28ef-0310-b511-8ec308f3f277
-Revision: 21884
-Node Kind: file
-Schedule: normal
-Last Changed Author: lethal
-Last Changed Rev: 15290
-Last Changed Date: 2006-06-06 00:11:01 +0200 (Tue, 06 Jun 2006)
-Text Last Updated: 2008-03-27 14:45:04 +0100 (Thu, 27 Mar 2008)
-Checksum: fa836a9866c753be640f37aa0f06c12c
-
----
- configure | 2 +-
- configure.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-Index: binutils-2.17/configure
-===================================================================
---- binutils-2.17.orig/configure
-+++ binutils-2.17/configure
-@@ -1305,7 +1305,7 @@ case "${target}" in
- arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- ;;
-- arm*-*-linux-gnueabi)
-+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- noconfigdirs="$noconfigdirs target-libjava target-libobjc"
- ;;
-Index: binutils-2.17/configure.in
-===================================================================
---- binutils-2.17.orig/configure.in
-+++ binutils-2.17/configure.in
-@@ -497,7 +497,7 @@ case "${target}" in
- arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- ;;
-- arm*-*-linux-gnueabi)
-+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- noconfigdirs="$noconfigdirs target-libjava target-libobjc"
- ;;
diff --git a/patches/gcc-4.0.4/generic/arm-softfloat.diff b/patches/gcc-4.0.4/generic/arm-softfloat.diff
deleted file mode 100644
index 21aae77..0000000
--- a/patches/gcc-4.0.4/generic/arm-softfloat.diff
+++ /dev/null
@@ -1,38 +0,0 @@
-Index: gcc/config/arm/linux-elf.h
-===================================================================
---- a/gcc/config/arm/linux-elf.h.orig
-+++ b/gcc/config/arm/linux-elf.h
-@@ -57,7 +57,7 @@
-
- #undef MULTILIB_DEFAULTS
- #define MULTILIB_DEFAULTS \
-- { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" }
-+ { "marm", TARGET_ENDIAN_OPTION, "msoft-float" "mhard-float", "mno-thumb-interwork" }
-
- /* The GNU C++ standard library requires that these macros be defined. */
- #undef CPLUSPLUS_CPP_SPEC
-@@ -70,7 +70,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add
- the GNU/Linux magical crtbegin.o file (see crtstuff.c) which
-Index: gcc/config/arm/t-linux
-===================================================================
---- a/gcc/config/arm/t-linux.orig
-+++ b/gcc/config/arm/t-linux
-@@ -4,7 +4,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
- LIBGCC2_DEBUG_CFLAGS = -g0
-
- LIB1ASMSRC = arm/lib1funcs.asm
--LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
-+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
-+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
-+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
-+ _fixsfsi _fixunssfsi _floatdidf _floatdisf
-
- # MULTILIB_OPTIONS = mhard-float/msoft-float
- # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/patches/gcc-4.0.4/generic/gcc-4.0-arm-bigendian.patch b/patches/gcc-4.0.4/generic/gcc-4.0-arm-bigendian.patch
deleted file mode 100644
index 266879a..0000000
--- a/patches/gcc-4.0.4/generic/gcc-4.0-arm-bigendian.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-By Lennert Buytenhek <buytenh@wantstofly.org>
-Adds support for arm*b-linux* big-endian ARM targets
-
-Fixes following build error for big-endian ARM targets:
-
-armeb-unknown-linux-gnu/gcc-4.0.0-20050410-glibc-2.3.4/bin/../lib/gcc/armeb-unknown-linux-gnu/4.0.0/../../../../armeb-unknown-linux-gnu/bin/ld: unrecognised emulation mode: armelf_linux
-Supported emulations: armelfb_linux armelfb
-collect2: ld returned 1 exit status
-make[2]: *** [crosstool-0.32/build/armeb-unknown-linux-gnu/gcc-4.0.0-20050410-glibc-2.3.4/build-glibc/csu/crt1.o] Error 1
-make[2]: Leaving directory `crosstool-0.32/build/armeb-unknown-linux-gnu/gcc-4.0.0-20050410-glibc-2.3.4/glibc-2.3.4/csu'
-make[1]: *** [csu/subdir_lib] Error 2
-make[1]: Leaving directory `crosstool-0.32/build/armeb-unknown-linux-gnu/gcc-4.0.0-20050410-glibc-2.3.4/glibc-2.3.4'
-make: *** [lib] Error 2
-
-
-See http://gcc.gnu.org/PR16350
-
-Index: gcc/config/arm/linux-elf.h
-===================================================================
---- a/gcc/config/arm/linux-elf.h.orig
-+++ b/gcc/config/arm/linux-elf.h
-@@ -31,19 +31,33 @@
- /* Do not assume anything about header files. */
- #define NO_IMPLICIT_EXTERN_C
-
-+/*
-+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for
-+ * arm*b-*-linux* (big endian) configurations.
-+ */
-+#if TARGET_BIG_ENDIAN_DEFAULT
-+#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END
-+#define TARGET_ENDIAN_OPTION "mbig-endian"
-+#define TARGET_LINKER_EMULATION "armelfb_linux"
-+#else
-+#define TARGET_ENDIAN_DEFAULT 0
-+#define TARGET_ENDIAN_OPTION "mlittle-endian"
-+#define TARGET_LINKER_EMULATION "armelf_linux"
-+#endif
-+
- #undef TARGET_DEFAULT_FLOAT_ABI
- #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
-
- #undef TARGET_DEFAULT
--#define TARGET_DEFAULT (0)
-+#define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
-
- #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
-
--#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p"
-+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p"
-
- #undef MULTILIB_DEFAULTS
- #define MULTILIB_DEFAULTS \
-- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
-+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" }
-
- /* The GNU C++ standard library requires that these macros be defined. */
- #undef CPLUSPLUS_CPP_SPEC
-@@ -90,7 +104,7 @@
- %{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \
- -X \
-- %{mbig-endian:-EB}" \
-+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \
- SUBTARGET_EXTRA_LINK_SPEC
-
- #define TARGET_OS_CPP_BUILTINS() \
-Index: gcc/config.gcc
-===================================================================
---- a/gcc/config.gcc.orig
-+++ b/gcc/config.gcc
-@@ -672,6 +672,11 @@ arm*-*-netbsd*)
- ;;
- arm*-*-linux*) # ARM GNU/Linux with ELF
- tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
-+ case $target in
-+ arm*b-*-linux*)
-+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
-+ ;;
-+ esac
- tmake_file="${tmake_file} arm/t-arm arm/t-linux"
- extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- gnu_ld=yes
diff --git a/patches/gcc-4.0.4/generic/gcc_collect2-fix-open.diff b/patches/gcc-4.0.4/generic/gcc_collect2-fix-open.diff
deleted file mode 100644
index 8b3b246..0000000
--- a/patches/gcc-4.0.4/generic/gcc_collect2-fix-open.diff
+++ /dev/null
@@ -1,38 +0,0 @@
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Subject: Add 3rd argument to open (create) call
-
-This patch fixes this error:
-
-gcc -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wol
-d-style-definition -DHAVE_CONFIG_H -I. -I. -I/home/frogger/pengutronix/toolchain/OSELAS.Toolchain-trunk/platform-arm-v4t_hardfloat-linux-gnu-gcc-4.0.4-gl
-ibc-2.3.6-binutils-2.17-kernel-2.6.18/build-cross/gcc-4.0.4/gcc -I/home/frogger/pengutronix/toolchain/OSELAS.Toolchain-trunk/platform-arm-v4t_hardfloat-linu
-x-gnu-gcc-4.0.4-glibc-2.3.6-binutils-2.17-kernel-2.6.18/build-cross/gcc-4.0.4/gcc/. -I/home/frogger/pengutronix/toolchain/OSELAS.Toolchain-trunk/platform-ar
-m-v4t_hardfloat-linux-gnu-gcc-4.0.4-glibc-2.3.6-binutils-2.17-kernel-2.6.18/build-cross/gcc-4.0.4/gcc/../include -I/home/frogger/pengutronix/toolchain/OSELA
-S.Toolchain-trunk/platform-arm-v4t_hardfloat-linux-gnu-gcc-4.0.4-glibc-2.3.6-binutils-2.17-kernel-2.6.18/build-cross/gcc-4.0.4/gcc/../libcpp/include \
- -DTARGET_MACHINE=\"arm-v4t_hardfloat-linux-gnu\" \
- -c /home/frogger/pengutronix/toolchain/OSELAS.Toolchain-trunk/platform-arm-v4t_hardfloat-linux-gnu-gcc-4.0.4-glibc-2.3.6-binutils-2.17-kernel-2.6.18
-/build-cross/gcc-4.0.4/gcc/collect2.c -o collect2.o
-In function 'open',
- inlined from 'collect_execute' at /home/frogger/pengutronix/toolchain/OSELAS.Toolchain-trunk/platform-arm-v4t_hardfloat-linux-gnu-gcc-4.0.4-glibc-2.3.6-
-binutils-2.17-kernel-2.6.18/build-cross/gcc-4.0.4/gcc/collect2.c:1580:
-/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
-make[2]: *** [collect2.o] Error 1
-
-2008-12-16: mkl: upstream branch is closed since ages,
- newer gcc versions don't have that problem.
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-
-Index: gcc-4.0.4/gcc/collect2.c
-===================================================================
---- gcc-4.0.4.orig/gcc/collect2.c 2008-12-16 13:24:10.000000000 +0100
-+++ gcc-4.0.4/gcc/collect2.c 2008-12-16 13:24:50.000000000 +0100
-@@ -1577,7 +1577,7 @@
- if (redir)
- {
- /* Open response file. */
-- redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT);
-+ redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT, S_IRWXU | S_IWUSR | S_IRGRP | S_IROTH);
-
- /* Duplicate the stdout and stderr file handles
- so they can be restored later. */
diff --git a/patches/gcc-4.0.4/generic/series b/patches/gcc-4.0.4/generic/series
deleted file mode 100644
index 98729f6..0000000
--- a/patches/gcc-4.0.4/generic/series
+++ /dev/null
@@ -1,3 +0,0 @@
-gcc-4.0-arm-bigendian.patch
-arm-softfloat.diff
-gcc_collect2-fix-open.diff
diff --git a/patches/gcc-4.5.2/0001-no-host-includes.diff b/patches/gcc-4.5.2/0001-no-host-includes.diff
deleted file mode 100644
index 39df653..0000000
--- a/patches/gcc-4.5.2/0001-no-host-includes.diff
+++ /dev/null
@@ -1,54 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-With this patch gcc bails out if you include a host include path into
-the searchlist (-I). This patch is not intended for upstream and was
-inspired by
-
-http://www.openembedded.org/repo/org.openembedded.dev/packages/gcc/gcc-4.1.1/zecke-no-host-includes.patch
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/incpath.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-Index: gcc-4.5.1/gcc/incpath.c
-===================================================================
---- gcc-4.5.1.orig/gcc/incpath.c
-+++ gcc-4.5.1/gcc/incpath.c
-@@ -417,6 +417,34 @@ add_path (char *path, int chain, int cxx
- p->construct = 0;
- p->user_supplied_p = user_supplied_p;
-
-+#ifdef CROSS_COMPILE
-+ /* A common error when cross compiling is including
-+ host headers. This code below will try to fail fast
-+ for cross compiling. Currently we consider /usr/include,
-+ /opt/include and /sw/include as harmful. */
-+ {
-+ unsigned int i;
-+ const char *bad_path[] = {
-+ "/usr/include",
-+ "/usr/local/include",
-+ "/sw/include",
-+ "/opt/include",
-+ };
-+
-+ for (i = 0; i < sizeof(bad_path)/sizeof(bad_path[0]); i++) {
-+ if( strstr(p->name, bad_path[i]) == p->name ) {
-+ fprintf(stderr,_("\n"
-+ "CROSS COMPILE Badness: %s in INCLUDEPATH: %s\n"
-+ "\n"),
-+
-+ bad_path[i], p->name);
-+
-+ exit (FATAL_EXIT_CODE);
-+ }
-+ }
-+ }
-+#endif
-+
- add_cpp_dir_path (p, chain);
- }
-
diff --git a/patches/gcc-4.5.2/0002-arm-softfloat.diff b/patches/gcc-4.5.2/0002-arm-softfloat.diff
deleted file mode 100644
index cb41b3d..0000000
--- a/patches/gcc-4.5.2/0002-arm-softfloat.diff
+++ /dev/null
@@ -1,44 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Link assembler softfloat functions into gcc. As the functions are there
-in that case anyway, don't add switches for float lib.
-
-Upstream will not fix this because oabi is dead.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/config/arm/linux-elf.h | 2 +-
- gcc/config/arm/t-linux | 5 ++++-
- 2 files changed, 5 insertions(+), 2 deletions(-)
-
-Index: gcc-4.5.1/gcc/config/arm/linux-elf.h
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/linux-elf.h
-+++ gcc-4.5.1/gcc/config/arm/linux-elf.h
-@@ -60,7 +60,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-
-Index: gcc-4.5.1/gcc/config/arm/t-linux
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/t-linux
-+++ gcc-4.5.1/gcc/config/arm/t-linux
-@@ -23,7 +23,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
-
- LIB1ASMSRC = arm/lib1funcs.asm
- LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
-- _arm_addsubdf3 _arm_addsubsf3
-+ _arm_addsubdf3 _arm_addsubsf3 \
-+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
-+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
-+ _fixsfsi _fixunssfsi _floatdidf _floatdisf
-
- # MULTILIB_OPTIONS = mhard-float/msoft-float
- # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/patches/gcc-4.5.2/0003-pr39429.diff b/patches/gcc-4.5.2/0003-pr39429.diff
deleted file mode 100644
index bd194f1..0000000
--- a/patches/gcc-4.5.2/0003-pr39429.diff
+++ /dev/null
@@ -1,38 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-
-This is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39429.
-
-I've removed Michael's original patch and replaced it by the one from
-the gcc bugzilla.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/config/arm/arm.md | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-Index: gcc-4.5.1/gcc/config/arm/arm.md
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/arm.md
-+++ gcc-4.5.1/gcc/config/arm/arm.md
-@@ -10390,6 +10390,21 @@
- else
- {
- /* Offset is out of range for a single add, so use two ldr. */
-+
-+ /* Swap the ldrs if the first ldr would clobber the shared base_reg. */
-+ if (REGNO (ldm[1]) == REGNO (base_reg))
-+ {
-+ rtx tmp_reg;
-+ HOST_WIDE_INT tmp_val;
-+
-+ tmp_reg = ldm[1];
-+ ldm[1] = ldm[2];
-+ ldm[2] = tmp_reg;
-+ tmp_val = val1;
-+ val1 = val2;
-+ val2 = tmp_val;
-+ }
-+
- ops[0] = ldm[1];
- ops[1] = base_reg;
- ops[2] = GEN_INT (val1);
diff --git a/patches/gcc-4.5.2/0004-uclibc-conf.patch b/patches/gcc-4.5.2/0004-uclibc-conf.patch
deleted file mode 100644
index c8e563b..0000000
--- a/patches/gcc-4.5.2/0004-uclibc-conf.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- contrib/regression/objs-gcc.sh | 4 ++++
- libjava/classpath/ltconfig | 4 ++--
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
-Index: gcc-4.5.1/contrib/regression/objs-gcc.sh
-===================================================================
---- gcc-4.5.1.orig/contrib/regression/objs-gcc.sh
-+++ gcc-4.5.1/contrib/regression/objs-gcc.sh
-@@ -106,6 +106,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
- 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
-Index: gcc-4.5.1/libjava/classpath/ltconfig
-===================================================================
---- gcc-4.5.1.orig/libjava/classpath/ltconfig
-+++ gcc-4.5.1/libjava/classpath/ltconfig
-@@ -603,7 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
-
- # 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 @@ linux-gnuoldld* | linux-gnuaout* | linux
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
diff --git a/patches/gcc-4.5.2/0005-missing-execinfo_h.patch b/patches/gcc-4.5.2/0005-missing-execinfo_h.patch
deleted file mode 100644
index 63b6acd..0000000
--- a/patches/gcc-4.5.2/0005-missing-execinfo_h.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- boehm-gc/include/gc.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: gcc-4.3.1/boehm-gc/include/gc.h
-===================================================================
---- gcc-4.3.1.orig/boehm-gc/include/gc.h
-+++ gcc-4.3.1/boehm-gc/include/gc.h
-@@ -503,7 +503,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
- #if defined(__linux__) || defined(__GLIBC__)
- # include <features.h>
- # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
-- && !defined(__ia64__)
-+ && !defined(__ia64__) && !defined(__UCLIBC__)
- # ifndef GC_HAVE_BUILTIN_BACKTRACE
- # define GC_HAVE_BUILTIN_BACKTRACE
- # endif
diff --git a/patches/gcc-4.5.2/0006-c99-snprintf.patch b/patches/gcc-4.5.2/0006-c99-snprintf.patch
deleted file mode 100644
index d39e7d3..0000000
--- a/patches/gcc-4.5.2/0006-c99-snprintf.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- libstdc++-v3/include/c_global/cstdio | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: gcc-4.5.1/libstdc++-v3/include/c_global/cstdio
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/include/c_global/cstdio
-+++ gcc-4.5.1/libstdc++-v3/include/c_global/cstdio
-@@ -139,7 +139,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
-
- _GLIBCXX_END_NAMESPACE
-
--#if _GLIBCXX_USE_C99
-+#if _GLIBCXX_USE_C99 || defined __UCLIBC__
-
- #undef snprintf
- #undef vfscanf
diff --git a/patches/gcc-4.5.2/0007-libmudflap-susv3-legacy.patch b/patches/gcc-4.5.2/0007-libmudflap-susv3-legacy.patch
deleted file mode 100644
index 62f3ffa..0000000
--- a/patches/gcc-4.5.2/0007-libmudflap-susv3-legacy.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- libmudflap/mf-hooks2.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-Index: gcc-4.5.1/libmudflap/mf-hooks2.c
-===================================================================
---- gcc-4.5.1.orig/libmudflap/mf-hooks2.c
-+++ gcc-4.5.1/libmudflap/mf-hooks2.c
-@@ -421,7 +421,7 @@ WRAPPER2(void, bzero, void *s, size_t n)
- {
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region");
-- bzero (s, n);
-+ memset (s, 0, n);
- }
-
-
-@@ -431,7 +431,7 @@ WRAPPER2(void, bcopy, const void *src, v
- 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);
- }
-
-
-@@ -441,7 +441,7 @@ WRAPPER2(int, bcmp, const void *s1, cons
- 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);
- }
-
-
-@@ -450,7 +450,7 @@ WRAPPER2(char *, index, const char *s, i
- 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);
- }
-
-
-@@ -459,7 +459,7 @@ WRAPPER2(char *, rindex, const char *s,
- 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/patches/gcc-4.5.2/0008-arm_insn-opinit-RTX_CODE-fixup.patch b/patches/gcc-4.5.2/0008-arm_insn-opinit-RTX_CODE-fixup.patch
deleted file mode 100644
index 8fb9c38..0000000
--- a/patches/gcc-4.5.2/0008-arm_insn-opinit-RTX_CODE-fixup.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-This patch was taken from uclibc, with this description:
-
-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.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/config/arm/arm-protos.h | 2 +-
- gcc/genopinit.c | 1 +
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/config/arm/arm-protos.h
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/arm-protos.h
-+++ gcc-4.5.1/gcc/config/arm/arm-protos.h
-@@ -43,10 +43,10 @@ extern unsigned int arm_dbx_register_num
- 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,
-Index: gcc-4.5.1/gcc/genopinit.c
-===================================================================
---- gcc-4.5.1.orig/gcc/genopinit.c
-+++ gcc-4.5.1/gcc/genopinit.c
-@@ -490,6 +490,7 @@ from the machine description file `md'.
- 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");
-
diff --git a/patches/gcc-4.5.2/0009-short-enums.diff b/patches/gcc-4.5.2/0009-short-enums.diff
deleted file mode 100644
index a2f6aed..0000000
--- a/patches/gcc-4.5.2/0009-short-enums.diff
+++ /dev/null
@@ -1,53 +0,0 @@
-This patch was taken from uclibc. It has "WONTFIX" status in the gcc
-bugzilla and should probably be done differently:
-
-http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34205
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/c-common.h | 1 +
- gcc/rtl.h | 4 +++-
- gcc/tree.h | 1 +
- 3 files changed, 5 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/tree.h
-===================================================================
---- gcc-4.5.1.orig/gcc/tree.h
-+++ gcc-4.5.1/gcc/tree.h
-@@ -39,6 +39,7 @@ along with GCC; see the file COPYING3.
- enum tree_code {
- #include "all-tree.def"
- MAX_TREE_CODES
-+,__MAX_TREE_CODES=32767 /* Force 16bit width. */
- };
-
- #undef DEFTREECODE
-Index: gcc-4.5.1/gcc/rtl.h
-===================================================================
---- gcc-4.5.1.orig/gcc/rtl.h
-+++ gcc-4.5.1/gcc/rtl.h
-@@ -48,9 +48,11 @@ enum rtx_code {
- #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.5.1/gcc/c-common.h
-===================================================================
---- gcc-4.5.1.orig/gcc/c-common.h
-+++ gcc-4.5.1/gcc/c-common.h
-@@ -161,6 +161,7 @@ enum rid
- 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/patches/gcc-4.5.2/0010-all_gcc-trampolinewarn.patch b/patches/gcc-4.5.2/0010-all_gcc-trampolinewarn.patch
deleted file mode 100644
index 35d28a6..0000000
--- a/patches/gcc-4.5.2/0010-all_gcc-trampolinewarn.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From: Kevin F. Quinn <kevquinn@gentoo.org>
-
-Taken from gentoo, original description:
-
-This trivial patch causes gcc to emit a warning whenever it generates a
-trampoline. These are otherwise hard to locate. It is rigged to default
-ON - to have it default to OFF remove the text 'Init(1)' from the
-common.opt patch, leaving just 'Common Var(warn_trampolines)'.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/builtins.c | 3 +++
- gcc/common.opt | 4 ++++
- 2 files changed, 7 insertions(+)
-
-Index: gcc-4.5.1/gcc/common.opt
-===================================================================
---- gcc-4.5.1.orig/gcc/common.opt
-+++ gcc-4.5.1/gcc/common.opt
-@@ -196,6 +196,10 @@ Wtype-limits
- Common Var(warn_type_limits) Init(-1) Warning
- Warn if a comparison is always true or always false due to the limited range of the data type
-
-+Wtrampolines
-+Common Var(warn_trampolines) Init(1)
-+Warn whenever a trampoline is generated
-+
- Wuninitialized
- Common Var(warn_uninitialized) Init(-1) Warning
- Warn about uninitialized automatic variables
-Index: gcc-4.5.1/gcc/builtins.c
-===================================================================
---- gcc-4.5.1.orig/gcc/builtins.c
-+++ gcc-4.5.1/gcc/builtins.c
-@@ -5029,6 +5029,9 @@ expand_builtin_profile_func (bool exitp)
- 0),
- Pmode);
-
-+ if (warn_trampolines)
-+ warning (OPT_Wtrampolines, "generating trampoline in object (requires executable stack)");
-+
- return const0_rtx;
- }
-
diff --git a/patches/gcc-4.5.2/0011-flatten-switch-stmt-00.patch b/patches/gcc-4.5.2/0011-flatten-switch-stmt-00.patch
deleted file mode 100644
index 0376bb7..0000000
--- a/patches/gcc-4.5.2/0011-flatten-switch-stmt-00.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From: Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
-
-This is http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00927.html
-
-Hi,
-
-The attached patch makes sure that we create smaller object code for
-simple switch statements. We just make sure to flatten the switch
-statement into an if-else chain, basically.
-
-This fixes a size-regression as compared to gcc-3.4, as can be seen
-below.
-
-2007-04-15 Bernhard Fischer <..>
-
- * stmt.c (expand_case): Do not create a complex binary tree when
- optimizing for size but rather use the simple ordered list.
- (emit_case_nodes): do not emit jumps to the default_label when
- optimizing for size.
-
-Not regtested so far.
-Comments?
-
-Attached is the test switch.c mentioned below.
-
-$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
-gcc-$i -DCHAIN -Os -o switch-CHAIN-$i.o -c switch.c ;done
-$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
-gcc-$i -UCHAIN -Os -o switch-$i.o -c switch.c ;done
-
-$ size switch-*.o
- text data bss dec hex filename
- 169 0 0 169 a9 switch-2.95.o
- 115 0 0 115 73 switch-3.3.o
- 103 0 0 103 67 switch-3.4.o
- 124 0 0 124 7c switch-4.0.o
- 124 0 0 124 7c switch-4.1.o
- 124 0 0 124 7c switch-4.2.orig-HEAD.o
- 95 0 0 95 5f switch-4.3-HEAD.o
- 124 0 0 124 7c switch-4.3.orig-HEAD.o
- 166 0 0 166 a6 switch-CHAIN-2.95.o
- 111 0 0 111 6f switch-CHAIN-3.3.o
- 95 0 0 95 5f switch-CHAIN-3.4.o
- 95 0 0 95 5f switch-CHAIN-4.0.o
- 95 0 0 95 5f switch-CHAIN-4.1.o
- 95 0 0 95 5f switch-CHAIN-4.2.orig-HEAD.o
- 95 0 0 95 5f switch-CHAIN-4.3-HEAD.o
- 95 0 0 95 5f switch-CHAIN-4.3.orig-HEAD.o
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/stmt.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/stmt.c
-===================================================================
---- gcc-4.5.1.orig/gcc/stmt.c
-+++ gcc-4.5.1/gcc/stmt.c
-@@ -2440,7 +2440,13 @@ expand_case (gimple stmt)
- default code is emitted. */
-
- use_cost_table = estimate_case_costs (case_list);
-- balance_case_nodes (&case_list, NULL);
-+
-+ /* When optimizing for size, we want a straight list to avoid
-+ jumps as much as possible. This basically creates an if-else
-+ chain. */
-+
-+ if (!optimize_size)
-+ balance_case_nodes (&case_list, NULL);
- emit_case_nodes (index, case_list, default_label, index_type);
- if (default_label)
- emit_jump (default_label);
-@@ -3008,6 +3014,7 @@ emit_case_nodes (rtx index, case_node_pt
- {
- if (!node_has_low_bound (node, index_type))
- {
-+ if (!optimize_size) /* don't jl to the .default_label. */
- emit_cmp_and_jump_insns (index,
- convert_modes
- (mode, imode,
diff --git a/patches/gcc-4.5.2/0012-libiberty-pic.patch b/patches/gcc-4.5.2/0012-libiberty-pic.patch
deleted file mode 100644
index 9858422..0000000
--- a/patches/gcc-4.5.2/0012-libiberty-pic.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Taken from gentoo.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- libiberty/Makefile.in | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: gcc-4.5.1/libiberty/Makefile.in
-===================================================================
---- gcc-4.5.1.orig/libiberty/Makefile.in
-+++ gcc-4.5.1/libiberty/Makefile.in
-@@ -227,6 +227,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA
- $(AR) $(AR_FLAGS) $(TARGETLIB) \
- $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
- $(RANLIB) $(TARGETLIB); \
-+ cp $(TARGETLIB) ../ ; \
- cd ..; \
- else true; fi
-
diff --git a/patches/gcc-4.5.2/0013-libstdc++-pic.patch b/patches/gcc-4.5.2/0013-libstdc++-pic.patch
deleted file mode 100644
index 0146282..0000000
--- a/patches/gcc-4.5.2/0013-libstdc++-pic.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Install libstdc++_pic.a if we have pic objs. Taken from gentoo.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- libstdc++-v3/src/Makefile.am | 7 +++++++
- libstdc++-v3/src/Makefile.in | 9 ++++++++-
- 2 files changed, 15 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/libstdc++-v3/src/Makefile.am
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/src/Makefile.am
-+++ gcc-4.5.1/libstdc++-v3/src/Makefile.am
-@@ -377,6 +377,13 @@ CXXLINK = $(LIBTOOL) --tag CXX $(AM_LIBT
- $(CXX) $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
-
-
-+install-exec-local:
-+ pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
-+ if [ x"$$pic_objs" != x ]; then \
-+ $(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
-+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
-+ fi
-+
- # Added bits to build debug library.
- if GLIBCXX_BUILD_DEBUG
- all-local: build_debug
-Index: gcc-4.5.1/libstdc++-v3/src/Makefile.in
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/src/Makefile.in
-+++ gcc-4.5.1/libstdc++-v3/src/Makefile.in
-@@ -739,7 +739,7 @@ install-dvi: install-dvi-am
-
- install-dvi-am:
-
--install-exec-am: install-toolexeclibLTLIBRARIES
-+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
-
- install-html: install-html-am
-
-@@ -993,6 +993,13 @@ install_debug:
- (cd ${debugdir} && $(MAKE) \
- toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
-
-+install-exec-local:
-+ pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
-+ if [ x"$$pic_objs" != x ]; then \
-+ $(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
-+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
-+ fi
-+
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
- .NOEXPORT:
diff --git a/patches/gcc-4.5.2/0014-arm-bswapsi2.patch b/patches/gcc-4.5.2/0014-arm-bswapsi2.patch
deleted file mode 100644
index 89942df..0000000
--- a/patches/gcc-4.5.2/0014-arm-bswapsi2.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-This patch was taken from OpenEmbedded.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
-
-Index: gcc-4.5/gcc/config/arm/arm.md
-===================================================================
---- gcc-4.5.orig/gcc/config/arm/arm.md 2010-06-17 09:13:07.000000000 -0700
-+++ gcc-4.5/gcc/config/arm/arm.md 2010-06-22 08:08:45.397212002 -0700
-@@ -11267,7 +11267,7 @@
- (define_expand "bswapsi2"
- [(set (match_operand:SI 0 "s_register_operand" "=r")
- (bswap:SI (match_operand:SI 1 "s_register_operand" "r")))]
--"TARGET_EITHER"
-+"TARGET_EITHER && (arm_arch6 && !optimize_size)"
- "
- if (!arm_arch6)
- {
diff --git a/patches/gcc-4.5.2/0015-Fix-libjava-cross-build-issue.patch b/patches/gcc-4.5.2/0015-Fix-libjava-cross-build-issue.patch
deleted file mode 100644
index 194aea4..0000000
--- a/patches/gcc-4.5.2/0015-Fix-libjava-cross-build-issue.patch
+++ /dev/null
@@ -1,201 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Fri, 11 Feb 2011 23:29:14 +0100
-Subject: [PATCH] Fix: libjava cross build issue
-
-Taken from upstream r163580:
-
-Fix building ecjx in cross compile mode.
-
-libjava/:
- PR libgcj/40868
- * configure.ac: Add GCC_FOR_ECJX variable. Ensure
- GCJ_FOR_ECJX is always set.
- * Makefile.am [!NATIVE] (ecjx.$(OBJEXT)): New rule.
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * gcj/Makefile.in: Regenerate.
- * include/Makefile.in: Regenerate.
- * testsuite/Makefile.in: Regenerate.
-
-This is a fix for:
-Bug 40868 - ecjx.cc should be compiled by host gcc
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
----
- libjava/Makefile.am | 2 ++
- libjava/Makefile.in | 3 +++
- libjava/configure | 12 ++++++++----
- libjava/configure.ac | 5 ++++-
- libjava/gcj/Makefile.in | 1 +
- libjava/include/Makefile.in | 1 +
- libjava/testsuite/Makefile.in | 1 +
- 7 files changed, 20 insertions(+), 5 deletions(-)
-
-diff --git a/libjava/Makefile.am b/libjava/Makefile.am
-index 55ff0d1..85f020f 100644
---- a/libjava/Makefile.am
-+++ b/libjava/Makefile.am
-@@ -1127,6 +1127,8 @@ ecjx_LINK = $(GCJ_FOR_ECJX_LINK) $(ecjx_LDFLAGS)
- ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
- ecjx_LDADD =
- ecjx_DEPENDENCIES =
-+ecjx.$(OBJEXT): ecjx.cc
-+ $(GCC_FOR_ECJX) -c $<
-
- endif !NATIVE
-
-diff --git a/libjava/Makefile.in b/libjava/Makefile.in
-index adfcdf5..f4ad73e 100644
---- a/libjava/Makefile.in
-+++ b/libjava/Makefile.in
-@@ -672,6 +672,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-@@ -12887,6 +12888,8 @@ write-entries-to-file-check:
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ | sed -n -e 's|0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\1, 0x\2, \3) /*\4 */|p' \
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ >> tmp-0212; \
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ mv tmp-0212 $(srcdir)/gnu/gcj/convert/JIS0212.h
-+@NATIVE_FALSE@ecjx.$(OBJEXT): ecjx.cc
-+@NATIVE_FALSE@ $(GCC_FOR_ECJX) -c $<
-
- src.zip:
- -rm -f src.zip
-diff --git a/libjava/configure b/libjava/configure
-index 5454110..7b64bab 100755
---- a/libjava/configure
-+++ b/libjava/configure
-@@ -769,6 +769,7 @@ LIBLTDL
- INCLTDL
- host_exeext
- GCJH
-+GCC_FOR_ECJX
- GCJ_FOR_ECJX
- X_AWT_FALSE
- X_AWT_TRUE
-@@ -6693,7 +6694,8 @@ 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)'
-+GCC_FOR_ECJX='$(CXX)'
- 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
-@@ -6701,6 +6703,7 @@ if test -n "${with_cross_host}"; then
- NATIVE=no
- cross_host_exeext=
- GCJ_FOR_ECJX="${with_cross_host}-gcj"
-+ GCC_FOR_ECJX="${with_cross_host}-gcc"
- case "${with_cross_host}" in
- *mingw* | *cygwin*)
- cross_host_exeext=.exe
-@@ -6769,6 +6772,7 @@ export JAVAC
-
-
-
-+
- # Create it, so that compile/link tests don't fail
- test -f libgcj.spec || touch libgcj.spec
-
-@@ -13339,7 +13343,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 13342 "configure"
-+#line 13356 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -13445,7 +13449,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 13448 "configure"
-+#line 13462 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -19424,7 +19428,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then :
- enableval=$enable_sjlj_exceptions; :
- else
- cat > conftest.$ac_ext << EOF
--#line 19427 "configure"
-+#line 19441 "configure"
- struct S { ~S(); };
- void bar();
- void foo()
-diff --git a/libjava/configure.ac b/libjava/configure.ac
-index 9b551db..eaedc56 100644
---- a/libjava/configure.ac
-+++ b/libjava/configure.ac
-@@ -394,7 +394,8 @@ 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)'
-+GCC_FOR_ECJX='$(CXX)'
- 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
-@@ -402,6 +403,7 @@ if test -n "${with_cross_host}"; then
- NATIVE=no
- cross_host_exeext=
- GCJ_FOR_ECJX="${with_cross_host}-gcj"
-+ GCC_FOR_ECJX="${with_cross_host}-gcc"
- case "${with_cross_host}" in
- *mingw* | *cygwin*)
- cross_host_exeext=.exe
-@@ -467,6 +469,7 @@ JAVAC="$GCJ -C"
- export JAVAC
-
- AC_SUBST(GCJ_FOR_ECJX)
-+AC_SUBST(GCC_FOR_ECJX)
- AC_SUBST(GCJH)
- AC_SUBST(host_exeext)
-
-diff --git a/libjava/gcj/Makefile.in b/libjava/gcj/Makefile.in
-index dd17e55..e7e912a 100644
---- a/libjava/gcj/Makefile.in
-+++ b/libjava/gcj/Makefile.in
-@@ -136,6 +136,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-diff --git a/libjava/include/Makefile.in b/libjava/include/Makefile.in
-index 2e04d8d..1c6f71a 100644
---- a/libjava/include/Makefile.in
-+++ b/libjava/include/Makefile.in
-@@ -136,6 +136,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-diff --git a/libjava/testsuite/Makefile.in b/libjava/testsuite/Makefile.in
-index a582efd..f81f531 100644
---- a/libjava/testsuite/Makefile.in
-+++ b/libjava/testsuite/Makefile.in
-@@ -111,6 +111,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
---
-1.7.2.3
-
diff --git a/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch b/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch
deleted file mode 100644
index 191b61a..0000000
--- a/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From: Bernhard Walle <walle@corscience.de>
-Date: Wed, 11 May 2011 16:26:14 +0200
-Subject: [PATCH] Fix ICE on ARM
-
-Upstream Bug URL: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45447
-
-svn log -c 168270 svn://gcc.gnu.org/svn/gcc/branches/gcc-4_5-branch/
-
-r168270 | qiyao | 2010-12-27 13:45:02 +0100 (Mo, 27. Dez 2010) | 10 Zeilen
-
-Backport from mainline:
-gcc/
- PR target/45447
- * config/arm/arm.c (arm_build_builtin_va_list): Assign
- va_list_name to TYPE_STUB_DECL (va_list_type).
-
-gcc/testsuite/
- PR target/45447
- * gcc.target/arm/pr45447.c: New test.
-
-Signed-off-by: Bernhard Walle <walle@corscience.de>
----
- gcc/config/arm/arm.c | 1 +
- gcc/testsuite/gcc.target/arm/pr45447.c | 3 +++
- 2 files changed, 4 insertions(+), 0 deletions(-)
- create mode 100644 gcc/testsuite/gcc.target/arm/pr45447.c
-
-diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
-index c65f59e..144cf79 100644
---- a/gcc/config/arm/arm.c
-+++ b/gcc/config/arm/arm.c
-@@ -1114,6 +1114,7 @@ arm_build_builtin_va_list (void)
- va_list_type);
- DECL_ARTIFICIAL (va_list_name) = 1;
- TYPE_NAME (va_list_type) = va_list_name;
-+ TYPE_STUB_DECL (va_list_type) = va_list_name;
- /* Create the __ap field. */
- ap_field = build_decl (BUILTINS_LOCATION,
- FIELD_DECL,
-diff --git a/gcc/testsuite/gcc.target/arm/pr45447.c b/gcc/testsuite/gcc.target/arm/pr45447.c
-new file mode 100644
-index 0000000..cb4a442
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/arm/pr45447.c
-@@ -0,0 +1,3 @@
-+/* { dg-do compile } */
-+/* { dg-options "-g -femit-struct-debug-baseonly" } */
-+typedef __builtin_va_list x;
---
-1.7.5.1
-
diff --git a/patches/gcc-4.5.2/series b/patches/gcc-4.5.2/series
deleted file mode 100644
index ea6ad6b..0000000
--- a/patches/gcc-4.5.2/series
+++ /dev/null
@@ -1,25 +0,0 @@
-# from OSELAS.toolchain
-0001-no-host-includes.diff
-0002-arm-softfloat.diff
-0003-pr39429.diff
-
-# from uclibc
-0004-uclibc-conf.patch
-0005-missing-execinfo_h.patch
-0006-c99-snprintf.patch
-0007-libmudflap-susv3-legacy.patch
-0008-arm_insn-opinit-RTX_CODE-fixup.patch
-0009-short-enums.diff
-
-# from gentoo
-0010-all_gcc-trampolinewarn.patch
-0011-flatten-switch-stmt-00.patch
-0012-libiberty-pic.patch
-0013-libstdc++-pic.patch
-
-# from oe
-0014-arm-bswapsi2.patch
-
-# from upstream
-0015-Fix-libjava-cross-build-issue.patch
-0016-Fix-ICE-on-ARM.patch
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0001-no-host-includes.diff b/patches/gcc-linaro-4.5-2011.02-0/0001-no-host-includes.diff
deleted file mode 100644
index 39df653..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0001-no-host-includes.diff
+++ /dev/null
@@ -1,54 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-With this patch gcc bails out if you include a host include path into
-the searchlist (-I). This patch is not intended for upstream and was
-inspired by
-
-http://www.openembedded.org/repo/org.openembedded.dev/packages/gcc/gcc-4.1.1/zecke-no-host-includes.patch
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/incpath.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-Index: gcc-4.5.1/gcc/incpath.c
-===================================================================
---- gcc-4.5.1.orig/gcc/incpath.c
-+++ gcc-4.5.1/gcc/incpath.c
-@@ -417,6 +417,34 @@ add_path (char *path, int chain, int cxx
- p->construct = 0;
- p->user_supplied_p = user_supplied_p;
-
-+#ifdef CROSS_COMPILE
-+ /* A common error when cross compiling is including
-+ host headers. This code below will try to fail fast
-+ for cross compiling. Currently we consider /usr/include,
-+ /opt/include and /sw/include as harmful. */
-+ {
-+ unsigned int i;
-+ const char *bad_path[] = {
-+ "/usr/include",
-+ "/usr/local/include",
-+ "/sw/include",
-+ "/opt/include",
-+ };
-+
-+ for (i = 0; i < sizeof(bad_path)/sizeof(bad_path[0]); i++) {
-+ if( strstr(p->name, bad_path[i]) == p->name ) {
-+ fprintf(stderr,_("\n"
-+ "CROSS COMPILE Badness: %s in INCLUDEPATH: %s\n"
-+ "\n"),
-+
-+ bad_path[i], p->name);
-+
-+ exit (FATAL_EXIT_CODE);
-+ }
-+ }
-+ }
-+#endif
-+
- add_cpp_dir_path (p, chain);
- }
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0002-arm-softfloat.diff b/patches/gcc-linaro-4.5-2011.02-0/0002-arm-softfloat.diff
deleted file mode 100644
index cb41b3d..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0002-arm-softfloat.diff
+++ /dev/null
@@ -1,44 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Link assembler softfloat functions into gcc. As the functions are there
-in that case anyway, don't add switches for float lib.
-
-Upstream will not fix this because oabi is dead.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/config/arm/linux-elf.h | 2 +-
- gcc/config/arm/t-linux | 5 ++++-
- 2 files changed, 5 insertions(+), 2 deletions(-)
-
-Index: gcc-4.5.1/gcc/config/arm/linux-elf.h
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/linux-elf.h
-+++ gcc-4.5.1/gcc/config/arm/linux-elf.h
-@@ -60,7 +60,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-
-Index: gcc-4.5.1/gcc/config/arm/t-linux
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/t-linux
-+++ gcc-4.5.1/gcc/config/arm/t-linux
-@@ -23,7 +23,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
-
- LIB1ASMSRC = arm/lib1funcs.asm
- LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
-- _arm_addsubdf3 _arm_addsubsf3
-+ _arm_addsubdf3 _arm_addsubsf3 \
-+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
-+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
-+ _fixsfsi _fixunssfsi _floatdidf _floatdisf
-
- # MULTILIB_OPTIONS = mhard-float/msoft-float
- # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0003-pr39429.diff b/patches/gcc-linaro-4.5-2011.02-0/0003-pr39429.diff
deleted file mode 100644
index bd194f1..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0003-pr39429.diff
+++ /dev/null
@@ -1,38 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-
-This is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39429.
-
-I've removed Michael's original patch and replaced it by the one from
-the gcc bugzilla.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/config/arm/arm.md | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-Index: gcc-4.5.1/gcc/config/arm/arm.md
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/arm.md
-+++ gcc-4.5.1/gcc/config/arm/arm.md
-@@ -10390,6 +10390,21 @@
- else
- {
- /* Offset is out of range for a single add, so use two ldr. */
-+
-+ /* Swap the ldrs if the first ldr would clobber the shared base_reg. */
-+ if (REGNO (ldm[1]) == REGNO (base_reg))
-+ {
-+ rtx tmp_reg;
-+ HOST_WIDE_INT tmp_val;
-+
-+ tmp_reg = ldm[1];
-+ ldm[1] = ldm[2];
-+ ldm[2] = tmp_reg;
-+ tmp_val = val1;
-+ val1 = val2;
-+ val2 = tmp_val;
-+ }
-+
- ops[0] = ldm[1];
- ops[1] = base_reg;
- ops[2] = GEN_INT (val1);
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0004-uclibc-conf.patch b/patches/gcc-linaro-4.5-2011.02-0/0004-uclibc-conf.patch
deleted file mode 100644
index c8e563b..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0004-uclibc-conf.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- contrib/regression/objs-gcc.sh | 4 ++++
- libjava/classpath/ltconfig | 4 ++--
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
-Index: gcc-4.5.1/contrib/regression/objs-gcc.sh
-===================================================================
---- gcc-4.5.1.orig/contrib/regression/objs-gcc.sh
-+++ gcc-4.5.1/contrib/regression/objs-gcc.sh
-@@ -106,6 +106,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
- 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
-Index: gcc-4.5.1/libjava/classpath/ltconfig
-===================================================================
---- gcc-4.5.1.orig/libjava/classpath/ltconfig
-+++ gcc-4.5.1/libjava/classpath/ltconfig
-@@ -603,7 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
-
- # 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 @@ linux-gnuoldld* | linux-gnuaout* | linux
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0005-missing-execinfo_h.patch b/patches/gcc-linaro-4.5-2011.02-0/0005-missing-execinfo_h.patch
deleted file mode 100644
index 63b6acd..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0005-missing-execinfo_h.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- boehm-gc/include/gc.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: gcc-4.3.1/boehm-gc/include/gc.h
-===================================================================
---- gcc-4.3.1.orig/boehm-gc/include/gc.h
-+++ gcc-4.3.1/boehm-gc/include/gc.h
-@@ -503,7 +503,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
- #if defined(__linux__) || defined(__GLIBC__)
- # include <features.h>
- # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
-- && !defined(__ia64__)
-+ && !defined(__ia64__) && !defined(__UCLIBC__)
- # ifndef GC_HAVE_BUILTIN_BACKTRACE
- # define GC_HAVE_BUILTIN_BACKTRACE
- # endif
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0006-c99-snprintf.patch b/patches/gcc-linaro-4.5-2011.02-0/0006-c99-snprintf.patch
deleted file mode 100644
index d39e7d3..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0006-c99-snprintf.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- libstdc++-v3/include/c_global/cstdio | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: gcc-4.5.1/libstdc++-v3/include/c_global/cstdio
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/include/c_global/cstdio
-+++ gcc-4.5.1/libstdc++-v3/include/c_global/cstdio
-@@ -139,7 +139,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
-
- _GLIBCXX_END_NAMESPACE
-
--#if _GLIBCXX_USE_C99
-+#if _GLIBCXX_USE_C99 || defined __UCLIBC__
-
- #undef snprintf
- #undef vfscanf
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0007-libmudflap-susv3-legacy.patch b/patches/gcc-linaro-4.5-2011.02-0/0007-libmudflap-susv3-legacy.patch
deleted file mode 100644
index 62f3ffa..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0007-libmudflap-susv3-legacy.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-This patch was taken from uclibc.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- libmudflap/mf-hooks2.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-Index: gcc-4.5.1/libmudflap/mf-hooks2.c
-===================================================================
---- gcc-4.5.1.orig/libmudflap/mf-hooks2.c
-+++ gcc-4.5.1/libmudflap/mf-hooks2.c
-@@ -421,7 +421,7 @@ WRAPPER2(void, bzero, void *s, size_t n)
- {
- TRACE ("%s\n", __PRETTY_FUNCTION__);
- MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region");
-- bzero (s, n);
-+ memset (s, 0, n);
- }
-
-
-@@ -431,7 +431,7 @@ WRAPPER2(void, bcopy, const void *src, v
- 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);
- }
-
-
-@@ -441,7 +441,7 @@ WRAPPER2(int, bcmp, const void *s1, cons
- 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);
- }
-
-
-@@ -450,7 +450,7 @@ WRAPPER2(char *, index, const char *s, i
- 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);
- }
-
-
-@@ -459,7 +459,7 @@ WRAPPER2(char *, rindex, const char *s,
- 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/patches/gcc-linaro-4.5-2011.02-0/0008-arm_insn-opinit-RTX_CODE-fixup.patch b/patches/gcc-linaro-4.5-2011.02-0/0008-arm_insn-opinit-RTX_CODE-fixup.patch
deleted file mode 100644
index 8fb9c38..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0008-arm_insn-opinit-RTX_CODE-fixup.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-This patch was taken from uclibc, with this description:
-
-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.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- gcc/config/arm/arm-protos.h | 2 +-
- gcc/genopinit.c | 1 +
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/config/arm/arm-protos.h
-===================================================================
---- gcc-4.5.1.orig/gcc/config/arm/arm-protos.h
-+++ gcc-4.5.1/gcc/config/arm/arm-protos.h
-@@ -43,10 +43,10 @@ extern unsigned int arm_dbx_register_num
- 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,
-Index: gcc-4.5.1/gcc/genopinit.c
-===================================================================
---- gcc-4.5.1.orig/gcc/genopinit.c
-+++ gcc-4.5.1/gcc/genopinit.c
-@@ -490,6 +490,7 @@ from the machine description file `md'.
- 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");
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0009-short-enums.diff b/patches/gcc-linaro-4.5-2011.02-0/0009-short-enums.diff
deleted file mode 100644
index a2f6aed..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0009-short-enums.diff
+++ /dev/null
@@ -1,53 +0,0 @@
-This patch was taken from uclibc. It has "WONTFIX" status in the gcc
-bugzilla and should probably be done differently:
-
-http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34205
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/c-common.h | 1 +
- gcc/rtl.h | 4 +++-
- gcc/tree.h | 1 +
- 3 files changed, 5 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/tree.h
-===================================================================
---- gcc-4.5.1.orig/gcc/tree.h
-+++ gcc-4.5.1/gcc/tree.h
-@@ -39,6 +39,7 @@ along with GCC; see the file COPYING3.
- enum tree_code {
- #include "all-tree.def"
- MAX_TREE_CODES
-+,__MAX_TREE_CODES=32767 /* Force 16bit width. */
- };
-
- #undef DEFTREECODE
-Index: gcc-4.5.1/gcc/rtl.h
-===================================================================
---- gcc-4.5.1.orig/gcc/rtl.h
-+++ gcc-4.5.1/gcc/rtl.h
-@@ -48,9 +48,11 @@ enum rtx_code {
- #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.5.1/gcc/c-common.h
-===================================================================
---- gcc-4.5.1.orig/gcc/c-common.h
-+++ gcc-4.5.1/gcc/c-common.h
-@@ -161,6 +161,7 @@ enum rid
- 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/patches/gcc-linaro-4.5-2011.02-0/0010-all_gcc-trampolinewarn.patch b/patches/gcc-linaro-4.5-2011.02-0/0010-all_gcc-trampolinewarn.patch
deleted file mode 100644
index 35d28a6..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0010-all_gcc-trampolinewarn.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From: Kevin F. Quinn <kevquinn@gentoo.org>
-
-Taken from gentoo, original description:
-
-This trivial patch causes gcc to emit a warning whenever it generates a
-trampoline. These are otherwise hard to locate. It is rigged to default
-ON - to have it default to OFF remove the text 'Init(1)' from the
-common.opt patch, leaving just 'Common Var(warn_trampolines)'.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/builtins.c | 3 +++
- gcc/common.opt | 4 ++++
- 2 files changed, 7 insertions(+)
-
-Index: gcc-4.5.1/gcc/common.opt
-===================================================================
---- gcc-4.5.1.orig/gcc/common.opt
-+++ gcc-4.5.1/gcc/common.opt
-@@ -196,6 +196,10 @@ Wtype-limits
- Common Var(warn_type_limits) Init(-1) Warning
- Warn if a comparison is always true or always false due to the limited range of the data type
-
-+Wtrampolines
-+Common Var(warn_trampolines) Init(1)
-+Warn whenever a trampoline is generated
-+
- Wuninitialized
- Common Var(warn_uninitialized) Init(-1) Warning
- Warn about uninitialized automatic variables
-Index: gcc-4.5.1/gcc/builtins.c
-===================================================================
---- gcc-4.5.1.orig/gcc/builtins.c
-+++ gcc-4.5.1/gcc/builtins.c
-@@ -5029,6 +5029,9 @@ expand_builtin_profile_func (bool exitp)
- 0),
- Pmode);
-
-+ if (warn_trampolines)
-+ warning (OPT_Wtrampolines, "generating trampoline in object (requires executable stack)");
-+
- return const0_rtx;
- }
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0011-flatten-switch-stmt-00.patch b/patches/gcc-linaro-4.5-2011.02-0/0011-flatten-switch-stmt-00.patch
deleted file mode 100644
index 0376bb7..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0011-flatten-switch-stmt-00.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From: Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
-
-This is http://gcc.gnu.org/ml/gcc-patches/2007-04/msg00927.html
-
-Hi,
-
-The attached patch makes sure that we create smaller object code for
-simple switch statements. We just make sure to flatten the switch
-statement into an if-else chain, basically.
-
-This fixes a size-regression as compared to gcc-3.4, as can be seen
-below.
-
-2007-04-15 Bernhard Fischer <..>
-
- * stmt.c (expand_case): Do not create a complex binary tree when
- optimizing for size but rather use the simple ordered list.
- (emit_case_nodes): do not emit jumps to the default_label when
- optimizing for size.
-
-Not regtested so far.
-Comments?
-
-Attached is the test switch.c mentioned below.
-
-$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
-gcc-$i -DCHAIN -Os -o switch-CHAIN-$i.o -c switch.c ;done
-$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
-gcc-$i -UCHAIN -Os -o switch-$i.o -c switch.c ;done
-
-$ size switch-*.o
- text data bss dec hex filename
- 169 0 0 169 a9 switch-2.95.o
- 115 0 0 115 73 switch-3.3.o
- 103 0 0 103 67 switch-3.4.o
- 124 0 0 124 7c switch-4.0.o
- 124 0 0 124 7c switch-4.1.o
- 124 0 0 124 7c switch-4.2.orig-HEAD.o
- 95 0 0 95 5f switch-4.3-HEAD.o
- 124 0 0 124 7c switch-4.3.orig-HEAD.o
- 166 0 0 166 a6 switch-CHAIN-2.95.o
- 111 0 0 111 6f switch-CHAIN-3.3.o
- 95 0 0 95 5f switch-CHAIN-3.4.o
- 95 0 0 95 5f switch-CHAIN-4.0.o
- 95 0 0 95 5f switch-CHAIN-4.1.o
- 95 0 0 95 5f switch-CHAIN-4.2.orig-HEAD.o
- 95 0 0 95 5f switch-CHAIN-4.3-HEAD.o
- 95 0 0 95 5f switch-CHAIN-4.3.orig-HEAD.o
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- gcc/stmt.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/gcc/stmt.c
-===================================================================
---- gcc-4.5.1.orig/gcc/stmt.c
-+++ gcc-4.5.1/gcc/stmt.c
-@@ -2440,7 +2440,13 @@ expand_case (gimple stmt)
- default code is emitted. */
-
- use_cost_table = estimate_case_costs (case_list);
-- balance_case_nodes (&case_list, NULL);
-+
-+ /* When optimizing for size, we want a straight list to avoid
-+ jumps as much as possible. This basically creates an if-else
-+ chain. */
-+
-+ if (!optimize_size)
-+ balance_case_nodes (&case_list, NULL);
- emit_case_nodes (index, case_list, default_label, index_type);
- if (default_label)
- emit_jump (default_label);
-@@ -3008,6 +3014,7 @@ emit_case_nodes (rtx index, case_node_pt
- {
- if (!node_has_low_bound (node, index_type))
- {
-+ if (!optimize_size) /* don't jl to the .default_label. */
- emit_cmp_and_jump_insns (index,
- convert_modes
- (mode, imode,
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0012-libiberty-pic.patch b/patches/gcc-linaro-4.5-2011.02-0/0012-libiberty-pic.patch
deleted file mode 100644
index 9858422..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0012-libiberty-pic.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Taken from gentoo.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- libiberty/Makefile.in | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: gcc-4.5.1/libiberty/Makefile.in
-===================================================================
---- gcc-4.5.1.orig/libiberty/Makefile.in
-+++ gcc-4.5.1/libiberty/Makefile.in
-@@ -227,6 +227,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA
- $(AR) $(AR_FLAGS) $(TARGETLIB) \
- $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
- $(RANLIB) $(TARGETLIB); \
-+ cp $(TARGETLIB) ../ ; \
- cd ..; \
- else true; fi
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0013-libstdc++-pic.patch b/patches/gcc-linaro-4.5-2011.02-0/0013-libstdc++-pic.patch
deleted file mode 100644
index 0146282..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0013-libstdc++-pic.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-
-Install libstdc++_pic.a if we have pic objs. Taken from gentoo.
-
-Signed-off-by: Marc Kleine-Budde <m.kleine-budde@pengutronix.de>
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
----
- libstdc++-v3/src/Makefile.am | 7 +++++++
- libstdc++-v3/src/Makefile.in | 9 ++++++++-
- 2 files changed, 15 insertions(+), 1 deletion(-)
-
-Index: gcc-4.5.1/libstdc++-v3/src/Makefile.am
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/src/Makefile.am
-+++ gcc-4.5.1/libstdc++-v3/src/Makefile.am
-@@ -377,6 +377,13 @@ CXXLINK = $(LIBTOOL) --tag CXX $(AM_LIBT
- $(CXX) $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
-
-
-+install-exec-local:
-+ pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
-+ if [ x"$$pic_objs" != x ]; then \
-+ $(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
-+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
-+ fi
-+
- # Added bits to build debug library.
- if GLIBCXX_BUILD_DEBUG
- all-local: build_debug
-Index: gcc-4.5.1/libstdc++-v3/src/Makefile.in
-===================================================================
---- gcc-4.5.1.orig/libstdc++-v3/src/Makefile.in
-+++ gcc-4.5.1/libstdc++-v3/src/Makefile.in
-@@ -739,7 +739,7 @@ install-dvi: install-dvi-am
-
- install-dvi-am:
-
--install-exec-am: install-toolexeclibLTLIBRARIES
-+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
-
- install-html: install-html-am
-
-@@ -993,6 +993,13 @@ install_debug:
- (cd ${debugdir} && $(MAKE) \
- toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
-
-+install-exec-local:
-+ pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
-+ if [ x"$$pic_objs" != x ]; then \
-+ $(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
-+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
-+ fi
-+
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
- .NOEXPORT:
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0015-Fix-libjava-cross-build-issue.patch b/patches/gcc-linaro-4.5-2011.02-0/0015-Fix-libjava-cross-build-issue.patch
deleted file mode 100644
index 194aea4..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0015-Fix-libjava-cross-build-issue.patch
+++ /dev/null
@@ -1,201 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Fri, 11 Feb 2011 23:29:14 +0100
-Subject: [PATCH] Fix: libjava cross build issue
-
-Taken from upstream r163580:
-
-Fix building ecjx in cross compile mode.
-
-libjava/:
- PR libgcj/40868
- * configure.ac: Add GCC_FOR_ECJX variable. Ensure
- GCJ_FOR_ECJX is always set.
- * Makefile.am [!NATIVE] (ecjx.$(OBJEXT)): New rule.
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * gcj/Makefile.in: Regenerate.
- * include/Makefile.in: Regenerate.
- * testsuite/Makefile.in: Regenerate.
-
-This is a fix for:
-Bug 40868 - ecjx.cc should be compiled by host gcc
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
----
- libjava/Makefile.am | 2 ++
- libjava/Makefile.in | 3 +++
- libjava/configure | 12 ++++++++----
- libjava/configure.ac | 5 ++++-
- libjava/gcj/Makefile.in | 1 +
- libjava/include/Makefile.in | 1 +
- libjava/testsuite/Makefile.in | 1 +
- 7 files changed, 20 insertions(+), 5 deletions(-)
-
-diff --git a/libjava/Makefile.am b/libjava/Makefile.am
-index 55ff0d1..85f020f 100644
---- a/libjava/Makefile.am
-+++ b/libjava/Makefile.am
-@@ -1127,6 +1127,8 @@ ecjx_LINK = $(GCJ_FOR_ECJX_LINK) $(ecjx_LDFLAGS)
- ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
- ecjx_LDADD =
- ecjx_DEPENDENCIES =
-+ecjx.$(OBJEXT): ecjx.cc
-+ $(GCC_FOR_ECJX) -c $<
-
- endif !NATIVE
-
-diff --git a/libjava/Makefile.in b/libjava/Makefile.in
-index adfcdf5..f4ad73e 100644
---- a/libjava/Makefile.in
-+++ b/libjava/Makefile.in
-@@ -672,6 +672,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-@@ -12887,6 +12888,8 @@ write-entries-to-file-check:
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ | sed -n -e 's|0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\1, 0x\2, \3) /*\4 */|p' \
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ >> tmp-0212; \
- @MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ mv tmp-0212 $(srcdir)/gnu/gcj/convert/JIS0212.h
-+@NATIVE_FALSE@ecjx.$(OBJEXT): ecjx.cc
-+@NATIVE_FALSE@ $(GCC_FOR_ECJX) -c $<
-
- src.zip:
- -rm -f src.zip
-diff --git a/libjava/configure b/libjava/configure
-index 5454110..7b64bab 100755
---- a/libjava/configure
-+++ b/libjava/configure
-@@ -769,6 +769,7 @@ LIBLTDL
- INCLTDL
- host_exeext
- GCJH
-+GCC_FOR_ECJX
- GCJ_FOR_ECJX
- X_AWT_FALSE
- X_AWT_TRUE
-@@ -6693,7 +6694,8 @@ 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)'
-+GCC_FOR_ECJX='$(CXX)'
- 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
-@@ -6701,6 +6703,7 @@ if test -n "${with_cross_host}"; then
- NATIVE=no
- cross_host_exeext=
- GCJ_FOR_ECJX="${with_cross_host}-gcj"
-+ GCC_FOR_ECJX="${with_cross_host}-gcc"
- case "${with_cross_host}" in
- *mingw* | *cygwin*)
- cross_host_exeext=.exe
-@@ -6769,6 +6772,7 @@ export JAVAC
-
-
-
-+
- # Create it, so that compile/link tests don't fail
- test -f libgcj.spec || touch libgcj.spec
-
-@@ -13339,7 +13343,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 13342 "configure"
-+#line 13356 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -13445,7 +13449,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 13448 "configure"
-+#line 13462 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -19424,7 +19428,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then :
- enableval=$enable_sjlj_exceptions; :
- else
- cat > conftest.$ac_ext << EOF
--#line 19427 "configure"
-+#line 19441 "configure"
- struct S { ~S(); };
- void bar();
- void foo()
-diff --git a/libjava/configure.ac b/libjava/configure.ac
-index 9b551db..eaedc56 100644
---- a/libjava/configure.ac
-+++ b/libjava/configure.ac
-@@ -394,7 +394,8 @@ 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)'
-+GCC_FOR_ECJX='$(CXX)'
- 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
-@@ -402,6 +403,7 @@ if test -n "${with_cross_host}"; then
- NATIVE=no
- cross_host_exeext=
- GCJ_FOR_ECJX="${with_cross_host}-gcj"
-+ GCC_FOR_ECJX="${with_cross_host}-gcc"
- case "${with_cross_host}" in
- *mingw* | *cygwin*)
- cross_host_exeext=.exe
-@@ -467,6 +469,7 @@ JAVAC="$GCJ -C"
- export JAVAC
-
- AC_SUBST(GCJ_FOR_ECJX)
-+AC_SUBST(GCC_FOR_ECJX)
- AC_SUBST(GCJH)
- AC_SUBST(host_exeext)
-
-diff --git a/libjava/gcj/Makefile.in b/libjava/gcj/Makefile.in
-index dd17e55..e7e912a 100644
---- a/libjava/gcj/Makefile.in
-+++ b/libjava/gcj/Makefile.in
-@@ -136,6 +136,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-diff --git a/libjava/include/Makefile.in b/libjava/include/Makefile.in
-index 2e04d8d..1c6f71a 100644
---- a/libjava/include/Makefile.in
-+++ b/libjava/include/Makefile.in
-@@ -136,6 +136,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
-diff --git a/libjava/testsuite/Makefile.in b/libjava/testsuite/Makefile.in
-index a582efd..f81f531 100644
---- a/libjava/testsuite/Makefile.in
-+++ b/libjava/testsuite/Makefile.in
-@@ -111,6 +111,7 @@ EGREP = @EGREP@
- EXCEPTIONSPEC = @EXCEPTIONSPEC@
- EXEEXT = @EXEEXT@
- FGREP = @FGREP@
-+GCC_FOR_ECJX = @GCC_FOR_ECJX@
- GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
- GCDEPS = @GCDEPS@
- GCINCS = @GCINCS@
---
-1.7.2.3
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/0016-debian-patch-revert-issue1259.patch b/patches/gcc-linaro-4.5-2011.02-0/0016-debian-patch-revert-issue1259.patch
deleted file mode 100644
index fbadd34..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/0016-debian-patch-revert-issue1259.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-# DP: Revert change for Linaro issue #1259, Do not default to
-# DP: -fstrict-volatile-bitfields on arm. LP: #675347.
-
-2010-10-26 Jie Zhang <jie@codesourcery.com>
-
- Issue #1259
-
- Backport from mainline:
-
- gcc/
- 2010-10-26 Jie Zhang <jie@codesourcery.com>
-
- * stor-layout.c (layout_decl): Use the field's type to
- determine the mode and keep DECL_BIT_FIELD for a volatile
- bit-field.
- * config/arm/arm.c (arm_override_options): Default to
- -fstrict-volatile-bitfields.
-
- gcc/testsuite/
- 2010-10-26 Jie Zhang <jie@codesourcery.com>
-
- * gcc.target/arm/volatile-bitfields-1.c: New test.
- * gcc.target/arm/volatile-bitfields-2.c: New test.
- * gcc.target/arm/volatile-bitfields-3.c: New test.
-
-
---- a/gcc/config/arm/arm.c
-+++ b/gcc/config/arm/arm.c
-@@ -1933,11 +1933,6 @@
- calculation, which is 2 instructions. */
- set_param_value ("gcse-unrestricted-cost", 2);
-
-- /* ARM EABI defaults to strict volatile bitfields. */
-- if (TARGET_AAPCS_BASED && flag_strict_volatile_bitfields < 0
-- && abi_version_at_least(2))
-- flag_strict_volatile_bitfields = 1;
--
- /* Register global variables with the garbage collector. */
- arm_add_gc_roots ();
-
diff --git a/patches/gcc-linaro-4.5-2011.02-0/series b/patches/gcc-linaro-4.5-2011.02-0/series
deleted file mode 100644
index e070f10..0000000
--- a/patches/gcc-linaro-4.5-2011.02-0/series
+++ /dev/null
@@ -1,24 +0,0 @@
-# from OSELAS.toolchain
-0001-no-host-includes.diff
-0002-arm-softfloat.diff
-0003-pr39429.diff
-
-# from uclibc
-0004-uclibc-conf.patch
-0005-missing-execinfo_h.patch
-0006-c99-snprintf.patch
-0007-libmudflap-susv3-legacy.patch
-0008-arm_insn-opinit-RTX_CODE-fixup.patch
-0009-short-enums.diff
-
-# from gentoo
-0010-all_gcc-trampolinewarn.patch
-0011-flatten-switch-stmt-00.patch
-0012-libiberty-pic.patch
-0013-libstdc++-pic.patch
-
-# from upstream
-0015-Fix-libjava-cross-build-issue.patch
-
-# reverted linaro patch
-0016-debian-patch-revert-issue1259.patch
diff --git a/patches/gcc-linaro-4.6-2011.11/series b/patches/gcc-linaro-4.6-2011.11/series
deleted file mode 100644
index a1123a9..0000000
--- a/patches/gcc-linaro-4.6-2011.11/series
+++ /dev/null
@@ -1,20 +0,0 @@
-# generated by git-ptx-patches
-#tag:base
-#tag:upstream --start-number 1
-../gcc-4.6.2/0002-Fix-compilation-with-host-gcc-4.7.patch
-../gcc-4.6.2/0003-PR-tree-optimization-52445.patch
-#tag:OSELAS.toolchain --start-number 100
-../gcc-4.6.2/0100-no-host-includes.patch
-../gcc-4.6.2/0101-arm-softfloat.patch
-../gcc-4.6.2/0102-fix-arith_adjacentmem-LDM-splitting-code.patch
-#tag:uclibc --start-number 200
-../gcc-4.6.2/0200-also-match-uclibc-when-checking-host-os.patch
-../gcc-4.6.2/0201-missing-execinfo.h.patch
-../gcc-4.6.2/0202-c99-snprintf.patch
-../gcc-4.6.2/0203-libmudflap-susv3-legacy.patch
-#tag:gentoo --start-number 300
-../gcc-4.6.2/0300-gcc-trampolinewarn.patch
-../gcc-4.6.2/0301-flatten-switch-stmt-into-if-else-chain-for-Os.patch
-../gcc-4.6.2/0302-libiberty-pic.patch
-../gcc-4.6.2/0303-libstdc-pic.patch
-# c5647f7546073b493385ebc9cc02ad59 - git-ptx-patches magic
diff --git a/patches/glibc-2.13/0001-install-lib-all.patch b/patches/glibc-2.13/0001-install-lib-all.patch
deleted file mode 100644
index 79be15f..0000000
--- a/patches/glibc-2.13/0001-install-lib-all.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-# --- T2-COPYRIGHT-NOTE-BEGIN ---
-# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
-#
-# T2 SDE: package/.../glibc32/make-install-lib-all.patch
-# Copyright (C) 2004 - 2005 The T2 SDE Project
-#
-# More information can be found in the files COPYING and README.
-#
-# This patch file is dual-licensed. It is available under the license the
-# patched project is licensed under, as long as it is an OpenSource license
-# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
-# of the GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or (at your option) any later
-# version.
-# --- T2-COPYRIGHT-NOTE-END ---
----
-# Makerules | 8 ++++++++
-# 1 file changed, 8 insertions(+)
-#
-Index: glibc-2.13/Makerules
-===================================================================
---- glibc-2.13.orig/Makerules
-+++ glibc-2.13/Makerules
-@@ -868,6 +868,13 @@ endef
- installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\
- $(inst_libdir)/$(patsubst %,$(libtype$o),\
- $(libprefix)$(libc-name)))
-+
-+install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \
-+ $(inst_slibdir)/libc-$(version).so \
-+ $(inst_libdir)/libc.so \
-+ $(inst_libdir)/libc.a \
-+ install-lib
-+
- install: $(installed-libcs)
- $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force)
- $(make-target-directory)
-@@ -891,6 +898,7 @@ endef
- install-lib.so := $(filter %.so,$(install-lib:%_pic.a=%.so))
- install-lib := $(filter-out %.so %_pic.a,$(install-lib))
-
-+
- ifeq (yes,$(build-shared))
- # Find which .so's have versions.
- versioned := $(strip $(foreach so,$(install-lib.so),\
diff --git a/patches/glibc-2.13/0002-fix-build-with-static-nss.patch b/patches/glibc-2.13/0002-fix-build-with-static-nss.patch
deleted file mode 100644
index a9960e7..0000000
--- a/patches/glibc-2.13/0002-fix-build-with-static-nss.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From: Dan Kegel <dank@kegel.com>
-Subject: [patch] fix build error with static-nss
-Date: Wed Jun 15 09:12:43 PDT 2005
-
-This patch fixes
-
-build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r'
-build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent'
-... 53 lines deleted ...
-build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r'
-collect2: ld returned 1 exit status
-make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1
-
-when building glibc with --enable-static-nss.
-
-See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- Makeconfig | 2 +-
- elf/Makefile | 7 +++++++
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-Index: glibc-2.13/Makeconfig
-===================================================================
---- glibc-2.13.orig/Makeconfig
-+++ glibc-2.13/Makeconfig
-@@ -531,7 +531,7 @@ endif
-
- # The static libraries.
- ifeq (yes,$(build-static))
--link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a
-+link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a
- else
- ifeq (yes,$(build-shared))
- # We can try to link the programs with lib*_pic.a...
-Index: glibc-2.13/elf/Makefile
-===================================================================
---- glibc-2.13.orig/elf/Makefile
-+++ glibc-2.13/elf/Makefile
-@@ -146,6 +146,13 @@ install-others = $(inst_slibdir)/$(rtld-
- install-bin-script = ldd
- endif
-
-+ifeq (yes,$(build-static-nss))
-+nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss)
-+resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv)
-+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
-+ $(resolvobjdir)/libresolv.a
-+endif
-+
- others = sprof sln
- install-bin = sprof
- others-static = sln
diff --git a/patches/glibc-2.13/0003-glibc-configure-old-gcc.patch b/patches/glibc-2.13/0003-glibc-configure-old-gcc.patch
deleted file mode 100644
index a1c74d6..0000000
--- a/patches/glibc-2.13/0003-glibc-configure-old-gcc.patch
+++ /dev/null
@@ -1,17 +0,0 @@
----
- configure | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: glibc-2.13/configure
-===================================================================
---- glibc-2.13.orig/configure
-+++ glibc-2.13/configure
-@@ -5049,7 +5049,7 @@ $as_echo_n "checking version of $CC... "
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
- $as_echo "$ac_prog_version" >&6; }
- fi
--if test $ac_verc_fail = yes; then
-+if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then
- critic_missing="$critic_missing gcc"
- fi
-
diff --git a/patches/glibc-2.13/0004-configure-in-sane-readelf.patch b/patches/glibc-2.13/0004-configure-in-sane-readelf.patch
deleted file mode 100644
index ff445af..0000000
--- a/patches/glibc-2.13/0004-configure-in-sane-readelf.patch
+++ /dev/null
@@ -1,35 +0,0 @@
----
- configure.in | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-Index: glibc-2.13/configure.in
-===================================================================
---- glibc-2.13.orig/configure.in
-+++ glibc-2.13/configure.in
-@@ -1475,6 +1475,8 @@ EOF
- fi
- fi
-
-+ AC_CHECK_TARGET_TOOL([READELF],[readelf],[readelf],[$PATH])
-+
- AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
- libc_cv_initfini_array, [dnl
- cat > conftest.c <<EOF
-@@ -1486,7 +1488,7 @@ EOF
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
- -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD])
- then
-- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
-+ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then
- libc_cv_initfini_array=yes
- else
- libc_cv_initfini_array=no
-@@ -1673,7 +1675,7 @@ dnl cross-platform since the gcc used ca
- dnl introducing new options this is not easily doable. Instead use a tool
- dnl which always is cross-platform: readelf. To detect whether -z combreloc
- dnl look for a section named .rel.dyn.
-- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
-+ if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
- libc_cv_z_combreloc=yes
- else
- libc_cv_z_combreloc=no
diff --git a/patches/glibc-2.13/0005-stdlib-longlong.patch b/patches/glibc-2.13/0005-stdlib-longlong.patch
deleted file mode 100644
index ee47efd..0000000
--- a/patches/glibc-2.13/0005-stdlib-longlong.patch
+++ /dev/null
@@ -1,37 +0,0 @@
----
- stdlib/longlong.h | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-Index: glibc-2.13/stdlib/longlong.h
-===================================================================
---- glibc-2.13.orig/stdlib/longlong.h
-+++ glibc-2.13/stdlib/longlong.h
-@@ -205,6 +205,14 @@ UDItype __umulsidi3 (USItype, USItype);
- "rI" ((USItype) (bh)), \
- "r" ((USItype) (al)), \
- "rI" ((USItype) (bl)) __CLOBBER_CC)
-+/* v3m and all higher arches have long multiply support. */
-+#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__)
-+#define umul_ppmm(xh, xl, a, b) \
-+ __asm__ ("umull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b))
-+#define UMUL_TIME 5
-+#define smul_ppmm(xh, xl, a, b) \
-+ __asm__ ("smull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b))
-+#else
- #define umul_ppmm(xh, xl, a, b) \
- {register USItype __t0, __t1, __t2; \
- __asm__ ("%@ Inlined umul_ppmm\n" \
-@@ -226,7 +234,13 @@ UDItype __umulsidi3 (USItype, USItype);
- : "r" ((USItype) (a)), \
- "r" ((USItype) (b)) __CLOBBER_CC );}
- #define UMUL_TIME 20
-+#endif
- #define UDIV_TIME 100
-+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__)
-+#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X))
-+#define COUNT_LEADING_ZEROS_0 32
-+#endif
-+
- #endif /* __arm__ */
-
- #if defined(__arm__)
diff --git a/patches/glibc-2.13/0006-respect-env-CPPFLAGS.patch b/patches/glibc-2.13/0006-respect-env-CPPFLAGS.patch
deleted file mode 100644
index 63731b0..0000000
--- a/patches/glibc-2.13/0006-respect-env-CPPFLAGS.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Respect environment CPPFLAGS when we run ./configure so we can inject
-random -D things without having to set CFLAGS/ASFLAGS
-
-This patch was taken from gentoo.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
- Makeconfig | 1 +
- config.make.in | 1 +
- 2 files changed, 2 insertions(+)
-
-Index: glibc-2.13/Makeconfig
-===================================================================
---- glibc-2.13.orig/Makeconfig
-+++ glibc-2.13/Makeconfig
-@@ -697,6 +697,7 @@ CPPFLAGS = $($(subdir)-CPPFLAGS) $(+incl
- $(foreach lib,$(libof-$(basename $(@F))) \
- $(libof-$(<F)) $(libof-$(@F)),$(CPPFLAGS-$(lib))) \
- $(CPPFLAGS-$(<F)) $(CPPFLAGS-$(@F)) $(CPPFLAGS-$(basename $(@F)))
-+CPPFLAGS += $(CPPFLAGS-config)
- override CFLAGS = -std=gnu99 $(gnu89-inline-CFLAGS) \
- $(filter-out %frame-pointer,$(+cflags)) $(+gccwarn-c) \
- $(sysdep-CFLAGS) $(CFLAGS-$(suffix $@)) $(CFLAGS-$(<F)) \
-Index: glibc-2.13/config.make.in
-===================================================================
---- glibc-2.13.orig/config.make.in
-+++ glibc-2.13/config.make.in
-@@ -107,6 +107,7 @@ CC = @CC@
- CXX = @CXX@
- BUILD_CC = @BUILD_CC@
- CFLAGS = @CFLAGS@
-+CPPFLAGS-config = @CPPFLAGS@
- ASFLAGS-config = @ASFLAGS_config@
- AR = @AR@
- RANLIB = @RANLIB@
diff --git a/patches/glibc-2.13/0007-i586-chk.patch b/patches/glibc-2.13/0007-i586-chk.patch
deleted file mode 100644
index 646d0e4..0000000
--- a/patches/glibc-2.13/0007-i586-chk.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-http://bugs.gentoo.org/199479
-
-2007-09-13 H.J. Lu <hongjiu.lu@intel.com>
-
- * sysdeps/i386/i586/memcpy_chk.S: New file.
- * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
- * sysdeps/i386/i586/memset_chk.S: Likewise.
-
----
- i386/i586/memcpy_chk.S | 1 +
- i386/i586/mempcpy_chk.S | 1 +
- i386/i586/memset_chk.S | 1 +
- 3 files changed, 3 insertions(+)
-
-Index: glibc-2.13/i386/i586/memcpy_chk.S
-===================================================================
---- /dev/null
-+++ glibc-2.13/i386/i586/memcpy_chk.S
-@@ -0,0 +1 @@
-+#include <sysdeps/i386/i686/memcpy_chk.S>
-Index: glibc-2.13/i386/i586/mempcpy_chk.S
-===================================================================
---- /dev/null
-+++ glibc-2.13/i386/i586/mempcpy_chk.S
-@@ -0,0 +1 @@
-+#include <sysdeps/i386/i686/mempcpy_chk.S>
-Index: glibc-2.13/i386/i586/memset_chk.S
-===================================================================
---- /dev/null
-+++ glibc-2.13/i386/i586/memset_chk.S
-@@ -0,0 +1 @@
-+#include <sysdeps/i386/i686/memset_chk.S>
diff --git a/patches/glibc-2.13/0008-i386-x86_64-revert-clone-cfi.patch b/patches/glibc-2.13/0008-i386-x86_64-revert-clone-cfi.patch
deleted file mode 100644
index 665de83..0000000
--- a/patches/glibc-2.13/0008-i386-x86_64-revert-clone-cfi.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-revert cfi additions to clone on i386/x86_64 to workaround problems in
-gcc's unwinder code. this is not a bug in glibc, it triggers problems
-elsewhere. this cfi code does not gain us a whole lot anyways.
-
-http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html
-
----
- sysdeps/unix/sysv/linux/i386/clone.S | 4 ----
- sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ----
- 2 files changed, 8 deletions(-)
-
-Index: glibc-2.13/sysdeps/unix/sysv/linux/i386/clone.S
-===================================================================
---- glibc-2.13.orig/sysdeps/unix/sysv/linux/i386/clone.S
-+++ glibc-2.13/sysdeps/unix/sysv/linux/i386/clone.S
-@@ -120,9 +120,6 @@ L(pseudo_end):
- ret
-
- L(thread_start):
-- cfi_startproc;
-- /* Clearing frame pointer is insufficient, use CFI. */
-- cfi_undefined (eip);
- /* Note: %esi is zero. */
- movl %esi,%ebp /* terminate the stack frame */
- #ifdef RESET_PID
-@@ -155,7 +152,6 @@ L(nomoregetpid):
- jmp L(haspid)
- .previous
- #endif
-- cfi_endproc;
-
- cfi_startproc
- PSEUDO_END (BP_SYM (__clone))
-Index: glibc-2.13/sysdeps/unix/sysv/linux/x86_64/clone.S
-===================================================================
---- glibc-2.13.orig/sysdeps/unix/sysv/linux/x86_64/clone.S
-+++ glibc-2.13/sysdeps/unix/sysv/linux/x86_64/clone.S
-@@ -89,9 +89,6 @@ L(pseudo_end):
- ret
-
- L(thread_start):
-- cfi_startproc;
-- /* Clearing frame pointer is insufficient, use CFI. */
-- cfi_undefined (rip);
- /* Clear the frame pointer. The ABI suggests this be done, to mark
- the outermost frame obviously. */
- xorl %ebp, %ebp
-@@ -116,7 +113,6 @@ L(thread_start):
- /* Call exit with return value from function call. */
- movq %rax, %rdi
- call HIDDEN_JUMPTARGET (_exit)
-- cfi_endproc;
-
- cfi_startproc;
- PSEUDO_END (BP_SYM (__clone))
diff --git a/patches/glibc-2.13/0009-queue-header-updates.patch b/patches/glibc-2.13/0009-queue-header-updates.patch
deleted file mode 100644
index 8cd81ab..0000000
--- a/patches/glibc-2.13/0009-queue-header-updates.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-grab some updates from FreeBSD
-
-http://bugs.gentoo.org/201979
-
----
- misc/sys/queue.h | 37 +++++++++++++++++++++++++++++++++++++
- 1 file changed, 37 insertions(+)
-
-Index: glibc-2.13/misc/sys/queue.h
-===================================================================
---- glibc-2.13.orig/misc/sys/queue.h
-+++ glibc-2.13/misc/sys/queue.h
-@@ -136,6 +136,11 @@ struct { \
- (var); \
- (var) = ((var)->field.le_next))
-
-+#define LIST_FOREACH_SAFE(var, head, field, tvar) \
-+ for ((var) = LIST_FIRST((head)); \
-+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \
-+ (var) = (tvar))
-+
- /*
- * List access methods.
- */
-@@ -197,6 +202,16 @@ struct { \
- #define SLIST_FOREACH(var, head, field) \
- for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next)
-
-+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \
-+ for ((var) = SLIST_FIRST((head)); \
-+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \
-+ (var) = (tvar))
-+
-+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \
-+ for ((varp) = &SLIST_FIRST((head)); \
-+ ((var) = *(varp)) != NULL; \
-+ (varp) = &SLIST_NEXT((var), field))
-+
- /*
- * Singly-linked List access methods.
- */
-@@ -242,6 +257,12 @@ struct { \
- (head)->stqh_last = &(elm)->field.stqe_next; \
- } while (/*CONSTCOND*/0)
-
-+#define STAILQ_LAST(head, type, field) \
-+ (STAILQ_EMPTY((head)) ? \
-+ NULL : \
-+ ((struct type *)(void *) \
-+ ((char *)((head)->stqh_last) - __offsetof(struct type, field))))
-+
- #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \
- if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\
- (head)->stqh_last = &(elm)->field.stqe_next; \
-@@ -286,6 +307,11 @@ struct { \
- #define STAILQ_FIRST(head) ((head)->stqh_first)
- #define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next)
-
-+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \
-+ for ((var) = STAILQ_FIRST((head)); \
-+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \
-+ (var) = (tvar))
-+
-
- /*
- * Simple queue definitions.
-@@ -437,11 +463,22 @@ struct { \
- (var); \
- (var) = ((var)->field.tqe_next))
-
-+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \
-+ for ((var) = TAILQ_FIRST((head)); \
-+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \
-+ (var) = (tvar))
-+
- #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \
- for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \
- (var); \
- (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last)))
-
-+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \
-+ for ((var) = TAILQ_LAST((head), headname); \
-+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \
-+ (var) = (tvar))
-+
-+
- #define TAILQ_CONCAT(head1, head2, field) do { \
- if (!TAILQ_EMPTY(head2)) { \
- *(head1)->tqh_last = (head2)->tqh_first; \
diff --git a/patches/glibc-2.13/0010-manual-no-perl.patch b/patches/glibc-2.13/0010-manual-no-perl.patch
deleted file mode 100644
index cb56446..0000000
--- a/patches/glibc-2.13/0010-manual-no-perl.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-If we're using a cvs snapshot which updates the source files, and
-perl isn't installed yet, then we can't regen the docs. Not a big
-deal, so just whine a little and continue on our merry way.
-
-http://bugs.gentoo.org/60132
-
----
- manual/Makefile | 5 +++++
- 1 file changed, 5 insertions(+)
-
-Index: glibc-2.13/manual/Makefile
-===================================================================
---- glibc-2.13.orig/manual/Makefile
-+++ glibc-2.13/manual/Makefile
-@@ -104,9 +104,14 @@ dir-add.texi: xtract-typefun.awk $(texis
- libm-err.texi: stamp-libm-err
- stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\
- $(dir)/libm-test-ulps))
-+ifneq ($(PERL),no)
- pwd=`pwd`; \
- $(PERL) $< $$pwd/.. > libm-err-tmp
- $(move-if-change) libm-err-tmp libm-err.texi
-+else
-+ echo "Unable to rebuild math docs, no perl installed"
-+ touch libm-err.texi
-+endif
- touch $@
-
- # Generate Texinfo files from the C source for the example programs.
diff --git a/patches/glibc-2.13/0011-localedef-fix-trampoline.patch b/patches/glibc-2.13/0011-localedef-fix-trampoline.patch
deleted file mode 100644
index d317be6..0000000
--- a/patches/glibc-2.13/0011-localedef-fix-trampoline.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-#! /bin/sh -e
-
-# DP: Description: Fix localedef segfault when run under exec-shield,
-# PaX or similar. (#231438, #198099)
-# DP: Dpatch Author: James Troup <james@nocrew.org>
-# DP: Patch Author: (probably) Jakub Jelinek <jakub@redhat.com>
-# DP: Upstream status: Unknown
-# DP: Status Details: Unknown
-# DP: Date: 2004-03-16
-
-if [ $# -ne 2 ]; then
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-fi
-case "$1" in
- -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
- -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
- *)
- echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
- exit 1
-esac
-exit 0
-
----
- locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++
- 1 file changed, 36 insertions(+)
-
-Index: glibc-2.13/locale/programs/3level.h
-===================================================================
---- glibc-2.13.orig/locale/programs/3level.h
-+++ glibc-2.13/locale/programs/3level.h
-@@ -203,6 +203,42 @@ CONCAT(TABLE,_iterate) (struct TABLE *t,
- }
- }
- }
-+
-+/* GCC ATM seems to do a poor job with pointers to nested functions passed
-+ to inlined functions. Help it a little bit with this hack. */
-+#define wchead_table_iterate(tp, fn) \
-+do \
-+ { \
-+ struct wchead_table *t = (tp); \
-+ uint32_t index1; \
-+ for (index1 = 0; index1 < t->level1_size; index1++) \
-+ { \
-+ uint32_t lookup1 = t->level1[index1]; \
-+ if (lookup1 != ((uint32_t) ~0)) \
-+ { \
-+ uint32_t lookup1_shifted = lookup1 << t->q; \
-+ uint32_t index2; \
-+ for (index2 = 0; index2 < (1 << t->q); index2++) \
-+ { \
-+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \
-+ if (lookup2 != ((uint32_t) ~0)) \
-+ { \
-+ uint32_t lookup2_shifted = lookup2 << t->p; \
-+ uint32_t index3; \
-+ for (index3 = 0; index3 < (1 << t->p); index3++) \
-+ { \
-+ struct element_t *lookup3 \
-+ = t->level3[index3 + lookup2_shifted]; \
-+ if (lookup3 != NULL) \
-+ fn ((((index1 << t->q) + index2) << t->p) + index3, \
-+ lookup3); \
-+ } \
-+ } \
-+ } \
-+ } \
-+ } \
-+ } while (0)
-+
- #endif
-
- #ifndef NO_FINALIZE
diff --git a/patches/glibc-2.13/0012-posix-awk.patch b/patches/glibc-2.13/0012-posix-awk.patch
deleted file mode 100644
index a20fad5..0000000
--- a/patches/glibc-2.13/0012-posix-awk.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-http://bugs.gentoo.org/202511
-
-2007-12-24 Mike Frysinger <vapier@gentoo.org>
-
- * elf/Makefile ($(objpfx)ld.so): Use POSIX (EF)? in awk.
-
----
- elf/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: glibc-2.13/elf/Makefile
-===================================================================
---- glibc-2.13.orig/elf/Makefile
-+++ glibc-2.13/elf/Makefile
-@@ -389,7 +389,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld
- -Wl,-soname=$(rtld-installed-name) -T $@.lds
- rm -f $@.lds
- readelf -s $@ \
-- | $(AWK) '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }'
-+ | $(AWK) '($$7 ~ /^UND(EF)?$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }'
-
- # interp.c exists just to get this string into the libraries.
- CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \
diff --git a/patches/glibc-2.13/0013-resolv-dynamic.patch b/patches/glibc-2.13/0013-resolv-dynamic.patch
deleted file mode 100644
index 73eabc5..0000000
--- a/patches/glibc-2.13/0013-resolv-dynamic.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-ripped from SuSE
-
-if /etc/resolv.conf is updated, then make sure applications
-already running get the updated information.
-
-http://bugs.gentoo.org/177416
-
----
- resolv/res_libc.c | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-Index: glibc-2.13/resolv/res_libc.c
-===================================================================
---- glibc-2.13.orig/resolv/res_libc.c
-+++ glibc-2.13/resolv/res_libc.c
-@@ -22,6 +22,7 @@
- #include <arpa/nameser.h>
- #include <resolv.h>
- #include <bits/libc-lock.h>
-+#include <sys/stat.h>
-
-
- /* The following bit is copied from res_data.c (where it is #ifdef'ed
-@@ -95,6 +96,20 @@ int
- __res_maybe_init (res_state resp, int preinit)
- {
- if (resp->options & RES_INIT) {
-+ static time_t last_mtime, last_check;
-+ time_t now;
-+ struct stat statbuf;
-+
-+ time (&now);
-+ if (now != last_check) {
-+ last_check = now;
-+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) {
-+ last_mtime = statbuf.st_mtime;
-+ atomicinclock (lock);
-+ atomicinc (__res_initstamp);
-+ atomicincunlock (lock);
-+ }
-+ }
- if (__res_initstamp != resp->_u._ext.initstamp) {
- if (resp->nscount > 0)
- __res_iclose (resp, true);
diff --git a/patches/glibc-2.13/0014-section-comments.patch b/patches/glibc-2.13/0014-section-comments.patch
deleted file mode 100644
index cb7012f..0000000
--- a/patches/glibc-2.13/0014-section-comments.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-http://sources.redhat.com/ml/binutils/2004-04/msg00665.html
-
-fixes building on some architectures (like m68k/arm/cris/etc...) because
-it does the right thing
-
----
- include/libc-symbols.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-Index: glibc-2.13/include/libc-symbols.h
-===================================================================
---- glibc-2.13.orig/include/libc-symbols.h
-+++ glibc-2.13/include/libc-symbols.h
-@@ -239,12 +239,12 @@
- # define __make_section_unallocated(section_string)
- # endif
-
--/* Tacking on "\n\t#" to the section name makes gcc put it's bogus
-+/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus
- section attributes on what looks like a comment to the assembler. */
- # ifdef HAVE_SECTION_QUOTES
--# define __sec_comment "\"\n\t#\""
-+# define __sec_comment "\"\n#APP\n\t#\""
- # else
--# define __sec_comment "\n\t#"
-+# define __sec_comment "\n#APP\n\t#"
- # endif
- # define link_warning(symbol, msg) \
- __make_section_unallocated (".gnu.warning." #symbol) \
diff --git a/patches/glibc-2.13/0015-no-inline-gmon.patch b/patches/glibc-2.13/0015-no-inline-gmon.patch
deleted file mode 100644
index 444073b..0000000
--- a/patches/glibc-2.13/0015-no-inline-gmon.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-http://bugs.gentoo.org/196245
-http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html
-
-Attached is a patch to add __attribute__ ((noinline)) to
-call_gmon_start.
-
-Without this patch, the sec script that processed initfini.s removes a
-part of inlined call_gmon_start, causing undefined label errors.
-
-This patch solves the problem by forcing gcc not to inline
-call_gmon_start with __attribute__ ((noinline)).
-
-Tested by building for arm-none-lixux-gnueabi. OK to apply?
-
-Kazu Hirata
-
-2006-05-07 Kazu Hirata &lt;kazu@codesourcery.com&gt;
-
- * sysdeps/generic/initfini.c (call_gmon_start): Add
- __attribute__ ((noinline)).
-
----
- sysdeps/generic/initfini.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: glibc-2.13/sysdeps/generic/initfini.c
-===================================================================
---- glibc-2.13.orig/sysdeps/generic/initfini.c
-+++ glibc-2.13/sysdeps/generic/initfini.c
-@@ -70,7 +70,7 @@ asm ("\n/*@TESTS_END*/");
- /* The beginning of _init: */
- asm ("\n/*@_init_PROLOG_BEGINS*/");
-
--static void
-+static void __attribute__ ((noinline))
- call_gmon_start(void)
- {
- extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/
diff --git a/patches/glibc-2.13/0016-china.patch b/patches/glibc-2.13/0016-china.patch
deleted file mode 100644
index de4fd2a..0000000
--- a/patches/glibc-2.13/0016-china.patch
+++ /dev/null
@@ -1,35 +0,0 @@
----
- localedata/locales/zh_TW | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-Index: glibc-2.13/localedata/locales/zh_TW
-===================================================================
---- glibc-2.13.orig/localedata/locales/zh_TW
-+++ glibc-2.13/localedata/locales/zh_TW
-@@ -1,7 +1,7 @@
- comment_char %
- escape_char /
- %
--% Chinese language locale for Taiwan R.O.C.
-+% Chinese language locale for Taiwan
- % charmap: BIG5-CP950
- %
- % Original Author:
-@@ -17,7 +17,7 @@ escape_char /
- % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf
-
- LC_IDENTIFICATION
--title "Chinese locale for Taiwan R.O.C."
-+title "Chinese locale for Taiwan"
- source ""
- address ""
- contact ""
-@@ -25,7 +25,7 @@ email "bug-glibc-locales@gnu.org"
- tel ""
- fax ""
- language "Chinese"
--territory "Taiwan R.O.C."
-+territory "Taiwan"
- revision "0.2"
- date "2000-08-02"
- %
diff --git a/patches/glibc-2.13/0017-new-valencian-locale.patch b/patches/glibc-2.13/0017-new-valencian-locale.patch
deleted file mode 100644
index 1782dfe..0000000
--- a/patches/glibc-2.13/0017-new-valencian-locale.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-http://bugs.gentoo.org/show_bug.cgi?id=131815
-http://sourceware.org/bugzilla/show_bug.cgi?id=2522
-
----
- localedata/SUPPORTED | 2
- localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++
- 2 files changed, 98 insertions(+)
-
-Index: glibc-2.13/localedata/SUPPORTED
-===================================================================
---- glibc-2.13.orig/localedata/SUPPORTED
-+++ glibc-2.13/localedata/SUPPORTED
-@@ -72,6 +72,8 @@ ca_AD/ISO-8859-15 \
- ca_ES.UTF-8/UTF-8 \
- ca_ES/ISO-8859-1 \
- ca_ES@euro/ISO-8859-15 \
-+ca_ES.UTF-8@valencia/UTF-8 \
-+ca_ES@valencia/ISO-8859-15 \
- ca_FR.UTF-8/UTF-8 \
- ca_FR/ISO-8859-15 \
- ca_IT.UTF-8/UTF-8 \
-Index: glibc-2.13/localedata/locales/ca_ES@valencia
-===================================================================
---- /dev/null
-+++ glibc-2.13/localedata/locales/ca_ES@valencia
-@@ -0,0 +1,96 @@
-+comment_char %
-+escape_char /
-+%
-+% Valencian (southern Catalan) locale for Spain with Euro
-+%
-+% Note that this locale is almost the same as ca_ES@euro. The point of having
-+% a separate locale is only for PO translations, which have a lot of social
-+% support and are very appreciated by the Valencian-speaking community.
-+%
-+% Contact: Jordi Mallach
-+% Email: jordi@gnu.org
-+% Tel:
-+% Fax:
-+% Language: ca
-+% Territory: ES
-+% Option: euro
-+% Revision: 1.0
-+% Date: 2006-04-06
-+% Application: general
-+% Users: general
-+% Repertoiremap: mnemonic,ds
-+% Charset: ISO-8859-15
-+% Distribution and use is free, also
-+% for commercial purposes.
-+
-+LC_IDENTIFICATION
-+title "Valencian (southern Catalan) locale for Spain with Euro"
-+source ""
-+address ""
-+contact "Jordi Mallach"
-+email "jordi@gnu.org"
-+tel ""
-+fax ""
-+language "Catalan"
-+territory "Spain"
-+revision "1.0"
-+date "2006-04-06"
-+%
-+category "ca_ES@valencia:2006";LC_IDENTIFICATION
-+category "ca_ES@valencia:2006";LC_CTYPE
-+category "ca_ES@valencia:2006";LC_COLLATE
-+category "ca_ES@valencia:2006";LC_MONETARY
-+category "ca_ES@valencia:2006";LC_NUMERIC
-+category "ca_ES@valencia:2006";LC_TIME
-+category "ca_ES@valencia:2006";LC_MESSAGES
-+category "ca_ES@valencia:2006";LC_PAPER
-+category "ca_ES@valencia:2006";LC_NAME
-+category "ca_ES@valencia:2006";LC_ADDRESS
-+category "ca_ES@valencia:2006";LC_TELEPHONE
-+category "ca_ES@valencia:2006";LC_MEASUREMENT
-+
-+END LC_IDENTIFICATION
-+
-+LC_CTYPE
-+copy "i18n"
-+END LC_CTYPE
-+
-+LC_COLLATE
-+copy "ca_ES"
-+END LC_COLLATE
-+
-+LC_MONETARY
-+copy "ca_ES"
-+END LC_MONETARY
-+
-+LC_NUMERIC
-+copy "ca_ES"
-+END LC_NUMERIC
-+
-+LC_TIME
-+copy "ca_ES"
-+END LC_TIME
-+
-+LC_MESSAGES
-+copy "ca_ES"
-+END LC_MESSAGES
-+
-+LC_PAPER
-+copy "ca_ES"
-+END LC_PAPER
-+
-+LC_NAME
-+copy "ca_ES"
-+END LC_NAME
-+
-+LC_ADDRESS
-+copy "ca_ES"
-+END LC_ADDRESS
-+
-+LC_TELEPHONE
-+copy "ca_ES"
-+END LC_TELEPHONE
-+
-+LC_MEASUREMENT
-+copy "ca_ES"
-+END LC_MEASUREMENT
diff --git a/patches/glibc-2.13/0018-strict-aliasing.patch b/patches/glibc-2.13/0018-strict-aliasing.patch
deleted file mode 100644
index 7a3150c..0000000
--- a/patches/glibc-2.13/0018-strict-aliasing.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-workaround strict aliasing warnings on individual files rather than
-forcing the whole build with -fno-strict-aliasing
-
-http://bugs.gentoo.org/155906
-
-note that we leave the logout.c and logwtmp.c warnings alone as the
-code path that invokes the warning should not be executed when the
-warning is applicable.
-
----
- libio/Makefile | 4 ++--
- nis/Makefile | 3 +++
- nptl/Makefile | 1 +
- nss/Makefile | 2 ++
- sunrpc/Makefile | 2 +-
- 5 files changed, 9 insertions(+), 3 deletions(-)
-
-Index: glibc-2.13/libio/Makefile
-===================================================================
---- glibc-2.13.orig/libio/Makefile
-+++ glibc-2.13/libio/Makefile
-@@ -91,7 +91,7 @@ CFLAGS-fseeko.c = $(exceptions)
- CFLAGS-ftello64.c = $(exceptions)
- CFLAGS-ftello.c = $(exceptions)
- CFLAGS-fwide.c = $(exceptions)
--CFLAGS-genops.c = $(exceptions)
-+CFLAGS-genops.c = $(exceptions) -fno-strict-aliasing
- CFLAGS-getc.c = $(exceptions)
- CFLAGS-getchar.c = $(exceptions)
- CFLAGS-getwc.c = $(exceptions)
-@@ -133,7 +133,7 @@ CFLAGS-putwc.c = $(exceptions)
- CFLAGS-putwchar.c = $(exceptions)
- CFLAGS-rewind.c = $(exceptions)
- CFLAGS-wfileops.c = $(exceptions)
--CFLAGS-wgenops.c = $(exceptions)
-+CFLAGS-wgenops.c = $(exceptions) -fno-strict-aliasing
- CFLAGS-oldiofopen.c = $(exceptions)
- CFLAGS-iofopen.c = $(exceptions)
- CFLAGS-iofopen64.c = $(exceptions)
-Index: glibc-2.13/nis/Makefile
-===================================================================
---- glibc-2.13.orig/nis/Makefile
-+++ glibc-2.13/nis/Makefile
-@@ -67,6 +67,9 @@ libnss_nisplus-routines := $(addprefix n
- nss-nisplus nisplus-initgroups
- libnss_nisplus-inhibit-o = $(filter-out .os,$(object-suffixes))
-
-+CFLAGS-nis_xdr.c += -fno-strict-aliasing
-+CFLAGS-yp_xdr.c += -fno-strict-aliasing
-+
- include ../Rules
-
-
-Index: glibc-2.13/nptl/Makefile
-===================================================================
---- glibc-2.13.orig/nptl/Makefile
-+++ glibc-2.13/nptl/Makefile
-@@ -195,6 +195,7 @@ CFLAGS-tcdrain.c = -fexceptions -fasynch
-
- CFLAGS-pt-system.c = -fexceptions
-
-+CFLAGS-unwind-dw2.c += -fno-strict-aliasing
-
- tests = tst-typesizes \
- tst-attr1 tst-attr2 tst-attr3 \
-Index: glibc-2.13/nss/Makefile
-===================================================================
---- glibc-2.13.orig/nss/Makefile
-+++ glibc-2.13/nss/Makefile
-@@ -73,6 +73,8 @@ ifneq ($(build-static-nss),yes)
- libnss_files-inhibit-o = $(filter-out .os,$(object-suffixes))
- endif
-
-+CFLAGS-nsswitch.c += -fno-strict-aliasing
-+
- include ../Rules
-
-
-Index: glibc-2.13/sunrpc/Makefile
-===================================================================
---- glibc-2.13.orig/sunrpc/Makefile
-+++ glibc-2.13/sunrpc/Makefile
-@@ -127,7 +127,7 @@ CFLAGS-pmap_rmt.c = -fexceptions
- CFLAGS-clnt_perr.c = -fexceptions
- CFLAGS-openchild.c = -fexceptions
-
--CPPFLAGS += -D_RPC_THREAD_SAFE_
-+CPPFLAGS += -D_RPC_THREAD_SAFE_ -fno-strict-aliasing
-
- include ../Rules
-
diff --git a/patches/glibc-2.13/0019-undefine-__i686.patch b/patches/glibc-2.13/0019-undefine-__i686.patch
deleted file mode 100644
index 2928fe6..0000000
--- a/patches/glibc-2.13/0019-undefine-__i686.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-If gcc is configured to generate i686 code or better by default (like
-when using the --with-arch=pentium3 configure option), then the __i686
-macro will always be defined automatically and thus screw up the
-compilation of some .S files.
-http://bugs.gentoo.org/131108
-http://sourceware.org/ml/libc-alpha/2006-04/msg00090.html
-
-2006-04-25 Mike Frysinger <vapier@gentoo.org>
-
- * sysdeps/i386/sysdep.h (__i686): Undefine.
-
----
- nptl/sysdeps/pthread/pt-initfini.c | 3 +++
- sysdeps/i386/sysdep.h | 8 ++++++++
- 2 files changed, 11 insertions(+)
-
-Index: glibc-2.13/nptl/sysdeps/pthread/pt-initfini.c
-===================================================================
---- glibc-2.13.orig/nptl/sysdeps/pthread/pt-initfini.c
-+++ glibc-2.13/nptl/sysdeps/pthread/pt-initfini.c
-@@ -45,6 +45,9 @@
- /* Embed an #include to pull in the alignment and .end directives. */
- asm ("\n#include \"defs.h\"");
-
-+/* Embed an #include to pull in asm settings. */
-+asm ("\n#ifdef __i686__\n#include <sysdep.h>\n#endif");
-+
- /* The initial common code ends here. */
- asm ("\n/*@HEADER_ENDS*/");
-
-Index: glibc-2.13/sysdeps/i386/sysdep.h
-===================================================================
---- glibc-2.13.orig/sysdeps/i386/sysdep.h
-+++ glibc-2.13/sysdeps/i386/sysdep.h
-@@ -18,6 +18,14 @@
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-+/*
-+ * When building for i686 targets or better, gcc automatically defines
-+ * '__i686' to '1' for us which causes trouble when using section names
-+ * like '__i686.get_pc_thunk.reg'. Since we check for __i686__ in the
-+ * code, killing '__i686' shouldn't be a problem.
-+ */
-+#undef __i686
-+
- #include <sysdeps/generic/sysdep.h>
-
- #ifdef __ASSEMBLER__
diff --git a/patches/glibc-2.13/0020-dl_execstack-PaX-support.patch b/patches/glibc-2.13/0020-dl_execstack-PaX-support.patch
deleted file mode 100644
index 1bd7432..0000000
--- a/patches/glibc-2.13/0020-dl_execstack-PaX-support.patch
+++ /dev/null
@@ -1,73 +0,0 @@
- With latest versions of glibc, a lot of apps failed on a PaX enabled
- system with:
- cannot enable executable stack as shared object requires: Permission denied
-
- This is due to PaX 'exec-protecting' the stack, and ld.so then trying
- to make the stack executable due to some libraries not containing the
- PT_GNU_STACK section. Bug #32960. <azarah@gentoo.org> (12 Nov 2003).
-
- Patch also NPTL. Bug #116086. <kevquinn@gentoo.org> (20 Dec 2005).
-
----
- nptl/allocatestack.c | 3 ++-
- sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++---
- 2 files changed, 18 insertions(+), 4 deletions(-)
-
-Index: glibc-2.13/nptl/allocatestack.c
-===================================================================
---- glibc-2.13.orig/nptl/allocatestack.c
-+++ glibc-2.13/nptl/allocatestack.c
-@@ -329,7 +329,8 @@ change_stack_perm (struct pthread *pd
- # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP"
- #endif
- if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0)
-- return errno;
-+ if (errno != EACCES) /* PAX is enabled */
-+ return errno;
-
- return 0;
- }
-Index: glibc-2.13/sysdeps/unix/sysv/linux/dl-execstack.c
-===================================================================
---- glibc-2.13.orig/sysdeps/unix/sysv/linux/dl-execstack.c
-+++ glibc-2.13/sysdeps/unix/sysv/linux/dl-execstack.c
-@@ -63,7 +63,10 @@ _dl_make_stack_executable (void **stack_
- else
- # endif
- {
-- result = errno;
-+ if (errno == EACCES) /* PAX is enabled */
-+ result = 0;
-+ else
-+ result = errno;
- goto out;
- }
- }
-@@ -89,7 +92,12 @@ _dl_make_stack_executable (void **stack_
- page -= size;
- else
- {
-- if (errno != ENOMEM) /* Unexpected failure mode. */
-+ if (errno == EACCES) /* PAX is enabled */
-+ {
-+ result = 0;
-+ goto out;
-+ }
-+ else if (errno != ENOMEM) /* Unexpected failure mode. */
- {
- result = errno;
- goto out;
-@@ -115,7 +123,12 @@ _dl_make_stack_executable (void **stack_
- page += size;
- else
- {
-- if (errno != ENOMEM) /* Unexpected failure mode. */
-+ if (errno == EACCES) /* PAX is enabled */
-+ {
-+ result = 0;
-+ goto out;
-+ }
-+ else if (errno != ENOMEM) /* Unexpected failure mode. */
- {
- result = errno;
- goto out;
diff --git a/patches/glibc-2.13/0021-pre20040117-pt_pax.patch b/patches/glibc-2.13/0021-pre20040117-pt_pax.patch
deleted file mode 100644
index 674571e..0000000
--- a/patches/glibc-2.13/0021-pre20040117-pt_pax.patch
+++ /dev/null
@@ -1,35 +0,0 @@
----
- elf/elf.h | 13 +++++++++++++
- 1 file changed, 13 insertions(+)
-
-Index: glibc-2.13/elf/elf.h
-===================================================================
---- glibc-2.13.orig/elf/elf.h
-+++ glibc-2.13/elf/elf.h
-@@ -580,6 +580,7 @@ typedef struct
- #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */
- #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */
- #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */
-+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */
- #define PT_LOSUNW 0x6ffffffa
- #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */
- #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */
-@@ -593,6 +594,18 @@ typedef struct
- #define PF_X (1 << 0) /* Segment is executable */
- #define PF_W (1 << 1) /* Segment is writable */
- #define PF_R (1 << 2) /* Segment is readable */
-+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */
-+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */
-+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */
-+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */
-+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */
-+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */
-+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */
-+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */
-+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */
-+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */
-+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */
-+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */
- #define PF_MASKOS 0x0ff00000 /* OS-specific */
- #define PF_MASKPROC 0xf0000000 /* Processor-specific */
-
diff --git a/patches/glibc-2.13/0022-fpscr_values.patch b/patches/glibc-2.13/0022-fpscr_values.patch
deleted file mode 100644
index c1b7cbc..0000000
--- a/patches/glibc-2.13/0022-fpscr_values.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-http://sources.redhat.com/ml/libc-alpha/2003-06/msg00027.html
-http://www.m17n.org/linux-sh/ml/linux-sh/2003-05/msg00010.html
-
-http://rpm.sh-linux.org/rpm-2004/target/SRPMS/glibc-2.3.3-27.12.src.rpm
-
-http://bugs.gentoo.org/100696
-
----
- sysdeps/unix/sysv/linux/sh/Versions | 1 +
- sysdeps/unix/sysv/linux/sh/sysdep.S | 10 ++++++++++
- 2 files changed, 11 insertions(+)
-
-Index: glibc-2.13/sysdeps/unix/sysv/linux/sh/Versions
-===================================================================
---- glibc-2.13.orig/sysdeps/unix/sysv/linux/sh/Versions
-+++ glibc-2.13/sysdeps/unix/sysv/linux/sh/Versions
-@@ -2,6 +2,7 @@ libc {
- GLIBC_2.2 {
- # functions used in other libraries
- __xstat64; __fxstat64; __lxstat64;
-+ __fpscr_values;
-
- # a*
- alphasort64;
-Index: glibc-2.13/sysdeps/unix/sysv/linux/sh/sysdep.S
-===================================================================
---- glibc-2.13.orig/sysdeps/unix/sysv/linux/sh/sysdep.S
-+++ glibc-2.13/sysdeps/unix/sysv/linux/sh/sysdep.S
-@@ -32,3 +32,13 @@ ENTRY (__syscall_error)
-
- #define __syscall_error __syscall_error_1
- #include <sysdeps/unix/sh/sysdep.S>
-+
-+ .data
-+ .align 3
-+ .globl ___fpscr_values
-+ .type ___fpscr_values, @object
-+ .size ___fpscr_values, 8
-+___fpscr_values:
-+ .long 0
-+ .long 0x80000
-+weak_alias (___fpscr_values, __fpscr_values)
diff --git a/patches/glibc-2.13/0023-Fix-prelinking.patch b/patches/glibc-2.13/0023-Fix-prelinking.patch
deleted file mode 100644
index b63d8f5..0000000
--- a/patches/glibc-2.13/0023-Fix-prelinking.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From: Andreas Schwab <schwab@redhat.com>
-Date: Tue, 28 Sep 2010 15:11:48 +0200
-Subject: [PATCH] Don't try to write to _rtld_global_ro after performing relro protection
-
-mol: Without this prelinking results in segfaults.
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
----
- ChangeLog | 5 +++++
- elf/rtld.c | 8 ++++----
- 2 files changed, 9 insertions(+), 4 deletions(-)
-
-diff --git a/ChangeLog b/ChangeLog
-index f551860..ea387db 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,8 @@
-+2010-09-28 Andreas Schwab <schwab@redhat.com>
-+
-+ * elf/rtld.c (dl_main): Move setting of GLRO(dl_init_all_dirs)
-+ before performing relro protection.
-+
- 2011-01-17 Ulrich Drepper <drepper@gmail.com>
-
- * version.h (RELEASE): Bump for 2.13 release.
-diff --git a/elf/rtld.c b/elf/rtld.c
-index 8510380..e442528 100644
---- a/elf/rtld.c
-+++ b/elf/rtld.c
-@@ -2179,6 +2179,10 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
- we need it in the memory handling later. */
- GLRO(dl_initial_searchlist) = *GL(dl_ns)[LM_ID_BASE]._ns_main_searchlist;
-
-+ /* Remember the last search directory added at startup, now that
-+ malloc will no longer be the one from dl-minimal.c. */
-+ GLRO(dl_init_all_dirs) = GL(dl_all_dirs);
-+
- if (prelinked)
- {
- if (main_map->l_info [ADDRIDX (DT_GNU_CONFLICT)] != NULL)
-@@ -2298,10 +2302,6 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
- lossage);
- }
-
-- /* Remember the last search directory added at startup, now that
-- malloc will no longer be the one from dl-minimal.c. */
-- GLRO(dl_init_all_dirs) = GL(dl_all_dirs);
--
- if (! prelinked && rtld_multiple_ref)
- {
- /* There was an explicit ref to the dynamic linker as a shared lib.
---
-1.7.2.3
-
diff --git a/patches/glibc-2.13/0024-optimized-string-functions-for-NEON-from-Linaro.patch b/patches/glibc-2.13/0024-optimized-string-functions-for-NEON-from-Linaro.patch
deleted file mode 100644
index 3e56ec8..0000000
--- a/patches/glibc-2.13/0024-optimized-string-functions-for-NEON-from-Linaro.patch
+++ /dev/null
@@ -1,1295 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Thu, 15 Sep 2011 16:50:56 +0200
-Subject: [PATCH] optimized string functions for NEON from Linaro
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
----
- .../sysdeps/arm/eabi/arm/cortex-a8/memchr.S | 150 +++++++
- .../sysdeps/arm/eabi/arm/cortex-a8/memcpy.S | 152 +++++++
- .../sysdeps/arm/eabi/arm/cortex-a8/memset.S | 118 +++++
- .../sysdeps/arm/eabi/arm/cortex-a8/strchr.S | 76 ++++
- .../sysdeps/arm/eabi/arm/cortex-a8/strcmp.c | 449 ++++++++++++++++++++
- .../sysdeps/arm/eabi/arm/cortex-a8/strcpy.c | 172 ++++++++
- .../sysdeps/arm/eabi/arm/cortex-a8/strlen.S | 111 +++++
- 7 files changed, 1228 insertions(+), 0 deletions(-)
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcmp.c
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
- create mode 100644 cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
-new file mode 100644
-index 0000000..8f5aaa9
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
-@@ -0,0 +1,150 @@
-+/* Copyright (c) 2010-2011, Linaro Limited
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+
-+ * Neither the name of Linaro Limited nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ Written by Dave Gilbert <david.gilbert@linaro.org>
-+
-+ This memchr routine is optimised on a Cortex-A9 and should work on
-+ all ARMv7 processors. It has a fast past for short sizes, and has
-+ an optimised path for large data sets; the worst case is finding the
-+ match early in a large data set. */
-+
-+@ 2011-02-07 david.gilbert@linaro.org
-+@ Extracted from local git a5b438d861
-+@ 2011-07-14 david.gilbert@linaro.org
-+@ Import endianness fix from local git ea786f1b
-+
-+ .syntax unified
-+ .arch armv7-a
-+
-+@ this lets us check a flag in a 00/ff byte easily in either endianness
-+#ifdef __ARMEB__
-+#define CHARTSTMASK(c) 1<<(31-(c*8))
-+#else
-+#define CHARTSTMASK(c) 1<<(c*8)
-+#endif
-+ .text
-+ .thumb
-+
-+@ ---------------------------------------------------------------------------
-+ .thumb_func
-+ .align 2
-+ .p2align 4,,15
-+ .global memchr
-+ .type memchr,%function
-+memchr:
-+ @ r0 = start of memory to scan
-+ @ r1 = character to look for
-+ @ r2 = length
-+ @ returns r0 = pointer to character or NULL if not found
-+ and r1,r1,#0xff @ Don't think we can trust the caller to actually pass a char
-+
-+ cmp r2,#16 @ If it's short don't bother with anything clever
-+ blt 20f
-+
-+ tst r0, #7 @ If it's already aligned skip the next bit
-+ beq 10f
-+
-+ @ Work up to an aligned point
-+5:
-+ ldrb r3, [r0],#1
-+ subs r2, r2, #1
-+ cmp r3, r1
-+ beq 50f @ If it matches exit found
-+ tst r0, #7
-+ cbz r2, 40f @ If we run off the end, exit not found
-+ bne 5b @ If not aligned yet then do next byte
-+
-+10:
-+ @ At this point, we are aligned, we know we have at least 8 bytes to work with
-+ push {r4,r5,r6,r7}
-+ orr r1, r1, r1, lsl #8 @ expand the match word across to all bytes
-+ orr r1, r1, r1, lsl #16
-+ bic r4, r2, #7 @ Number of double words to work with
-+ mvns r7, #0 @ all F's
-+ movs r3, #0
-+
-+15:
-+ ldmia r0!,{r5,r6}
-+ subs r4, r4, #8
-+ eor r5,r5, r1 @ Get it so that r5,r6 have 00's where the bytes match the target
-+ eor r6,r6, r1
-+ uadd8 r5, r5, r7 @ Parallel add 0xff - sets the GE bits for anything that wasn't 0
-+ sel r5, r3, r7 @ bytes are 00 for none-00 bytes, or ff for 00 bytes - NOTE INVERSION
-+ uadd8 r6, r6, r7 @ Parallel add 0xff - sets the GE bits for anything that wasn't 0
-+ sel r6, r5, r7 @ chained....bytes are 00 for none-00 bytes, or ff for 00 bytes - NOTE INVERSION
-+ cbnz r6, 60f
-+ bne 15b @ (Flags from the subs above) If not run out of bytes then go around again
-+
-+ pop {r4,r5,r6,r7}
-+ and r1,r1,#0xff @ Get r1 back to a single character from the expansion above
-+ and r2,r2,#7 @ Leave the count remaining as the number after the double words have been done
-+
-+20:
-+ cbz r2, 40f @ 0 length or hit the end already then not found
-+
-+21: @ Post aligned section, or just a short call
-+ ldrb r3,[r0],#1
-+ subs r2,r2,#1
-+ eor r3,r3,r1 @ r3 = 0 if match - doesn't break flags from sub
-+ cbz r3, 50f
-+ bne 21b @ on r2 flags
-+
-+40:
-+ movs r0,#0 @ not found
-+ bx lr
-+
-+50:
-+ subs r0,r0,#1 @ found
-+ bx lr
-+
-+60: @ We're here because the fast path found a hit - now we have to track down exactly which word it was
-+ @ r0 points to the start of the double word after the one that was tested
-+ @ r5 has the 00/ff pattern for the first word, r6 has the chained value
-+ cmp r5, #0
-+ itte eq
-+ moveq r5, r6 @ the end is in the 2nd word
-+ subeq r0,r0,#3 @ Points to 2nd byte of 2nd word
-+ subne r0,r0,#7 @ or 2nd byte of 1st word
-+
-+ @ r0 currently points to the 3rd byte of the word containing the hit
-+ tst r5, # CHARTSTMASK(0) @ 1st character
-+ bne 61f
-+ adds r0,r0,#1
-+ tst r5, # CHARTSTMASK(1) @ 2nd character
-+ ittt eq
-+ addeq r0,r0,#1
-+ tsteq r5, # (3<<15) @ 2nd & 3rd character
-+ @ If not the 3rd must be the last one
-+ addeq r0,r0,#1
-+
-+61:
-+ pop {r4,r5,r6,r7}
-+ subs r0,r0,#1
-+ bx lr
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
-new file mode 100644
-index 0000000..3be24ca
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
-@@ -0,0 +1,152 @@
-+/* Copyright (c) 2010-2011, Linaro Limited
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+
-+ * Neither the name of Linaro Limited nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ Written by Dave Gilbert <david.gilbert@linaro.org>
-+
-+ This memcpy routine is optimised on a Cortex-A9 and should work on
-+ all ARMv7 processors with NEON. */
-+
-+@ 2011-09-01 david.gilbert@linaro.org
-+@ Extracted from local git 2f11b436
-+
-+ .syntax unified
-+ .arch armv7-a
-+
-+@ this lets us check a flag in a 00/ff byte easily in either endianness
-+#ifdef __ARMEB__
-+#define CHARTSTMASK(c) 1<<(31-(c*8))
-+#else
-+#define CHARTSTMASK(c) 1<<(c*8)
-+#endif
-+ .text
-+ .thumb
-+
-+@ ---------------------------------------------------------------------------
-+ .thumb_func
-+ .align 2
-+ .p2align 4,,15
-+ .global memcpy
-+ .type memcpy,%function
-+memcpy:
-+ @ r0 = dest
-+ @ r1 = source
-+ @ r2 = count
-+ @ returns dest in r0
-+ @ Overlaps of source/dest not allowed according to spec
-+ @ Note this routine relies on v7 misaligned loads/stores
-+ pld [r1]
-+ mov r12, r0 @ stash original r0
-+ cmp r2,#32
-+ blt 10f @ take the small copy case separately
-+
-+ @ test for either source or destination being misaligned
-+ @ (We only rely on word align)
-+ tst r0,#3
-+ it eq
-+ tsteq r1,#3
-+ bne 30f @ misaligned case
-+
-+4:
-+ @ at this point we are word (or better) aligned and have at least
-+ @ 32 bytes to play with
-+
-+ @ If it's a huge copy, try Neon
-+ cmp r2, #128*1024
-+ bge 35f @ Sharing general non-aligned case here, aligned could be faster
-+
-+ push {r3,r4,r5,r6,r7,r8,r10,r11}
-+5:
-+ ldmia r1!,{r3,r4,r5,r6,r7,r8,r10,r11}
-+ sub r2,r2,#32
-+ pld [r1,#96]
-+ cmp r2,#32
-+ stmia r0!,{r3,r4,r5,r6,r7,r8,r10,r11}
-+ bge 5b
-+
-+ pop {r3,r4,r5,r6,r7,r8,r10,r11}
-+ @ We are now down to less than 32 bytes
-+ cbz r2,15f @ quick exit for the case where we copied a multiple of 32
-+
-+10: @ small copies (not necessarily aligned - note might be slightly more than 32bytes)
-+ cmp r2,#4
-+ blt 12f
-+11:
-+ sub r2,r2,#4
-+ cmp r2,#4
-+ ldr r3, [r1],#4
-+ str r3, [r0],#4
-+ bge 11b
-+12:
-+ tst r2,#2
-+ itt ne
-+ ldrhne r3, [r1],#2
-+ strhne r3, [r0],#2
-+
-+ tst r2,#1
-+ itt ne
-+ ldrbne r3, [r1],#1
-+ strbne r3, [r0],#1
-+
-+15: @ exit
-+ mov r0,r12 @ restore r0
-+ bx lr
-+
-+ .align 2
-+ .p2align 4,,15
-+30: @ non-aligned - at least 32 bytes to play with
-+ @ Test for co-misalignment
-+ eor r3, r0, r1
-+ tst r3,#3
-+ beq 50f
-+
-+ @ Use Neon for misaligned
-+35:
-+ vld1.8 {d0,d1,d2,d3}, [r1]!
-+ sub r2,r2,#32
-+ cmp r2,#32
-+ pld [r1,#96]
-+ vst1.8 {d0,d1,d2,d3}, [r0]!
-+ bge 35b
-+ b 10b @ TODO: Probably a bad idea to switch to ARM at this point
-+
-+ .align 2
-+ .p2align 4,,15
-+50: @ Co-misaligned
-+ @ At this point we've got at least 32 bytes
-+51:
-+ ldrb r3,[r1],#1
-+ sub r2,r2,#1
-+ strb r3,[r0],#1
-+ tst r0,#7
-+ bne 51b
-+
-+ cmp r2,#32
-+ blt 10b
-+ b 4b
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
-new file mode 100644
-index 0000000..921cb75
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
-@@ -0,0 +1,118 @@
-+/* Copyright (c) 2010-2011, Linaro Limited
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+
-+ * Neither the name of Linaro Limited nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ Written by Dave Gilbert <david.gilbert@linaro.org>
-+
-+ This memset routine is optimised on a Cortex-A9 and should work on
-+ all ARMv7 processors. */
-+
-+ .syntax unified
-+ .arch armv7-a
-+
-+@ 2011-08-30 david.gilbert@linaro.org
-+@ Extracted from local git 2f11b436
-+
-+@ this lets us check a flag in a 00/ff byte easily in either endianness
-+#ifdef __ARMEB__
-+#define CHARTSTMASK(c) 1<<(31-(c*8))
-+#else
-+#define CHARTSTMASK(c) 1<<(c*8)
-+#endif
-+ .text
-+ .thumb
-+
-+@ ---------------------------------------------------------------------------
-+ .thumb_func
-+ .align 2
-+ .p2align 4,,15
-+ .global memset
-+ .type memset,%function
-+memset:
-+ @ r0 = address
-+ @ r1 = character
-+ @ r2 = count
-+ @ returns original address in r0
-+
-+ mov r3, r0 @ Leave r0 alone
-+ cbz r2, 10f @ Exit if 0 length
-+
-+ tst r0, #7
-+ beq 2f @ Already aligned
-+
-+ @ Ok, so we're misaligned here
-+1:
-+ strb r1, [r3], #1
-+ subs r2,r2,#1
-+ tst r3, #7
-+ cbz r2, 10f @ Exit if we hit the end
-+ bne 1b @ go round again if still misaligned
-+
-+2:
-+ @ OK, so we're aligned
-+ push {r4,r5,r6,r7}
-+ bics r4, r2, #15 @ if less than 16 bytes then need to finish it off
-+ beq 5f
-+
-+3:
-+ @ POSIX says that ch is cast to an unsigned char. A uxtb is one
-+ @ byte and takes two cycles, where an AND is four bytes but one
-+ @ cycle.
-+ and r1, #0xFF
-+ orr r1, r1, r1, lsl#8 @ Same character into all bytes
-+ orr r1, r1, r1, lsl#16
-+ mov r5,r1
-+ mov r6,r1
-+ mov r7,r1
-+
-+4:
-+ subs r4,r4,#16
-+ stmia r3!,{r1,r5,r6,r7}
-+ bne 4b
-+ and r2,r2,#15
-+
-+ @ At this point we're still aligned and we have upto align-1 bytes left to right
-+ @ we can avoid some of the byte-at-a time now by testing for some big chunks
-+ tst r2,#8
-+ itt ne
-+ subne r2,r2,#8
-+ stmiane r3!,{r1,r5}
-+
-+5:
-+ pop {r4,r5,r6,r7}
-+ cbz r2, 10f
-+
-+ @ Got to do any last < alignment bytes
-+6:
-+ subs r2,r2,#1
-+ strb r1,[r3],#1
-+ bne 6b
-+
-+10:
-+ bx lr @ goodbye
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
-new file mode 100644
-index 0000000..8875dbf
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
-@@ -0,0 +1,76 @@
-+/* Copyright (c) 2010-2011, Linaro Limited
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+
-+ * Neither the name of Linaro Limited nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ Written by Dave Gilbert <david.gilbert@linaro.org>
-+
-+ A very simple strchr routine, from benchmarks on A9 it's a bit faster than
-+ the current version in eglibc (2.12.1-0ubuntu14 package)
-+ I don't think doing a word at a time version is worth it since a lot
-+ of strchr cases are very short anyway */
-+
-+@ 2011-02-07 david.gilbert@linaro.org
-+@ Extracted from local git a5b438d861
-+
-+ .syntax unified
-+ .arch armv7-a
-+
-+ .text
-+ .thumb
-+
-+@ ---------------------------------------------------------------------------
-+
-+ .thumb_func
-+ .align 2
-+ .p2align 4,,15
-+ .global strchr
-+ .type strchr,%function
-+strchr:
-+ @ r0 = start of string
-+ @ r1 = character to match
-+ @ returns NULL for no match, or a pointer to the match
-+ and r1,r1, #255
-+
-+1:
-+ ldrb r2,[r0],#1
-+ cmp r2,r1
-+ cbz r2,10f
-+ bne 1b
-+
-+ @ We're here if it matched
-+5:
-+ subs r0,r0,#1
-+ bx lr
-+
-+10:
-+ @ We're here if we ran off the end
-+ cmp r1, #0 @ Corner case - you're allowed to search for the nil and get a pointer to it
-+ beq 5b @ A bit messy, if it's common we should branch at the start to a special loop
-+ mov r0,#0
-+ bx lr
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcmp.c b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcmp.c
-new file mode 100644
-index 0000000..fb2280d
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcmp.c
-@@ -0,0 +1,449 @@
-+/*
-+ * Copyright (c) 2008 ARM Ltd
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in the
-+ * documentation and/or other materials provided with the distribution.
-+ * 3. The name of the company may not be used to endorse or promote
-+ * products derived from this software without specific prior written
-+ * permission.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-+ * IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-+ * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ */
-+
-+#include <string.h>
-+#include <memcopy.h>
-+
-+#undef strcmp
-+
-+
-+#ifdef __ARMEB__
-+#define SHFT2LSB "lsl"
-+#define SHFT2MSB "lsr"
-+#define MSB "0x000000ff"
-+#define LSB "0xff000000"
-+#else
-+#define SHFT2LSB "lsr"
-+#define SHFT2MSB "lsl"
-+#define MSB "0xff000000"
-+#define LSB "0x000000ff"
-+#endif
-+
-+#ifdef __thumb2__
-+#define magic1(REG) "#0x01010101"
-+#define magic2(REG) "#0x80808080"
-+#else
-+#define magic1(REG) #REG
-+#define magic2(REG) #REG ", lsl #7"
-+#endif
-+
-+int
-+__attribute__((naked)) strcmp (const char* s1, const char* s2)
-+{
-+ asm(
-+#if !(defined(__OPTIMIZE_SIZE__) || defined (PREFER_SIZE_OVER_SPEED) || \
-+ (defined (__thumb__) && !defined (__thumb2__)))
-+ "pld [r0, #0]\n\t"
-+ "pld [r1, #0]\n\t"
-+ "eor r2, r0, r1\n\t"
-+ "tst r2, #3\n\t"
-+ /* Strings not at same byte offset from a word boundary. */
-+ "bne strcmp_unaligned\n\t"
-+ "ands r2, r0, #3\n\t"
-+ "bic r0, r0, #3\n\t"
-+ "bic r1, r1, #3\n\t"
-+ "ldr ip, [r0], #4\n\t"
-+ "it eq\n\t"
-+ "ldreq r3, [r1], #4\n\t"
-+ "beq 1f\n\t"
-+ /* Although s1 and s2 have identical initial alignment, they are
-+ not currently word aligned. Rather than comparing bytes,
-+ make sure that any bytes fetched from before the addressed
-+ bytes are forced to 0xff. Then they will always compare
-+ equal. */
-+ "eor r2, r2, #3\n\t"
-+ "lsl r2, r2, #3\n\t"
-+ "mvn r3, #"MSB"\n\t"
-+ SHFT2LSB" r2, r3, r2\n\t"
-+ "ldr r3, [r1], #4\n\t"
-+ "orr ip, ip, r2\n\t"
-+ "orr r3, r3, r2\n"
-+ "1:\n\t"
-+#ifndef __thumb2__
-+ /* Load the 'magic' constant 0x01010101. */
-+ "str r4, [sp, #-4]!\n\t"
-+ "mov r4, #1\n\t"
-+ "orr r4, r4, r4, lsl #8\n\t"
-+ "orr r4, r4, r4, lsl #16\n"
-+#endif
-+ ".p2align 2\n"
-+ "4:\n\t"
-+ "pld [r0, #8]\n\t"
-+ "pld [r1, #8]\n\t"
-+ "sub r2, ip, "magic1(r4)"\n\t"
-+ "cmp ip, r3\n\t"
-+ "itttt eq\n\t"
-+ /* check for any zero bytes in first word */
-+ "biceq r2, r2, ip\n\t"
-+ "tsteq r2, "magic2(r4)"\n\t"
-+ "ldreq ip, [r0], #4\n\t"
-+ "ldreq r3, [r1], #4\n\t"
-+ "beq 4b\n"
-+ "2:\n\t"
-+ /* There's a zero or a different byte in the word */
-+ SHFT2MSB" r0, ip, #24\n\t"
-+ SHFT2LSB" ip, ip, #8\n\t"
-+ "cmp r0, #1\n\t"
-+ "it cs\n\t"
-+ "cmpcs r0, r3, "SHFT2MSB" #24\n\t"
-+ "it eq\n\t"
-+ SHFT2LSB"eq r3, r3, #8\n\t"
-+ "beq 2b\n\t"
-+ /* On a big-endian machine, r0 contains the desired byte in bits
-+ 0-7; on a little-endian machine they are in bits 24-31. In
-+ both cases the other bits in r0 are all zero. For r3 the
-+ interesting byte is at the other end of the word, but the
-+ other bits are not necessarily zero. We need a signed result
-+ representing the differnece in the unsigned bytes, so for the
-+ little-endian case we can't just shift the interesting bits
-+ up. */
-+#ifdef __ARMEB__
-+ "sub r0, r0, r3, lsr #24\n\t"
-+#else
-+ "and r3, r3, #255\n\t"
-+#ifdef __thumb2__
-+ /* No RSB instruction in Thumb2 */
-+ "lsr r0, r0, #24\n\t"
-+ "sub r0, r0, r3\n\t"
-+#else
-+ "rsb r0, r3, r0, lsr #24\n\t"
-+#endif
-+#endif
-+#ifndef __thumb2__
-+ "ldr r4, [sp], #4\n\t"
-+#endif
-+ "BX LR"
-+#elif (defined (__thumb__) && !defined (__thumb2__))
-+ "1:\n\t"
-+ "ldrb r2, [r0]\n\t"
-+ "ldrb r3, [r1]\n\t"
-+ "add r0, r0, #1\n\t"
-+ "add r1, r1, #1\n\t"
-+ "cmp r2, #0\n\t"
-+ "beq 2f\n\t"
-+ "cmp r2, r3\n\t"
-+ "beq 1b\n\t"
-+ "2:\n\t"
-+ "sub r0, r2, r3\n\t"
-+ "bx lr"
-+#else
-+ "3:\n\t"
-+ "ldrb r2, [r0], #1\n\t"
-+ "ldrb r3, [r1], #1\n\t"
-+ "cmp r2, #1\n\t"
-+ "it cs\n\t"
-+ "cmpcs r2, r3\n\t"
-+ "beq 3b\n\t"
-+ "sub r0, r2, r3\n\t"
-+ "BX LR"
-+#endif
-+ );
-+}
-+
-+#if !(defined(__OPTIMIZE_SIZE__) || defined (PREFER_SIZE_OVER_SPEED) || \
-+ (defined (__thumb__) && !defined (__thumb2__)))
-+static int __attribute__((naked, used))
-+strcmp_unaligned(const char* s1, const char* s2)
-+{
-+#if 0
-+ /* The assembly code below is based on the following alogrithm. */
-+#ifdef __ARMEB__
-+#define RSHIFT <<
-+#define LSHIFT >>
-+#else
-+#define RSHIFT >>
-+#define LSHIFT <<
-+#endif
-+
-+#define body(shift) \
-+ mask = 0xffffffffU RSHIFT shift; \
-+ w1 = *wp1++; \
-+ w2 = *wp2++; \
-+ do \
-+ { \
-+ t1 = w1 & mask; \
-+ if (__builtin_expect(t1 != w2 RSHIFT shift, 0)) \
-+ { \
-+ w2 RSHIFT= shift; \
-+ break; \
-+ } \
-+ if (__builtin_expect(((w1 - b1) & ~w1) & (b1 << 7), 0)) \
-+ { \
-+ /* See comment in assembler below re syndrome on big-endian */\
-+ if ((((w1 - b1) & ~w1) & (b1 << 7)) & mask) \
-+ w2 RSHIFT= shift; \
-+ else \
-+ { \
-+ w2 = *wp2; \
-+ t1 = w1 RSHIFT (32 - shift); \
-+ w2 = (w2 LSHIFT (32 - shift)) RSHIFT (32 - shift); \
-+ } \
-+ break; \
-+ } \
-+ w2 = *wp2++; \
-+ t1 ^= w1; \
-+ if (__builtin_expect(t1 != w2 LSHIFT (32 - shift), 0)) \
-+ { \
-+ t1 = w1 >> (32 - shift); \
-+ w2 = (w2 << (32 - shift)) RSHIFT (32 - shift); \
-+ break; \
-+ } \
-+ w1 = *wp1++; \
-+ } while (1)
-+
-+ const unsigned* wp1;
-+ const unsigned* wp2;
-+ unsigned w1, w2;
-+ unsigned mask;
-+ unsigned shift;
-+ unsigned b1 = 0x01010101;
-+ char c1, c2;
-+ unsigned t1;
-+
-+ while (((unsigned) s1) & 3)
-+ {
-+ c1 = *s1++;
-+ c2 = *s2++;
-+ if (c1 == 0 || c1 != c2)
-+ return c1 - (int)c2;
-+ }
-+ wp1 = (unsigned*) (((unsigned)s1) & ~3);
-+ wp2 = (unsigned*) (((unsigned)s2) & ~3);
-+ t1 = ((unsigned) s2) & 3;
-+ if (t1 == 1)
-+ {
-+ body(8);
-+ }
-+ else if (t1 == 2)
-+ {
-+ body(16);
-+ }
-+ else
-+ {
-+ body (24);
-+ }
-+
-+ do
-+ {
-+#ifdef __ARMEB__
-+ c1 = (char) t1 >> 24;
-+ c2 = (char) w2 >> 24;
-+#else
-+ c1 = (char) t1;
-+ c2 = (char) w2;
-+#endif
-+ t1 RSHIFT= 8;
-+ w2 RSHIFT= 8;
-+ } while (c1 != 0 && c1 == c2);
-+ return c1 - c2;
-+#endif
-+
-+ asm("wp1 .req r0\n\t"
-+ "wp2 .req r1\n\t"
-+ "b1 .req r2\n\t"
-+ "w1 .req r4\n\t"
-+ "w2 .req r5\n\t"
-+ "t1 .req ip\n\t"
-+ "@ r3 is scratch\n"
-+
-+ /* First of all, compare bytes until wp1(sp1) is word-aligned. */
-+ "1:\n\t"
-+ "tst wp1, #3\n\t"
-+ "beq 2f\n\t"
-+ "ldrb r2, [wp1], #1\n\t"
-+ "ldrb r3, [wp2], #1\n\t"
-+ "cmp r2, #1\n\t"
-+ "it cs\n\t"
-+ "cmpcs r2, r3\n\t"
-+ "beq 1b\n\t"
-+ "sub r0, r2, r3\n\t"
-+ "BX LR\n"
-+
-+ "2:\n\t"
-+ "str r5, [sp, #-4]!\n\t"
-+ "str r4, [sp, #-4]!\n\t"
-+ // "stmfd sp!, {r4, r5}\n\t"
-+ "mov b1, #1\n\t"
-+ "orr b1, b1, b1, lsl #8\n\t"
-+ "orr b1, b1, b1, lsl #16\n\t"
-+
-+ "and t1, wp2, #3\n\t"
-+ "bic wp2, wp2, #3\n\t"
-+ "ldr w1, [wp1], #4\n\t"
-+ "ldr w2, [wp2], #4\n\t"
-+ "cmp t1, #2\n\t"
-+ "beq 2f\n\t"
-+ "bhi 3f\n"
-+
-+ /* Critical inner Loop: Block with 3 bytes initial overlap */
-+ ".p2align 2\n"
-+ "1:\n\t"
-+ "bic t1, w1, #"MSB"\n\t"
-+ "cmp t1, w2, "SHFT2LSB" #8\n\t"
-+ "sub r3, w1, b1\n\t"
-+ "bic r3, r3, w1\n\t"
-+ "bne 4f\n\t"
-+ "ands r3, r3, b1, lsl #7\n\t"
-+ "it eq\n\t"
-+ "ldreq w2, [wp2], #4\n\t"
-+ "bne 5f\n\t"
-+ "eor t1, t1, w1\n\t"
-+ "cmp t1, w2, "SHFT2MSB" #24\n\t"
-+ "bne 6f\n\t"
-+ "ldr w1, [wp1], #4\n\t"
-+ "b 1b\n"
-+ "4:\n\t"
-+ SHFT2LSB" w2, w2, #8\n\t"
-+ "b 8f\n"
-+
-+ "5:\n\t"
-+#ifdef __ARMEB__
-+ /* The syndrome value may contain false ones if the string ends
-+ with the bytes 0x01 0x00 */
-+ "tst w1, #0xff000000\n\t"
-+ "itt ne\n\t"
-+ "tstne w1, #0x00ff0000\n\t"
-+ "tstne w1, #0x0000ff00\n\t"
-+ "beq 7f\n\t"
-+#else
-+ "bics r3, r3, #0xff000000\n\t"
-+ "bne 7f\n\t"
-+#endif
-+ "ldrb w2, [wp2]\n\t"
-+ SHFT2LSB" t1, w1, #24\n\t"
-+#ifdef __ARMEB__
-+ "lsl w2, w2, #24\n\t"
-+#endif
-+ "b 8f\n"
-+
-+ "6:\n\t"
-+ SHFT2LSB" t1, w1, #24\n\t"
-+ "and w2, w2, #"LSB"\n\t"
-+ "b 8f\n"
-+
-+ /* Critical inner Loop: Block with 2 bytes initial overlap */
-+ ".p2align 2\n"
-+ "2:\n\t"
-+ SHFT2MSB" t1, w1, #16\n\t"
-+ "sub r3, w1, b1\n\t"
-+ SHFT2LSB" t1, t1, #16\n\t"
-+ "bic r3, r3, w1\n\t"
-+ "cmp t1, w2, "SHFT2LSB" #16\n\t"
-+ "bne 4f\n\t"
-+ "ands r3, r3, b1, lsl #7\n\t"
-+ "it eq\n\t"
-+ "ldreq w2, [wp2], #4\n\t"
-+ "bne 5f\n\t"
-+ "eor t1, t1, w1\n\t"
-+ "cmp t1, w2, "SHFT2MSB" #16\n\t"
-+ "bne 6f\n\t"
-+ "ldr w1, [wp1], #4\n\t"
-+ "b 2b\n"
-+
-+ "5:\n\t"
-+#ifdef __ARMEB__
-+ /* The syndrome value may contain false ones if the string ends
-+ with the bytes 0x01 0x00 */
-+ "tst w1, #0xff000000\n\t"
-+ "it ne\n\t"
-+ "tstne w1, #0x00ff0000\n\t"
-+ "beq 7f\n\t"
-+#else
-+ "lsls r3, r3, #16\n\t"
-+ "bne 7f\n\t"
-+#endif
-+ "ldrh w2, [wp2]\n\t"
-+ SHFT2LSB" t1, w1, #16\n\t"
-+#ifdef __ARMEB__
-+ "lsl w2, w2, #16\n\t"
-+#endif
-+ "b 8f\n"
-+
-+ "6:\n\t"
-+ SHFT2MSB" w2, w2, #16\n\t"
-+ SHFT2LSB" t1, w1, #16\n\t"
-+ "4:\n\t"
-+ SHFT2LSB" w2, w2, #16\n\t"
-+ "b 8f\n\t"
-+
-+ /* Critical inner Loop: Block with 1 byte initial overlap */
-+ ".p2align 2\n"
-+ "3:\n\t"
-+ "and t1, w1, #"LSB"\n\t"
-+ "cmp t1, w2, "SHFT2LSB" #24\n\t"
-+ "sub r3, w1, b1\n\t"
-+ "bic r3, r3, w1\n\t"
-+ "bne 4f\n\t"
-+ "ands r3, r3, b1, lsl #7\n\t"
-+ "it eq\n\t"
-+ "ldreq w2, [wp2], #4\n\t"
-+ "bne 5f\n\t"
-+ "eor t1, t1, w1\n\t"
-+ "cmp t1, w2, "SHFT2MSB" #8\n\t"
-+ "bne 6f\n\t"
-+ "ldr w1, [wp1], #4\n\t"
-+ "b 3b\n"
-+ "4:\n\t"
-+ SHFT2LSB" w2, w2, #24\n\t"
-+ "b 8f\n"
-+ "5:\n\t"
-+ /* The syndrome value may contain false ones if the string ends
-+ with the bytes 0x01 0x00 */
-+ "tst w1, #"LSB"\n\t"
-+ "beq 7f\n\t"
-+ "ldr w2, [wp2], #4\n"
-+ "6:\n\t"
-+ SHFT2LSB" t1, w1, #8\n\t"
-+ "bic w2, w2, #"MSB"\n\t"
-+ "b 8f\n"
-+ "7:\n\t"
-+ "mov r0, #0\n\t"
-+ // "ldmfd sp!, {r4, r5}\n\t"
-+ "ldr r4, [sp], #4\n\t"
-+ "ldr r5, [sp], #4\n\t"
-+ "BX LR\n"
-+ "8:\n\t"
-+ "and r2, t1, #"LSB"\n\t"
-+ "and r0, w2, #"LSB"\n\t"
-+ "cmp r0, #1\n\t"
-+ "it cs\n\t"
-+ "cmpcs r0, r2\n\t"
-+ "itt eq\n\t"
-+ SHFT2LSB"eq t1, t1, #8\n\t"
-+ SHFT2LSB"eq w2, w2, #8\n\t"
-+ "beq 8b\n\t"
-+ "sub r0, r2, r0\n\t"
-+ // "ldmfd sp!, {r4, r5}\n\t"
-+ "ldr r4, [sp], #4\n\t"
-+ "ldr r5, [sp], #4\n\t"
-+ "BX LR");
-+}
-+
-+#endif
-+
-+libc_hidden_builtin_def (strcmp)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
-new file mode 100644
-index 0000000..aa8cb06
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
-@@ -0,0 +1,172 @@
-+/*
-+ * Copyright (c) 2008 ARM Ltd
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in the
-+ * documentation and/or other materials provided with the distribution.
-+ * 3. The name of the company may not be used to endorse or promote
-+ * products derived from this software without specific prior written
-+ * permission.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-+ * IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-+ * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ */
-+
-+#include <string.h>
-+#include <memcopy.h>
-+
-+#undef strcmp
-+
-+
-+#ifdef __thumb2__
-+#define magic1(REG) "#0x01010101"
-+#define magic2(REG) "#0x80808080"
-+#else
-+#define magic1(REG) #REG
-+#define magic2(REG) #REG ", lsl #7"
-+#endif
-+
-+char* __attribute__((naked))
-+strcpy (char* dst, const char* src)
-+{
-+ asm (
-+#if !(defined(__OPTIMIZE_SIZE__) || defined (PREFER_SIZE_OVER_SPEED) || \
-+ (defined (__thumb__) && !defined (__thumb2__)))
-+ "pld [r1, #0]\n\t"
-+ "eor r2, r0, r1\n\t"
-+ "mov ip, r0\n\t"
-+ "tst r2, #3\n\t"
-+ "bne 4f\n\t"
-+ "tst r1, #3\n\t"
-+ "bne 3f\n"
-+ "5:\n\t"
-+#ifndef __thumb2__
-+ "str r5, [sp, #-4]!\n\t"
-+ "mov r5, #0x01\n\t"
-+ "orr r5, r5, r5, lsl #8\n\t"
-+ "orr r5, r5, r5, lsl #16\n\t"
-+#endif
-+
-+ "str r4, [sp, #-4]!\n\t"
-+ "tst r1, #4\n\t"
-+ "ldr r3, [r1], #4\n\t"
-+ "beq 2f\n\t"
-+ "sub r2, r3, "magic1(r5)"\n\t"
-+ "bics r2, r2, r3\n\t"
-+ "tst r2, "magic2(r5)"\n\t"
-+ "itt eq\n\t"
-+ "streq r3, [ip], #4\n\t"
-+ "ldreq r3, [r1], #4\n"
-+ "bne 1f\n\t"
-+ /* Inner loop. We now know that r1 is 64-bit aligned, so we
-+ can safely fetch up to two words. This allows us to avoid
-+ load stalls. */
-+ ".p2align 2\n"
-+ "2:\n\t"
-+ "pld [r1, #8]\n\t"
-+ "ldr r4, [r1], #4\n\t"
-+ "sub r2, r3, "magic1(r5)"\n\t"
-+ "bics r2, r2, r3\n\t"
-+ "tst r2, "magic2(r5)"\n\t"
-+ "sub r2, r4, "magic1(r5)"\n\t"
-+ "bne 1f\n\t"
-+ "str r3, [ip], #4\n\t"
-+ "bics r2, r2, r4\n\t"
-+ "tst r2, "magic2(r5)"\n\t"
-+ "itt eq\n\t"
-+ "ldreq r3, [r1], #4\n\t"
-+ "streq r4, [ip], #4\n\t"
-+ "beq 2b\n\t"
-+ "mov r3, r4\n"
-+ "1:\n\t"
-+#ifdef __ARMEB__
-+ "rors r3, r3, #24\n\t"
-+#endif
-+ "strb r3, [ip], #1\n\t"
-+ "tst r3, #0xff\n\t"
-+#ifdef __ARMEL__
-+ "ror r3, r3, #8\n\t"
-+#endif
-+ "bne 1b\n\t"
-+ "ldr r4, [sp], #4\n\t"
-+#ifndef __thumb2__
-+ "ldr r5, [sp], #4\n\t"
-+#endif
-+ "BX LR\n"
-+
-+ /* Strings have the same offset from word alignment, but it's
-+ not zero. */
-+ "3:\n\t"
-+ "tst r1, #1\n\t"
-+ "beq 1f\n\t"
-+ "ldrb r2, [r1], #1\n\t"
-+ "strb r2, [ip], #1\n\t"
-+ "cmp r2, #0\n\t"
-+ "it eq\n"
-+ "BXEQ LR\n"
-+ "1:\n\t"
-+ "tst r1, #2\n\t"
-+ "beq 5b\n\t"
-+ "ldrh r2, [r1], #2\n\t"
-+#ifdef __ARMEB__
-+ "tst r2, #0xff00\n\t"
-+ "iteet ne\n\t"
-+ "strneh r2, [ip], #2\n\t"
-+ "lsreq r2, r2, #8\n\t"
-+ "streqb r2, [ip]\n\t"
-+ "tstne r2, #0xff\n\t"
-+#else
-+ "tst r2, #0xff\n\t"
-+ "itet ne\n\t"
-+ "strneh r2, [ip], #2\n\t"
-+ "streqb r2, [ip]\n\t"
-+ "tstne r2, #0xff00\n\t"
-+#endif
-+ "bne 5b\n\t"
-+ "BX LR\n"
-+
-+ /* src and dst do not have a common word-alignement. Fall back to
-+ byte copying. */
-+ "4:\n\t"
-+ "ldrb r2, [r1], #1\n\t"
-+ "strb r2, [ip], #1\n\t"
-+ "cmp r2, #0\n\t"
-+ "bne 4b\n\t"
-+ "BX LR"
-+
-+#elif !defined (__thumb__) || defined (__thumb2__)
-+ "mov r3, r0\n\t"
-+ "1:\n\t"
-+ "ldrb r2, [r1], #1\n\t"
-+ "strb r2, [r3], #1\n\t"
-+ "cmp r2, #0\n\t"
-+ "bne 1b\n\t"
-+ "BX LR"
-+#else
-+ "mov r3, r0\n\t"
-+ "1:\n\t"
-+ "ldrb r2, [r1]\n\t"
-+ "add r1, r1, #1\n\t"
-+ "strb r2, [r3]\n\t"
-+ "add r3, r3, #1\n\t"
-+ "cmp r2, #0\n\t"
-+ "bne 1b\n\t"
-+ "BX LR"
-+#endif
-+ );
-+}
-+libc_hidden_builtin_def (strcpy)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-new file mode 100644
-index 0000000..125e92f
---- /dev/null
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-@@ -0,0 +1,111 @@
-+/* Copyright (c) 2010-2011, Linaro Limited
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+
-+ * Neither the name of Linaro Limited nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ Written by Dave Gilbert <david.gilbert@linaro.org>
-+
-+ This strlen routine is optimised on a Cortex-A9 and should work on
-+ all ARMv7 processors. This routine is reasonably fast for short
-+ strings, but is probably slower than a simple implementation if all
-+ your strings are very short */
-+
-+@ 2011-02-08 david.gilbert@linaro.org
-+@ Extracted from local git 6848613a
-+
-+
-+@ this lets us check a flag in a 00/ff byte easily in either endianness
-+#ifdef __ARMEB__
-+#define CHARTSTMASK(c) 1<<(31-(c*8))
-+#else
-+#define CHARTSTMASK(c) 1<<(c*8)
-+#endif
-+
-+@-----------------------------------------------------------------------------------------------------------------------------
-+ .syntax unified
-+ .arch armv7-a
-+
-+ .thumb_func
-+ .align 2
-+ .p2align 4,,15
-+ .global strlen
-+ .type strlen,%function
-+strlen:
-+ @ r0 = string
-+ @ returns count of bytes in string not including terminator
-+ mov r1, r0
-+ push { r4,r6 }
-+ mvns r6, #0 @ all F
-+ movs r4, #0
-+ tst r0, #7
-+ beq 2f
-+
-+1:
-+ ldrb r2, [r1], #1
-+ tst r1, #7 @ Hit alignment yet?
-+ cbz r2, 10f @ Exit if we found the 0
-+ bne 1b
-+
-+ @ So we're now aligned
-+2:
-+ ldmia r1!,{r2,r3}
-+ uadd8 r2, r2, r6 @ Parallel add 0xff - sets the GE bits for anything that wasn't 0
-+ sel r2, r4, r6 @ bytes are 00 for none-00 bytes, or ff for 00 bytes - NOTE INVERSION
-+ uadd8 r3, r3, r6 @ Parallel add 0xff - sets the GE bits for anything that wasn't 0
-+ sel r3, r2, r6 @ bytes are 00 for none-00 bytes, or ff for 00 bytes - NOTE INVERSION
-+ cmp r3, #0
-+ beq 2b
-+
-+strlenendtmp:
-+ @ One (or more) of the bytes we loaded was 0 - but which one?
-+ @ r2 has the mask corresponding to the first loaded word
-+ @ r3 has a combined mask of the two words - but if r2 was all-non 0
-+ @ then it's just the 2nd words
-+ cmp r2, #0
-+ itte eq
-+ moveq r2, r3 @ the end is in the 2nd word
-+ subeq r1,r1,#3
-+ subne r1,r1,#7
-+
-+ @ r1 currently points to the 2nd byte of the word containing the 0
-+ tst r2, # CHARTSTMASK(0) @ 1st character
-+ bne 10f
-+ adds r1,r1,#1
-+ tst r2, # CHARTSTMASK(1) @ 2nd character
-+ ittt eq
-+ addeq r1,r1,#1
-+ tsteq r2, # (3<<15) @ 2nd & 3rd character
-+ @ If not the 3rd must be the last one
-+ addeq r1,r1,#1
-+
-+10:
-+ @ r0 is still at the beginning, r1 is pointing 1 byte after the terminator
-+ sub r0, r1, r0
-+ subs r0, r0, #1
-+ pop { r4, r6 }
-+ bx lr
---
-1.7.7
-
diff --git a/patches/glibc-2.13/0025-add-libc_hidden_builtin_def-for-all-cortex-functions.patch b/patches/glibc-2.13/0025-add-libc_hidden_builtin_def-for-all-cortex-functions.patch
deleted file mode 100644
index c5e0d23..0000000
--- a/patches/glibc-2.13/0025-add-libc_hidden_builtin_def-for-all-cortex-functions.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Thu, 15 Sep 2011 23:30:25 +0200
-Subject: [PATCH] add libc_hidden_builtin_def for all cortex functions
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
----
- .../sysdeps/arm/eabi/arm/cortex-a8/memchr.S | 3 +++
- .../sysdeps/arm/eabi/arm/cortex-a8/memcpy.S | 2 ++
- .../sysdeps/arm/eabi/arm/cortex-a8/memset.S | 2 ++
- .../sysdeps/arm/eabi/arm/cortex-a8/strchr.S | 3 +++
- .../sysdeps/arm/eabi/arm/cortex-a8/strcpy.c | 1 +
- .../sysdeps/arm/eabi/arm/cortex-a8/strlen.S | 2 ++
- 6 files changed, 13 insertions(+), 0 deletions(-)
-
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
-index 8f5aaa9..6d497cb 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memchr.S
-@@ -148,3 +148,6 @@ memchr:
- pop {r4,r5,r6,r7}
- subs r0,r0,#1
- bx lr
-+
-+strong_alias (memchr, __memchr)
-+libc_hidden_builtin_def (memchr)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
-index 3be24ca..c274207 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memcpy.S
-@@ -150,3 +150,5 @@ memcpy:
- cmp r2,#32
- blt 10b
- b 4b
-+
-+libc_hidden_builtin_def (memcpy)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
-index 921cb75..d4c12a4 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/memset.S
-@@ -116,3 +116,5 @@ memset:
-
- 10:
- bx lr @ goodbye
-+
-+libc_hidden_builtin_def (memset)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
-index 8875dbf..05c832f 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strchr.S
-@@ -74,3 +74,6 @@ strchr:
- beq 5b @ A bit messy, if it's common we should branch at the start to a special loop
- mov r0,#0
- bx lr
-+
-+weak_alias (strchr, index)
-+libc_hidden_builtin_def (strchr)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
-index aa8cb06..3bbaa86 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strcpy.c
-@@ -169,4 +169,5 @@ strcpy (char* dst, const char* src)
- #endif
- );
- }
-+
- libc_hidden_builtin_def (strcpy)
-diff --git a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-index 125e92f..a1e02ad 100644
---- a/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-+++ b/cortex-strings/sysdeps/arm/eabi/arm/cortex-a8/strlen.S
-@@ -109,3 +109,5 @@ strlenendtmp:
- subs r0, r0, #1
- pop { r4, r6 }
- bx lr
-+
-+libc_hidden_builtin_def (strlen)
---
-1.7.7
-
diff --git a/patches/glibc-2.13/series b/patches/glibc-2.13/series
deleted file mode 100644
index 313e852..0000000
--- a/patches/glibc-2.13/series
+++ /dev/null
@@ -1,25 +0,0 @@
-0001-install-lib-all.patch
-0002-fix-build-with-static-nss.patch
-0003-glibc-configure-old-gcc.patch
-0004-configure-in-sane-readelf.patch
-0005-stdlib-longlong.patch
-0006-respect-env-CPPFLAGS.patch
-0007-i586-chk.patch
-0008-i386-x86_64-revert-clone-cfi.patch
-0009-queue-header-updates.patch
-0010-manual-no-perl.patch
-0011-localedef-fix-trampoline.patch
-0012-posix-awk.patch
-0013-resolv-dynamic.patch
-0014-section-comments.patch
-0015-no-inline-gmon.patch
-0016-china.patch
-0017-new-valencian-locale.patch
-0018-strict-aliasing.patch
-0019-undefine-__i686.patch
-0020-dl_execstack-PaX-support.patch
-0021-pre20040117-pt_pax.patch
-0022-fpscr_values.patch
-0023-Fix-prelinking.patch
-0024-optimized-string-functions-for-NEON-from-Linaro.patch
-0025-add-libc_hidden_builtin_def-for-all-cortex-functions.patch
diff --git a/patches/glibc-2.3.6/generic/0001-Handle-future-binutils-versions-correctly.patch b/patches/glibc-2.3.6/generic/0001-Handle-future-binutils-versions-correctly.patch
deleted file mode 100644
index 6705245..0000000
--- a/patches/glibc-2.3.6/generic/0001-Handle-future-binutils-versions-correctly.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 02841776426c7cf82afd345b04433bbac0747628 Mon Sep 17 00:00:00 2001
-From: H.J. Lu <hongjiu.lu@intel.com>
-Date: Sat, 5 Sep 2009 07:06:19 -0700
-Subject: [PATCH] Handle future binutils versions correctly.
-
-cherry picked and squashed from upstream git.
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-
----
- ChangeLog | 13 +++++++++++++
- configure | 4 ++--
- configure.in | 4 ++--
- 3 files changed, 17 insertions(+), 4 deletions(-)
-
-Index: glibc-2.3.6/ChangeLog
-===================================================================
---- glibc-2.3.6.orig/ChangeLog 2010-06-14 16:14:07.198229159 +0200
-+++ glibc-2.3.6/ChangeLog 2010-06-14 16:14:31.465731765 +0200
-@@ -1,3 +1,16 @@
-+2009-09-10 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ * configure.in: Exclude binutils 2.X. Support binutils 2.100
-+ and XX.
-+
-+2009-09-05 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ * configure.in: Support binutils 2.100 and 3.0.
-+
-+2009-09-04 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ * configure.in: Support binutils 2.20.
-+
- 2005-11-03 Roland McGrath <roland@redhat.com>
-
- * NEWS, version.h (VERSION): 2.3.6.
-Index: glibc-2.3.6/configure
-===================================================================
---- glibc-2.3.6.orig/configure 2010-06-14 16:14:07.208230159 +0200
-+++ glibc-2.3.6/configure 2010-06-14 16:14:31.475734685 +0200
-@@ -3917,7 +3917,7 @@
- ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
- case $ac_prog_version in
- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-- 2.1[3-9]*)
-+ 2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*)
- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-
-@@ -3978,7 +3978,7 @@
- ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
- case $ac_prog_version in
- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-- 2.1[3-9]*)
-+ 2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*)
- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-
-Index: glibc-2.3.6/configure.in
-===================================================================
---- glibc-2.3.6.orig/configure.in 2010-06-14 16:14:07.208230159 +0200
-+++ glibc-2.3.6/configure.in 2010-06-14 16:14:31.618009326 +0200
-@@ -734,10 +734,10 @@
- # Accept binutils 2.13 or newer.
- AC_CHECK_PROG_VER(AS, $AS, --version,
- [GNU assembler.* \([0-9]*\.[0-9.]*\)],
-- [2.1[3-9]*], AS=: critic_missing="$critic_missing as")
-+ [2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], AS=: critic_missing="$critic_missing as")
- AC_CHECK_PROG_VER(LD, $LD, --version,
- [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
-- [2.1[3-9]*], LD=: critic_missing="$critic_missing ld")
-+ [2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], LD=: critic_missing="$critic_missing ld")
-
- # We need the physical current working directory. We cannot use the
- # "pwd -P" shell builtin since that's not portable. Instead we try to
diff --git a/patches/glibc-2.3.6/generic/csu_Makefile-quotes.diff b/patches/glibc-2.3.6/generic/csu_Makefile-quotes.diff
deleted file mode 100644
index 5ff7d39..0000000
--- a/patches/glibc-2.3.6/generic/csu_Makefile-quotes.diff
+++ /dev/null
@@ -1,22 +0,0 @@
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Subject: works now on ubuntu, where bin dash in /bin/sh
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-
----
- csu/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: glibc-2.3.6/csu/Makefile
-===================================================================
---- glibc-2.3.6.orig/csu/Makefile
-+++ glibc-2.3.6/csu/Makefile
-@@ -241,7 +241,7 @@ $(objpfx)version-info.h: $(common-objpfx
- esac; \
- files="$(all-Banner-files)"; \
- if test -n "$$files"; then \
-- echo "\"Available extensions:\\n\""; \
-+ echo '"Available extensions:\\n"'; \
- sed -e '/^#/d' -e 's/^[[:space:]]*/ /' \
- -e 's/^\(.*\)$$/\"\1\\n\"/' $$files; \
- fi) > $@T
diff --git a/patches/glibc-2.3.6/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch b/patches/glibc-2.3.6/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch
deleted file mode 100644
index c004764..0000000
--- a/patches/glibc-2.3.6/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From dank@kegel.com
-Wed Jun 15 09:12:43 PDT 2005
-
-Fixes
-
-build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r'
-build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent'
-... 53 lines deleted ...
-build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r'
-collect2: ld returned 1 exit status
-make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1
-
-when building glibc with --enable-static-nss.
-
-See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631
-
----
- Makeconfig | 2 +-
- elf/Makefile | 7 +++++++
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-Index: glibc-2.3.6/Makeconfig
-===================================================================
---- glibc-2.3.6.orig/Makeconfig 2010-06-14 16:14:07.198229159 +0200
-+++ glibc-2.3.6/Makeconfig 2010-06-14 16:14:25.468230244 +0200
-@@ -487,7 +487,7 @@
-
- # The static libraries.
- ifeq (yes,$(build-static))
--link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a
-+link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a
- else
- ifeq (yes,$(build-shared))
- # We can try to link the programs with lib*_pic.a...
-Index: glibc-2.3.6/elf/Makefile
-===================================================================
---- glibc-2.3.6.orig/elf/Makefile 2010-06-14 16:14:07.208230159 +0200
-+++ glibc-2.3.6/elf/Makefile 2010-06-14 16:14:25.673340602 +0200
-@@ -115,6 +115,13 @@
- install-bin-script = ldd
- endif
-
-+ifeq (yes,$(build-static-nss))
-+nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss)
-+resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv)
-+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
-+ $(resolvobjdir)/libresolv.a
-+endif
-+
- others = sprof sln
- install-bin = sprof
- others-static = sln
diff --git a/patches/glibc-2.3.6/generic/make-install-lib-all.patch b/patches/glibc-2.3.6/generic/make-install-lib-all.patch
deleted file mode 100644
index 1e69bb2..0000000
--- a/patches/glibc-2.3.6/generic/make-install-lib-all.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From http://svn.exactcode.de/t2/trunk/package/base/glibc32/make-install-lib-all.patch
-Rule to install all needed libraries, not just the ones installed by install-lib,
-yet not install programs.
-Needed because we can't use the main install target, as we can't build programs before
-we have the final gcc installed; linking fails because libeh.a is not present,
-and glibc insists on linking programs with that library.
-
-diff -Naur glibc-2.3.4.orig/Makerules glibc-2.3.4/Makerules
---- glibc-2.3.4.orig/Makerules 2004-12-15 20:52:39.000000000 +0200
-+++ glibc-2.3.4/Makerules 2005-02-19 15:16:31.415125176 +0200
-@@ -844,6 +844,13 @@
- installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\
- $(inst_libdir)/$(patsubst %,$(libtype$o),\
- $(libprefix)$(libc-name)))
-+
-+install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \
-+ $(inst_slibdir)/libc-$(version).so \
-+ $(inst_libdir)/libc.so \
-+ $(inst_libdir)/libc.a \
-+ install-lib
-+
- install: $(installed-libcs)
- $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force)
- $(make-target-directory)
-
-Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
diff --git a/patches/glibc-2.3.6/generic/series b/patches/glibc-2.3.6/generic/series
deleted file mode 100644
index 9a5b8e9..0000000
--- a/patches/glibc-2.3.6/generic/series
+++ /dev/null
@@ -1,8 +0,0 @@
-make-install-lib-all.patch
-sysdeps_arm_dl-machine_h-fix_bad_pc24.diff
-sysdeps_unix_sysv_linux_arm_ioperm_c-BUS_ISA.diff
-sysdeps_unix_sysv_linux_arm_socket_S-alias.diff
-sysdeps_arm-fp-byteorder.diff
-csu_Makefile-quotes.diff
-gentoo/1090_all_glibc-2.3.6-fix-pr631.patch
-0001-Handle-future-binutils-versions-correctly.patch
diff --git a/patches/glibc-2.3.6/generic/sysdeps_arm-fp-byteorder.diff b/patches/glibc-2.3.6/generic/sysdeps_arm-fp-byteorder.diff
deleted file mode 100644
index d45cdbc..0000000
--- a/patches/glibc-2.3.6/generic/sysdeps_arm-fp-byteorder.diff
+++ /dev/null
@@ -1,205 +0,0 @@
-Taken from http://sources.redhat.com/ml/crossgcc/2004-02/msg00104.html
-Author: addsub@eyou.com
-Target: ARM
-
-Fixes http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/execute/920501-8.c
-and makes printf("%f", 1.0) work.
-
-Lennert Buytenhek wrote in http://sources.redhat.com/ml/crossgcc/2004-09/msg00115.html :
- It ... fixes the 'printf("%f\n", 0.5); prints 0.000000' and general 'floating point
- is broken' on my big-endian hardfloat FPA ARM platform. ...
- It's definitely needed for hardfloat. So I'd think it's needed for
- big-endian systems in any case, and for VFP on little-endian systems
- too. Someone would have to verify that though.
-
-Lennert Buytenhek wrote in http://sources.redhat.com/ml/crossgcc/2004-09/msg00123.html
- I just had a look at glibc-20040830, and [this patch] is still needed and useful
- for this version. glibc-20040830 out-of-the-box still contains the
- following wrong assumptions:
- - sysdeps/arm/bits/endian.h: float word order is big endian (which it is
- not on vfp systems)
- - sysdeps/arm/gmp-mparam.h: IEEE doubles are mixed endian (which they
- are not on big endian systems, neither on vfp systems)
- - sysdeps/arm/ieee754.h: IEEE doubles are in little endian byte order
- (which they are not on big endian systems)
- [This patch] seems the right solution for all of these issues.
-
-Dimitry Andric wrote in http://sources.redhat.com/ml/crossgcc/2004-09/msg00132.html :
- It's even needed for glibc CVS, AFAICS.
- The patch hunk which modifies glibc.new/sysdeps/arm/bits/endian.h
- (currently at version 1.4) is only needed for proper VFP operation.
- But the hunk which modifies sysdeps/arm/gmp-mparam.h, and the hunk
- that deletes sysdeps/arm/ieee754.h (yes, this IS correct), are needed
- for proper operation of *any* FP model on big endian ARM.
-
-See also discussion in followups to
-http://sources.redhat.com/ml/crossgcc/2004-05/msg00245.html)
-
-Message-ID: <276985760.37584@eyou.com>
-Received: from unknown (HELO eyou.com) (172.16.2.2)
- by 0.0.0.0 with SMTP; Tue, 17 Feb 2004 10:42:40 +0800
-Received: (qmail 8238 invoked by uid 65534); 17 Feb 2004 10:42:38 +0800
-Date: 17 Feb 2004 10:42:38 +0800
-Message-ID: <20040217104238.8237.qmail@eyou.com>
-From: "add" <addsub@eyou.com>
-To: dank@kegel.com
-Reply-To: "add" <addsub@eyou.com>
-Subject: Re:&nbsp;&nbsp;&nbsp;problem&nbsp;while&nbsp;building&nbsp;arm&nbsp;vfp&nbsp;softfloat&nbsp;gcc&nbsp;`
-
-Hi, Dan, This is a patch I applied to my glibc-2.3.2, then my softfloat
-toolchain can printf("%f\n",1.0). So you may have a try of this
-
-
-diff -uNrp glibc.old/sysdeps/arm/bits/endian.h glibc.new/sysdeps/arm/bits/endian.h
---- glibc.old/sysdeps/arm/bits/endian.h 1999-04-12 11:59:13.000000000 -0400
-+++ glibc.new/sysdeps/arm/bits/endian.h 2004-02-12 09:15:13.000000000 -0500
-@@ -9,4 +9,9 @@
- #else
- #define __BYTE_ORDER __LITTLE_ENDIAN
- #endif
-+
-+#ifdef __VFP_FP__
-+#define __FLOAT_WORD_ORDER __BYTE_ORDER
-+#else
- #define __FLOAT_WORD_ORDER __BIG_ENDIAN
-+#endif
-diff -uNrp glibc.old/sysdeps/arm/gmp-mparam.h glibc.new/sysdeps/arm/gmp-mparam.h
---- glibc.old/sysdeps/arm/gmp-mparam.h 2001-07-07 15:21:19.000000000 -0400
-+++ glibc.new/sysdeps/arm/gmp-mparam.h 2004-02-12 09:15:13.000000000 -0500
-@@ -26,5 +26,13 @@ MA 02111-1307, USA. */
- #define BITS_PER_SHORTINT 16
- #define BITS_PER_CHAR 8
-
--#define IEEE_DOUBLE_BIG_ENDIAN 0
--#define IEEE_DOUBLE_MIXED_ENDIAN 1
-+#if defined(__ARMEB__)
-+# define IEEE_DOUBLE_MIXED_ENDIAN 0
-+# define IEEE_DOUBLE_BIG_ENDIAN 1
-+#elif defined(__VFP_FP__)
-+# define IEEE_DOUBLE_MIXED_ENDIAN 0
-+# define IEEE_DOUBLE_BIG_ENDIAN 0
-+#else
-+# define IEEE_DOUBLE_BIG_ENDIAN 0
-+# define IEEE_DOUBLE_MIXED_ENDIAN 1
-+#endif
-diff -uNrp glibc.old/sysdeps/arm/ieee754.h glibc.new/sysdeps/arm/ieee754.h
---- glibc.old/sysdeps/arm/ieee754.h 2001-07-07 15:21:19.000000000 -0400
-+++ glibc.new/sysdeps/arm/ieee754.h 1969-12-31 19:00:00.000000000 -0500
-@@ -1,115 +0,0 @@
--/* Copyright (C) 1992, 1995, 1996, 1998 Free Software Foundation, Inc.
-- This file is part of the GNU C Library.
--
-- The GNU C Library is free software; you can redistribute it and/or
-- modify it under the terms of the GNU Lesser General Public
-- License as published by the Free Software Foundation; either
-- version 2.1 of the License, or (at your option) any later version.
--
-- The GNU C Library is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-- Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public
-- License along with the GNU C Library; if not, write to the Free
-- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-- 02111-1307 USA. */
--
--#ifndef _IEEE754_H
--
--#define _IEEE754_H 1
--#include <features.h>
--
--#include <endian.h>
--
--__BEGIN_DECLS
--
--union ieee754_float
-- {
-- float f;
--
-- /* This is the IEEE 754 single-precision format. */
-- struct
-- {
-- unsigned int mantissa:23;
-- unsigned int exponent:8;
-- unsigned int negative:1;
-- } ieee;
--
-- /* This format makes it easier to see if a NaN is a signalling NaN. */
-- struct
-- {
-- unsigned int mantissa:22;
-- unsigned int quiet_nan:1;
-- unsigned int exponent:8;
-- unsigned int negative:1;
-- } ieee_nan;
-- };
--
--#define IEEE754_FLOAT_BIAS 0x7f /* Added to exponent. */
--
--
--union ieee754_double
-- {
-- double d;
--
-- /* This is the IEEE 754 double-precision format. */
-- struct
-- {
-- unsigned int mantissa0:20;
-- unsigned int exponent:11;
-- unsigned int negative:1;
-- unsigned int mantissa1:32;
-- } ieee;
--
-- /* This format makes it easier to see if a NaN is a signalling NaN. */
-- struct
-- {
-- unsigned int mantissa0:19;
-- unsigned int quiet_nan:1;
-- unsigned int exponent:11;
-- unsigned int negative:1;
-- unsigned int mantissa1:32;
-- } ieee_nan;
-- };
--
--#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */
--
--
--/* The following two structures are correct for `new' floating point systems but
-- wrong for the old FPPC. The only solution seems to be to avoid their use on
-- old hardware. */
--
--union ieee854_long_double
-- {
-- long double d;
--
-- /* This is the IEEE 854 double-extended-precision format. */
-- struct
-- {
-- unsigned int exponent:15;
-- unsigned int empty:16;
-- unsigned int negative:1;
-- unsigned int mantissa1:32;
-- unsigned int mantissa0:32;
-- } ieee;
--
-- /* This is for NaNs in the IEEE 854 double-extended-precision format. */
-- struct
-- {
-- unsigned int exponent:15;
-- unsigned int empty:16;
-- unsigned int negative:1;
-- unsigned int mantissa1:32;
-- unsigned int mantissa0:30;
-- unsigned int quiet_nan:1;
-- unsigned int one:1;
-- } ieee_nan;
-- };
--
--#define IEEE854_LONG_DOUBLE_BIAS 0x3fff
--
--__END_DECLS
--
--#endif /* ieee754.h */
-
-Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
diff --git a/patches/glibc-2.3.6/generic/sysdeps_arm_dl-machine_h-fix_bad_pc24.diff b/patches/glibc-2.3.6/generic/sysdeps_arm_dl-machine_h-fix_bad_pc24.diff
deleted file mode 100644
index 9506e45..0000000
--- a/patches/glibc-2.3.6/generic/sysdeps_arm_dl-machine_h-fix_bad_pc24.diff
+++ /dev/null
@@ -1,35 +0,0 @@
-Fixes
-In file included from dynamic-link.h:22,
- from dl-reloc.c:265:
-../sysdeps/arm/dl-machine.h: In function '_dl_relocate_object':
-../sysdeps/arm/dl-machine.h:371: error: invalid storage class for function 'fix_bad_pc24'
-make[2]: Leaving directory `/home/dank/queue/jobdir.k8/crosstool-dev/build/arm-unknown-linux-gnu/gcc-4.0-20050305-glibc-2.3.6/glibc-2.3.6/elf'
-
-when building glibc-2.3.6 with gcc-4.0
-
-Like
-http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/arm/dl-machine.h.diff?r1=1.51&r2=1.52&cvsroot=glibc
-but fixes fix_bad_pc24.
-
-
---- a/sysdeps/arm/dl-machine.h Sun Mar 20 17:54:37 2005
-+++ b/sysdeps/arm/dl-machine.h Sun Mar 20 17:57:32 2005
-@@ -357,7 +357,14 @@
- #ifdef RESOLVE
-
- /* Deal with an out-of-range PC24 reloc. */
--static Elf32_Addr
-+#if __GNUC__ >= 4
-+ auto inline Elf32_Addr
-+#else
-+ static inline Elf32_Addr
-+#endif
-+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
-+ __attribute ((always_inline))
-+#endif
- fix_bad_pc24 (Elf32_Addr *const reloc_addr, Elf32_Addr value)
- {
- static void *fix_page;
-
-Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
-with a little editing by dank@kegel.com
diff --git a/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_ioperm_c-BUS_ISA.diff b/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_ioperm_c-BUS_ISA.diff
deleted file mode 100644
index 413c685..0000000
--- a/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_ioperm_c-BUS_ISA.diff
+++ /dev/null
@@ -1,53 +0,0 @@
-Applies to both glibc-2.2.5 and glibc-2.3.2, and probably glibc cvs as of Aug 2004.
-Needed to build glibc with linux kernels 2.4.23 or higher on ARM,
-Fixes following error:
-
-../sysdeps/unix/sysv/linux/arm/ioperm.c: In function `init_iosys':
-../sysdeps/unix/sysv/linux/arm/ioperm.c:103: error: `BUS_ISA' undeclared (first use in this function)
-../sysdeps/unix/sysv/linux/arm/ioperm.c:103: error: (Each undeclared identifier is reported only once
-../sysdeps/unix/sysv/linux/arm/ioperm.c:103: error: for each function it appears in.)
-../sysdeps/unix/sysv/linux/arm/ioperm.c:103: error: initializer element is not constant
-../sysdeps/unix/sysv/linux/arm/ioperm.c:103: error: (near initialization for `iobase_name[1]')
-../sysdeps/unix/sysv/linux/arm/ioperm.c:104: error: initializer element is not constant
-../sysdeps/unix/sysv/linux/arm/ioperm.c:104: error: (near initialization for `ioshift_name[1]')
-make[2]: *** [/home/dank/crosstool-0.28/build/arm-softfloat-linux-gnu/gcc-3.3.4-glibc-2.2.5/build-glibc/misc/ioperm.o] Error 1
-
-cf. "[SYSCTL] BUS_ISA -> CTL_BUS_ISA", http://www.ussg.iu.edu/hypermail/linux/kernel/0311.0/0529.html
-
---- glibc-2.3.2/sysdeps/unix/sysv/linux/arm/ioperm.c.old 2003-02-20 14:22:24.000000000 -0800
-+++ glibc-2.3.2/sysdeps/unix/sysv/linux/arm/ioperm.c 2004-01-31 16:01:50.000000000 -0800
-@@ -47,6 +47,12 @@
- #include <asm/page.h>
- #include <sys/sysctl.h>
-
-+/* see http://www.ussg.iu.edu/hypermail/linux/kernel/0311.0/0529.html */
-+#include <linux/version.h>
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,23))
-+#define CTL_BUS_ISA BUS_ISA /* and hope it's not the one from linux/input.h */
-+#endif
-+
- #define PATH_ARM_SYSTYPE "/etc/arm_systype"
- #define PATH_CPUINFO "/proc/cpuinfo"
-
-@@ -80,7 +86,7 @@
- * Initialize I/O system. There are several ways to get the information
- * we need. Each is tried in turn until one succeeds.
- *
-- * 1. Sysctl (CTL_BUS, BUS_ISA, ISA_*). This is the preferred method
-+ * 1. Sysctl (CTL_BUS, CTL_BUS_ISA, ISA_*). This is the preferred method
- * but not all kernels support it.
- *
- * 2. Read the value (not the contents) of symlink PATH_ARM_SYSTYPE.
-@@ -100,8 +106,8 @@
- {
- char systype[256];
- int i, n;
-- static int iobase_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_BASE };
-- static int ioshift_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_SHIFT };
-+ static int iobase_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_BASE };
-+ static int ioshift_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_SHIFT };
- size_t len = sizeof(io.base);
-
- if (! sysctl (iobase_name, 3, &io.io_base, &len, NULL, 0)
-
-Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
diff --git a/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_socket_S-alias.diff b/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_socket_S-alias.diff
deleted file mode 100644
index 1819990..0000000
--- a/patches/glibc-2.3.6/generic/sysdeps_unix_sysv_linux_arm_socket_S-alias.diff
+++ /dev/null
@@ -1,64 +0,0 @@
-#
-# Submitted-By: Marc Kleine-Budde, 2006-08-13
-# Committed-By: Marc Kleine-Budde
-#
-# Error:
-#
-# armeb-xscale-linux-gnu-gcc ../sysdeps/unix/sysv/linux/bind.S -c
-#-I../include
-#-I. -I/home/frogger/pengutronix/ptxdist/build/toolchain-armv5b-softfloat-linux-gnu/build-target/glibc-2.3.6-build/socket
-#-I.. -I../libio
-#-I/home/frogger/pengutronix/ptxdist/build/toolchain-armv5b-softfloat-linux-gnu/build-target/glibc-2.3.6-build
-#-I../sysdeps/arm/elf -I../linuxthreads/sysdeps/unix/sysv/linux/arm
-#-I../linuxthreads/sysdeps/unix/sysv/linux
-#-I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread
-#-I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix
-#-I../linuxthreads/sysdeps/arm -I../sysdeps/unix/sysv/linux/arm
-#-I../sysdeps/unix/sysv/linux -I../sysdeps/gnu
-#-I../sysdeps/unix/common -I../sysdeps/unix/mman
-#-I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/arm
-#-I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/arm
-#-I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32
-#-I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754
-#-I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem
-#/usr/opt/ptxdist-0.10.svn/armeb-xscale-linux-gnu/gcc-4.1.1-glibc-2.3.6/bin/../lib/gcc/armeb-xscale-linux-gnu/4.1.1/include
-#-isystem
-#/opt/ptxdist-0.10.svn/armeb-xscale-linux-gnu/gcc-4.1.1-glibc-2.3.6/sysroot-armeb-xscale-linux-gnu/usr/include
-#-D_LIBC_REENTRANT -include ../include/libc-symbols.h -DASSEMBLER -g
-#-o
-#/home/frogger/pengutronix/ptxdist/build/toolchain-armv5b-softfloat-linux-gnu/build-target/glibc-2.3.6-build/socket/bind.o
-#-MD -MP -MF
-#/home/frogger/pengutronix/ptxdist/build/toolchain-armv5b-softfloat-linux-gnu/build-target/glibc-2.3.6-build/socket/bind.o.dt
-#-MT
-#/home/frogger/pengutronix/ptxdist/build/toolchain-armv5b-softfloat-linux-gnu/build-target/glibc-2.3.6-build/socket/bind.o
-#../sysdeps/unix/sysv/linux/bind.S: Assembler messages:
-#../sysdeps/unix/sysv/linux/bind.S:5: Error: symbol `__bind' is already defined
-#
-# State:
-#
-# fixed in glibc-ports-2.4
-#
-Index: sysdeps/unix/sysv/linux/arm/socket.S
-===================================================================
---- a/sysdeps/unix/sysv/linux/arm/socket.S.orig
-+++ b/sysdeps/unix/sysv/linux/arm/socket.S
-@@ -32,7 +32,11 @@
- The .S files for the other calls just #define socket and #include this. */
-
- #ifndef __socket
--#define __socket P(__,socket)
-+# ifndef NO_WEAK_ALIAS
-+# define __socket P(__,socket)
-+# else
-+# define __socket socket
-+# endif
- #endif
-
- #define PUSHARGS_1 str a1, [sp, $-4]!
-@@ -120,4 +124,6 @@ ENTRY (__socket)
-
- PSEUDO_END (__socket)
-
-+#ifndef NO_WEAK_ALIAS
- weak_alias (__socket, socket)
-+#endif
diff --git a/patches/glibc-ports-2.13/0001-Revert-fix-unwinding-through-Thumb-2-system-calls.patch b/patches/glibc-ports-2.13/0001-Revert-fix-unwinding-through-Thumb-2-system-calls.patch
deleted file mode 100644
index 5a399e3..0000000
--- a/patches/glibc-ports-2.13/0001-Revert-fix-unwinding-through-Thumb-2-system-calls.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-Revert the patch below.
-
-Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-
----
-
-From 2dcd7ed8fd149a5aefc8c7a7ff041ff389348b4f Mon Sep 17 00:00:00 2001
-From: Daniel Jacobowitz <dan@codesourcery.com>
-Date: Thu, 8 Apr 2010 12:43:55 -0400
-Subject: [PATCH] Fix unwinding through Thumb-2 system calls.
-
----
- ChangeLog.arm | 9 ---
- sysdeps/unix/sysv/linux/arm/eabi/Makefile | 31 ------------
- sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S | 43 -----------------
- sysdeps/unix/sysv/linux/arm/eabi/nptl/aio_misc.h | 52 +++++++++++++++++++++
- sysdeps/unix/sysv/linux/arm/eabi/sysdep.h | 38 ++++++---------
- 5 files changed, 69 insertions(+), 104 deletions(-)
- create mode 100644 sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S
- delete mode 100644 sysdeps/unix/sysv/linux/arm/eabi/nptl/aio_misc.h
-
-Index: glibc-ports-2.13/ChangeLog.arm
-===================================================================
---- glibc-ports-2.13.orig/ChangeLog.arm
-+++ glibc-ports-2.13/ChangeLog.arm
-@@ -68,15 +68,6 @@
-
- * sysdeps/unix/sysv/linux/arm/eabi/internal_recvmmsg.S: New.
-
--2010-04-08 Daniel Jacobowitz <dan@codesourcery.com>
--
-- * sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S: New file.
-- * sysdeps/unix/sysv/linux/arm/eabi/sysdep.h [__thumb__]
-- (INTERNAL_SYSCALL_RAW): Rewrite to use __libc_do_syscall.
-- * sysdeps/unix/sysv/linux/arm/eabi/Makefile: Add libc-do-syscall
-- to libraries and tests that require it.
-- * sysdeps/unix/sysv/linux/arm/eabi/nptl/aio_misc.h: Delete.
--
- 2010-03-30 Joseph Myers <joseph@codesourcery.com>
-
- * sysdeps/arm/dl-machine.h (VALID_ELF_ABIVERSION, VALID_ELF_OSABI,
-Index: glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S
-===================================================================
---- glibc-ports-2.13.orig/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S
-+++ /dev/null
-@@ -1,43 +0,0 @@
--/* Copyright (C) 2010 Free Software Foundation, Inc.
-- This file is part of the GNU C Library.
--
-- The GNU C Library is free software; you can redistribute it and/or
-- modify it under the terms of the GNU Lesser General Public
-- License as published by the Free Software Foundation; either
-- version 2.1 of the License, or (at your option) any later version.
--
-- The GNU C Library is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-- Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public
-- License along with the GNU C Library; if not, write to the Free
-- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-- 02111-1307 USA. */
--
--#include <sysdep.h>
--
--/* Out-of-line syscall stub. We expect the system call number in ip
-- and return the raw result in r0. No registers are clobbered.
-- We could avoid using the stack for this, but the goal is accurate
-- unwind information - and while there is a reserved prefix in the
-- ARM unwind tables for register to register moves, the actual opcodes
-- are not defined. */
--
-- .thumb
-- .syntax unified
-- .hidden __libc_do_syscall
--
--ENTRY (__libc_do_syscall)
-- .fnstart
-- push {r7, lr}
-- .save {r7, lr}
-- cfi_adjust_cfa_offset (8)
-- cfi_rel_offset (r7, 0)
-- cfi_rel_offset (lr, 4)
-- mov r7, ip
-- swi 0x0
-- pop {r7, pc}
-- .fnend
--END (__libc_do_syscall)
-Index: glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/Makefile
-===================================================================
---- glibc-ports-2.13.orig/sysdeps/unix/sysv/linux/arm/eabi/Makefile
-+++ glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/Makefile
-@@ -7,34 +7,3 @@ ifeq ($(subdir),csu)
- # unwind tables for __libc_start_main.
- CFLAGS-libc-start.c += -fexceptions
- endif
--
--# Add a syscall function to each library that needs one.
--
--ifeq ($(subdir),rt)
--librt-sysdep_routines += libc-do-syscall
--librt-shared-only-routines += libc-do-syscall
--endif
--
--ifeq ($(subdir),nptl)
--libpthread-sysdep_routines += libc-do-syscall
--libpthread-shared-only-routines += libc-do-syscall
--endif
--
--ifeq ($(subdir),resolv)
--libanl-sysdep_routines += libc-do-syscall
--libanl-shared-only-routines += libc-do-syscall
--endif
--
--ifeq ($(subdir),csu)
--sysdep_routines += libc-do-syscall
--endif
--
--ifeq ($(subdir),nscd)
--nscd-modules += libc-do-syscall
--endif
--
--ifeq ($(subdir),posix)
--LDFLAGS-tst-rfc3484 += $(common-objpfx)csu/libc-do-syscall.o
--LDFLAGS-tst-rfc3484-2 += $(common-objpfx)csu/libc-do-syscall.o
--LDFLAGS-tst-rfc3484-3 += $(common-objpfx)csu/libc-do-syscall.o
--endif
-Index: glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/nptl/aio_misc.h
-===================================================================
---- /dev/null
-+++ glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/nptl/aio_misc.h
-@@ -0,0 +1,52 @@
-+/* Copyright (C) 2008 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, write to the Free
-+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-+ 02111-1307 USA. */
-+
-+#include_next <aio_misc.h>
-+
-+#ifdef __thumb2__
-+
-+#include <errno.h>
-+
-+/* The Thumb-2 definition of INTERNAL_SYSCALL_RAW has to hide the use
-+ of r7 from the compiler because it cannot handle asm clobbering the
-+ hard frame pointer. In aio_suspend, GCC does not eliminate the
-+ hard frame pointer because the function uses variable-length
-+ arrays, so it generates unwind information using r7 as virtual
-+ stack pointer. During system calls, when r7 has been saved on the
-+ stack, this means the unwind information is invalid. Without extra
-+ unwind directives, which would need to cause unwind information for
-+ the asm to be generated separately from that for the parts of the
-+ function before and after the asm (with three index table entries),
-+ it is not possible to represent any temporary change to the virtual
-+ stack pointer. Instead, we move the problematic system calls out
-+ of line into a function that does not require a frame pointer. */
-+
-+static __attribute_noinline__ void
-+aio_misc_wait (int *resultp,
-+ volatile int *futexp,
-+ const struct timespec *timeout,
-+ int cancel)
-+{
-+ AIO_MISC_WAIT (*resultp, *futexp, timeout, cancel);
-+}
-+
-+#undef AIO_MISC_WAIT
-+#define AIO_MISC_WAIT(result, futex, timeout, cancel) \
-+ aio_misc_wait (&result, &futex, timeout, cancel)
-+
-+#endif
-Index: glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h
-===================================================================
---- glibc-ports-2.13.orig/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h
-+++ glibc-ports-2.13/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h
-@@ -44,34 +44,30 @@
- argument; otherwise the (optional) compatibility code for APCS binaries
- may be invoked. */
-
--#if defined(__thumb__)
--/* We can not expose the use of r7 to the compiler. GCC (as
-- of 4.5) uses r7 as the hard frame pointer for Thumb - although
-- for Thumb-2 it isn't obviously a better choice than r11.
-- And GCC does not support asms that conflict with the frame
-- pointer.
--
-- This would be easier if syscall numbers never exceeded 255,
-- but they do. For the moment the LOAD_ARGS_7 is sacrificed.
-+#ifdef __thumb__
-+/* Hide the use of r7 from the compiler, this would be a lot
-+ easier but for the fact that the syscalls can exceed 255.
-+ For the moment the LOAD_ARGS_7 is sacrificed.
- We can't use push/pop inside the asm because that breaks
-- unwinding (i.e. thread cancellation) for this frame. We can't
-- locally save and restore r7, because we do not know if this
-- function uses r7 or if it is our caller's r7; if it is our caller's,
-- then unwinding will fail higher up the stack. So we move the
-- syscall out of line and provide its own unwind information. */
-+ unwinding (ie. thread cancellation). */
-+/* FIXME: the str / ldr of r7 are not covered by CFI information. */
- #undef LOAD_ARGS_7
- #undef INTERNAL_SYSCALL_RAW
- #define INTERNAL_SYSCALL_RAW(name, err, nr, args...) \
- ({ \
-+ int _sys_buf[2]; \
- register int _a1 asm ("a1"); \
-- int _nametmp = name; \
-+ register int *_r6 asm ("r6") = _sys_buf; \
-+ *_r6 = name; \
- LOAD_ARGS_##nr (args) \
-- register int _name asm ("ip") = _nametmp; \
-- asm volatile ("bl __libc_do_syscall" \
-- : "=r" (_a1) \
-- : "r" (_name) ASM_ARGS_##nr \
-- : "memory", "lr"); \
-- _a1; })
-+ asm volatile ("str r7, [r6, #4]\n\t" \
-+ "ldr r7, [r6]\n\t" \
-+ "swi 0 @ syscall " #name "\n\t" \
-+ "ldr r7, [r6, #4]" \
-+ : "=r" (_a1) \
-+ : "r" (_r6) ASM_ARGS_##nr \
-+ : "memory"); \
-+ _a1; })
- #else /* ARM */
- #undef INTERNAL_SYSCALL_RAW
- #define INTERNAL_SYSCALL_RAW(name, err, nr, args...) \
diff --git a/patches/glibc-ports-2.13/series b/patches/glibc-ports-2.13/series
deleted file mode 100644
index 8261dcf..0000000
--- a/patches/glibc-ports-2.13/series
+++ /dev/null
@@ -1 +0,0 @@
-0001-Revert-fix-unwinding-through-Thumb-2-system-calls.patch
diff --git a/patches/linux-2.6.18/generic/0001--POWERPC-Select-proper-defconfig-for-crosscompiles.patch b/patches/linux-2.6.18/generic/0001--POWERPC-Select-proper-defconfig-for-crosscompiles.patch
deleted file mode 100644
index b6ce1dc..0000000
--- a/patches/linux-2.6.18/generic/0001--POWERPC-Select-proper-defconfig-for-crosscompiles.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From ca786f83a97d7897b013b1e9b290c9010b69af9b Mon Sep 17 00:00:00 2001
-From: Adrian Bunk <bunk@kernel.org>
-Date: Tue, 2 Oct 2007 13:30:09 -0700
-Subject: [PATCH] [POWERPC] Select proper defconfig for crosscompiles
-
-The trick for finding the right defconfig is neat, but you forgot to
-provide an i686_defconfig. ;-)
-
-More seriously, cross compiling the defconfig is often useful, e.g. for
-testing the compilation of patches that touch multiple architectures,
-and this patch therefore chooses g5_defconfig if $(CROSS_COMPILE) is
-non-empty.
-
-Signed-off-by: Adrian Bunk <bunk@kernel.org>
-Acked-by: Sam Ravnborg <sam@ravnborg.org>
-Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-Cc: Olof Johansson <olof@lixom.net>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-Signed-off-by: Paul Mackerras <paulus@samba.org>
----
- arch/powerpc/Makefile | 4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
-index dc2d18e..643839a 100644
---- a/arch/powerpc/Makefile
-+++ b/arch/powerpc/Makefile
-@@ -35,7 +35,11 @@ endif
-
- export CROSS32CC CROSS32AS CROSS32LD CROSS32AR CROSS32OBJCOPY
-
-+ifeq ($(CROSS_COMPILE),)
- KBUILD_DEFCONFIG := $(shell uname -m)_defconfig
-+else
-+KBUILD_DEFCONFIG := ppc64_defconfig
-+endif
-
- ifeq ($(CONFIG_PPC64),y)
- OLDARCH := ppc64
---
-1.5.6.5
-
diff --git a/patches/linux-2.6.18/generic/series b/patches/linux-2.6.18/generic/series
deleted file mode 100644
index 458ce5e..0000000
--- a/patches/linux-2.6.18/generic/series
+++ /dev/null
@@ -1 +0,0 @@
-0001--POWERPC-Select-proper-defconfig-for-crosscompiles.patch