changeset 1018:e2f4f7431ec4

Upgrade to uClibc 0.9.30.3.
author Rob Landley <rob@landley.net>
date Sun, 28 Mar 2010 15:12:23 -0500
parents 58d61ccd3f3b
children dab0e08d2de8
files download.sh sources/patches/uClibc-fixmips.patch sources/patches/uClibc-mips64.patch sources/patches/uClibc-realpath.patch sources/patches/uClibc-sigaction.patch
diffstat 5 files changed, 2 insertions(+), 216 deletions(-) [+]
line wrap: on
line diff
--- a/download.sh	Sun Mar 28 13:48:48 2010 -0500
+++ b/download.sh	Sun Mar 28 15:12:23 2010 -0500
@@ -26,8 +26,8 @@
 UNSTABLE=http://kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.32-rc7.tar.bz2 \
 maybe_fork "download || dienow"
 
-URL=http://www.uclibc.org/downloads/uClibc-0.9.30.2.tar.bz2 \
-SHA1=a956b1c37e3163c961dad7fdf96b6d4c7e176d1f \
+URL=http://www.uclibc.org/downloads/uClibc-0.9.30.3.tar.bz2 \
+SHA1=6856b5c0ed4134a555c408d4b0bd9a098b7f1cca \
 UNSTABLE=http://uclibc.org/downloads/uClibc-snapshot.tar.bz2 \
 maybe_fork "download || dienow"
 
