diff options
Diffstat (limited to 'meta')
68 files changed, 0 insertions, 6111 deletions
diff --git a/meta/packages/glibc/files/5090_all_stubs-rule-fix.patch b/meta/packages/glibc/files/5090_all_stubs-rule-fix.patch deleted file mode 100644 index c445a5296e..0000000000 --- a/meta/packages/glibc/files/5090_all_stubs-rule-fix.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: Makerules -=================================================================== -RCS file: /cvs/glibc/libc/Makerules,v -retrieving revision 1.430 -diff -u -r1.430 Makerules ---- libc/Makerules 5 Mar 2005 19:24:32 -0000 1.430 -+++ libc/Makerules 22 Apr 2005 18:31:27 -0000 -@@ -1390,15 +1390,26 @@ - $(addprefix $(objpfx),$(extra-objs)) - $(objpfx)stubs: $(objs-for-stubs) - ifneq (,$(strip $(objs-for-stubs))) -- $(OBJDUMP) -h $^ | \ -- $(AWK) '/\.gnu\.glibc-stub\./ { \ -- sub(/\.gnu\.glibc-stub\./, "", $$2); \ -- stubs[$$2] = 1; } \ -- END { for (s in stubs) print "#define __stub_" s }' > $@T -+ $(stub-obj-list) -+ cat $@L | xargs \ -+ $(OBJDUMP) -h | \ -+ $(AWK) '/\.gnu\.glibc-stub\./ { \ -+ sub(/\.gnu\.glibc-stub\./, "", $$2); \ -+ stubs[$$2] = 1; } \ -+ END { for (s in stubs) print "#define __stub_" s }' \ -+ > $@T -+ -rm -f $@L - mv -f $@T $@ - else - > $@ - endif -+ -+define stub-obj-list -+-@rm -f $@L -+-@echo "Generating stub obj list..." -+$(foreach file,$^, -+@echo >> $@L '$(file)') -+endef - - # This information is not used for making distributions any more. - # But it's used by MakeTAGS for making TAGS files and the .pot files. diff --git a/meta/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch b/meta/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch deleted file mode 100644 index e137287dd1..0000000000 --- a/meta/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch +++ /dev/null @@ -1,41 +0,0 @@ -# All lines beginning with `# DP:' are a description of the patch. -# DP: Description: allow dynamic long-running processes to -# DP: re-read a dynamically updated resolv.conf on the fly -# DP: Dpatch author: Adam Conrad <adconrad@ubuntu.com> -# DP: Patch author: Thorsten Kukuk <kukuk@suse.de> -# DP: Upstream status: Ubuntu-Specific -# DP: Date: 2006-01-13 08:14:21 UTC - -Index: resolv/res_libc.c -=================================================================== ---- resolv/res_libc.c.orig -+++ resolv/res_libc.c -@@ -22,7 +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 - out) since res_init() should go into libc.so but the rest of that -@@ -94,8 +94,17 @@ - int - __res_maybe_init (res_state resp, int preinit) - { -- if (resp->options & RES_INIT) { -- if (__res_initstamp != resp->_u._ext.initstamp) { -+ static time_t last_mtime; -+ struct stat statbuf; -+ int ret; -+ -+ -+ if (resp->options & RES_INIT) { -+ ret = stat (_PATH_RESCONF, &statbuf); -+ if (__res_initstamp != resp->_u._ext.initstamp -+ || (ret == 0) && (last_mtime != statbuf.st_mtime)) -+ { -+ last_mtime = statbuf.st_mtime; - if (resp->nscount > 0) { - __res_iclose (resp, true); - return __res_vinit (resp, 1); diff --git a/meta/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch b/meta/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch deleted file mode 100644 index 33d5282b90..0000000000 --- a/meta/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch +++ /dev/null @@ -1,20 +0,0 @@ -Submitted By: Joe Ciccone <jciccone@linuxfromscratch.org> -Date: 07-02-2007 -Initial Package Version: 2.6 -Origin: http://sourceware.org/ml/libc-ports/2007-05/msg00051.html -Upstream Status: Unknown -Description: Defines RTLD_SINGLE_THREAD_P for arm. - -diff -Naur glibc-2.6.orig/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h glibc-2.6/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h ---- glibc-2.6.orig/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h 2007-07-02 17:39:22.000000000 -0400 -+++ glibc-2.6/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h 2007-07-02 17:39:36.000000000 -0400 -@@ -126,3 +126,9 @@ - # define NO_CANCELLATION 1 - - #endif -+ -+#ifndef __ASSEMBLER__ -+# define RTLD_SINGLE_THREAD_P \ -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -+ header.multiple_threads) == 0, 1) -+#endif diff --git a/meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch b/meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch deleted file mode 100644 index 6979229279..0000000000 --- a/meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch +++ /dev/null @@ -1,30 +0,0 @@ -Source: http://sourceware.org/ml/libc-alpha/2008-01/msg00017.html - -I am checking this x86 assembler patch: - -http://sourceware.org/ml/binutils/2008-01/msg00148.html - -to check operand size. fnstsw stores 16bit into %ax. The upper -16bit of %eax is unchanged. The new assembler will disallow -"fnstsw %eax". Here is a patch for glibc. - - -H.J. - ---- - sysdeps/i386/fpu/ftestexcept.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c -=================================================================== ---- glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:00:45.000000000 -0700 -+++ glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:01:25.000000000 -0700 -@@ -26,7 +26,7 @@ - int - fetestexcept (int excepts) - { -- int temp; -+ short temp; - int xtemp = 0; - - /* Get current exceptions. */ diff --git a/meta/packages/glibc/files/no-hwcaps.patch b/meta/packages/glibc/files/no-hwcaps.patch deleted file mode 100644 index 5cc2821c2f..0000000000 --- a/meta/packages/glibc/files/no-hwcaps.patch +++ /dev/null @@ -1,52 +0,0 @@ -Disable the extra hwcaps fields, they cause ld.so to look in many strange paths -before searching for binaries in /lib. We don't install binaries into any other -place so this just wastes time. - -RP - 20/08/2008 - -Index: glibc-2.6.1/elf/dl-sysdep.c -=================================================================== ---- glibc-2.6.1.orig/elf/dl-sysdep.c 2008-08-15 15:54:49.000000000 +0100 -+++ glibc-2.6.1/elf/dl-sysdep.c 2008-08-15 17:45:28.000000000 +0100 -@@ -346,7 +346,7 @@ - { - /* Determine how many important bits are set. */ - uint64_t masked = GLRO(dl_hwcap) & GLRO(dl_hwcap_mask); -- size_t cnt = platform != NULL; -+ size_t cnt = 0; - size_t n, m; - size_t total; - struct r_strlenpair *temp; -@@ -354,11 +354,6 @@ - struct r_strlenpair *rp; - char *cp; - -- /* Count the number of bits set in the masked value. */ -- for (n = 0; (~((1ULL << n) - 1) & masked) != 0; ++n) -- if ((masked & (1ULL << n)) != 0) -- ++cnt; -- - #if (defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO) && defined SHARED - /* The system-supplied DSO can contain a note of type 2, vendor "GNU". - This gives us a list of names to treat as fake hwcap bits. */ -@@ -434,20 +429,6 @@ - } - } - #endif -- for (n = 0; masked != 0; ++n) -- if ((masked & (1ULL << n)) != 0) -- { -- temp[m].str = _dl_hwcap_string (n); -- temp[m].len = strlen (temp[m].str); -- masked ^= 1ULL << n; -- ++m; -- } -- if (platform != NULL) -- { -- temp[m].str = platform; -- temp[m].len = platform_len; -- ++m; -- } - - temp[m].str = "tls"; - temp[m].len = 3; diff --git a/meta/packages/glibc/files/nopageheader.patch b/meta/packages/glibc/files/nopageheader.patch deleted file mode 100644 index 0416711586..0000000000 --- a/meta/packages/glibc/files/nopageheader.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c -=================================================================== ---- glibc-2.6.1.orig/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2005-06-10 11:12:09.000000000 +0000 -+++ glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2009-06-16 21:16:16.007016198 +0000 -@@ -45,7 +45,6 @@ - #include <sys/mman.h> - - #include <linux/version.h> --#include <asm/page.h> - #include <sys/sysctl.h> - - #define PATH_ARM_SYSTYPE "/etc/arm_systype" diff --git a/meta/packages/glibc/files/nptl-crosscompile-2.3.6.patch b/meta/packages/glibc/files/nptl-crosscompile-2.3.6.patch deleted file mode 100644 index 2df3cd998b..0000000000 --- a/meta/packages/glibc/files/nptl-crosscompile-2.3.6.patch +++ /dev/null @@ -1,175 +0,0 @@ -diff ---- glibc-2.3.6/nptl/sysdeps/pthread/configure.in.orig 2006-09-14 11:12:16.000000000 +0100 -+++ glibc-2.3.6/nptl/sysdeps/pthread/configure.in 2006-09-14 11:12:16.000000000 +0100 -@@ -21,29 +21,4 @@ - - dnl Iff <unwind.h> is available, make sure it is the right one and it - dnl contains struct _Unwind_Exception. --AC_CACHE_CHECK(dnl --for forced unwind support, libc_cv_forced_unwind, [dnl --AC_TRY_LINK([#include <unwind.h>], [ --struct _Unwind_Exception exc; --struct _Unwind_Context *context; --_Unwind_GetCFA (context)], --libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)]) --if test $libc_cv_forced_unwind = yes; then -- AC_DEFINE(HAVE_FORCED_UNWIND) --dnl Check for C cleanup handling. -- old_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -Werror -fexceptions" -- AC_CACHE_CHECK([for C cleanup handling], libc_cv_c_cleanup, [dnl -- AC_TRY_LINK([ --#include <stdio.h> --void cl (void *a) { }], [ -- int a __attribute__ ((cleanup (cl))); -- puts ("test")], --libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)]) -- CFLAGS="$old_CFLAGS" -- if test $libc_cv_c_cleanup = no; then -- AC_MSG_ERROR([the compiler must support C cleanup handling]) -- fi --else -- AC_MSG_ERROR(forced unwind support is required) --fi -+AC_DEFINE(HAVE_FORCED_UNWIND) -diff ---- glibc-2.3.6/nptl/sysdeps/pthread/configure.orig 2006-09-14 11:11:12.000000000 +0100 -+++ glibc-2.3.6/nptl/sysdeps/pthread/configure 2006-09-14 11:11:12.000000000 +0100 -@@ -24,136 +24,7 @@ - fi - - --echo "$as_me:$LINENO: checking for forced unwind support" >&5 --echo $ECHO_N "checking for forced unwind support... $ECHO_C" >&6 --if test "${libc_cv_forced_unwind+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#include <unwind.h> --int --main () --{ -- --struct _Unwind_Exception exc; --struct _Unwind_Context *context; --_Unwind_GetCFA (context) -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>conftest.er1 -- ac_status=$? -- grep -v '^ *+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- libc_cv_forced_unwind=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --libc_cv_forced_unwind=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $libc_cv_forced_unwind" >&5 --echo "${ECHO_T}$libc_cv_forced_unwind" >&6 --if test $libc_cv_forced_unwind = yes; then -- cat >>confdefs.h <<\_ACEOF -+cat >>confdefs.h <<\_ACEOF - #define HAVE_FORCED_UNWIND 1 - _ACEOF - -- old_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -Werror -fexceptions" -- echo "$as_me:$LINENO: checking for C cleanup handling" >&5 --echo $ECHO_N "checking for C cleanup handling... $ECHO_C" >&6 --if test "${libc_cv_c_cleanup+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -- --#include <stdio.h> --void cl (void *a) { } --int --main () --{ -- -- int a __attribute__ ((cleanup (cl))); -- puts ("test") -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>conftest.er1 -- ac_status=$? -- grep -v '^ *+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- libc_cv_c_cleanup=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --libc_cv_c_cleanup=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $libc_cv_c_cleanup" >&5 --echo "${ECHO_T}$libc_cv_c_cleanup" >&6 -- CFLAGS="$old_CFLAGS" -- if test $libc_cv_c_cleanup = no; then -- { { echo "$as_me:$LINENO: error: the compiler must support C cleanup handling" >&5 --echo "$as_me: error: the compiler must support C cleanup handling" >&2;} -- { (exit 1); exit 1; }; } -- fi --else -- { { echo "$as_me:$LINENO: error: forced unwind support is required" >&5 --echo "$as_me: error: forced unwind support is required" >&2;} -- { (exit 1); exit 1; }; } --fi diff --git a/meta/packages/glibc/files/etc/ld.so.conf b/meta/packages/glibc/glibc-2.10.1/etc/ld.so.conf index ddd777db2a..ddd777db2a 100644 --- a/meta/packages/glibc/files/etc/ld.so.conf +++ b/meta/packages/glibc/glibc-2.10.1/etc/ld.so.conf diff --git a/meta/packages/glibc/files/fhs-linux-paths.patch b/meta/packages/glibc/glibc-2.10.1/fhs-linux-paths.patch index 1f32f6d7f2..1f32f6d7f2 100644 --- a/meta/packages/glibc/files/fhs-linux-paths.patch +++ b/meta/packages/glibc/glibc-2.10.1/fhs-linux-paths.patch diff --git a/meta/packages/glibc/files/generate-supported.mk b/meta/packages/glibc/glibc-2.10.1/generate-supported.mk index d2a28c2dc6..d2a28c2dc6 100644 --- a/meta/packages/glibc/files/generate-supported.mk +++ b/meta/packages/glibc/glibc-2.10.1/generate-supported.mk diff --git a/meta/packages/glibc/glibc-2.4/arm-longlong.patch b/meta/packages/glibc/glibc-2.4/arm-longlong.patch deleted file mode 100644 index 28aca83dff..0000000000 --- a/meta/packages/glibc/glibc-2.4/arm-longlong.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- glibc-2.4/stdlib/longlong.h.ark 2006-03-11 22:49:27.000000000 +0100 -+++ glibc-2.4/stdlib/longlong.h 2006-03-11 22:55:12.000000000 +0100 -@@ -206,6 +206,14 @@ - "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" \ -@@ -227,7 +235,13 @@ - : "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 (__hppa) && W_TYPE_SIZE == 32 ---- glibc-2.4/ports/sysdeps/arm/mp_clz_tab.c.ark 2006-03-11 22:56:43.000000000 +0100 -+++ glibc-2.4/ports/sysdeps/arm/mp_clz_tab.c 2006-03-11 22:58:19.000000000 +0100 -@@ -0,0 +1,24 @@ -+/* __clz_tab -- support for longlong.h -+ Copyright (C) 2004 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. */ -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+/* Nothing required. */ -+#else -+#include <stdlib/mp_clz_tab.c> -+#endif diff --git a/meta/packages/glibc/glibc-2.4/arm-memcpy.patch b/meta/packages/glibc/glibc-2.4/arm-memcpy.patch deleted file mode 100644 index bc2b3dab84..0000000000 --- a/meta/packages/glibc/glibc-2.4/arm-memcpy.patch +++ /dev/null @@ -1,758 +0,0 @@ ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/memmove.S 2004-03-20 18:37:23.000000000 +0000 -@@ -0,0 +1,251 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memmove (char *dst, const char *src) */ -+ENTRY(memmove) -+ subs ip, r0, r1 -+ cmphi r2, ip -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r0, r4, lr} -+ add r1, r1, r2 -+ add r0, r0, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, r0, #3 -+ PLD( pld [r1, #-4] ) -+ bne 26f -+ ands ip, r1, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [r1, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb r1!, {r3 - r6} ) -+ PLD( stmgedb r0!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( ldrge r4, [r1, #-4]! ) -+ PLD( ldrgt r5, [r1, #-4]! ) -+ PLD( str r3, [r0, #-4]! ) -+ PLD( strge r4, [r0, #-4]! ) -+ PLD( strgt r5, [r0, #-4]! ) -+ -+20: PLD( pld [r1, #-96] ) -+ PLD( pld [r1, #-128] ) -+21: ldmdb r1!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ ldmdb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb r1!, {r3, r4, ip, lr} -+ stmnedb r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb r1!, {r3, r4} -+ stmnedb r0!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [r1, #-4]! -+ strne r3, [r0, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1, #-1] -+ ldrgeb r4, [r1, #-2] -+ ldrgtb ip, [r1, #-3] -+ strb r3, [r0, #-1] -+ strgeb r4, [r0, #-2] -+ strgtb ip, [r0, #-3] -+ ldmfd sp!, {r0, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [r1, #-1]! -+ ldrgeb r4, [r1, #-1]! -+ ldrgtb lr, [r1, #-1]! -+ strb r3, [r0, #-1]! -+ strgeb r4, [r0, #-1]! -+ strgtb lr, [r0, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, r1, #3 -+ beq 19b -+ -+27: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr r3, [r1] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [r1, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [r1, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [r1, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [r0, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [r1, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb r1!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb r1!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [r1, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [r0, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add r1, r1, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add r1, r1, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add r1, r1, #1 -+ b 25b -+ -+ .size memmove, . - memmove -+END(memmove) -+libc_hidden_builtin_def (memmove) ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/bcopy.S 2004-03-20 18:37:48.000000000 +0000 -@@ -0,0 +1,255 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+dst .req r1 -+src .req r0 -+ -+/* void *bcopy (const char *src, char *dst, size_t size) */ -+ENTRY(bcopy) -+ subs ip, dst, src -+ cmphi r2, ip -+ movls r3, r0 -+ movls r0, r1 -+ movls r1, r3 -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r4, lr} -+ add src, src, r2 -+ add dst, dst, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, dst, #3 -+ PLD( pld [src, #-4] ) -+ bne 26f -+ ands ip, src, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [src, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb src!, {r3 - r6} ) -+ PLD( stmgedb dst!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( ldrge r4, [src, #-4]! ) -+ PLD( ldrgt r5, [src, #-4]! ) -+ PLD( str r3, [dst, #-4]! ) -+ PLD( strge r4, [dst, #-4]! ) -+ PLD( strgt r5, [dst, #-4]! ) -+ -+20: PLD( pld [src, #-96] ) -+ PLD( pld [src, #-128] ) -+21: ldmdb src!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ ldmdb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb src!, {r3, r4, ip, lr} -+ stmnedb dst!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb src!, {r3, r4} -+ stmnedb dst!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [src, #-4]! -+ strne r3, [dst, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {dst, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [src, #-1] -+ ldrgeb r4, [src, #-2] -+ ldrgtb ip, [src, #-3] -+ strb r3, [dst, #-1] -+ strgeb r4, [dst, #-2] -+ strgtb ip, [dst, #-3] -+ ldmfd sp!, {dst, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [src, #-1]! -+ ldrgeb r4, [src, #-1]! -+ ldrgtb lr, [src, #-1]! -+ strb r3, [dst, #-1]! -+ strgeb r4, [dst, #-1]! -+ strgtb lr, [dst, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, src, #3 -+ beq 19b -+ -+27: bic src, src, #3 -+ cmp ip, #2 -+ ldr r3, [src] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [src, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [src, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [src, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [dst, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [src, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb src!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb src!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [src, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [dst, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add src, src, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add src, src, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add src, src, #1 -+ b 25b -+ -+ .size bcopy, . - bcopy -+END(bcopy) - ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/memcpy.S 2004-05-02 14:33:22.000000000 +0100 -@@ -0,0 +1,242 @@ -+/* -+ * Optimized memcpy implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memcpy (char *dst, const char *src) */ -+ -+ENTRY(memcpy) -+ subs r2, r2, #4 -+ stmfd sp!, {r0, r4, lr} -+ blt 7f -+ ands ip, r0, #3 -+ PLD( pld [r1, #0] ) -+ bne 8f -+ ands ip, r1, #3 -+ bne 9f -+ -+1: subs r2, r2, #4 -+ blt 6f -+ subs r2, r2, #8 -+ blt 5f -+ subs r2, r2, #16 -+ blt 4f -+ -+ PLD( subs r2, r2, #65 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 3f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #64] ) -+ PLD( beq 2f ) -+ PLD( rsb ip, ip, #32 ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #96] ) -+ PLD( blt 2f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgeia r1!, {r3 - r6} ) -+ PLD( stmgeia r0!, {r3 - r6} ) -+ PLD( beq 2f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1], #4 ) -+ PLD( ldrge r4, [r1], #4 ) -+ PLD( ldrgt r5, [r1], #4 ) -+ PLD( str r3, [r0], #4 ) -+ PLD( strge r4, [r0], #4 ) -+ PLD( strgt r5, [r0], #4 ) -+ -+2: PLD( pld [r1, #96] ) -+3: ldmia r1!, {r3 - r8, ip, lr} -+ subs r2, r2, #32 -+ stmia r0!, {r3 - r8, ip, lr} -+ bge 2b -+ PLD( cmn r2, #65 ) -+ PLD( bge 3b ) -+ PLD( add r2, r2, #65 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+4: ldmneia r1!, {r3, r4, ip, lr} -+ stmneia r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+5: ldmneia r1!, {r3, r4} -+ stmneia r0!, {r3, r4} -+ -+ tst r2, #4 -+6: ldrne r3, [r1], #4 -+ strne r3, [r0], #4 -+ -+7: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb ip, [r1] -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb ip, [r0] -+ ldmfd sp!, {r0, r4, pc} -+ -+8: rsb ip, ip, #4 -+ cmp ip, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb lr, [r1], #1 -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb lr, [r0], #1 -+ subs r2, r2, ip -+ blt 7b -+ ands ip, r1, #3 -+ beq 1b -+ -+9: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr lr, [r1], #4 -+ beq 17f -+ bgt 18f -+ -+ -+ .macro forward_copy_shift pull push -+ -+ cmp r2, #12 -+ PLD( pld [r1, #0] ) -+ blt 15f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 13f -+ -+ PLD( subs r2, r2, #97 ) -+ PLD( blt 12f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( rsb ip, r1, #36 ) -+ PLD( pld [r1, #64] ) -+ PLD( ands ip, ip, #31 ) -+ PLD( pld [r1, #96] ) -+ PLD( beq 11f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #128] ) -+ PLD( blt 11f ) -+ PLD( sub r2, r2, ip ) -+10: PLD( mov r3, lr, pull #\pull ) -+ PLD( ldr lr, [r1], #4 ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r3, r3, lr, push #\push ) -+ PLD( str r3, [r0], #4 ) -+ PLD( bgt 10b ) -+ -+11: PLD( pld [r1, #128] ) -+12: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r9, ip, lr} -+ subs r2, r2, #32 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, r7, push #\push -+ mov r7, r7, pull #\pull -+ orr r7, r7, r8, push #\push -+ mov r8, r8, pull #\pull -+ orr r8, r8, r9, push #\push -+ mov r9, r9, pull #\pull -+ orr r9, r9, ip, push #\push -+ mov ip, ip, pull #\pull -+ orr ip, ip, lr, push #\push -+ stmia r0!, {r3 - r9, ip} -+ bge 11b -+ PLD( cmn r2, #97 ) -+ PLD( bge 12b ) -+ PLD( add r2, r2, #97 ) -+ cmn r2, #16 -+ blt 14f -+13: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r6, lr} -+ sub r2, r2, #16 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, lr, push #\push -+ stmia r0!, {r3 - r6} -+14: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 16f -+15: mov r3, lr, pull #\pull -+ ldr lr, [r1], #4 -+ subs r2, r2, #4 -+ orr r3, r3, lr, push #\push -+ str r3, [r0], #4 -+ bge 15b -+16: -+ .endm -+ -+ -+ forward_copy_shift pull=8 push=24 -+ sub r1, r1, #3 -+ b 7b -+ -+17: forward_copy_shift pull=16 push=16 -+ sub r1, r1, #2 -+ b 7b -+ -+18: forward_copy_shift pull=24 push=8 -+ sub r1, r1, #1 -+ b 7b -+ -+ .size memcpy, . - memcpy -+END(memcpy) -+libc_hidden_builtin_def (memcpy) -+ diff --git a/meta/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch b/meta/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch deleted file mode 100644 index 8b36960b04..0000000000 --- a/meta/packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch +++ /dev/null @@ -1,94 +0,0 @@ -From libc-ports-return-430-listarch-libc-ports=sources dot redhat dot com at sourceware dot org Mon Aug 21 20:08:57 2006 -Return-Path: <libc-ports-return-430-listarch-libc-ports=sources dot redhat dot com at sourceware dot org> -Delivered-To: listarch-libc-ports at sources dot redhat dot com -Received: (qmail 9913 invoked by alias); 21 Aug 2006 20:08:56 -0000 -Received: (qmail 9893 invoked by uid 22791); 21 Aug 2006 20:08:53 -0000 -X-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,TW_HM,TW_SG,TW_SN -X-Spam-Check-By: sourceware.org -Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.31.1) with ESMTP; Mon, 21 Aug 2006 20:08:44 +0000 -Received: from drow by nevyn.them.org with local (Exim 4.54) id 1GFG4f-0007gO-TW for libc-ports@sourceware.org; Mon, 21 Aug 2006 16:08:42 -0400 -Date: Mon, 21 Aug 2006 16:08:41 -0400 -From: Daniel Jacobowitz <drow at false dot org> -To: libc-ports at sourceware dot org -Subject: ARM IPC fix -Message-ID: <20060821200841.GA29502@nevyn.them.org> -MIME-Version: 1.0 -Content-Type: text/plain; charset=us-ascii -Content-Disposition: inline -User-Agent: Mutt/1.5.11+cvs20060403 -X-IsSubscribed: yes -Mailing-List: contact libc-ports-help at sourceware dot org; run by ezmlm -Precedence: bulk -List-Subscribe: <mailto:libc-ports-subscribe at sourceware dot org> -List-Post: <mailto:libc-ports at sourceware dot org> -List-Help: <mailto:libc-ports-help at sourceware dot org>, <http://sourceware dot org/lists dot html#faqs> -Sender: libc-ports-owner at sourceware dot org -Delivered-To: mailing list libc-ports at sourceware dot org - -We can't treat msgctl as a real syscall; if we don't add __IPC_64, we'll get -a mismatched type for ipc_perm. Fixed by using the Alpha implementation, -which is similar to the standard i386 implementation but doesn't use -the multiplexer syscall. - --- -Daniel Jacobowitz -CodeSourcery - -2006-08-21 Daniel Jacobowitz <dan@codesourcery.com> - - * sysdeps/unix/sysv/linux/arm/eabi/syscalls.list: Remove msgctl, - shmctl, and semctl. - * sysdeps/unix/sysv/linux/arm/eabi/semctl.c, - sysdeps/unix/sysv/linux/arm/eabi/shmctl.c, - sysdeps/unix/sysv/linux/arm/eabi/msgctl.c: New files. - -Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list -=================================================================== ---- a/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list (revision 147209) -+++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list (working copy) -@@ -1,18 +1,16 @@ - # File name Caller Syscall name # args Strong name Weak names - --# semaphore and shm system calls --msgctl - msgctl i:iip __msgctl msgctl -+# Semaphore and shm system calls. msgctl, shmctl, and semctl have C -+# wrappers (to set __IPC_64). - msgget - msgget i:ii __msgget msgget - msgrcv - msgrcv Ci:ibnii __msgrcv msgrcv - msgsnd - msgsnd Ci:ibni __msgsnd msgsnd - shmat - shmat i:ipi __shmat shmat --shmctl - shmctl i:iip __shmctl shmctl - shmdt - shmdt i:s __shmdt shmdt - shmget - shmget i:iii __shmget shmget - semop - semop i:ipi __semop semop - semtimedop - semtimedop i:ipip semtimedop - semget - semget i:iii __semget semget --semctl - semctl i:iiii __semctl semctl - - # proper socket implementations: - accept - accept Ci:iBN __libc_accept __accept accept - -Property changes on: sysdeps/unix/sysv/linux/arm/eabi/syscalls.list -___________________________________________________________________ -Name: svn:mime-type - - application/octet-stream - -Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c -=================================================================== ---- a/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c (revision 0) -+++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/semctl.c (revision 0) -@@ -0,0 +1 @@ -+#include <sysdeps/unix/sysv/linux/alpha/semctl.c> -Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c -=================================================================== ---- a/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c (revision 0) -+++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/msgctl.c (revision 0) -@@ -0,0 +1 @@ -+#include <sysdeps/unix/sysv/linux/alpha/msgctl.c> -Index: a/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c -=================================================================== ---- a/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c (revision 0) -+++ b/ports/sysdeps/unix/sysv/linux/arm/eabi/shmctl.c (revision 0) -@@ -0,0 +1 @@ -+#include <sysdeps/unix/sysv/linux/alpha/shmctl.c> - diff --git a/meta/packages/glibc/glibc-2.4/dl-cache-libcmp.patch b/meta/packages/glibc/glibc-2.4/dl-cache-libcmp.patch deleted file mode 100644 index 2fedfa6db0..0000000000 --- a/meta/packages/glibc/glibc-2.4/dl-cache-libcmp.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- glibc-2.4/elf/Versions.ark 2006-03-11 23:30:09.000000000 +0100 -+++ glibc-2.4/elf/Versions 2006-03-11 23:31:44.000000000 +0100 -@@ -63,5 +63,7 @@ - _dl_debug_state; - # Pointer protection. - __pointer_chk_guard; -+ # for ldconfig -+ _dl_cache_libcmp; - } - } diff --git a/meta/packages/glibc/glibc-2.4/dyn-ldconfig-20041128.patch b/meta/packages/glibc/glibc-2.4/dyn-ldconfig-20041128.patch deleted file mode 100644 index 451b6d4afc..0000000000 --- a/meta/packages/glibc/glibc-2.4/dyn-ldconfig-20041128.patch +++ /dev/null @@ -1,22 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- libc/elf/Makefile~dyn-ldconfig-20041128 -+++ libc/elf/Makefile -@@ -118,12 +118,13 @@ - - ifeq (yes,$(use-ldconfig)) - ifeq (yes,$(build-shared)) --others-static += ldconfig -+#others-static += ldconfig - others += ldconfig - install-rootsbin += ldconfig - - ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon - extra-objs += $(ldconfig-modules:=.o) -+CPPFLAGS-readlib.c = -DNOT_IN_libc=1 - - # To find xmalloc.c and xstrdup.c - vpath %.c ../locale/programs diff --git a/meta/packages/glibc/glibc-2.4/dyn-ldconfig.patch b/meta/packages/glibc/glibc-2.4/dyn-ldconfig.patch deleted file mode 100644 index 1041965d05..0000000000 --- a/meta/packages/glibc/glibc-2.4/dyn-ldconfig.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- elf/Makefile 13 Mar 2003 21:50:57 -0000 1.258 -+++ elf/Makefile 27 Mar 2003 20:36:07 -0000 -@@ -109,12 +109,13 @@ - - ifeq (yes,$(use-ldconfig)) - ifeq (yes,$(build-shared)) --others-static += ldconfig -+#others-static += ldconfig - others += ldconfig - install-rootsbin += ldconfig - - ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon - extra-objs += $(ldconfig-modules:=.o) -+CPPFLAGS-readlib.c = -DNOT_IN_libc=1 - - # To find xmalloc.c and xstrdup.c - vpath %.c ../locale/programs ---- elf/ldconfig.c 13 Jan 2003 08:53:14 -0000 1.31 -+++ elf/ldconfig.c 27 Mar 2003 20:36:09 -0000 -@@ -149,6 +149,9 @@ - static int - is_hwcap_platform (const char *name) - { -+#if 1 -+ return 0; -+#else - int hwcap_idx = _dl_string_hwcap (name); - - if (hwcap_idx != -1 && ((1 << hwcap_idx) & hwcap_mask)) -@@ -164,6 +167,7 @@ - #endif - - return 0; -+#endif - } - - /* Get hwcap (including platform) encoding of path. */ -@@ -175,6 +179,7 @@ - uint64_t hwcap = 0; - uint64_t h; - -+#if 0 - size_t len; - - len = strlen (str); -@@ -210,6 +215,7 @@ - *ptr = '\0'; - } - -+#endif - free (str); - return hwcap; - } ---- elf/Versions.old 2004-06-26 13:18:35.000000000 +0100 -+++ elf/Versions 2004-06-26 14:41:09.000000000 +0100 -@@ -54,5 +54,6 @@ - _dl_get_tls_static_info; _dl_allocate_tls_init; - _dl_tls_setup; _dl_rtld_di_serinfo; - _dl_make_stack_executable; -+ _dl_cache_libcmp; - } - } diff --git a/meta/packages/glibc/glibc-2.4/eabi_kernel_version_hack.patch b/meta/packages/glibc/glibc-2.4/eabi_kernel_version_hack.patch deleted file mode 100644 index a1af1a1563..0000000000 --- a/meta/packages/glibc/glibc-2.4/eabi_kernel_version_hack.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- - ports/sysdeps/unix/sysv/linux/arm/eabi/configure | 2 +- - ports/sysdeps/unix/sysv/linux/arm/eabi/configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -Index: glibc-2.5/ports/sysdeps/unix/sysv/linux/arm/eabi/configure -=================================================================== ---- glibc-2.5.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/configure 2007-12-20 17:39:25.000000000 +0000 -+++ glibc-2.5/ports/sysdeps/unix/sysv/linux/arm/eabi/configure 2007-12-20 17:39:30.000000000 +0000 -@@ -1,5 +1,5 @@ - # This file is generated from configure.in by Autoconf. DO NOT EDIT! - # Local configure fragment for sysdeps/unix/sysv/linux/arm/eabi. - --arch_minimum_kernel=2.6.14 -+arch_minimum_kernel=2.6.10 - libc_cv_gcc_unwind_find_fde=no -Index: glibc-2.5/ports/sysdeps/unix/sysv/linux/arm/eabi/configure.in -=================================================================== ---- glibc-2.5.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/configure.in 2007-12-20 17:39:27.000000000 +0000 -+++ glibc-2.5/ports/sysdeps/unix/sysv/linux/arm/eabi/configure.in 2007-12-20 17:39:36.000000000 +0000 -@@ -1,5 +1,5 @@ - GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. - # Local configure fragment for sysdeps/unix/sysv/linux/arm/eabi. - --arch_minimum_kernel=2.6.14 -+arch_minimum_kernel=2.6.10 - libc_cv_gcc_unwind_find_fde=no diff --git a/meta/packages/glibc/glibc-2.4/fixup-aeabi-syscalls.patch b/meta/packages/glibc/glibc-2.4/fixup-aeabi-syscalls.patch deleted file mode 100644 index fb733b9194..0000000000 --- a/meta/packages/glibc/glibc-2.4/fixup-aeabi-syscalls.patch +++ /dev/null @@ -1,329 +0,0 @@ -Fix up ARM EABI for removed syscalls -http://sourceware.org/ml/libc-ports/2006-03/msg00029.html - -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/socket.S -=================================================================== ---- glibc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/socket.S 2006-03-21 15:58:10.000000000 -0500 -+++ /dev/null 1970-01-01 00:00:00.000000000 +0000 -@@ -1,131 +0,0 @@ --/* Copyright (C) 1995, 1996, 1997, 1998, 2003, 2005 -- 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-cancel.h> --#include <socketcall.h> -- --#define P(a, b) P2(a, b) --#define P2(a, b) a##b -- -- .text --/* The socket-oriented system calls are handled unusally in Linux. -- They are all gated through the single `socketcall' system call number. -- `socketcall' takes two arguments: the first is the subcode, specifying -- which socket function is being called; and the second is a pointer to -- the arguments to the specific function. -- -- The .S files for the other calls just #define socket and #include this. */ -- --#ifndef __socket --# ifndef NO_WEAK_ALIAS --# define __socket P(__,socket) --# else --# define __socket socket --# endif --#endif -- --#define PUSHARGS_1 str a1, [sp, $-8]!; .pad #8 --#define PUSHARGS_2 stmfd sp!, {a1, a2}; .pad #8 --#define PUSHARGS_3 stmfd sp!, {a1, a2, a3, a4}; .pad #16 /* a4 pushed for padding */ --#define PUSHARGS_4 stmfd sp!, {a1, a2, a3, a4}; .pad #16 --#define PUSHARGS_5 stmfd sp!, {a1, a2, a3, a4}; .pad #16 /* Caller has already pushed arg 5 */ --#define PUSHARGS_6 stmfd sp!, {a1, a2, a3, a4}; .pad #16 -- --#define POPARGS_1 add sp, sp, #8 --#define POPARGS_2 add sp, sp, #8 --#define POPARGS_3 add sp, sp, #16 --#define POPARGS_4 add sp, sp, #16 --#define POPARGS_5 add sp, sp, #16 --#define POPARGS_6 add sp, sp, #16 -- --#ifndef NARGS --#define NARGS 3 /* If we were called with no wrapper, this is really socket() */ --#endif -- --#if defined NEED_CANCELLATION && defined CENABLE -- PSEUDO_PROLOGUE --#endif -- --.globl __socket --ENTRY (__socket) -- .fnstart -- -- /* This code previously moved sp into ip and stored the args using -- stmdb ip!, {a1-a4}. It did not modify sp, so the stack never had -- to be restored after the syscall completed. It saved an -- instruction and meant no stack cleanup work was required. -- -- This will not work in the case of a socket call being interrupted -- by a signal. If the signal handler uses any stack the arguments -- to socket will be trashed. The results of a restart of any -- socket call are then unpredictable. */ -- -- /* Push args onto the stack. */ -- P(PUSHARGS_,NARGS) -- --#if defined NEED_CANCELLATION && defined CENABLE -- SINGLE_THREAD_P -- bne 1f --#endif -- -- /* Do the system call trap. */ -- mov a1, $P(SOCKOP_,socket) -- mov a2, sp -- DO_CALL (socketcall, 0) -- -- /* Pop args off the stack */ -- P(POPARGS_,NARGS) -- -- /* r0 is < 0 if there was an error. */ -- cmn r0, $124 -- RETINSTR(cc, r14) -- b PLTJMP(SYSCALL_ERROR) -- --#if defined NEED_CANCELLATION && defined CENABLE --1: -- stmfd sp!, {r7, lr} -- .save {r7, lr} -- CENABLE -- mov ip, r0 -- -- mov r0, #P(SOCKOP_,socket) -- add r1, sp, #8 -- mov r7, #SYS_ify(socketcall) -- swi 0x0 -- -- mov r7, r0 -- mov r0, ip -- CDISABLE -- mov r0, r7 -- ldmfd sp!, {r7, lr} -- -- P(POPARGS_,NARGS) -- -- /* r0 is < 0 if there was an error. */ -- cmn r0, $124 -- RETINSTR(cc, r14) -- b PLTJMP(SYSCALL_ERROR) --#endif -- -- .fnend --PSEUDO_END (__socket) -- --#ifndef NO_WEAK_ALIAS --weak_alias (__socket, socket) --#endif -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/syscalls.list 2006-03-21 15:58:46.000000000 -0500 -@@ -0,0 +1,34 @@ -+# File name Caller Syscall name # args Strong name Weak names -+ -+# semaphore and shm system calls -+msgctl - msgctl i:iip __msgctl msgctl -+msgget - msgget i:ii __msgget msgget -+msgrcv - msgrcv Ci:ibnii __msgrcv msgrcv -+msgsnd - msgsnd Ci:ibni __msgsnd msgsnd -+shmat - shmat i:ipi __shmat shmat -+shmctl - shmctl i:iip __shmctl shmctl -+shmdt - shmdt i:s __shmdt shmdt -+shmget - shmget i:iii __shmget shmget -+semop - semop i:ipi __semop semop -+semtimedop - semtimedop i:ipip semtimedop -+semget - semget i:iii __semget semget -+semctl - semctl i:iiii __semctl semctl -+ -+# proper socket implementations: -+accept - accept Ci:iBN __libc_accept __accept accept -+bind - bind i:ipi __bind bind -+connect - connect Ci:ipi __libc_connect __connect_internal __connect connect -+getpeername - getpeername i:ipp __getpeername getpeername -+getsockname - getsockname i:ipp __getsockname getsockname -+getsockopt - getsockopt i:iiiBN __getsockopt getsockopt -+listen - listen i:ii __listen listen -+recv - recv Ci:ibni __libc_recv __recv recv -+recvfrom - recvfrom Ci:ibniBN __libc_recvfrom __recvfrom recvfrom -+recvmsg - recvmsg Ci:ipi __libc_recvmsg __recvmsg recvmsg -+send - send Ci:ibni __libc_send __send send -+sendmsg - sendmsg Ci:ipi __libc_sendmsg __sendmsg sendmsg -+sendto - sendto Ci:ibnibn __libc_sendto __sendto sendto -+setsockopt - setsockopt i:iiibn __setsockopt setsockopt -+shutdown - shutdown i:ii __shutdown shutdown -+socket - socket i:iii __socket socket -+socketpair - socketpair i:iiif __socketpair socketpair -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/linuxthreads/sysdep-cancel.h -=================================================================== ---- glibc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/linuxthreads/sysdep-cancel.h 2006-03-21 15:58:10.000000000 -0500 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/linuxthreads/sysdep-cancel.h 2006-03-21 15:58:46.000000000 -0500 -@@ -53,9 +53,9 @@ - UNDOARGS_##args; \ - cmn r0, $4096; - --/* DOARGS pushes four bytes on the stack for five arguments, and nothing -- otherwise. In order to preserve doubleword alignment, sometimes we must -- save an extra register. */ -+/* DOARGS pushes four bytes on the stack for five arguments, eight bytes for -+ six arguments, and nothing for fewer. In order to preserve doubleword -+ alignment, sometimes we must save an extra register. */ - - # define DOCARGS_0 stmfd sp!, {r7, lr} - # define UNDOCARGS_0 -@@ -81,6 +81,10 @@ - # define UNDOCARGS_5 ldmfd sp!, {r0, r1, r2, r3} - # define RESTORE_LR_5 ldmfd sp!, {r4, r7, lr} - -+# define DOCARGS_6 stmfd sp!, {r0, r1, r2, r3, r7, lr} -+# define UNDOCARGS_6 ldmfd sp!, {r0, r1, r2, r3} -+# define RESTORE_LR_6 RESTORE_LR_0 -+ - # ifdef IS_IN_libpthread - # define CENABLE bl PLTJMP(__pthread_enable_asynccancel) - # define CDISABLE bl PLTJMP(__pthread_disable_asynccancel) -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/nptl/sysdep-cancel.h -=================================================================== ---- glibc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/nptl/sysdep-cancel.h 2006-03-21 15:58:10.000000000 -0500 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/nptl/sysdep-cancel.h 2006-03-21 15:58:46.000000000 -0500 -@@ -64,9 +64,9 @@ - UNDOARGS_##args; \ - cmn r0, $4096; - --/* DOARGS pushes four bytes on the stack for five arguments, and nothing -- otherwise. In order to preserve doubleword alignment, sometimes we must -- save an extra register. */ -+/* DOARGS pushes four bytes on the stack for five arguments, eight bytes for -+ six arguments, and nothing for fewer. In order to preserve doubleword -+ alignment, sometimes we must save an extra register. */ - - # define RESTART_UNWIND .fnend; .fnstart; .save {r7, lr} - -@@ -94,6 +94,10 @@ - # define UNDOCARGS_5 ldmfd sp!, {r0, r1, r2, r3}; .fnend; .fnstart; .save {r4}; .save {r7, lr}; .pad #4 - # define RESTORE_LR_5 ldmfd sp!, {r4, r7, lr} - -+# define DOCARGS_6 .save {r4, r5}; stmfd sp!, {r0, r1, r2, r3, r7, lr}; .save {r7, lr}; .pad #20 -+# define UNDOCARGS_6 ldmfd sp!, {r0, r1, r2, r3}; .fnend; .fnstart; .save {r4, r5}; .save {r7, lr} -+# define RESTORE_LR_6 RESTORE_LR_0 -+ - # ifdef IS_IN_libpthread - # define CENABLE bl PLTJMP(__pthread_enable_asynccancel) - # define CDISABLE bl PLTJMP(__pthread_disable_asynccancel) -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h -=================================================================== ---- glibc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h 2006-03-21 15:58:10.000000000 -0500 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/sysdep.h 2006-03-21 15:58:46.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2005 -+/* Copyright (C) 2005, 2006 - Free Software Foundation, Inc. - - This file is part of the GNU C Library. -@@ -29,6 +29,12 @@ - # error Kernel headers are too old - #endif - -+/* Don't use stime, even if the kernel headers define it. We have -+ settimeofday, and some EABI kernels have removed stime. Similarly -+ use setitimer to implement alarm. */ -+#undef __NR_stime -+#undef __NR_alarm -+ - /* The ARM EABI user interface passes the syscall number in r7, instead - of in the swi. This is more efficient, because the kernel does not need - to fetch the swi from memory to find out the number; which can be painful -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/umount.c -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/eabi/umount.c 2006-03-21 15:58:46.000000000 -0500 -@@ -0,0 +1,31 @@ -+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by David Huggins-Daines <dhd@debian.org>, 2000. -+ -+ 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. */ -+ -+/* Since we don't have an oldumount system call, do what the kernel -+ does down here. */ -+ -+extern long int __umount2 (const char *name, int flags); -+ -+long int -+__umount (const char *name) -+{ -+ return __umount2 (name, 0); -+} -+ -+weak_alias (__umount, umount); -Index: glibc/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ glibc/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h 2006-03-20 17:26:58.000000000 -0500 -@@ -0,0 +1,31 @@ -+/* Set flags signalling availability of kernel features based on given -+ kernel version number. -+ Copyright (C) 2006 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. */ -+ -+/* The utimes syscall was added before 2.6.1. */ -+#if __LINUX_KERNEL_VERSION >= 132609 -+# define __ASSUME_UTIMES 1 -+#endif -+ -+/* The new getrlimit syscall was added sometime before 2.4.6. */ -+#if __LINUX_KERNEL_VERSION >= 132102 -+#define __ASSUME_NEW_GETRLIMIT_SYSCALL 1 -+#endif -+ -+#include_next <kernel-features.h> diff --git a/meta/packages/glibc/glibc-2.4/generic-bits_select.h b/meta/packages/glibc/glibc-2.4/generic-bits_select.h deleted file mode 100644 index 47e7dedc30..0000000000 --- a/meta/packages/glibc/glibc-2.4/generic-bits_select.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright (C) 1997, 1998, 2001 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 _SYS_SELECT_H -# error "Never use <bits/select.h> directly; include <sys/select.h> instead." -#endif - - -/* We don't use `memset' because this would require a prototype and - the array isn't too big. */ -#define __FD_ZERO(s) \ - do { \ - unsigned int __i; \ - fd_set *__arr = (s); \ - for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) \ - __FDS_BITS (__arr)[__i] = 0; \ - } while (0) -#define __FD_SET(d, s) (__FDS_BITS (s)[__FDELT(d)] |= __FDMASK(d)) -#define __FD_CLR(d, s) (__FDS_BITS (s)[__FDELT(d)] &= ~__FDMASK(d)) -#define __FD_ISSET(d, s) ((__FDS_BITS (s)[__FDELT(d)] & __FDMASK(d)) != 0) diff --git a/meta/packages/glibc/glibc-2.4/generic-bits_time.h b/meta/packages/glibc/glibc-2.4/generic-bits_time.h deleted file mode 100644 index b3184d1de9..0000000000 --- a/meta/packages/glibc/glibc-2.4/generic-bits_time.h +++ /dev/null @@ -1,75 +0,0 @@ -/* System-dependent timing definitions. Generic version. - Copyright (C) 1996,1997,1999-2002,2003 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. */ - -/* - * Never include this file directly; use <time.h> instead. - */ - -#ifndef __need_timeval -# ifndef _BITS_TIME_H -# define _BITS_TIME_H 1 - -/* ISO/IEC 9899:1990 7.12.1: <time.h> - The macro `CLOCKS_PER_SEC' is the number per second of the value - returned by the `clock' function. */ -/* CAE XSH, Issue 4, Version 2: <time.h> - The value of CLOCKS_PER_SEC is required to be 1 million on all - XSI-conformant systems. */ -# define CLOCKS_PER_SEC 1000000l - -# if !defined __STRICT_ANSI__ && !defined __USE_XOPEN2K -/* Even though CLOCKS_PER_SEC has such a strange value CLK_TCK - presents the real value for clock ticks per second for the system. */ -# include <bits/types.h> -extern long int __sysconf (int); -# define CLK_TCK ((__clock_t) __sysconf (2)) /* 2 is _SC_CLK_TCK */ -# endif - -# ifdef __USE_POSIX199309 -/* Identifier for system-wide realtime clock. */ -# define CLOCK_REALTIME 0 -/* Monotonic system-wide clock. */ -# define CLOCK_MONOTONIC 1 -/* High-resolution timer from the CPU. */ -# define CLOCK_PROCESS_CPUTIME_ID 2 -/* Thread-specific CPU-time clock. */ -# define CLOCK_THREAD_CPUTIME_ID 3 - -/* Flag to indicate time is absolute. */ -# define TIMER_ABSTIME 1 -# endif - -# endif /* bits/time.h */ -#endif - -#ifdef __need_timeval -# undef __need_timeval -# ifndef _STRUCT_TIMEVAL -# define _STRUCT_TIMEVAL 1 -# include <bits/types.h> - -/* A time value that is accurate to the nearest - microsecond but also has a range of years. */ -struct timeval - { - __time_t tv_sec; /* Seconds. */ - __suseconds_t tv_usec; /* Microseconds. */ - }; -# endif /* struct timeval */ -#endif /* need timeval */ diff --git a/meta/packages/glibc/glibc-2.4/generic-bits_types.h b/meta/packages/glibc/glibc-2.4/generic-bits_types.h deleted file mode 100644 index 65c8a9fe90..0000000000 --- a/meta/packages/glibc/glibc-2.4/generic-bits_types.h +++ /dev/null @@ -1,200 +0,0 @@ -/* bits/types.h -- definitions of __*_t types underlying *_t types. - Copyright (C) 2002, 2003, 2004, 2005 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. */ - -/* - * Never include this file directly; use <sys/types.h> instead. - */ - -#ifndef _BITS_TYPES_H -#define _BITS_TYPES_H 1 - -#include <features.h> -#include <bits/wordsize.h> - -#define __need_size_t -#include <stddef.h> - -/* Convenience types. */ -typedef unsigned char __u_char; -typedef unsigned short int __u_short; -typedef unsigned int __u_int; -typedef unsigned long int __u_long; - -/* Fixed-size types, underlying types depend on word size and compiler. */ -typedef signed char __int8_t; -typedef unsigned char __uint8_t; -typedef signed short int __int16_t; -typedef unsigned short int __uint16_t; -typedef signed int __int32_t; -typedef unsigned int __uint32_t; -#if __WORDSIZE == 64 -typedef signed long int __int64_t; -typedef unsigned long int __uint64_t; -#elif defined __GLIBC_HAVE_LONG_LONG -__extension__ typedef signed long long int __int64_t; -__extension__ typedef unsigned long long int __uint64_t; -#endif - -/* quad_t is also 64 bits. */ -#if __WORDSIZE == 64 -typedef long int __quad_t; -typedef unsigned long int __u_quad_t; -#elif defined __GLIBC_HAVE_LONG_LONG -__extension__ typedef long long int __quad_t; -__extension__ typedef unsigned long long int __u_quad_t; -#else -typedef struct -{ - long __val[2]; -} __quad_t; -typedef struct -{ - __u_long __val[2]; -} __u_quad_t; -#endif - - -/* The machine-dependent file <bits/typesizes.h> defines __*_T_TYPE - macros for each of the OS types we define below. The definitions - of those macros must use the following macros for underlying types. - We define __S<SIZE>_TYPE and __U<SIZE>_TYPE for the signed and unsigned - variants of each of the following integer types on this machine. - - 16 -- "natural" 16-bit type (always short) - 32 -- "natural" 32-bit type (always int) - 64 -- "natural" 64-bit type (long or long long) - LONG32 -- 32-bit type, traditionally long - QUAD -- 64-bit type, always long long - WORD -- natural type of __WORDSIZE bits (int or long) - LONGWORD -- type of __WORDSIZE bits, traditionally long - - We distinguish WORD/LONGWORD, 32/LONG32, and 64/QUAD so that the - conventional uses of `long' or `long long' type modifiers match the - types we define, even when a less-adorned type would be the same size. - This matters for (somewhat) portably writing printf/scanf formats for - these types, where using the appropriate l or ll format modifiers can - make the typedefs and the formats match up across all GNU platforms. If - we used `long' when it's 64 bits where `long long' is expected, then the - compiler would warn about the formats not matching the argument types, - and the programmer changing them to shut up the compiler would break the - program's portability. - - Here we assume what is presently the case in all the GCC configurations - we support: long long is always 64 bits, long is always word/address size, - and int is always 32 bits. */ - -#define __S16_TYPE short int -#define __U16_TYPE unsigned short int -#define __S32_TYPE int -#define __U32_TYPE unsigned int -#define __SLONGWORD_TYPE long int -#define __ULONGWORD_TYPE unsigned long int -#if __WORDSIZE == 32 -# define __SQUAD_TYPE __quad_t -# define __UQUAD_TYPE __u_quad_t -# define __SWORD_TYPE int -# define __UWORD_TYPE unsigned int -# define __SLONG32_TYPE long int -# define __ULONG32_TYPE unsigned long int -# define __S64_TYPE __quad_t -# define __U64_TYPE __u_quad_t -/* We want __extension__ before typedef's that use nonstandard base types - such as `long long' in C89 mode. */ -# define __STD_TYPE __extension__ typedef -#elif __WORDSIZE == 64 -# define __SQUAD_TYPE long int -# define __UQUAD_TYPE unsigned long int -# define __SWORD_TYPE long int -# define __UWORD_TYPE unsigned long int -# define __SLONG32_TYPE int -# define __ULONG32_TYPE unsigned int -# define __S64_TYPE long int -# define __U64_TYPE unsigned long int -/* No need to mark the typedef with __extension__. */ -# define __STD_TYPE typedef -#else -# error -#endif -#include <bits/typesizes.h> /* Defines __*_T_TYPE macros. */ - - -__STD_TYPE __DEV_T_TYPE __dev_t; /* Type of device numbers. */ -__STD_TYPE __UID_T_TYPE __uid_t; /* Type of user identifications. */ -__STD_TYPE __GID_T_TYPE __gid_t; /* Type of group identifications. */ -__STD_TYPE __INO_T_TYPE __ino_t; /* Type of file serial numbers. */ -__STD_TYPE __INO64_T_TYPE __ino64_t; /* Type of file serial numbers (LFS).*/ -__STD_TYPE __MODE_T_TYPE __mode_t; /* Type of file attribute bitmasks. */ -__STD_TYPE __NLINK_T_TYPE __nlink_t; /* Type of file link counts. */ -__STD_TYPE __OFF_T_TYPE __off_t; /* Type of file sizes and offsets. */ -__STD_TYPE __OFF64_T_TYPE __off64_t; /* Type of file sizes and offsets (LFS). */ -__STD_TYPE __PID_T_TYPE __pid_t; /* Type of process identifications. */ -__STD_TYPE __FSID_T_TYPE __fsid_t; /* Type of file system IDs. */ -__STD_TYPE __CLOCK_T_TYPE __clock_t; /* Type of CPU usage counts. */ -__STD_TYPE __RLIM_T_TYPE __rlim_t; /* Type for resource measurement. */ -__STD_TYPE __RLIM64_T_TYPE __rlim64_t; /* Type for resource measurement (LFS). */ -__STD_TYPE __ID_T_TYPE __id_t; /* General type for IDs. */ -__STD_TYPE __TIME_T_TYPE __time_t; /* Seconds since the Epoch. */ -__STD_TYPE __USECONDS_T_TYPE __useconds_t; /* Count of microseconds. */ -__STD_TYPE __SUSECONDS_T_TYPE __suseconds_t; /* Signed count of microseconds. */ - -__STD_TYPE __DADDR_T_TYPE __daddr_t; /* The type of a disk address. */ -__STD_TYPE __SWBLK_T_TYPE __swblk_t; /* Type of a swap block maybe? */ -__STD_TYPE __KEY_T_TYPE __key_t; /* Type of an IPC key. */ - -/* Clock ID used in clock and timer functions. */ -__STD_TYPE __CLOCKID_T_TYPE __clockid_t; - -/* Timer ID returned by `timer_create'. */ -__STD_TYPE __TIMER_T_TYPE __timer_t; - -/* Type to represent block size. */ -__STD_TYPE __BLKSIZE_T_TYPE __blksize_t; - -/* Types from the Large File Support interface. */ - -/* Type to count number of disk blocks. */ -__STD_TYPE __BLKCNT_T_TYPE __blkcnt_t; -__STD_TYPE __BLKCNT64_T_TYPE __blkcnt64_t; - -/* Type to count file system blocks. */ -__STD_TYPE __FSBLKCNT_T_TYPE __fsblkcnt_t; -__STD_TYPE __FSBLKCNT64_T_TYPE __fsblkcnt64_t; - -/* Type to count file system nodes. */ -__STD_TYPE __FSFILCNT_T_TYPE __fsfilcnt_t; -__STD_TYPE __FSFILCNT64_T_TYPE __fsfilcnt64_t; - -__STD_TYPE __SSIZE_T_TYPE __ssize_t; /* Type of a byte count, or error. */ - -/* These few don't really vary by system, they always correspond - to one of the other defined types. */ -typedef __off64_t __loff_t; /* Type of file sizes and offsets (LFS). */ -typedef __quad_t *__qaddr_t; -typedef char *__caddr_t; - -/* Duplicates info from stdint.h but this is used in unistd.h. */ -__STD_TYPE __SWORD_TYPE __intptr_t; - -/* Duplicate info from sys/socket.h. */ -__STD_TYPE __U32_TYPE __socklen_t; - - -#undef __STD_TYPE - -#endif /* bits/types.h */ diff --git a/meta/packages/glibc/glibc-2.4/generic-bits_typesizes.h b/meta/packages/glibc/glibc-2.4/generic-bits_typesizes.h deleted file mode 100644 index e9226c4174..0000000000 --- a/meta/packages/glibc/glibc-2.4/generic-bits_typesizes.h +++ /dev/null @@ -1,66 +0,0 @@ -/* bits/typesizes.h -- underlying types for *_t. Generic version. - Copyright (C) 2002, 2003 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 _BITS_TYPES_H -# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." -#endif - -#ifndef _BITS_TYPESIZES_H -#define _BITS_TYPESIZES_H 1 - -/* See <bits/types.h> for the meaning of these macros. This file exists so - that <bits/types.h> need not vary across different GNU platforms. */ - -#define __DEV_T_TYPE __UQUAD_TYPE -#define __UID_T_TYPE __U32_TYPE -#define __GID_T_TYPE __U32_TYPE -#define __INO_T_TYPE __ULONGWORD_TYPE -#define __INO64_T_TYPE __UQUAD_TYPE -#define __MODE_T_TYPE __U32_TYPE -#define __NLINK_T_TYPE __UWORD_TYPE -#define __OFF_T_TYPE __SLONGWORD_TYPE -#define __OFF64_T_TYPE __SQUAD_TYPE -#define __PID_T_TYPE __S32_TYPE -#define __RLIM_T_TYPE __ULONGWORD_TYPE -#define __RLIM64_T_TYPE __UQUAD_TYPE -#define __BLKCNT_T_TYPE __SLONGWORD_TYPE -#define __BLKCNT64_T_TYPE __SQUAD_TYPE -#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE -#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE -#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE -#define __FSFILCNT64_T_TYPE __UQUAD_TYPE -#define __ID_T_TYPE __U32_TYPE -#define __CLOCK_T_TYPE __SLONGWORD_TYPE -#define __TIME_T_TYPE __SLONGWORD_TYPE -#define __USECONDS_T_TYPE __U32_TYPE -#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE -#define __DADDR_T_TYPE __S32_TYPE -#define __SWBLK_T_TYPE __SLONGWORD_TYPE -#define __KEY_T_TYPE __S32_TYPE -#define __CLOCKID_T_TYPE __S32_TYPE -#define __TIMER_T_TYPE void * -#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE -#define __FSID_T_TYPE struct { int __val[2]; } -#define __SSIZE_T_TYPE __SWORD_TYPE - -/* Number of descriptors that can fit in an `fd_set'. */ -#define __FD_SETSIZE 1024 - - -#endif /* bits/typesizes.h */ diff --git a/meta/packages/glibc/glibc-2.4/glibc-2.4-compile.patch b/meta/packages/glibc/glibc-2.4/glibc-2.4-compile.patch deleted file mode 100644 index ea9f55ae7f..0000000000 --- a/meta/packages/glibc/glibc-2.4/glibc-2.4-compile.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- glibc-2.4/csu/libc-start.c.ark 2006-03-13 03:07:15.000000000 +0100 -+++ glibc-2.4/csu/libc-start.c 2006-03-13 03:08:51.000000000 +0100 -@@ -59,6 +59,11 @@ - # define LIBC_START_MAIN BP_SYM (__libc_start_main) - #endif - -+#ifdef SHARED -+#include <pthread-functions.h> -+extern struct pthread_functions __libc_pthread_functions; -+#endif -+ - #ifdef MAIN_AUXVEC_ARG - /* main gets passed a pointer to the auxiliary. */ - # define MAIN_AUXVEC_DECL , void * ---- glibc-2.4/nscd/Makefile.ark 2006-03-13 14:05:47.000000000 +0100 -+++ glibc-2.4/nscd/Makefile 2006-03-13 14:06:12.000000000 +0100 -@@ -67,8 +67,10 @@ - # contains only the basic kernel interface headers, not something like - # libselinux. So the simplest thing is to presume that the standard - # system headers will be ok for this file. --$(objpfx)nscd_stat.o: sysincludes = # nothing --$(objpfx)selinux.o: sysincludes = # nothing -+# Except, of course, this breaks crosscompiling with kernel headers in -+# a nonstandard location... -+#$(objpfx)nscd_stat.o: sysincludes = # nothing -+#$(objpfx)selinux.o: sysincludes = # nothing - - distribute := nscd.h nscd-client.h dbg_log.h \ - $(addsuffix .c, $(filter-out xmalloc,$(all-nscd-modules))) \ diff --git a/meta/packages/glibc/glibc-2.4/glibc-2.4-openat-3.patch b/meta/packages/glibc/glibc-2.4/glibc-2.4-openat-3.patch deleted file mode 100644 index d3f37f6c36..0000000000 --- a/meta/packages/glibc/glibc-2.4/glibc-2.4-openat-3.patch +++ /dev/null @@ -1,133 +0,0 @@ -Submitted By: Jim Gifford (patches at jg555 dot com) -Date: 2006-08-18 -Initial Package Version: 2.4 -Origin: http://sourceware.org/bugzilla/show_bug.cgi?id=2873 -Upstream Status: Applied -Description: Fixes http://sourceware.org/bugzilla/show_bug.cgi?id=2873 - http://sourceware.org/bugzilla/show_bug.cgi?id=3040 - http://linuxfromscratch.org/pipermail/lfs-dev/2006-June/057562.html - Updated by Joe Ciccone - -diff -Naur glibc-2.4.orig/sysdeps/unix/sysv/linux/i386/fchownat.c glibc-2.4/sysdeps/unix/sysv/linux/i386/fchownat.c ---- glibc-2.4.orig/sysdeps/unix/sysv/linux/i386/fchownat.c 2006-02-23 14:50:21.000000000 -0800 -+++ glibc-2.4/sysdeps/unix/sysv/linux/i386/fchownat.c 2006-08-18 20:38:21.773288795 -0700 -@@ -61,6 +61,24 @@ - int - fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag) - { -+ int result; -+ -+#ifdef __NR_fchownat -+# ifndef __ASSUME_ATFCTS -+ if (__have_atfcts >= 0) -+# endif -+ { -+ result = INLINE_SYSCALL (fchownat, 5, fd, file, owner, group, flag); -+# ifndef __ASSUME_ATFCTS -+ if (result == -1 && errno == ENOSYS) -+ __have_atfcts = -1; -+ else -+# endif -+ return result; -+ } -+#endif -+ -+#ifndef __ASSUME_ATFCTS - if (flag & ~AT_SYMLINK_NOFOLLOW) - { - __set_errno (EINVAL); -@@ -87,14 +105,13 @@ - file = buf; - } - -- int result; - INTERNAL_SYSCALL_DECL (err); - --#if defined __NR_lchown || __ASSUME_LCHOWN_SYSCALL > 0 --# if __ASSUME_LCHOWN_SYSCALL == 0 -+# if defined __NR_lchown || __ASSUME_LCHOWN_SYSCALL > 0 -+# if __ASSUME_LCHOWN_SYSCALL == 0 - static int __libc_old_chown; - --# ifdef __NR_chown32 -+# ifdef __NR_chown32 - if (__libc_missing_32bit_uids <= 0) - { - if (flag & AT_SYMLINK_NOFOLLOW) -@@ -111,7 +128,7 @@ - - __libc_missing_32bit_uids = 1; - } --# endif /* __NR_chown32 */ -+# endif /* __NR_chown32 */ - - if (((owner + 1) > (uid_t) ((__kernel_uid_t) -1U)) - || ((group + 1) > (gid_t) ((__kernel_gid_t) -1U))) -@@ -135,13 +152,13 @@ - - result = INTERNAL_SYSCALL (lchown, err, 3, CHECK_STRING (file), owner, - group); --# elif __ASSUME_32BITUIDS -+# elif __ASSUME_32BITUIDS - /* This implies __ASSUME_LCHOWN_SYSCALL. */ - result = INTERNAL_SYSCALL (chown32, err, 3, CHECK_STRING (file), owner, - group); --# else -+# else - /* !__ASSUME_32BITUIDS && ASSUME_LCHOWN_SYSCALL */ --# ifdef __NR_chown32 -+# ifdef __NR_chown32 - if (__libc_missing_32bit_uids <= 0) - { - result = INTERNAL_SYSCALL (chown32, err, 3, CHECK_STRING (file), owner, -@@ -153,7 +170,7 @@ - - __libc_missing_32bit_uids = 1; - } --# endif /* __NR_chown32 */ -+# endif /* __NR_chown32 */ - if (((owner + 1) > (uid_t) ((__kernel_uid_t) -1U)) - || ((group + 1) > (gid_t) ((__kernel_gid_t) -1U))) - { -@@ -162,10 +179,10 @@ - } - - result = INTERNAL_SYSCALL (chown, err, 3, CHECK_STRING (file), owner, group); --# endif --#else -+# endif -+# else - result = INTERNAL_SYSCALL (chown, err, 3, CHECK_STRING (file), owner, group); --#endif -+# endif - - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 0)) - goto fail; -@@ -175,4 +192,5 @@ - fail: - __atfct_seterrno (INTERNAL_SYSCALL_ERRNO (result, err), fd, buf); - return -1; -+#endif - } -diff -Naur glibc-2.4.orig/sysdeps/unix/sysv/linux/openat.c glibc-2.4/sysdeps/unix/sysv/linux/openat.c ---- glibc-2.4.orig/sysdeps/unix/sysv/linux/openat.c 2006-02-28 21:32:42.000000000 -0800 -+++ glibc-2.4/sysdeps/unix/sysv/linux/openat.c 2006-08-18 20:39:14.360012706 -0700 -@@ -29,8 +29,6 @@ - - - #if !defined OPENAT && !defined __ASSUME_ATFCTS --# define OPENAT openat -- - /* Set errno after a failed call. If BUF is not null, - it is a /proc/self/fd/ path name we just tried to use. */ - void -@@ -63,6 +61,9 @@ - int __have_atfcts; - #endif - -+#ifndef OPENAT -+# define OPENAT openat -+#endif - - #define OPENAT_NOT_CANCEL CONCAT (OPENAT) - #define CONCAT(name) CONCAT2 (name) diff --git a/meta/packages/glibc/glibc-2.4/glibc-arm-no-procinfo_h.patch b/meta/packages/glibc/glibc-2.4/glibc-arm-no-procinfo_h.patch deleted file mode 100644 index 6486fc0eab..0000000000 --- a/meta/packages/glibc/glibc-2.4/glibc-arm-no-procinfo_h.patch +++ /dev/null @@ -1,325 +0,0 @@ -http://sources.redhat.com/ml/libc-ports/2006-10/msg00040.html -Avoid using asm/procinfo.h - - * From: "Joseph S. Myers" <joseph at codesourcery dot com> - * To: libc-ports at sourceware dot org - * Date: Tue, 24 Oct 2006 19:25:12 +0000 (UTC) - * Subject: Avoid using asm/procinfo.h - -I previously noted -<http://sourceware.org/ml/libc-ports/2006-08/msg00023.html> that the -use of <asm/procinfo.h>, a Linux-specific kernel header, in -sysdeps/arm/eabi, is an abstraction violation, and that in principle -all the files in sysdeps/arm/eabi should use sysdep.h not -asm/procinfo.h for HWCAP_VFP. - -The ARM kernel maintainers have now declared that <asm/procinfo.h> -should not be used outside the kernel at all (and in particular that -headers_install is correct in not exporting it), and that these -definitions will move to a different kernel header. This gives a -concrete reason for making the change to use glibc's internal -definitions, which this patch does, thereby allowing glibc to build -with the exported headers. - -2006-10-24 Joseph S. Myers <joseph@codesourcery.com> - - * sysdeps/arm/eabi/fclrexcpt.c: Include <sysdep.h> instead of - <asm/procinfo.h>. Use HWCAP_ARM_VFP instead of HWCAP_VFP. - * sysdeps/arm/eabi/fedisblxcpt.c: Likewise. - * sysdeps/arm/eabi/feenablxcpt.c: Likewise. - * sysdeps/arm/eabi/fegetenv.c: Likewise. - * sysdeps/arm/eabi/fegetexcept.c: Likewise. - * sysdeps/arm/eabi/fegetround.c: Likewise. - * sysdeps/arm/eabi/feholdexcpt.c: Likewise. - * sysdeps/arm/eabi/fesetenv.c: Likewise. - * sysdeps/arm/eabi/fesetround.c: Likewise. - * sysdeps/arm/eabi/fraiseexcpt.c: Likewise. - * sysdeps/arm/eabi/fsetexcptflg.c: Likewise. - * sysdeps/arm/eabi/ftestexcept.c: Likewise. - * sysdeps/arm/eabi/setfpucw.c: Likewise. - -Index: libc/ports/sysdeps/arm/eabi/fclrexcpt.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fclrexcpt.c,v -retrieving revision 1.1 -diff -u -r1.1 fclrexcpt.c ---- libc/ports/sysdeps/arm/eabi/fclrexcpt.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fclrexcpt.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - __feclearexcept (int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long int temp; - -Index: libc/ports/sysdeps/arm/eabi/fedisblxcpt.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fedisblxcpt.c,v -retrieving revision 1.1 -diff -u -r1.1 fedisblxcpt.c ---- libc/ports/sysdeps/arm/eabi/fedisblxcpt.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fedisblxcpt.c 24 Oct 2006 19:17:51 -0000 -@@ -24,12 +24,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - fedisableexcept (int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long int new_exc, old_exc; - -Index: libc/ports/sysdeps/arm/eabi/feenablxcpt.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/feenablxcpt.c,v -retrieving revision 1.1 -diff -u -r1.1 feenablxcpt.c ---- libc/ports/sysdeps/arm/eabi/feenablxcpt.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/feenablxcpt.c 24 Oct 2006 19:17:51 -0000 -@@ -24,12 +24,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - feenableexcept (int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long int new_exc, old_exc; - -Index: libc/ports/sysdeps/arm/eabi/fegetenv.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetenv.c,v -retrieving revision 1.1 -diff -u -r1.1 fegetenv.c ---- libc/ports/sysdeps/arm/eabi/fegetenv.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fegetenv.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - __fegetenv (fenv_t *envp) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long int temp; - _FPU_GETCW (temp); -Index: libc/ports/sysdeps/arm/eabi/fegetexcept.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetexcept.c,v -retrieving revision 1.1 -diff -u -r1.1 fegetexcept.c ---- libc/ports/sysdeps/arm/eabi/fegetexcept.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fegetexcept.c 24 Oct 2006 19:17:51 -0000 -@@ -24,12 +24,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - fegetexcept (void) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long temp; - -Index: libc/ports/sysdeps/arm/eabi/fegetround.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetround.c,v -retrieving revision 1.1 -diff -u -r1.1 fegetround.c ---- libc/ports/sysdeps/arm/eabi/fegetround.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fegetround.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - fegetround (void) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned int temp; - -Index: libc/ports/sysdeps/arm/eabi/feholdexcpt.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/feholdexcpt.c,v -retrieving revision 1.1 -diff -u -r1.1 feholdexcpt.c ---- libc/ports/sysdeps/arm/eabi/feholdexcpt.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/feholdexcpt.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - feholdexcept (fenv_t *envp) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned long int temp; - -Index: libc/ports/sysdeps/arm/eabi/fesetenv.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fesetenv.c,v -retrieving revision 1.1 -diff -u -r1.1 fesetenv.c ---- libc/ports/sysdeps/arm/eabi/fesetenv.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fesetenv.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - __fesetenv (const fenv_t *envp) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - unsigned int temp; - -Index: libc/ports/sysdeps/arm/eabi/fesetround.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fesetround.c,v -retrieving revision 1.1 -diff -u -r1.1 fesetround.c ---- libc/ports/sysdeps/arm/eabi/fesetround.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fesetround.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - fesetround (int round) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - fpu_control_t temp; - -Index: libc/ports/sysdeps/arm/eabi/fraiseexcpt.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fraiseexcpt.c,v -retrieving revision 1.1 -diff -u -r1.1 fraiseexcpt.c ---- libc/ports/sysdeps/arm/eabi/fraiseexcpt.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fraiseexcpt.c 24 Oct 2006 19:17:51 -0000 -@@ -24,12 +24,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - feraiseexcept (int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - int fpscr; - const float fp_zero = 0.0, fp_one = 1.0, fp_max = FLT_MAX, -Index: libc/ports/sysdeps/arm/eabi/fsetexcptflg.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fsetexcptflg.c,v -retrieving revision 1.1 -diff -u -r1.1 fsetexcptflg.c ---- libc/ports/sysdeps/arm/eabi/fsetexcptflg.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/fsetexcptflg.c 24 Oct 2006 19:17:51 -0000 -@@ -24,12 +24,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - __fesetexceptflag (const fexcept_t *flagp, int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - fexcept_t temp; - -Index: libc/ports/sysdeps/arm/eabi/ftestexcept.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/ftestexcept.c,v -retrieving revision 1.1 -diff -u -r1.1 ftestexcept.c ---- libc/ports/sysdeps/arm/eabi/ftestexcept.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/ftestexcept.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - int - fetestexcept (int excepts) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - fexcept_t temp; - -Index: libc/ports/sysdeps/arm/eabi/setfpucw.c -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/setfpucw.c,v -retrieving revision 1.1 -diff -u -r1.1 setfpucw.c ---- libc/ports/sysdeps/arm/eabi/setfpucw.c 10 Oct 2005 15:29:32 -0000 1.1 -+++ libc/ports/sysdeps/arm/eabi/setfpucw.c 24 Oct 2006 19:17:51 -0000 -@@ -23,12 +23,12 @@ - #include <unistd.h> - #include <ldsodefs.h> - #include <dl-procinfo.h> --#include <asm/procinfo.h> -+#include <sysdep.h> - - void - __setfpucw (fpu_control_t set) - { -- if (GLRO (dl_hwcap) & HWCAP_VFP) -+ if (GLRO (dl_hwcap) & HWCAP_ARM_VFP) - { - fpu_control_t cw; diff --git a/meta/packages/glibc/glibc-2.4/glibc-check_pf.patch b/meta/packages/glibc/glibc-2.4/glibc-check_pf.patch deleted file mode 100644 index 3cff6bbcfa..0000000000 --- a/meta/packages/glibc/glibc-2.4/glibc-check_pf.patch +++ /dev/null @@ -1,343 +0,0 @@ -From libc-ports-return-550-listarch-libc-ports=sources dot redhat dot com at sourceware dot org Tue Oct 31 17:37:21 2006 -Return-Path: <libc-ports-return-550-listarch-libc-ports=sources dot redhat dot com at sourceware dot org> -Delivered-To: listarch-libc-ports at sources dot redhat dot com -Received: (qmail 17273 invoked by alias); 31 Oct 2006 17:37:20 -0000 -Received: (qmail 17262 invoked by uid 22791); 31 Oct 2006 17:37:19 -0000 -X-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,TW_CP -X-Spam-Check-By: sourceware.org -Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.31.1) with ESMTP; Tue, 31 Oct 2006 17:37:11 +0000 -Received: from drow by nevyn.them.org with local (Exim 4.54) id 1GexXw-0007Dj-30; Tue, 31 Oct 2006 12:37:08 -0500 -Date: Tue, 31 Oct 2006 12:37:08 -0500 -From: Daniel Jacobowitz <drow at false dot org> -To: Mike Frysinger <vapier at gentoo dot org> -Cc: libc-ports at sourceware dot org, Philip Balister <philip dot balister at gmail dot com> -Subject: Re: Problem with glibc-2.5 on ARM -Message-ID: <20061031173708.GJ20468@nevyn.them.org> -References: <499146270610241149ibe030e0nd9d6b177a95b346e@mail.gmail.com> <499146270610241254u7cadf63ej2edf05cedbc5266f@mail.gmail.com> <20061024195837.GA20181@nevyn.them.org> <200610291954.27022.vapier@gentoo.org> -MIME-Version: 1.0 -Content-Type: text/plain; charset=us-ascii -Content-Disposition: inline -In-Reply-To: <200610291954 dot 27022 dot vapier at gentoo dot org> -User-Agent: Mutt/1.5.13 (2006-08-11) -X-IsSubscribed: yes -Mailing-List: contact libc-ports-help at sourceware dot org; run by ezmlm -Precedence: bulk -List-Subscribe: <mailto:libc-ports-subscribe at sourceware dot org> -List-Post: <mailto:libc-ports at sourceware dot org> -List-Help: <mailto:libc-ports-help at sourceware dot org>, <http://sourceware dot org/lists dot html#faqs> -Sender: libc-ports-owner at sourceware dot org -Delivered-To: mailing list libc-ports at sourceware dot org - -On Sun, Oct 29, 2006 at 07:54:25PM -0500, Mike Frysinger wrote: -> On Tuesday 24 October 2006 15:58, Daniel Jacobowitz wrote: -> > ARM is going to need a slightly different version of that file, I -> > guess. -> -> would declaring req with attribute packed not help ? -> -mike - -Nope. "struct rtgenmsg" would still have size 4. - -Philip, are you still at all interested in this for the old ABI? -I don't have time to test this patch right now, but I think it -will work. - --- -Daniel Jacobowitz -CodeSourcery - -2006-10-31 Daniel Jacobowitz <dan@codesourcery.com> - - * sysdeps/unix/sysv/linux/arm/check_pf.c: New file. - * sysdeps/unix/sysv/linux/arm/eabi/check_pf.c: New file. - -Index: sysdeps/unix/sysv/linux/arm/check_pf.c -=================================================================== -RCS file: sysdeps/unix/sysv/linux/arm/check_pf.c -diff -N sysdeps/unix/sysv/linux/arm/check_pf.c ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ sysdeps/unix/sysv/linux/arm/check_pf.c 31 Oct 2006 17:29:58 -0000 -@@ -0,0 +1,274 @@ -+/* Determine protocol families for which interfaces exist. ARM Linux version. -+ Copyright (C) 2003, 2006 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 <assert.h> -+#include <errno.h> -+#include <ifaddrs.h> -+#include <netdb.h> -+#include <stddef.h> -+#include <string.h> -+#include <time.h> -+#include <unistd.h> -+#include <sys/socket.h> -+ -+#include <asm/types.h> -+#include <linux/netlink.h> -+#include <linux/rtnetlink.h> -+ -+#include <not-cancel.h> -+#include <kernel-features.h> -+ -+ -+#ifndef IFA_F_TEMPORARY -+# define IFA_F_TEMPORARY IFA_F_SECONDARY -+#endif -+#ifndef IFA_F_HOMEADDRESS -+# define IFA_F_HOMEADDRESS 0 -+#endif -+ -+ -+static int -+make_request (int fd, pid_t pid, bool *seen_ipv4, bool *seen_ipv6, -+ struct in6addrinfo **in6ai, size_t *in6ailen) -+{ -+ struct req -+ { -+ struct nlmsghdr nlh; -+ struct rtgenmsg g; -+ } req; -+ struct sockaddr_nl nladdr; -+ -+ /* struct rtgenmsg consists of a single byte but the ARM ABI rounds -+ it up to a word. Clear the padding explicitly here. */ -+ assert (sizeof (req.g) == 4); -+ memset (&req.g, '\0', sizeof (req.g)); -+ -+ req.nlh.nlmsg_len = sizeof (req); -+ req.nlh.nlmsg_type = RTM_GETADDR; -+ req.nlh.nlmsg_flags = NLM_F_ROOT | NLM_F_MATCH | NLM_F_REQUEST; -+ req.nlh.nlmsg_pid = 0; -+ req.nlh.nlmsg_seq = time (NULL); -+ req.g.rtgen_family = AF_UNSPEC; -+ -+ memset (&nladdr, '\0', sizeof (nladdr)); -+ nladdr.nl_family = AF_NETLINK; -+ -+ if (TEMP_FAILURE_RETRY (__sendto (fd, (void *) &req, sizeof (req), 0, -+ (struct sockaddr *) &nladdr, -+ sizeof (nladdr))) < 0) -+ return -1; -+ -+ *seen_ipv4 = false; -+ *seen_ipv6 = false; -+ -+ bool done = false; -+ char buf[4096]; -+ struct iovec iov = { buf, sizeof (buf) }; -+ struct in6ailist -+ { -+ struct in6addrinfo info; -+ struct in6ailist *next; -+ } *in6ailist = NULL; -+ size_t in6ailistlen = 0; -+ -+ do -+ { -+ struct msghdr msg = -+ { -+ (void *) &nladdr, sizeof (nladdr), -+ &iov, 1, -+ NULL, 0, -+ 0 -+ }; -+ -+ ssize_t read_len = TEMP_FAILURE_RETRY (__recvmsg (fd, &msg, 0)); -+ if (read_len < 0) -+ return -1; -+ -+ if (msg.msg_flags & MSG_TRUNC) -+ return -1; -+ -+ struct nlmsghdr *nlmh; -+ for (nlmh = (struct nlmsghdr *) buf; -+ NLMSG_OK (nlmh, (size_t) read_len); -+ nlmh = (struct nlmsghdr *) NLMSG_NEXT (nlmh, read_len)) -+ { -+ if (nladdr.nl_pid != 0 || (pid_t) nlmh->nlmsg_pid != pid -+ || nlmh->nlmsg_seq != req.nlh.nlmsg_seq) -+ continue; -+ -+ if (nlmh->nlmsg_type == RTM_NEWADDR) -+ { -+ struct ifaddrmsg *ifam = (struct ifaddrmsg *) NLMSG_DATA (nlmh); -+ -+ switch (ifam->ifa_family) -+ { -+ case AF_INET: -+ *seen_ipv4 = true; -+ break; -+ case AF_INET6: -+ *seen_ipv6 = true; -+ -+ if (ifam->ifa_flags & (IFA_F_DEPRECATED -+ | IFA_F_TEMPORARY -+ | IFA_F_HOMEADDRESS)) -+ { -+ struct rtattr *rta = IFA_RTA (ifam); -+ size_t len = (nlmh->nlmsg_len -+ - NLMSG_LENGTH (sizeof (*ifam))); -+ void *local = NULL; -+ void *address = NULL; -+ while (RTA_OK (rta, len)) -+ { -+ switch (rta->rta_type) -+ { -+ case IFA_LOCAL: -+ local = RTA_DATA (rta); -+ break; -+ -+ case IFA_ADDRESS: -+ address = RTA_DATA (rta); -+ break; -+ } -+ -+ rta = RTA_NEXT (rta, len); -+ } -+ -+ struct in6ailist *newp = alloca (sizeof (*newp)); -+ newp->info.flags = (((ifam->ifa_flags & IFA_F_DEPRECATED) -+ ? in6ai_deprecated : 0) -+ | ((ifam->ifa_flags -+ & IFA_F_TEMPORARY) -+ ? in6ai_temporary : 0) -+ | ((ifam->ifa_flags -+ & IFA_F_HOMEADDRESS) -+ ? in6ai_homeaddress : 0)); -+ memcpy (newp->info.addr, address ?: local, -+ sizeof (newp->info.addr)); -+ newp->next = in6ailist; -+ in6ailist = newp; -+ ++in6ailistlen; -+ } -+ break; -+ default: -+ /* Ignore. */ -+ break; -+ } -+ } -+ else if (nlmh->nlmsg_type == NLMSG_DONE) -+ /* We found the end, leave the loop. */ -+ done = true; -+ } -+ } -+ while (! done); -+ -+ close_not_cancel_no_status (fd); -+ -+ if (in6ailist != NULL) -+ { -+ *in6ai = malloc (in6ailistlen * sizeof (**in6ai)); -+ if (*in6ai == NULL) -+ return -1; -+ -+ *in6ailen = in6ailistlen; -+ -+ do -+ { -+ (*in6ai)[--in6ailistlen] = in6ailist->info; -+ in6ailist = in6ailist->next; -+ } -+ while (in6ailist != NULL); -+ } -+ -+ return 0; -+} -+ -+ -+/* We don't know if we have NETLINK support compiled in in our -+ Kernel. */ -+#if __ASSUME_NETLINK_SUPPORT == 0 -+/* Define in ifaddrs.h. */ -+extern int __no_netlink_support attribute_hidden; -+#else -+# define __no_netlink_support 0 -+#endif -+ -+ -+void -+attribute_hidden -+__check_pf (bool *seen_ipv4, bool *seen_ipv6, -+ struct in6addrinfo **in6ai, size_t *in6ailen) -+{ -+ *in6ai = NULL; -+ *in6ailen = 0; -+ -+ if (! __no_netlink_support) -+ { -+ int fd = __socket (PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); -+ -+ struct sockaddr_nl nladdr; -+ memset (&nladdr, '\0', sizeof (nladdr)); -+ nladdr.nl_family = AF_NETLINK; -+ -+ socklen_t addr_len = sizeof (nladdr); -+ -+ if (fd >= 0 -+ && __bind (fd, (struct sockaddr *) &nladdr, sizeof (nladdr)) == 0 -+ && __getsockname (fd, (struct sockaddr *) &nladdr, &addr_len) == 0 -+ && make_request (fd, nladdr.nl_pid, seen_ipv4, seen_ipv6, -+ in6ai, in6ailen) == 0) -+ /* It worked. */ -+ return; -+ -+ if (fd >= 0) -+ __close (fd); -+ -+#if __ASSUME_NETLINK_SUPPORT == 0 -+ /* Remember that there is no netlink support. */ -+ __no_netlink_support = 1; -+#else -+ /* We cannot determine what interfaces are available. Be -+ pessimistic. */ -+ *seen_ipv4 = true; -+ *seen_ipv6 = true; -+#endif -+ } -+ -+#if __ASSUME_NETLINK_SUPPORT == 0 -+ /* No netlink. Get the interface list via getifaddrs. */ -+ struct ifaddrs *ifa = NULL; -+ if (getifaddrs (&ifa) != 0) -+ { -+ /* We cannot determine what interfaces are available. Be -+ pessimistic. */ -+ *seen_ipv4 = true; -+ *seen_ipv6 = true; -+ return; -+ } -+ -+ struct ifaddrs *runp; -+ for (runp = ifa; runp != NULL; runp = runp->ifa_next) -+ if (runp->ifa_addr->sa_family == PF_INET) -+ *seen_ipv4 = true; -+ else if (runp->ifa_addr->sa_family == PF_INET6) -+ *seen_ipv6 = true; -+ -+ (void) freeifaddrs (ifa); -+#endif -+} -Index: sysdeps/unix/sysv/linux/arm/eabi/check_pf.c -=================================================================== -RCS file: sysdeps/unix/sysv/linux/arm/eabi/check_pf.c -diff -N sysdeps/unix/sysv/linux/arm/eabi/check_pf.c ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ sysdeps/unix/sysv/linux/arm/eabi/check_pf.c 31 Oct 2006 17:29:58 -0000 -@@ -0,0 +1 @@ -+#include <sysdeps/unix/sysv/linux/check_pf.c> - diff --git a/meta/packages/glibc/glibc-2.4/glibc-include-fixed.patch b/meta/packages/glibc/glibc-2.4/glibc-include-fixed.patch deleted file mode 100644 index a8e87609f2..0000000000 --- a/meta/packages/glibc/glibc-2.4/glibc-include-fixed.patch +++ /dev/null @@ -1,54 +0,0 @@ -With the -nostdinc that we get --with-headers, we need to pull in GCC -4.3's include-fixed subdir too, because that's what contains limits.h -and syslimits.h now. - - -for ChangeLog -2008-01-30 Alexandre Oliva <aoliva@redhat.com> - - * configure.in (SYSINCLUDES): Add GCC's include-fixed after include. - * configure: Rebuilt. - -Index: configure -=================================================================== ---- configure.orig 2008-01-30 15:40:55.000000000 -0200 -+++ configure 2008-01-31 03:24:36.000000000 -0200 -@@ -5066,7 +5066,12 @@ echo "$as_me: WARNING: - # thing on a system that doesn't need fixincludes. (Not presently a problem.) - if test -n "$sysheaders"; then - ccheaders=`$CC -print-file-name=include` -- SYSINCLUDES="-nostdinc -isystem $ccheaders \ -+ if test -d "${ccheaders}-fixed"; then -+ fixedccheaders="-isystem ${ccheaders}-fixed" -+ else -+ fixedccheaders= -+ fi -+ SYSINCLUDES="-nostdinc -isystem $ccheaders $fixedccheaders \ - -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" - if test -n "$CXX"; then - cxxversion=`$CXX -dumpversion 2>&5` && -Index: configure.in -=================================================================== ---- configure.in.orig 2008-01-30 15:40:55.000000000 -0200 -+++ configure.in 2008-01-31 03:24:30.000000000 -0200 -@@ -915,7 +915,12 @@ test -n "$aux_missing" && AC_MSG_WARN([ - # thing on a system that doesn't need fixincludes. (Not presently a problem.) - if test -n "$sysheaders"; then - ccheaders=`$CC -print-file-name=include` -- SYSINCLUDES="-nostdinc -isystem $ccheaders \ -+ if test -d "${ccheaders}-fixed"; then -+ fixedccheaders="-isystem ${ccheaders}-fixed" -+ else -+ fixedccheaders= -+ fi -+ SYSINCLUDES="-nostdinc -isystem $ccheaders $fixedccheaders \ - -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" - if test -n "$CXX"; then - cxxversion=`$CXX -dumpversion 2>&AS_MESSAGE_LOG_FD` && - --- -Alexandre Oliva http://www.lsd.ic.unicamp.br/~oliva/ -FSF Latin America Board Member http://www.fsfla.org/ -Red Hat Compiler Engineer aoliva@{redhat.com, gcc.gnu.org} -Free Software Evangelist oliva@{lsd.ic.unicamp.br, gnu.org} - diff --git a/meta/packages/glibc/glibc-2.4/ldd-unbash.patch b/meta/packages/glibc/glibc-2.4/ldd-unbash.patch deleted file mode 100644 index 2fb8854b49..0000000000 --- a/meta/packages/glibc/glibc-2.4/ldd-unbash.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- glibc-2.5/elf/ldd.bash.in.org 2006-04-30 16:06:20.000000000 +0000 -+++ glibc-2.5/elf/ldd.bash.in 2007-03-30 19:18:57.000000000 +0000 -@@ -110,7 +110,7 @@ - # environments where the executed program might not have permissions - # to write to the console/tty. But only bash 3.x supports the pipefail - # option, and we don't bother to handle the case for older bash versions. --if set -o pipefail 2> /dev/null; then -+if false; then - try_trace() { - eval $add_env '"$@"' | cat - } diff --git a/meta/packages/glibc/glibc-2.4/ldsocache-varrun.patch b/meta/packages/glibc/glibc-2.4/ldsocache-varrun.patch deleted file mode 100644 index 9994d4f879..0000000000 --- a/meta/packages/glibc/glibc-2.4/ldsocache-varrun.patch +++ /dev/null @@ -1,18 +0,0 @@ -This patch moves ld.so.cache from /etc to /var/run. This is for devices -where /etc is JFFS2 or CRAMFS but /var is a ramdisk. - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- libc/sysdeps/generic/dl-cache.h~ldsocache-varrun -+++ libc/sysdeps/generic/dl-cache.h -@@ -29,7 +29,7 @@ - #endif - - #ifndef LD_SO_CACHE --# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache" -+# define LD_SO_CACHE "/var/run/ld.so.cache" - #endif - - #ifndef add_system_dir diff --git a/meta/packages/glibc/glibc-2.4/local-stdio-lock.diff b/meta/packages/glibc/glibc-2.4/local-stdio-lock.diff deleted file mode 100644 index 65cd2fd6b4..0000000000 --- a/meta/packages/glibc/glibc-2.4/local-stdio-lock.diff +++ /dev/null @@ -1,34 +0,0 @@ ---- - bits/stdio-lock.h | 17 +++++++++++++---- - 1 file changed, 13 insertions(+), 4 deletions(-) - ---- glibc-2.7.orig/bits/stdio-lock.h -+++ glibc-2.7/bits/stdio-lock.h -@@ -45,14 +45,23 @@ __libc_lock_define_recursive (typedef, _ - #define _IO_cleanup_region_end(_doit) \ - __libc_cleanup_region_end (_doit) - - #if defined _LIBC && !defined NOT_IN_libc - # define _IO_acquire_lock(_fp) \ -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, (_fp)); \ -- _IO_flockfile (_fp) -+ { \ -+ _IO_FILE *_IO_acquire_lock_file = _fp; \ -+ __libc_cleanup_region_start (1, (void (*) (void *)) _IO_acquire_lock_fct, &_IO_acquire_lock_file); \ -+ _IO_flockfile (_IO_acquire_lock_file) -+ -+# define _IO_acquire_lock_clear_flags2(_fp) \ -+ { \ -+ _IO_FILE *_IO_acquire_lock_file = _fp; \ -+ __libc_cleanup_region_start (1, (void (*) (void *)) _IO_acquire_lock_clear_flags2_fct, &_IO_acquire_lock_file); \ -+ _IO_flockfile (_IO_acquire_lock_file) - - # define _IO_release_lock(_fp) \ -- _IO_funlockfile (_fp); \ -- _IO_cleanup_region_end (0) -+ __libc_cleanup_region_end (1); \ -+ } -+ - #endif - - #endif /* bits/stdio-lock.h */ diff --git a/meta/packages/glibc/glibc-2.4/no-z-defs.patch b/meta/packages/glibc/glibc-2.4/no-z-defs.patch deleted file mode 100644 index 48c6a41267..0000000000 --- a/meta/packages/glibc/glibc-2.4/no-z-defs.patch +++ /dev/null @@ -1,9 +0,0 @@ -Create a configparms file which disabled no-z-defs. -This is required to build a working glibs for sh4, -without there will be a lot linker errors during the build. - -diff -duNr libc.orig/configparms libc/configparms ---- libc.orig/configparms 1970-01-01 10:00:00.000000000 +1000 -+++ libc/configparms 2006-02-23 14:08:18.000000000 +1100 -@@ -0,0 +1 @@ -+no-z-defs=yes diff --git a/meta/packages/glibc/glibc-2.4/nptl-crosscompile.patch b/meta/packages/glibc/glibc-2.4/nptl-crosscompile.patch deleted file mode 100644 index 18a46ad4f1..0000000000 --- a/meta/packages/glibc/glibc-2.4/nptl-crosscompile.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- glibc-2.4/nptl/sysdeps/pthread/configure.in.ark 2006-03-12 00:41:40.000000000 +0100 -+++ glibc-2.4/nptl/sysdeps/pthread/configure.in 2006-03-12 00:44:08.000000000 +0100 -@@ -45,5 +45,6 @@ - AC_MSG_ERROR([the compiler must support C cleanup handling]) - fi - else -- AC_MSG_ERROR(forced unwind support is required) -+ AC_MSG_WARN([forced unwind support is required, can't be verified while crosscompiling]) -+ AC_DEFINE(HAVE_FORCED_UNWIND) - fi ---- glibc-2.4/nptl/sysdeps/pthread/configure.ark 2006-03-12 00:42:47.000000000 +0100 -+++ glibc-2.4/nptl/sysdeps/pthread/configure 2006-03-12 00:44:08.000000000 +0100 -@@ -153,7 +153,10 @@ - { (exit 1); exit 1; }; } - fi - else -- { { echo "$as_me:$LINENO: error: forced unwind support is required" >&5 --echo "$as_me: error: forced unwind support is required" >&2;} -- { (exit 1); exit 1; }; } -+ { echo "$as_me:$LINENO: WARNING: forced unwind support is required, can't be verified while crosscompiling" >&5 -+echo "$as_me: WARNING: forced unwind support is required, can't be verified while crosscompiling" >&2;} -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_FORCED_UNWIND 1 -+_ACEOF -+ - fi diff --git a/meta/packages/glibc/glibc-2.4/powerpc-sqrt-hack.diff b/meta/packages/glibc/glibc-2.4/powerpc-sqrt-hack.diff deleted file mode 100644 index 1046efb2a1..0000000000 --- a/meta/packages/glibc/glibc-2.4/powerpc-sqrt-hack.diff +++ /dev/null @@ -1,25 +0,0 @@ -diff -Nurd ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c ---- ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c 2006-04-14 07:44:30.000000000 +0200 -+++ glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c 2006-12-08 12:53:32.202227000 +0100 -@@ -25,6 +25,9 @@ - #include <sysdep.h> - #include <ldsodefs.h> - -+#define __CPU_HAS_FSQRT ((GLRO(dl_hwcap) & PPC_FEATURE_64) != 0) -+ -+ - static const double almost_half = 0.5000000000000001; /* 0.5 + 2^-53 */ - static const ieee_float_shape_type a_nan = {.word = 0x7fc00000 }; - static const ieee_float_shape_type a_inf = {.word = 0x7f800000 }; -diff -Nurd ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c ---- ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c 2006-04-14 07:44:30.000000000 +0200 -+++ glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c 2006-12-08 12:53:36.992227000 +0100 -@@ -25,6 +25,8 @@ - #include <sysdep.h> - #include <ldsodefs.h> - -+#define __CPU_HAS_FSQRT ((GLRO(dl_hwcap) & PPC_FEATURE_64) != 0) -+ - static const float almost_half = 0.50000006; /* 0.5 + 2^-24 */ - static const ieee_float_shape_type a_nan = {.word = 0x7fc00000 }; - static const ieee_float_shape_type a_inf = {.word = 0x7f800000 }; diff --git a/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch b/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch deleted file mode 100644 index 023b6a51bc..0000000000 --- a/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch +++ /dev/null @@ -1,149 +0,0 @@ -Index: glibc-2.4/configure -=================================================================== ---- glibc-2.4.orig/configure 2006-03-06 12:18:56.000000000 +0100 -+++ glibc-2.4/configure 2006-08-06 14:10:51.000000000 +0200 -@@ -5488,6 +5488,95 @@ - fi - fi - -+### XXXX copy and pasted -+# Check for readelf -+# Extract the first word of "$target_alias-readelf", so it can be a program name with args. -+set dummy $target_alias-readelf; ac_word=$2 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_READELF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$READELF"; then -+ ac_cv_prog_READELF="$READELF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then -+ ac_cv_prog_READELF="$target_alias-readelf" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+IFS=$as_save_IFS -+ -+fi -+fi -+READELF=$ac_cv_prog_READELF -+if test -n "$READELF"; then -+ { echo "$as_me:$LINENO: result: $READELF" >&5 -+echo "${ECHO_T}$READELF" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi -+ -+ -+if test -z "$ac_cv_prog_READELF"; then -+ if test "$build" = "$target"; then -+ ac_ct_READELF=$READELF -+ # Extract the first word of "readelf", so it can be a program name with args. -+set dummy readelf; ac_word=$2 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_ac_ct_READELF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_READELF"; then -+ ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then -+ ac_cv_prog_ac_ct_READELF="readelf" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+IFS=$as_save_IFS -+ -+ test -z "$ac_cv_prog_ac_ct_READELF" && ac_cv_prog_ac_ct_READELF="readelf" -+fi -+fi -+ac_ct_READELF=$ac_cv_prog_ac_ct_READELF -+if test -n "$ac_ct_READELF"; then -+ { echo "$as_me:$LINENO: result: $ac_ct_READELF" >&5 -+echo "${ECHO_T}$ac_ct_READELF" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi -+ -+ READELF=ac_ct_READELF -+ else -+ READELF="readelf" -+ fi -+else -+ READELF="$ac_cv_prog_READELF" -+fi -+ -+### XXXX copy and pasted -+ - echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5 - echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6 - if test "${libc_cv_initfini_array+set}" = set; then -@@ -5507,7 +5596,7 @@ - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } - 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 -@@ -5801,7 +5890,7 @@ - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } - then -- 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 -Index: glibc-2.4/configure.in -=================================================================== ---- glibc-2.4.orig/configure.in 2006-03-01 10:17:40.000000000 +0100 -+++ glibc-2.4/configure.in 2006-08-06 14:09:31.000000000 +0200 -@@ -1350,6 +1350,8 @@ - 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 -@@ -1361,7 +1363,7 @@ - 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 -@@ -1543,7 +1545,7 @@ - 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/meta/packages/glibc/glibc-2.9/arm-check-pf.patch b/meta/packages/glibc/glibc-2.9/arm-check-pf.patch deleted file mode 100644 index b9c72262f2..0000000000 --- a/meta/packages/glibc/glibc-2.9/arm-check-pf.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: glibc-2.9/ports/sysdeps/unix/sysv/linux/arm/check_pf.c -=================================================================== ---- glibc-2.9.orig/ports/sysdeps/unix/sysv/linux/arm/check_pf.c 2009-06-19 20:45:32.451372131 +0400 -+++ glibc-2.9/ports/sysdeps/unix/sysv/linux/arm/check_pf.c 2009-06-19 20:45:51.351313426 +0400 -@@ -207,9 +207,6 @@ - newp->info.flags = (((ifam->ifa_flags & IFA_F_DEPRECATED) - ? in6ai_deprecated : 0) - | ((ifam->ifa_flags -- & IFA_F_TEMPORARY) -- ? in6ai_temporary : 0) -- | ((ifam->ifa_flags - & IFA_F_HOMEADDRESS) - ? in6ai_homeaddress : 0)); - memcpy (newp->info.addr, address ?: local, diff --git a/meta/packages/glibc/glibc-2.9/arm-longlong.patch b/meta/packages/glibc/glibc-2.9/arm-longlong.patch deleted file mode 100644 index 28aca83dff..0000000000 --- a/meta/packages/glibc/glibc-2.9/arm-longlong.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- glibc-2.4/stdlib/longlong.h.ark 2006-03-11 22:49:27.000000000 +0100 -+++ glibc-2.4/stdlib/longlong.h 2006-03-11 22:55:12.000000000 +0100 -@@ -206,6 +206,14 @@ - "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" \ -@@ -227,7 +235,13 @@ - : "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 (__hppa) && W_TYPE_SIZE == 32 ---- glibc-2.4/ports/sysdeps/arm/mp_clz_tab.c.ark 2006-03-11 22:56:43.000000000 +0100 -+++ glibc-2.4/ports/sysdeps/arm/mp_clz_tab.c 2006-03-11 22:58:19.000000000 +0100 -@@ -0,0 +1,24 @@ -+/* __clz_tab -- support for longlong.h -+ Copyright (C) 2004 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. */ -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+/* Nothing required. */ -+#else -+#include <stdlib/mp_clz_tab.c> -+#endif diff --git a/meta/packages/glibc/glibc-2.9/arm-lowlevellock-include-tls.patch b/meta/packages/glibc/glibc-2.9/arm-lowlevellock-include-tls.patch deleted file mode 100644 index 5c8062ecee..0000000000 --- a/meta/packages/glibc/glibc-2.9/arm-lowlevellock-include-tls.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: glibc-2.9/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h -=================================================================== ---- glibc-2.9.orig/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h 2009-06-19 20:54:35.446686910 +0400 -+++ glibc-2.9/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h 2009-06-19 20:54:43.774683370 +0400 -@@ -25,6 +25,7 @@ - #include <atomic.h> - #include <sysdep.h> - #include <kernel-features.h> -+#include <tls.h> - - #define FUTEX_WAIT 0 - #define FUTEX_WAKE 1 diff --git a/meta/packages/glibc/glibc-2.9/arm-memcpy.patch b/meta/packages/glibc/glibc-2.9/arm-memcpy.patch deleted file mode 100644 index bc2b3dab84..0000000000 --- a/meta/packages/glibc/glibc-2.9/arm-memcpy.patch +++ /dev/null @@ -1,758 +0,0 @@ ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/memmove.S 2004-03-20 18:37:23.000000000 +0000 -@@ -0,0 +1,251 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memmove (char *dst, const char *src) */ -+ENTRY(memmove) -+ subs ip, r0, r1 -+ cmphi r2, ip -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r0, r4, lr} -+ add r1, r1, r2 -+ add r0, r0, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, r0, #3 -+ PLD( pld [r1, #-4] ) -+ bne 26f -+ ands ip, r1, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [r1, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb r1!, {r3 - r6} ) -+ PLD( stmgedb r0!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( ldrge r4, [r1, #-4]! ) -+ PLD( ldrgt r5, [r1, #-4]! ) -+ PLD( str r3, [r0, #-4]! ) -+ PLD( strge r4, [r0, #-4]! ) -+ PLD( strgt r5, [r0, #-4]! ) -+ -+20: PLD( pld [r1, #-96] ) -+ PLD( pld [r1, #-128] ) -+21: ldmdb r1!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ ldmdb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb r1!, {r3, r4, ip, lr} -+ stmnedb r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb r1!, {r3, r4} -+ stmnedb r0!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [r1, #-4]! -+ strne r3, [r0, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1, #-1] -+ ldrgeb r4, [r1, #-2] -+ ldrgtb ip, [r1, #-3] -+ strb r3, [r0, #-1] -+ strgeb r4, [r0, #-2] -+ strgtb ip, [r0, #-3] -+ ldmfd sp!, {r0, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [r1, #-1]! -+ ldrgeb r4, [r1, #-1]! -+ ldrgtb lr, [r1, #-1]! -+ strb r3, [r0, #-1]! -+ strgeb r4, [r0, #-1]! -+ strgtb lr, [r0, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, r1, #3 -+ beq 19b -+ -+27: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr r3, [r1] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [r1, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [r1, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [r1, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [r0, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [r1, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb r1!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb r1!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [r1, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [r0, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add r1, r1, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add r1, r1, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add r1, r1, #1 -+ b 25b -+ -+ .size memmove, . - memmove -+END(memmove) -+libc_hidden_builtin_def (memmove) ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/bcopy.S 2004-03-20 18:37:48.000000000 +0000 -@@ -0,0 +1,255 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+dst .req r1 -+src .req r0 -+ -+/* void *bcopy (const char *src, char *dst, size_t size) */ -+ENTRY(bcopy) -+ subs ip, dst, src -+ cmphi r2, ip -+ movls r3, r0 -+ movls r0, r1 -+ movls r1, r3 -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r4, lr} -+ add src, src, r2 -+ add dst, dst, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, dst, #3 -+ PLD( pld [src, #-4] ) -+ bne 26f -+ ands ip, src, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [src, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb src!, {r3 - r6} ) -+ PLD( stmgedb dst!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( ldrge r4, [src, #-4]! ) -+ PLD( ldrgt r5, [src, #-4]! ) -+ PLD( str r3, [dst, #-4]! ) -+ PLD( strge r4, [dst, #-4]! ) -+ PLD( strgt r5, [dst, #-4]! ) -+ -+20: PLD( pld [src, #-96] ) -+ PLD( pld [src, #-128] ) -+21: ldmdb src!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ ldmdb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb src!, {r3, r4, ip, lr} -+ stmnedb dst!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb src!, {r3, r4} -+ stmnedb dst!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [src, #-4]! -+ strne r3, [dst, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {dst, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [src, #-1] -+ ldrgeb r4, [src, #-2] -+ ldrgtb ip, [src, #-3] -+ strb r3, [dst, #-1] -+ strgeb r4, [dst, #-2] -+ strgtb ip, [dst, #-3] -+ ldmfd sp!, {dst, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [src, #-1]! -+ ldrgeb r4, [src, #-1]! -+ ldrgtb lr, [src, #-1]! -+ strb r3, [dst, #-1]! -+ strgeb r4, [dst, #-1]! -+ strgtb lr, [dst, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, src, #3 -+ beq 19b -+ -+27: bic src, src, #3 -+ cmp ip, #2 -+ ldr r3, [src] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [src, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [src, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [src, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [dst, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [src, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb src!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb src!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [src, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [dst, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add src, src, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add src, src, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add src, src, #1 -+ b 25b -+ -+ .size bcopy, . - bcopy -+END(bcopy) - ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/memcpy.S 2004-05-02 14:33:22.000000000 +0100 -@@ -0,0 +1,242 @@ -+/* -+ * Optimized memcpy implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memcpy (char *dst, const char *src) */ -+ -+ENTRY(memcpy) -+ subs r2, r2, #4 -+ stmfd sp!, {r0, r4, lr} -+ blt 7f -+ ands ip, r0, #3 -+ PLD( pld [r1, #0] ) -+ bne 8f -+ ands ip, r1, #3 -+ bne 9f -+ -+1: subs r2, r2, #4 -+ blt 6f -+ subs r2, r2, #8 -+ blt 5f -+ subs r2, r2, #16 -+ blt 4f -+ -+ PLD( subs r2, r2, #65 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 3f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #64] ) -+ PLD( beq 2f ) -+ PLD( rsb ip, ip, #32 ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #96] ) -+ PLD( blt 2f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgeia r1!, {r3 - r6} ) -+ PLD( stmgeia r0!, {r3 - r6} ) -+ PLD( beq 2f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1], #4 ) -+ PLD( ldrge r4, [r1], #4 ) -+ PLD( ldrgt r5, [r1], #4 ) -+ PLD( str r3, [r0], #4 ) -+ PLD( strge r4, [r0], #4 ) -+ PLD( strgt r5, [r0], #4 ) -+ -+2: PLD( pld [r1, #96] ) -+3: ldmia r1!, {r3 - r8, ip, lr} -+ subs r2, r2, #32 -+ stmia r0!, {r3 - r8, ip, lr} -+ bge 2b -+ PLD( cmn r2, #65 ) -+ PLD( bge 3b ) -+ PLD( add r2, r2, #65 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+4: ldmneia r1!, {r3, r4, ip, lr} -+ stmneia r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+5: ldmneia r1!, {r3, r4} -+ stmneia r0!, {r3, r4} -+ -+ tst r2, #4 -+6: ldrne r3, [r1], #4 -+ strne r3, [r0], #4 -+ -+7: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb ip, [r1] -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb ip, [r0] -+ ldmfd sp!, {r0, r4, pc} -+ -+8: rsb ip, ip, #4 -+ cmp ip, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb lr, [r1], #1 -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb lr, [r0], #1 -+ subs r2, r2, ip -+ blt 7b -+ ands ip, r1, #3 -+ beq 1b -+ -+9: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr lr, [r1], #4 -+ beq 17f -+ bgt 18f -+ -+ -+ .macro forward_copy_shift pull push -+ -+ cmp r2, #12 -+ PLD( pld [r1, #0] ) -+ blt 15f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 13f -+ -+ PLD( subs r2, r2, #97 ) -+ PLD( blt 12f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( rsb ip, r1, #36 ) -+ PLD( pld [r1, #64] ) -+ PLD( ands ip, ip, #31 ) -+ PLD( pld [r1, #96] ) -+ PLD( beq 11f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #128] ) -+ PLD( blt 11f ) -+ PLD( sub r2, r2, ip ) -+10: PLD( mov r3, lr, pull #\pull ) -+ PLD( ldr lr, [r1], #4 ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r3, r3, lr, push #\push ) -+ PLD( str r3, [r0], #4 ) -+ PLD( bgt 10b ) -+ -+11: PLD( pld [r1, #128] ) -+12: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r9, ip, lr} -+ subs r2, r2, #32 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, r7, push #\push -+ mov r7, r7, pull #\pull -+ orr r7, r7, r8, push #\push -+ mov r8, r8, pull #\pull -+ orr r8, r8, r9, push #\push -+ mov r9, r9, pull #\pull -+ orr r9, r9, ip, push #\push -+ mov ip, ip, pull #\pull -+ orr ip, ip, lr, push #\push -+ stmia r0!, {r3 - r9, ip} -+ bge 11b -+ PLD( cmn r2, #97 ) -+ PLD( bge 12b ) -+ PLD( add r2, r2, #97 ) -+ cmn r2, #16 -+ blt 14f -+13: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r6, lr} -+ sub r2, r2, #16 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, lr, push #\push -+ stmia r0!, {r3 - r6} -+14: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 16f -+15: mov r3, lr, pull #\pull -+ ldr lr, [r1], #4 -+ subs r2, r2, #4 -+ orr r3, r3, lr, push #\push -+ str r3, [r0], #4 -+ bge 15b -+16: -+ .endm -+ -+ -+ forward_copy_shift pull=8 push=24 -+ sub r1, r1, #3 -+ b 7b -+ -+17: forward_copy_shift pull=16 push=16 -+ sub r1, r1, #2 -+ b 7b -+ -+18: forward_copy_shift pull=24 push=8 -+ sub r1, r1, #1 -+ b 7b -+ -+ .size memcpy, . - memcpy -+END(memcpy) -+libc_hidden_builtin_def (memcpy) -+ diff --git a/meta/packages/glibc/glibc-2.9/dl-cache-libcmp.patch b/meta/packages/glibc/glibc-2.9/dl-cache-libcmp.patch deleted file mode 100644 index 2fedfa6db0..0000000000 --- a/meta/packages/glibc/glibc-2.9/dl-cache-libcmp.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- glibc-2.4/elf/Versions.ark 2006-03-11 23:30:09.000000000 +0100 -+++ glibc-2.4/elf/Versions 2006-03-11 23:31:44.000000000 +0100 -@@ -63,5 +63,7 @@ - _dl_debug_state; - # Pointer protection. - __pointer_chk_guard; -+ # for ldconfig -+ _dl_cache_libcmp; - } - } diff --git a/meta/packages/glibc/glibc-2.9/glibc-2.9-enable-binutils-2.2.patch b/meta/packages/glibc/glibc-2.9/glibc-2.9-enable-binutils-2.2.patch deleted file mode 100644 index 09200dd43b..0000000000 --- a/meta/packages/glibc/glibc-2.9/glibc-2.9-enable-binutils-2.2.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- glibc-2.9.orig/configure.in 2009-10-22 15:38:13.000000000 +0200 -+++ glibc-2.9/configure.in 2009-10-22 15:37:33.000000000 +0200 -@@ -844,10 +844,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.2* ], 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.2* ], 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 ---- glibc-2.9.orig/configure 2009-02-26 22:28:17.000000000 +0100 -+++ glibc-2.9/configure 2009-10-22 15:43:11.000000000 +0200 -@@ -4531,7 +4531,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.2*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -4594,7 +4594,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.2*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - diff --git a/meta/packages/glibc/glibc-2.9/glibc-2.9-use-_begin.patch b/meta/packages/glibc/glibc-2.9/glibc-2.9-use-_begin.patch deleted file mode 100644 index 8d36a0524e..0000000000 --- a/meta/packages/glibc/glibc-2.9/glibc-2.9-use-_begin.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 7c8a67320e26b8c11108bf0a3410d3aef9cf3486 Mon Sep 17 00:00:00 2001 -From: Ulrich Drepper <drepper@redhat.com> -Date: Sat, 31 Jan 2009 00:21:15 +0000 -Subject: [PATCH] * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to newer linker scripts. ---- -diff --git a/elf/Makefile b/elf/Makefile -index 8079fe9..e44ff1d 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -1,4 +1,4 @@ --# Copyright (C) 1995-2007, 2008 Free Software Foundation, Inc. -+# Copyright (C) 1995-2007, 2008, 2009 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 -@@ -304,7 +304,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld-map) - $(LDFLAGS-rtld) -Wl,-z,defs -Wl,--verbose 2>&1 | \ - LC_ALL=C \ - sed -e '/^=========/,/^=========/!d;/^=========/d' \ -- -e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \ -+ -e 's/\. = .* + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \ - > $@.lds - $(LINK.o) -nostdlib -nostartfiles -shared -o $@ \ - $(LDFLAGS-rtld) -Wl,-z,defs $(z-now-$(bind-now)) \ --- -1.6.3.2 - - diff --git a/meta/packages/glibc/glibc-2.9/glibc-arm-IO-acquire-lock-fix.diff b/meta/packages/glibc/glibc-2.9/glibc-arm-IO-acquire-lock-fix.diff deleted file mode 100644 index a552cf0d1f..0000000000 --- a/meta/packages/glibc/glibc-2.9/glibc-arm-IO-acquire-lock-fix.diff +++ /dev/null @@ -1,13 +0,0 @@ -Arm needs a similar fix as http://sourceware.org/ml/libc-ports/2007-12/msg00000.html - ---- /tmp/stdio-lock.h 2008-03-04 18:51:15.555038993 +0100 -+++ glibc-2.7/ports/sysdeps/unix/sysv/linux/arm/bits/stdio-lock.h 2008-03-04 18:51:28.445035052 +0100 -@@ -50,6 +50,8 @@ - _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, (_fp)); \ - _IO_flockfile (_fp) - -+# define _IO_acquire_lock_clear_flags2(_fp) _IO_acquire_lock (_fp) -+ - # define _IO_release_lock(_fp) \ - _IO_funlockfile (_fp); \ - _IO_cleanup_region_end (0) diff --git a/meta/packages/glibc/glibc-2.9/glibc-arm-no-asm-page.patch b/meta/packages/glibc/glibc-2.9/glibc-arm-no-asm-page.patch deleted file mode 100644 index 7eb17179ba..0000000000 --- a/meta/packages/glibc/glibc-2.9/glibc-arm-no-asm-page.patch +++ /dev/null @@ -1,15 +0,0 @@ -http://sourceware.org/ml/libc-ports/2008-04/msg00005.html - - -Index: glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c -=================================================================== ---- glibc-2.6.1.orig/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2008-09-12 18:08:18.000000000 -0700 -+++ glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2008-09-12 18:08:28.000000000 -0700 -@@ -45,7 +45,6 @@ - #include <sys/mman.h> - - #include <linux/version.h> --#include <asm/page.h> - #include <sys/sysctl.h> - - #define PATH_ARM_SYSTYPE "/etc/arm_systype" diff --git a/meta/packages/glibc/glibc-2.9/local-args6.diff b/meta/packages/glibc/glibc-2.9/local-args6.diff deleted file mode 100644 index 28c957f243..0000000000 --- a/meta/packages/glibc/glibc-2.9/local-args6.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- glibc-2.7/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h.orig -+++ glibc-2.7/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h -@@ -73,6 +73,9 @@ - # define DOCARGS_5 DOCARGS_4 - # define UNDOCARGS_5 UNDOCARGS_4 - -+# define DOCARGS_6 DOCARGS_5 -+# define UNDOCARGS_6 UNDOCARGS_5 -+ - # ifdef IS_IN_libpthread - # define CENABLE bl PLTJMP(__pthread_enable_asynccancel) - # define CDISABLE bl PLTJMP(__pthread_disable_asynccancel) diff --git a/meta/packages/glibc/glibc-2.9/march-i686.patch b/meta/packages/glibc/glibc-2.9/march-i686.patch deleted file mode 100644 index 04616032ad..0000000000 --- a/meta/packages/glibc/glibc-2.9/march-i686.patch +++ /dev/null @@ -1,38 +0,0 @@ -2007-02-15 Khem Raj <kraj@xxxxxxxxxx> - - * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686. - * nptl/sysdeps/pthread/pt-initfini.c: Ditto. - - - -Index: sysdeps/unix/sysv/linux/i386/sysdep.h -=================================================================== ---- sysdeps/unix/sysv/linux/i386/sysdep.h (revision 1469) -+++ sysdeps/unix/sysv/linux/i386/sysdep.h (working copy) -@@ -29,6 +29,10 @@ - #include <dl-sysdep.h> - #include <tls.h> - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h -Index: nptl/sysdeps/pthread/pt-initfini.c -=================================================================== ---- nptl/sysdeps/pthread/pt-initfini.c (revision 1469) -+++ nptl/sysdeps/pthread/pt-initfini.c (working copy) -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - diff --git a/meta/packages/glibc/glibc-2.9/nscd-init.patch b/meta/packages/glibc/glibc-2.9/nscd-init.patch deleted file mode 100644 index 884609a5a3..0000000000 --- a/meta/packages/glibc/glibc-2.9/nscd-init.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- nscd/nscd.init -+++ nscd/nscd.init -@@ -48,9 +48,8 @@ - - start () { - [ -d /var/run/nscd ] || mkdir /var/run/nscd -- [ -d /var/db/nscd ] || mkdir /var/db/nscd - echo -n $"Starting $prog: " -- daemon /usr/sbin/nscd -+ /usr/sbin/nscd - RETVAL=$? - echo - [ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd -@@ -67,12 +66,10 @@ - # a non-privileged user - rm -f /var/run/nscd/nscd.pid - rm -f /var/run/nscd/socket -- success $"$prog shutdown" -- else -- failure $"$prog shutdown" - fi -- echo -- return $RETVAL -+ echo "Done." -+ # If nscd did not run, return 0 according to LSB. -+ return 0 - } - - restart() { -@@ -104,7 +101,8 @@ - ;; - force-reload | reload) - echo -n $"Reloading $prog: " -- killproc /usr/sbin/nscd -HUP -+ # Use killall, initscripts-1.0-r115 don't support -HUP yet. -+ killall -HUP /usr/sbin/nscd - RETVAL=$? - echo - ;; diff --git a/meta/packages/glibc/glibc-2.9/rulesfix.patch b/meta/packages/glibc/glibc-2.9/rulesfix.patch deleted file mode 100644 index 67bfc9467d..0000000000 --- a/meta/packages/glibc/glibc-2.9/rulesfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: glibc-2.9/Makerules -=================================================================== ---- glibc-2.9.orig/Makerules 2009-09-14 16:39:21.000000000 +0100 -+++ glibc-2.9/Makerules 2009-09-14 16:39:50.000000000 +0100 -@@ -173,6 +173,8 @@ - # it's used in sysd-rules, below. - $(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \ - %.sym $(common-before-compile) -+ rm -f $(@:.h=.h.d) -+ rm -f $(@:.h.d=.h) - $(AWK) -f $< $(filter %.sym,$^) \ - | $(CC) -S -o $(@:.h.d=.h)T3 $(CFLAGS) $(CPPFLAGS) -x c - \ - -MD -MP -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)' diff --git a/meta/packages/glibc/glibc-2.9/tls_i486.patch b/meta/packages/glibc/glibc-2.9/tls_i486.patch deleted file mode 100644 index 69a1fdf91d..0000000000 --- a/meta/packages/glibc/glibc-2.9/tls_i486.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: glibc-2.9/sysdeps/i386/dl-tlsdesc.S -=================================================================== ---- glibc-2.9.orig/sysdeps/i386/dl-tlsdesc.S 2009-07-07 23:21:11.647664128 +0200 -+++ glibc-2.9/sysdeps/i386/dl-tlsdesc.S 2009-07-07 23:21:32.802555992 +0200 -@@ -128,8 +128,7 @@ - .Lslow: - cfi_adjust_cfa_offset (28) - movl %ebx, 16(%esp) -- call __i686.get_pc_thunk.bx -- addl $_GLOBAL_OFFSET_TABLE_, %ebx -+ LOAD_PIC_REG (bx) - call ___tls_get_addr@PLT - movl 16(%esp), %ebx - jmp .Lret diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit.patch b/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit.patch deleted file mode 100644 index 2404f755e7..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit.patch +++ /dev/null @@ -1,58 +0,0 @@ -2005-05-09 Daniel Jacobowitz <dan@codesourcery.com> - Mark Mitchell <mark@codesourcery.com> - - * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ARM entries. - * elf/tst-auditmod1.c: Add ARM definitions. - -Index: glibc/sysdeps/generic/ldsodefs.h -=================================================================== ---- glibc.orig/sysdeps/generic/ldsodefs.h 2005-04-05 17:36:52.000000000 -0400 -+++ glibc/sysdeps/generic/ldsodefs.h 2005-05-06 15:54:44.000000000 -0400 -@@ -203,6 +203,8 @@ struct La_sparc32_regs; - struct La_sparc32_retval; - struct La_sparc64_regs; - struct La_sparc64_retval; -+struct La_arm_regs; -+struct La_arm_retval; - - struct audit_ifaces - { -@@ -284,6 +286,10 @@ struct audit_ifaces - const struct La_sparc64_regs *, - unsigned int *, const char *name, - long int *framesizep); -+ Elf32_Addr (*arm_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *, -+ uintptr_t *, struct La_arm_regs *, -+ unsigned int *, const char *name, -+ long int *framesizep); - }; - union - { -@@ -352,6 +358,9 @@ struct audit_ifaces - const struct La_sparc32_regs *, - struct La_sparc32_retval *, - const char *); -+ unsigned int (*arm_gnu_pltexit) (Elf32_Sym *, unsigned int, uintptr_t *, -+ uintptr_t *, const struct La_arm_regs *, -+ struct La_arm_retval *, const char *); - }; - unsigned int (*objclose) (uintptr_t *); - -Index: glibc/elf/tst-auditmod1.c -=================================================================== ---- glibc.orig/elf/tst-auditmod1.c 2005-04-05 17:36:53.000000000 -0400 -+++ glibc/elf/tst-auditmod1.c 2005-05-06 15:53:28.000000000 -0400 -@@ -192,6 +192,12 @@ la_symbind64 (Elf64_Sym *sym, unsigned i - # define La_regs La_sparc64_regs - # define La_retval La_sparc64_retval - # define int_retval lrv_reg[0] -+#elif __arm__ -+# define pltenter la_arm_gnu_pltenter -+# define pltext la_arm_gnu_pltexit -+# define La_regs La_arm_regs -+# define La_retval La_arm_retval -+# define int_retval lrv_reg[0] - #else - # error "architecture specific code needed" - #endif - diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit2.patch b/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit2.patch deleted file mode 100644 index 855632c53e..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/arm-audit2.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: ports/sysdeps/arm/dl-machine.h -=================================================================== -RCS file: /cvs/glibc/ports/sysdeps/arm/dl-machine.h,v -retrieving revision 1.53 -diff -u -r1.53 dl-machine.h ---- libc/ports/sysdeps/arm/dl-machine.h 10 Jun 2005 11:33:52 -0000 1.53 -+++ libc/ports/sysdeps/arm/dl-machine.h 11 Jun 2005 08:58:04 -0000 -@@ -243,6 +243,10 @@ - Prelinked libraries may use Elf32_Rela though. */ - #define ELF_MACHINE_NO_RELA defined RTLD_BOOTSTRAP - -+/* Names of the architecture-specific auditing callback functions. */ -+#define ARCH_LA_PLTENTER arm_gnu_pltenter -+#define ARCH_LA_PLTEXIT arm_gnu_pltexit -+ - #ifdef RESOLVE_MAP - - /* Deal with an out-of-range PC24 reloc. */ diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/arm-longlong.patch b/meta/packages/glibc/glibc-cvs-2.3.5/arm-longlong.patch deleted file mode 100644 index a0b2ed0039..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/arm-longlong.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- stdlib/longlong.h~ 2002-09-29 18:45:58.000000000 +0100 -+++ stdlib/longlong.h 2004-03-20 19:16:44.000000000 +0000 -@@ -210,6 +210,14 @@ - "rI" ((USItype) (bh)), \ - "r" ((USItype) (al)), \ - "rI" ((USItype) (bl))) -+/* 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" \ -@@ -231,7 +239,14 @@ - : "r" ((USItype) (a)), \ - "r" ((USItype) (b)));} - #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 (__hppa) && W_TYPE_SIZE == 32 ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ ports/sysdeps/arm/mp_clz_tab.c 2004-03-20 19:24:26.000000000 +0000 -@@ -0,0 +1,24 @@ -+/* __clz_tab -- support for longlong.h -+ Copyright (C) 2004 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. */ -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+/* Nothing required. */ -+#else -+#include <sysdeps/generic/mp_clz_tab.c> -+#endif diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/arm-memcpy.patch b/meta/packages/glibc/glibc-cvs-2.3.5/arm-memcpy.patch deleted file mode 100644 index db1120058b..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/arm-memcpy.patch +++ /dev/null @@ -1,758 +0,0 @@ ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ libc/ports/sysdeps/arm/memmove.S 2004-03-20 18:37:23.000000000 +0000 -@@ -0,0 +1,251 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memmove (char *dst, const char *src) */ -+ENTRY(memmove) -+ subs ip, r0, r1 -+ cmphi r2, ip -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r0, r4, lr} -+ add r1, r1, r2 -+ add r0, r0, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, r0, #3 -+ PLD( pld [r1, #-4] ) -+ bne 26f -+ ands ip, r1, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [r1, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb r1!, {r3 - r6} ) -+ PLD( stmgedb r0!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( ldrge r4, [r1, #-4]! ) -+ PLD( ldrgt r5, [r1, #-4]! ) -+ PLD( str r3, [r0, #-4]! ) -+ PLD( strge r4, [r0, #-4]! ) -+ PLD( strgt r5, [r0, #-4]! ) -+ -+20: PLD( pld [r1, #-96] ) -+ PLD( pld [r1, #-128] ) -+21: ldmdb r1!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ ldmdb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb r1!, {r3, r4, ip, lr} -+ stmnedb r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb r1!, {r3, r4} -+ stmnedb r0!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [r1, #-4]! -+ strne r3, [r0, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1, #-1] -+ ldrgeb r4, [r1, #-2] -+ ldrgtb ip, [r1, #-3] -+ strb r3, [r0, #-1] -+ strgeb r4, [r0, #-2] -+ strgtb ip, [r0, #-3] -+ ldmfd sp!, {r0, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [r1, #-1]! -+ ldrgeb r4, [r1, #-1]! -+ ldrgtb lr, [r1, #-1]! -+ strb r3, [r0, #-1]! -+ strgeb r4, [r0, #-1]! -+ strgtb lr, [r0, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, r1, #3 -+ beq 19b -+ -+27: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr r3, [r1] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [r1, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [r1, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [r1, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [r0, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [r1, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb r1!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb r1!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [r1, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [r0, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add r1, r1, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add r1, r1, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add r1, r1, #1 -+ b 25b -+ -+ .size memmove, . - memmove -+END(memmove) -+libc_hidden_builtin_def (memmove) ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ libc/ports/sysdeps/arm/bcopy.S 2004-03-20 18:37:48.000000000 +0000 -@@ -0,0 +1,255 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+dst .req r1 -+src .req r0 -+ -+/* void *bcopy (const char *src, char *dst, size_t size) */ -+ENTRY(bcopy) -+ subs ip, dst, src -+ cmphi r2, ip -+ movls r3, r0 -+ movls r0, r1 -+ movls r1, r3 -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r4, lr} -+ add src, src, r2 -+ add dst, dst, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, dst, #3 -+ PLD( pld [src, #-4] ) -+ bne 26f -+ ands ip, src, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [src, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb src!, {r3 - r6} ) -+ PLD( stmgedb dst!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( ldrge r4, [src, #-4]! ) -+ PLD( ldrgt r5, [src, #-4]! ) -+ PLD( str r3, [dst, #-4]! ) -+ PLD( strge r4, [dst, #-4]! ) -+ PLD( strgt r5, [dst, #-4]! ) -+ -+20: PLD( pld [src, #-96] ) -+ PLD( pld [src, #-128] ) -+21: ldmdb src!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ ldmdb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb src!, {r3, r4, ip, lr} -+ stmnedb dst!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb src!, {r3, r4} -+ stmnedb dst!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [src, #-4]! -+ strne r3, [dst, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {dst, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [src, #-1] -+ ldrgeb r4, [src, #-2] -+ ldrgtb ip, [src, #-3] -+ strb r3, [dst, #-1] -+ strgeb r4, [dst, #-2] -+ strgtb ip, [dst, #-3] -+ ldmfd sp!, {dst, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [src, #-1]! -+ ldrgeb r4, [src, #-1]! -+ ldrgtb lr, [src, #-1]! -+ strb r3, [dst, #-1]! -+ strgeb r4, [dst, #-1]! -+ strgtb lr, [dst, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, src, #3 -+ beq 19b -+ -+27: bic src, src, #3 -+ cmp ip, #2 -+ ldr r3, [src] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [src, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [src, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [src, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [dst, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [src, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb src!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb src!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [src, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [dst, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add src, src, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add src, src, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add src, src, #1 -+ b 25b -+ -+ .size bcopy, . - bcopy -+END(bcopy) - ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ libc/ports/sysdeps/arm/memcpy.S 2004-05-02 14:33:22.000000000 +0100 -@@ -0,0 +1,242 @@ -+/* -+ * Optimized memcpy implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file 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. -+ * -+ * This file 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. -+ */ -+ -+#include <sysdep.h> -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memcpy (char *dst, const char *src) */ -+ -+ENTRY(memcpy) -+ subs r2, r2, #4 -+ stmfd sp!, {r0, r4, lr} -+ blt 7f -+ ands ip, r0, #3 -+ PLD( pld [r1, #0] ) -+ bne 8f -+ ands ip, r1, #3 -+ bne 9f -+ -+1: subs r2, r2, #4 -+ blt 6f -+ subs r2, r2, #8 -+ blt 5f -+ subs r2, r2, #16 -+ blt 4f -+ -+ PLD( subs r2, r2, #65 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 3f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #64] ) -+ PLD( beq 2f ) -+ PLD( rsb ip, ip, #32 ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #96] ) -+ PLD( blt 2f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgeia r1!, {r3 - r6} ) -+ PLD( stmgeia r0!, {r3 - r6} ) -+ PLD( beq 2f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1], #4 ) -+ PLD( ldrge r4, [r1], #4 ) -+ PLD( ldrgt r5, [r1], #4 ) -+ PLD( str r3, [r0], #4 ) -+ PLD( strge r4, [r0], #4 ) -+ PLD( strgt r5, [r0], #4 ) -+ -+2: PLD( pld [r1, #96] ) -+3: ldmia r1!, {r3 - r8, ip, lr} -+ subs r2, r2, #32 -+ stmia r0!, {r3 - r8, ip, lr} -+ bge 2b -+ PLD( cmn r2, #65 ) -+ PLD( bge 3b ) -+ PLD( add r2, r2, #65 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+4: ldmneia r1!, {r3, r4, ip, lr} -+ stmneia r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+5: ldmneia r1!, {r3, r4} -+ stmneia r0!, {r3, r4} -+ -+ tst r2, #4 -+6: ldrne r3, [r1], #4 -+ strne r3, [r0], #4 -+ -+7: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb ip, [r1] -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb ip, [r0] -+ ldmfd sp!, {r0, r4, pc} -+ -+8: rsb ip, ip, #4 -+ cmp ip, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb lr, [r1], #1 -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb lr, [r0], #1 -+ subs r2, r2, ip -+ blt 7b -+ ands ip, r1, #3 -+ beq 1b -+ -+9: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr lr, [r1], #4 -+ beq 17f -+ bgt 18f -+ -+ -+ .macro forward_copy_shift pull push -+ -+ cmp r2, #12 -+ PLD( pld [r1, #0] ) -+ blt 15f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 13f -+ -+ PLD( subs r2, r2, #97 ) -+ PLD( blt 12f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( rsb ip, r1, #36 ) -+ PLD( pld [r1, #64] ) -+ PLD( ands ip, ip, #31 ) -+ PLD( pld [r1, #96] ) -+ PLD( beq 11f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #128] ) -+ PLD( blt 11f ) -+ PLD( sub r2, r2, ip ) -+10: PLD( mov r3, lr, pull #\pull ) -+ PLD( ldr lr, [r1], #4 ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r3, r3, lr, push #\push ) -+ PLD( str r3, [r0], #4 ) -+ PLD( bgt 10b ) -+ -+11: PLD( pld [r1, #128] ) -+12: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r9, ip, lr} -+ subs r2, r2, #32 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, r7, push #\push -+ mov r7, r7, pull #\pull -+ orr r7, r7, r8, push #\push -+ mov r8, r8, pull #\pull -+ orr r8, r8, r9, push #\push -+ mov r9, r9, pull #\pull -+ orr r9, r9, ip, push #\push -+ mov ip, ip, pull #\pull -+ orr ip, ip, lr, push #\push -+ stmia r0!, {r3 - r9, ip} -+ bge 11b -+ PLD( cmn r2, #97 ) -+ PLD( bge 12b ) -+ PLD( add r2, r2, #97 ) -+ cmn r2, #16 -+ blt 14f -+13: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r6, lr} -+ sub r2, r2, #16 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, lr, push #\push -+ stmia r0!, {r3 - r6} -+14: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 16f -+15: mov r3, lr, pull #\pull -+ ldr lr, [r1], #4 -+ subs r2, r2, #4 -+ orr r3, r3, lr, push #\push -+ str r3, [r0], #4 -+ bge 15b -+16: -+ .endm -+ -+ -+ forward_copy_shift pull=8 push=24 -+ sub r1, r1, #3 -+ b 7b -+ -+17: forward_copy_shift pull=16 push=16 -+ sub r1, r1, #2 -+ b 7b -+ -+18: forward_copy_shift pull=24 push=8 -+ sub r1, r1, #1 -+ b 7b -+ -+ .size memcpy, . - memcpy -+END(memcpy) -+libc_hidden_builtin_def (memcpy) -+ diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/arm-no-hwcap.patch b/meta/packages/glibc/glibc-cvs-2.3.5/arm-no-hwcap.patch deleted file mode 100644 index d3263a7dc6..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/arm-no-hwcap.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libc/ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.h.orig 2005-12-11 14:49:51 +0100 -+++ libc/ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.h 2005-12-11 14:51:28 +0100 -@@ -64,7 +64,7 @@ - HWCAP_ARM_VFP = 1 << 6, - HWCAP_ARM_EDSP = 1 << 7, - -- HWCAP_IMPORTANT = (HWCAP_ARM_HALF | HWCAP_ARM_FAST_MULT) -+ HWCAP_IMPORTANT = HWCAP_ARM_FAST_MULT - }; - - static inline int diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/dl-cache-libcmp.patch b/meta/packages/glibc/glibc-cvs-2.3.5/dl-cache-libcmp.patch deleted file mode 100644 index c74ebf6c09..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/dl-cache-libcmp.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- libc/elf/Versions.old 2005-06-27 13:38:25.000000000 +0100 -+++ libc/elf/Versions 2005-06-27 14:03:54.000000000 +0100 -@@ -56,5 +56,7 @@ - _dl_make_stack_executable; - # Only here for gdb while a better method is developed. - _dl_debug_state; -+ # for ldconfig -+ _dl_cache_libcmp; - } - } diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/dyn-ldconfig-20041128.patch b/meta/packages/glibc/glibc-cvs-2.3.5/dyn-ldconfig-20041128.patch deleted file mode 100644 index 451b6d4afc..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/dyn-ldconfig-20041128.patch +++ /dev/null @@ -1,22 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- libc/elf/Makefile~dyn-ldconfig-20041128 -+++ libc/elf/Makefile -@@ -118,12 +118,13 @@ - - ifeq (yes,$(use-ldconfig)) - ifeq (yes,$(build-shared)) --others-static += ldconfig -+#others-static += ldconfig - others += ldconfig - install-rootsbin += ldconfig - - ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon - extra-objs += $(ldconfig-modules:=.o) -+CPPFLAGS-readlib.c = -DNOT_IN_libc=1 - - # To find xmalloc.c and xstrdup.c - vpath %.c ../locale/programs diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/headers_fix.patch b/meta/packages/glibc/glibc-cvs-2.3.5/headers_fix.patch deleted file mode 100644 index 88b5e60a8f..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/headers_fix.patch +++ /dev/null @@ -1,16 +0,0 @@ -Without this, do_compile fails, unable to find linux/errno.h - -RP - 27/11/2007 - -Index: libc/nscd/Makefile -=================================================================== ---- libc.orig/nscd/Makefile 2005-06-14 22:51:24.000000000 +0000 -+++ libc/nscd/Makefile 2007-11-27 16:31:02.000000000 +0000 -@@ -68,7 +68,6 @@ - # contains only the basic kernel interface headers, not something like - # libselinux. So the simplest thing is to presume that the standard - # system headers will be ok for this file. --$(objpfx)nscd_stat.o: sysincludes = # nothing - $(objpfx)selinux.o: sysincludes = # nothing - - distribute := nscd.h nscd-client.h dbg_log.h \ diff --git a/meta/packages/glibc/glibc-cvs-2.3.5/ldsocache-varrun.patch b/meta/packages/glibc/glibc-cvs-2.3.5/ldsocache-varrun.patch deleted file mode 100644 index 9994d4f879..0000000000 --- a/meta/packages/glibc/glibc-cvs-2.3.5/ldsocache-varrun.patch +++ /dev/null @@ -1,18 +0,0 @@ -This patch moves ld.so.cache from /etc to /var/run. This is for devices -where /etc is JFFS2 or CRAMFS but /var is a ramdisk. - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- libc/sysdeps/generic/dl-cache.h~ldsocache-varrun -+++ libc/sysdeps/generic/dl-cache.h -@@ -29,7 +29,7 @@ - #endif - - #ifndef LD_SO_CACHE --# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache" -+# define LD_SO_CACHE "/var/run/ld.so.cache" - #endif - - #ifndef add_system_dir diff --git a/meta/packages/glibc/glibc-initial_2.4.bb b/meta/packages/glibc/glibc-initial_2.4.bb deleted file mode 100644 index fa7836ad88..0000000000 --- a/meta/packages/glibc/glibc-initial_2.4.bb +++ /dev/null @@ -1,2 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc diff --git a/meta/packages/glibc/glibc-initial_2.5.bb b/meta/packages/glibc/glibc-initial_2.5.bb deleted file mode 100644 index d3dc4b587a..0000000000 --- a/meta/packages/glibc/glibc-initial_2.5.bb +++ /dev/null @@ -1,3 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - diff --git a/meta/packages/glibc/glibc-initial_2.6.1.bb b/meta/packages/glibc/glibc-initial_2.6.1.bb deleted file mode 100644 index 3ad96569f5..0000000000 --- a/meta/packages/glibc/glibc-initial_2.6.1.bb +++ /dev/null @@ -1,6 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - -do_configure_prepend () { - unset CFLAGS -}
\ No newline at end of file diff --git a/meta/packages/glibc/glibc-initial_2.9.bb b/meta/packages/glibc/glibc-initial_2.9.bb deleted file mode 100644 index d66297090f..0000000000 --- a/meta/packages/glibc/glibc-initial_2.9.bb +++ /dev/null @@ -1,6 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - -do_configure_prepend () { - unset CFLAGS -} diff --git a/meta/packages/glibc/glibc-initial_csl-2005q3-2.bb b/meta/packages/glibc/glibc-initial_csl-2005q3-2.bb deleted file mode 100644 index d3dc4b587a..0000000000 --- a/meta/packages/glibc/glibc-initial_csl-2005q3-2.bb +++ /dev/null @@ -1,3 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - diff --git a/meta/packages/glibc/glibc_2.3.5+cvs20050627.bb b/meta/packages/glibc/glibc_2.3.5+cvs20050627.bb deleted file mode 100644 index 8c44c21156..0000000000 --- a/meta/packages/glibc/glibc_2.3.5+cvs20050627.bb +++ /dev/null @@ -1,110 +0,0 @@ -require glibc.inc - -FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs-2.3.5" -SRCDATE = "20050627" -PR = "r6" - -GLIBC_ADDONS ?= "ports,linuxthreads" - -GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -# file://noinfo.patch;patch=1 -# file://ldconfig.patch;patch=1;pnum=0 -# file://arm-machine-gmon.patch;patch=1;pnum=0 \ -# \ -# file://arm-ioperm.patch;patch=1;pnum=0 \ -# file://ldd.patch;patch=1;pnum=0 \ -SRC_URI = "http://familiar.handhelds.org/source/v0.8.3/stash_libc_sources.redhat.com__20050627.tar.gz \ - http://familiar.handhelds.org/source/v0.8.3/stash_ports_sources.redhat.com__20050627.tar.gz \ - file://arm-audit.patch;patch=1 \ - file://arm-audit2.patch;patch=1 \ - file://arm-no-hwcap.patch;patch=1 \ - file://arm-memcpy.patch;patch=1 \ - file://arm-longlong.patch;patch=1;pnum=0 \ - file://fhs-linux-paths.patch;patch=1 \ - file://dl-cache-libcmp.patch;patch=1 \ - file://headers_fix.patch;patch=1 \ - file://5090_all_stubs-rule-fix.patch;patch=1 \ - file://etc/ld.so.conf \ - file://generate-supported.mk" - -# seems to fail on tls platforms -SRC_URI_append_arm = " file://dyn-ldconfig-20041128.patch;patch=1" - -S = "${WORKDIR}/libc" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=${GLIBC_ADDONS} \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_munge() { - # Integrate ports into tree - mv ${WORKDIR}/ports ${S} - - # http://www.handhelds.org/hypermail/oe/51/5135.html - # Some files were moved around between directories on - # 2005-12-21, which means that any attempt to check out - # from CVS using a datestamp older than that will be doomed. - # - # This is a workaround for that problem. - rm -rf ${S}/bits -} - -addtask munge before do_patch after do_unpack - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc diff --git a/meta/packages/glibc/glibc_2.4.bb b/meta/packages/glibc/glibc_2.4.bb deleted file mode 100644 index ad6840e9bf..0000000000 --- a/meta/packages/glibc/glibc_2.4.bb +++ /dev/null @@ -1,137 +0,0 @@ -require glibc.inc - -PR = "r14" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - -FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4" - -GLIBC_ADDONS ?= "ports,nptl,libidn" - -GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN gez_ET bn_BD gez_ER te_IN" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -# file://noinfo.patch;patch=1 -# file://ldconfig.patch;patch=1;pnum=0 -# file://arm-machine-gmon.patch;patch=1;pnum=0 \ -# \ -# file://arm-ioperm.patch;patch=1;pnum=0 \ -# file://ldd.patch;patch=1;pnum=0 \ -SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.4.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-2.4.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-libidn-2.4.tar.bz2 \ - file://arm-memcpy.patch;patch=1 \ - file://arm-longlong.patch;patch=1 \ - file://fhs-linux-paths.patch;patch=1 \ - file://dl-cache-libcmp.patch;patch=1 \ - file://nptl-crosscompile.patch;patch=1 \ - file://glibc-2.4-compile.patch;patch=1 \ - file://fixup-aeabi-syscalls.patch;patch=1 \ - file://zecke-sane-readelf.patch;patch=1 \ - file://generic-bits_select.h \ - file://generic-bits_types.h \ - file://generic-bits_typesizes.h \ - file://generic-bits_time.h \ - file://etc/ld.so.conf \ - file://generate-supported.mk" - -# Build fails on sh3 and sh4 without additional patches -SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1" -SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1" - -S = "${WORKDIR}/glibc-2.4" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=${GLIBC_ADDONS} \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_munge() { - # Integrate ports and libidn into tree - mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports - mv ${WORKDIR}/glibc-libidn-${PV} ${S}/libidn - - # Ports isn't really working... Fix it - # Some of this is rather dirty, but it seems to be the only - # quick way to get this cruft to compile - rm -rf ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - ln -s nptl ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - cp ${S}/sysdeps/unix/sysv/linux/i386/bits/wchar.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/wordsize-32/bits/wordsize.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${WORKDIR}/generic-bits_select.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/select.h - cp ${WORKDIR}/generic-bits_types.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/types.h - cp ${WORKDIR}/generic-bits_typesizes.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/typesizes.h - cp ${WORKDIR}/generic-bits_time.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/time.h - # Copy in generic stuff for not yet implemented headers - for i in ${S}/bits/*.h; do - F=`basename $i` - [ "$F" = "local_lim.h" ] && continue - [ "$F" = "errno.h" ] && continue - test -e ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/$F || test -e ${S}/ports/sysdeps/arm/bits/$F || test -e ${S}/sysdeps/unix/sysv/linux/bits/$F || test -e ${S}/sysdeps/ieee754/bits/$F || cp $i ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - done - # This is harmful; we need to get the one from nptl/sysdeps/pthreads - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/libc-lock.h - # Obsoleted by sysdeps/arm/{fpu,eabi}/bits/fenv.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h - # Obsoleted by sysdeps/gnu/bits/utmp.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h -} - -addtask munge before do_patch after do_unpack - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc diff --git a/meta/packages/glibc/glibc_2.5.bb b/meta/packages/glibc/glibc_2.5.bb deleted file mode 100644 index a63b678949..0000000000 --- a/meta/packages/glibc/glibc_2.5.bb +++ /dev/null @@ -1,148 +0,0 @@ -require glibc.inc - -PR = "r8" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - -FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4" - -GLIBC_ADDONS ?= "ports,nptl,libidn" - -GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN gez_ET gez_ER bn_BD te_IN" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -# file://noinfo.patch;patch=1 -# file://ldconfig.patch;patch=1;pnum=0 -# file://arm-machine-gmon.patch;patch=1;pnum=0 \ -# \ -# file://arm-ioperm.patch;patch=1;pnum=0 \ -# file://ldd.patch;patch=1;pnum=0 \ -SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-libidn-${PV}.tar.bz2 \ - file://arm-memcpy.patch;patch=1 \ - file://arm-longlong.patch;patch=1 \ - file://fhs-linux-paths.patch;patch=1 \ - file://dl-cache-libcmp.patch;patch=1 \ - file://nptl-crosscompile.patch;patch=1 \ - file://glibc-check_pf.patch;patch=1;pnum=0 \ -# file://glibc-2.4-compile.patch;patch=1 \ -# file://glibc-2.4-openat-3.patch;patch=1 \ -# file://fixup-aeabi-syscalls.patch;patch=1 \ - file://zecke-sane-readelf.patch;patch=1 \ - file://eabi_kernel_version_hack.patch;patch=1 \ - file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \ - file://generic-bits_select.h \ - file://generic-bits_types.h \ - file://generic-bits_typesizes.h \ - file://generic-bits_time.h \ - file://etc/ld.so.conf \ - file://generate-supported.mk \ - file://glibc-arm-no-procinfo_h.patch;patch=1 \ - file://glibc-include-fixed.patch;patch=1;pnum=0" - - -# Build fails on sh3 and sh4 without additional patches -SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1" -SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1" - -SRC_URI_append_powerpc = " file://powerpc-sqrt-hack.diff;patch=1" - -S = "${WORKDIR}/glibc-${PV}" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=${GLIBC_ADDONS} \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_munge() { - # Integrate ports and libidn into tree - mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports - mv ${WORKDIR}/glibc-libidn-${PV} ${S}/libidn - - # Ports isn't really working... Fix it - # Some of this is rather dirty, but it seems to be the only - # quick way to get this cruft to compile - rm -rf ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - ln -s nptl ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - cp ${S}/nptl/sysdeps/pthread/bits/sigthread.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/unix/sysv/linux/i386/bits/wchar.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/wordsize-32/bits/wordsize.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${WORKDIR}/generic-bits_select.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/select.h - cp ${WORKDIR}/generic-bits_types.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/types.h - cp ${WORKDIR}/generic-bits_typesizes.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/typesizes.h - cp ${WORKDIR}/generic-bits_time.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/time.h - # Copy in generic stuff for not yet implemented headers - for i in ${S}/bits/*.h; do - F=`basename $i` - [ "$F" = "local_lim.h" ] && continue - [ "$F" = "errno.h" ] && continue - test -e ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/$F || test -e ${S}/ports/sysdeps/arm/bits/$F || test -e ${S}/sysdeps/unix/sysv/linux/bits/$F || test -e ${S}/sysdeps/ieee754/bits/$F || cp $i ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - done - # This is harmful; we need to get the one from nptl/sysdeps/pthreads - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/libc-lock.h - # Obsoleted by sysdeps/arm/{fpu,eabi}/bits/fenv.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h - # Obsoleted by sysdeps/gnu/bits/utmp.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h -} - -addtask munge before do_patch after do_unpack - - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc diff --git a/meta/packages/glibc/glibc_2.6.1.bb b/meta/packages/glibc/glibc_2.6.1.bb deleted file mode 100644 index f1f5b290e8..0000000000 --- a/meta/packages/glibc/glibc_2.6.1.bb +++ /dev/null @@ -1,156 +0,0 @@ -require glibc.inc -PR = "r6" - -ARM_INSTRUCTION_SET = "arm" - -PACKAGES_DYNAMIC = "libc6*" -RPROVIDES_${PN}-dev = "libc6-dev" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - - -FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4" - -GLIBC_ADDONS ?= "ports,nptl,libidn" - -GLIBC_BROKEN_LOCALES = " _ER _ET so_ET yn_ER sid_ET tr_TR mn_MN gez_ET gez_ER bn_BD te_IN" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -RDEPENDS_${PN}-dev = "linux-libc-headers-dev" - -SRC_URI = "\ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-libidn-${PV}.tar.bz2 \ - file://arm-memcpy.patch;patch=1 \ - file://arm-longlong.patch;patch=1 \ - file://fhs-linux-paths.patch;patch=1 \ - file://dl-cache-libcmp.patch;patch=1 \ - file://ldsocache-varrun.patch;patch=1 \ - file://nptl-crosscompile.patch;patch=1 \ - file://glibc-2.5-local-dynamic-resolvconf.patch;patch=1;pnum=0 \ - file://glibc-check_pf.patch;patch=1;pnum=0 \ - file://zecke-sane-readelf.patch;patch=1 \ - file://ldd-unbash.patch;patch=1 \ - file://generic-bits_select.h \ - file://generic-bits_types.h \ - file://generic-bits_typesizes.h \ - file://generic-bits_time.h \ - file://etc/ld.so.conf \ - file://generate-supported.mk \ - file://glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch;patch=1 \ - file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \ - file://glibc-include-fixed.patch;patch=1;pnum=0 \ - file://no-hwcaps.patch;patch=1 \ - file://nopageheader.patch;patch=1 \ -" - -# Build fails on sh3 and sh4 without additional patches -SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1" -SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1" - -# PowerPC Patches to add support for soft-float -SRC_URI_append_powerpc = "file://powerpc-sqrt-hack.diff;patch=1" - -S = "${WORKDIR}/glibc-${PV}" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "\ - --enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=${GLIBC_ADDONS} \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF} \ -" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_munge() { - # Integrate ports and libidn into tree - mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports - mv ${WORKDIR}/glibc-libidn-${PV} ${S}/libidn - - # Ports isn't really working... Fix it - # Some of this is rather dirty, but it seems to be the only - # quick way to get this cruft to compile - rm -rf ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - ln -s nptl ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - cp ${S}/nptl/sysdeps/pthread/bits/sigthread.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/unix/sysv/linux/i386/bits/wchar.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/wordsize-32/bits/wordsize.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${WORKDIR}/generic-bits_select.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/select.h - cp ${WORKDIR}/generic-bits_types.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/types.h - cp ${WORKDIR}/generic-bits_typesizes.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/typesizes.h - cp ${WORKDIR}/generic-bits_time.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/time.h - # Copy in generic stuff for not yet implemented headers - for i in ${S}/bits/*.h; do - F=`basename $i` - [ "$F" = "local_lim.h" ] && continue - [ "$F" = "errno.h" ] && continue - test -e ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/$F || test -e ${S}/ports/sysdeps/arm/bits/$F || test -e ${S}/sysdeps/unix/sysv/linux/bits/$F || test -e ${S}/sysdeps/ieee754/bits/$F || cp $i ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - done - # This is harmful; we need to get the one from nptl/sysdeps/pthreads - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/libc-lock.h - # Obsoleted by sysdeps/arm/{fpu,eabi}/bits/fenv.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h - # Obsoleted by sysdeps/gnu/bits/utmp.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h -} - -addtask munge before do_patch after do_unpack - - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc - -BBCLASSEXTEND = "nativesdk" diff --git a/meta/packages/glibc/glibc_2.9.bb b/meta/packages/glibc/glibc_2.9.bb deleted file mode 100644 index 15b625b760..0000000000 --- a/meta/packages/glibc/glibc_2.9.bb +++ /dev/null @@ -1,161 +0,0 @@ -require glibc.inc - -ARM_INSTRUCTION_SET = "arm" - -PACKAGES_DYNAMIC = "libc6*" -RPROVIDES_${PN}-dev = "libc6-dev virtual-libc-dev" - -PR = "r2" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - -GLIBC_ADDONS ?= "ports,nptl,libidn" - -GLIBC_BROKEN_LOCALES = " _ER _ET so_ET yn_ER sid_ET tr_TR mn_MN gez_ET gez_ER bn_BD te_IN" - -FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-${PV}', '${FILE_DIRNAME}/glibc-2.4', '${FILE_DIRNAME}/glibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -RDEPENDS_${PN}-dev = "linux-libc-headers-dev" - -# file://noinfo.patch;patch=1 -# file://ldconfig.patch;patch=1;pnum=0 -# file://arm-machine-gmon.patch;patch=1;pnum=0 \ -# \ -# file://arm-ioperm.patch;patch=1;pnum=0 \ -# file://ldd.patch;patch=1;pnum=0 \ -SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-${PV}.tar.bz2 \ - ftp://ftp.gnu.org/pub/gnu/glibc/glibc-libidn-${PV}.tar.bz2 \ - file://nscd-init.patch;patch=1;pnum=0 \ - file://arm-memcpy.patch;patch=1 \ - file://arm-longlong.patch;patch=1 \ - file://fhs-linux-paths.patch;patch=1 \ - file://dl-cache-libcmp.patch;patch=1 \ - file://ldsocache-varrun.patch;patch=1 \ - file://nptl-crosscompile.patch;patch=1 \ - file://glibc-check_pf.patch;patch=1;pnum=0 \ - file://ldd-unbash.patch;patch=1 \ - file://glibc-arm-IO-acquire-lock-fix.diff;patch=1 \ - file://generic-bits_select.h \ - file://generic-bits_types.h \ - file://generic-bits_typesizes.h \ - file://generic-bits_time.h \ - file://etc/ld.so.conf \ - file://generate-supported.mk \ - file://march-i686.patch;patch=1;pnum=0 \ - file://tls_i486.patch;patch=1 \ - file://rulesfix.patch;patch=1 \ - file://glibc-2.9-use-_begin.patch;patch=1 \ - file://glibc-2.9-enable-binutils-2.2.patch;patch=1 \ - " - -# Build fails on sh3 and sh4 without additional patches -SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1" -SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1" - -#powerpc patches to add support for soft-float -SRC_URI_append_powerpc= " file://powerpc-sqrt-hack.diff;patch=1" - -S = "${WORKDIR}/glibc-${PV}" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=${GLIBC_ADDONS} \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_munge() { - # Integrate ports and libidn into tree - mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports - mv ${WORKDIR}/glibc-libidn-${PV} ${S}/libidn - - # Ports isn't really working... Fix it - # Some of this is rather dirty, but it seems to be the only - # quick way to get this cruft to compile - rm -rf ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - ln -s nptl ${S}/ports/sysdeps/unix/sysv/linux/arm/linuxthreads - cp ${S}/nptl/sysdeps/pthread/bits/sigthread.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/unix/sysv/linux/i386/bits/wchar.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${S}/sysdeps/wordsize-32/bits/wordsize.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - cp ${WORKDIR}/generic-bits_select.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/select.h - cp ${WORKDIR}/generic-bits_types.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/types.h - cp ${WORKDIR}/generic-bits_typesizes.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/typesizes.h - cp ${WORKDIR}/generic-bits_time.h ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/time.h - # Copy in generic stuff for not yet implemented headers - for i in ${S}/bits/*.h; do - F=`basename $i` - [ "$F" = "local_lim.h" ] && continue - [ "$F" = "errno.h" ] && continue - test -e ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/$F || test -e ${S}/ports/sysdeps/arm/bits/$F || test -e ${S}/sysdeps/unix/sysv/linux/bits/$F || test -e ${S}/sysdeps/ieee754/bits/$F || cp $i ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/ - done - # This is harmful; we need to get the one from nptl/sysdeps/pthreads - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/libc-lock.h - # Obsoleted by sysdeps/arm/{fpu,eabi}/bits/fenv.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h - # Obsoleted by sysdeps/gnu/bits/utmp.h - rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h -} - -addtask munge before do_patch after do_unpack - - -do_configure () { -# /var/db was not included to FHS - sed -i s:/var/db/nscd:/var/run/nscd: ${S}/nscd/nscd.h -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc - -BBCLASSEXTEND = "nativesdk" diff --git a/meta/packages/glibc/glibc_csl-2005q3-2.bb b/meta/packages/glibc/glibc_csl-2005q3-2.bb deleted file mode 100644 index b1ea27dec5..0000000000 --- a/meta/packages/glibc/glibc_csl-2005q3-2.bb +++ /dev/null @@ -1,89 +0,0 @@ -require glibc.inc - -# DEFAULT_PREFERENCE = "-1" -PV = "2.3.6+csl-arm-2005q3-2" -PR = "r11" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - -GLIBC_ADDONS ?= "nptl,libidn" - -GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN gez_ET bn_BD gez_ER te_IN" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import bb, re - uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None) - if uc_os: - raise bb.parse.SkipPackage("incompatible with target %s" % - bb.data.getVar('TARGET_OS', d, 1)) -} - -SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2005q3-2-arm-none-linux-gnueabi.src.tar.bz2 \ - file://nptl-crosscompile-2.3.6.patch;patch=1 \ - file://etc/ld.so.conf \ - file://generate-supported.mk \ - " - -do_unpack2() { - cd ${WORKDIR} - tar -xvjf ./arm-2005q3-2-arm-none-linux-gnueabi/glibc-2005q3-2.tar.bz2 - rm -rf ./arm-2005q3-2-arm-none-linux-gnueabi -} - -addtask unpack2 after do_unpack before do_patch - -S = "${WORKDIR}/glibc-2.3.5pre" -B = "${WORKDIR}/build-${TARGET_SYS}" - -EXTRA_OECONF = "--without-cvs --disable-profile --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}" - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - if [ -z "`which rpcgen`" ]; then - echo "rpcgen not found. Install glibc-devel." - exit 1 - fi - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rpcgen -h $r -o $h || oewarn "unable to generate header for $r" - done - ) -} - -require glibc-stage.inc - -require glibc-package.inc |