--- a/sources/patches/uClibc-fixmips.patch	Sun Mar 28 13:48:48 2010 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-This is half of the following commit, which fixes mips.  (The rest is TLS
-stuff, not applicable here, and doesn't apply anyway.)
-
-commit a45777479c8c2950aed0b0fe1ced74b6c4d45057
-Author: Khem Raj <raj.khem@gmail.com>
-Date:   Tue Jan 12 17:51:32 2010 -0800
-
-    mips/nptl: Pass correct parameters to dl_find_hash when resolving TLS relocations.
-    
-    Make use of macros from sys/asm.h in crt1.S
-    These two changes are needed for mips nptl to boot once again.
-    
-    Signed-off-by: Khem Raj <raj.khem@gmail.com>
-    (cherry picked from commit 9c343fd4030dcd7a52616f365893177dded50346)
-    
-    Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
-
-diff --git a/libc/sysdeps/linux/mips/crt1.S b/libc/sysdeps/linux/mips/crt1.S
-index e851d52..6a80412 100644
---- a/libc/sysdeps/linux/mips/crt1.S
-+++ b/libc/sysdeps/linux/mips/crt1.S
-@@ -85,29 +85,10 @@
- 
- __start:
- #ifdef __PIC__
--#if _MIPS_SIM == _MIPS_SIM_ABI32
--	.frame	sp, 24, sp
--        .set noreorder
--	move $0, $31		/* Save old ra.  */
--	bal 10f			/* Find addr of cpload.  */
--        nop
--10:
--	.cpload $31
--	move $31, $0
--	.set reorder
--	.cprestore 16
--#else
--	move $0, $31; /* Save old ra.  */
--	.set noreorder
--	bal 10f /* Find addr of .cpsetup.  */
--	nop
--10:
--	.set reorder
--	.cpsetup $31, $25, 10b
--	move $31, $0
--#endif
-+	SETUP_GPX($0)
-+	SETUP_GPX64($25,$0)
- #else
--	la $28, _gp             /* Setup GP correctly if we're non-PIC.  */
-+	PTR_LA $28, _gp             /* Setup GP correctly if we're non-PIC.  */
- 	move $31, $0
- #endif
- 
-@@ -118,18 +99,18 @@ __start:
- 	/* Allocate space on the stack for seven arguments and
- 	 * make sure the stack is aligned to double words (8 bytes) */
- 
-+	and $29, -2 * SZREG
-+
- #if _MIPS_SIM == _MIPS_SIM_ABI32
--	and $29, -2 * 4
--	subu $29, 32
--	la $7, _init		/* init */
--	la $8, _fini
--	sw $8, 16($29)		/* fini */
--	sw $2, 20($29)		/* rtld_fini */
--	sw $29, 24($29)		/* stack_end */
--#else
--	and $29, -2 * PTRSIZE
-+	PTR_SUBIU $29, 32
-+#endif
- 	PTR_LA $7, _init		/* init */
--	PTR_LA $8, _fini		/* fini */
-+	PTR_LA $8, _fini
-+#if _MIPS_SIM == _MIPS_SIM_ABI32
-+	PTR_S $8, 16($29)		/* fini */
-+	PTR_S $2, 20($29)		/* rtld_fini */
-+	PTR_S $29, 24($29)		/* stack_end */
-+#else
- 	move $9, $2		/* rtld_fini */
- 	move $10, $29		/* stack_end */
- #endif
-@@ -148,4 +129,3 @@ __data_start:
- 	.weak data_start
- 	data_start = __data_start
- 
--
--- a/sources/patches/uClibc-mips64.patch	Sun Mar 28 13:48:48 2010 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-From: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
-Subject: [PATCH] getdents: Fix mips64 build
-
-Some archs (such as mips64) do not have getdents64 syscall but have
-getdents syscall.  Define alias for it.
-
-This fixes regression from 0.9.30.1.
-
-Backgrounds:
-This is once done by commit e8b1c674.  But after the commit 33bcf733
-("Use getdents syscall if kernel provide supports for this instead of
-relying upon getdents64."), if __ASSUME_GETDENTS32_D_TYPE was defined
-the alias for getdents64 is not defined.  The macro
-__ASSUME_GETDENTS32_D_TYPE had been effectively ignored until 0.9.30.1
-but the commit 0f0f20ab ("Move kernel-features.h header from the
-linuxthread directory to a common one...") really enables it.
-
-Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
----
- libc/sysdeps/linux/common/getdents.c |    8 ++++----
- 1 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/libc/sysdeps/linux/common/getdents.c b/libc/sysdeps/linux/common/getdents.c
-index 6a38772..5dda190 100644
---- a/libc/sysdeps/linux/common/getdents.c
-+++ b/libc/sysdeps/linux/common/getdents.c
-@@ -133,10 +133,6 @@ ssize_t __getdents (int fd, char *buf, size_t nbytes)
-     return (char *) dp - buf;
- }
- 
--#if defined __UCLIBC_HAS_LFS__ && ! defined __NR_getdents64
--attribute_hidden strong_alias(__getdents,__getdents64)
--#endif
--
- #elif __WORDSIZE == 32
- 
- /* Experimentally off - libc_hidden_proto(memmove) */
-@@ -167,4 +163,8 @@ ssize_t __getdents (int fd, char *buf, size_t nbytes)
- }
- #endif
- 
-+#if defined __UCLIBC_HAS_LFS__ && ! defined __NR_getdents64
-+attribute_hidden strong_alias(__getdents,__getdents64)
-+#endif
-+
- #endif
--- a/sources/patches/uClibc-realpath.patch	Sun Mar 28 13:48:48 2010 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-Add cheesy malloc() support to realpath().  Still limited to PATH_MAX, but eh.
-
-diff -ur uClibc/libc/stdlib/realpath.c uClibc.new/libc/stdlib/realpath.c
---- uClibc/libc/stdlib/realpath.c	2008-06-04 09:02:56.000000000 -0500
-+++ uClibc.new/libc/stdlib/realpath.c	2009-10-25 13:17:42.000000000 -0500
-@@ -55,7 +55,7 @@
- 	char *max_path;
- 	char *new_path;
- 	size_t path_len;
--	int readlinks = 0;
-+	int readlinks = 0, allocated = 0;
- #ifdef S_IFLNK
- 	int link_len;
- #endif
-@@ -68,6 +68,10 @@
- 		__set_errno(ENOENT);
- 		return NULL;
- 	}
-+	if (!got_path) {
-+		got_path = alloca(PATH_MAX);
-+		allocated ++;
-+	}
- 	/* Make a copy of the source path since we may need to modify it. */
- 	path_len = strlen(path);
- 	if (path_len >= PATH_MAX - 2) {
-@@ -168,5 +172,6 @@
- 		new_path--;
- 	/* Make sure it's null terminated. */
- 	*new_path = '\0';
-+	if (allocated) got_path = strdup(got_path);
- 	return got_path;
- }
-diff -ur uClibc/include/stdlib.h uClibc2/include/stdlib.h
---- uClibc/include/stdlib.h	2008-09-11 11:17:43.000000000 -0500
-+++ uClibc2/include/stdlib.h	2009-10-26 03:43:36.000000000 -0500
-@@ -637,7 +637,7 @@
-    name in RESOLVED.  */
- /* we choose to handle __resolved==NULL as crash :) */
- extern char *realpath (__const char *__restrict __name,
--		       char *__restrict __resolved) __THROW __wur __nonnull((2));
-+		       char *__restrict __resolved) __wur;
- #endif
- 
- 
--- a/sources/patches/uClibc-sigaction.patch	Sun Mar 28 13:48:48 2010 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-Fix sparc build break.  See:
-
-  http://lists.uclibc.org/pipermail/uclibc/2010-February/043563.html
-
-for details.
-
---- uClibc/libc/sysdeps/linux/sparc/sigaction.c	2010-01-13 15:22:31.000000000 -0600
-+++ uClibc.bak/libc/sysdeps/linux/sparc/sigaction.c	2010-02-01 03:06:43.000000000 -0600
-@@ -34,7 +34,8 @@
- static void __rt_sigreturn_stub(void);
- static void __sigreturn_stub(void);
- 
--int __libc_sigaction(int sig, const struct sigaction *act, struct sigaction *oact)
-+libc_hidden_proto(sigaction)
-+int sigaction(int sig, const struct sigaction *act, struct sigaction *oact)
- {
- 	int ret;
- 	struct sigaction kact, koact;
-@@ -64,11 +65,13 @@
- 	}
- 	return ret;
- }
-+libc_hidden_def(sigaction)
-+weak_alias(sigaction,__libc_sigaction)
- 
--#ifndef LIBC_SIGACTION
--weak_alias(__libc_sigaction,sigaction)
--libc_hidden_weak(sigaction)
--#endif
-+//#ifndef LIBC_SIGACTION
-+//weak_alias(__libc_sigaction,sigaction)
-+//libc_hidden_weak(sigaction)
-+//#endif
- 
- static void
- __rt_sigreturn_stub(void)