uclibc: Update to latest git/master version

Use kernel cfg management infra to manage kconfig
fragments.

Add fragments for locale and obstrack and enable them
by default

Drop aplready applied patches

Drop DP = -1

(From OE-Core rev: 7bcf53ddb2e1a7171545f544ee2443b06d7c3359)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj 2013-06-26 14:01:27 -07:00 committed by Richard Purdie
parent c0d232875f
commit 0188270f8c
9 changed files with 102 additions and 86 deletions

View File

@ -1,3 +1,5 @@
DEPENDS += "kern-tools-native"
inherit cml1
#
# Set the ARCH environment variable for uClibc compilation.
# Return value must match one of the architectures known to uClibc:
@ -128,3 +130,13 @@ def features_to_uclibc_conf(d):
def features_to_uclibc_del(d):
cnf, rem = features_to_uclibc_settings(d)
return rem
# returns all the elements from the src uri that are .cfg files
def find_cfgs(d):
sources=src_patches(d, True)
sources_list=[]
for s in sources:
if s.endswith('.cfg'):
sources_list.append(s)
return sources_list

View File

@ -1,6 +1,4 @@
SRCREV="946799cd0ce0c6c803c9cb173a84f4d607bde350"
DEFAULT_PREFERENCE = "-1"
SRCREV="c2c684f88157f8bd0c236c7546f922fbf66b64a1"
PV = "0.9.33+git${SRCPV}"
PR = "${INC_PR}.4"
@ -10,6 +8,8 @@ FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}"
SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
file://uClibc.machine \
file://uClibc.distro \
file://obstack.cfg \
file://locale.cfg \
file://uclibc_enable_log2_test.patch \
file://powerpc_copysignl.patch \
file://argp-support.patch \
@ -22,6 +22,6 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
file://0001-nptl-atfork-Hide-pthread_atfork-in-shared-versions.patch \
file://0001-librt-Use-nodefaultlibs-instead-of-nostdlib.patch \
file://0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch \
file://0001-i386-sysdep.h-Remove-STABS_-macros.patch \
file://0001-add-posix_fadvise-for-arm.patch \
"
S = "${WORKDIR}/git"

View File

@ -0,0 +1,68 @@
From 236a65abe0a6810e20498fc0ba8d02d90978953b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 29 Jun 2013 22:46:53 -0700
Subject: [PATCH] add posix_fadvise() for arm
arm call to posix_fadvise simply calls posix_fadvise64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
libc/sysdeps/linux/common/posix_fadvise.c | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
Upstream-Status: Pending
diff --git a/libc/sysdeps/linux/common/posix_fadvise.c b/libc/sysdeps/linux/common/posix_fadvise.c
index d3e1bd4..e102ce7 100644
--- a/libc/sysdeps/linux/common/posix_fadvise.c
+++ b/libc/sysdeps/linux/common/posix_fadvise.c
@@ -10,30 +10,38 @@
#include <sys/syscall.h>
-#ifdef __NR_fadvise64
+#if defined(__NR_fadvise64) || defined(__NR_arm_fadvise64_64)
# include <fcntl.h>
# include <endian.h>
# include <bits/wordsize.h>
+# ifdef __NR_arm_fadvise64_64
+int posix_fadvise64(int fd, off64_t offset, off64_t len, int advice);
+# endif
+
int posix_fadvise(int fd, off_t offset, off_t len, int advice)
{
+# ifdef __NR_arm_fadvise64_64
+ return posix_fadvise64(fd, offset, len, advice);
+# else
int ret;
INTERNAL_SYSCALL_DECL(err);
-# if __WORDSIZE == 64
+# if __WORDSIZE == 64
ret = INTERNAL_SYSCALL(fadvise64, err, 4, fd, offset, len, advice);
-# else
-# if defined(__UCLIBC_SYSCALL_ALIGN_64BIT__)
- ret = INTERNAL_SYSCALL(fadvise64, err, 6, fd, /*unused*/0,
# else
+# if defined(__UCLIBC_SYSCALL_ALIGN_64BIT__)
+ ret = INTERNAL_SYSCALL(fadvise64, err, 6, fd, /*unused*/0,
+# else
ret = INTERNAL_SYSCALL(fadvise64, err, 5, fd,
-# endif
+# endif
OFF_HI_LO (offset), len, advice);
-# endif
+# endif
if (INTERNAL_SYSCALL_ERROR_P (ret, err))
return INTERNAL_SYSCALL_ERRNO (ret, err);
return 0;
+# endif
}
-# if defined __UCLIBC_HAS_LFS__ && (!defined __NR_fadvise64_64 || __WORDSIZE == 64)
+# if defined __UCLIBC_HAS_LFS__ && ((!defined __NR_fadvise64_64 && !defined __NR_arm_fadvise64_64) || __WORDSIZE == 64)
strong_alias(posix_fadvise,posix_fadvise64)
# endif
#endif
--
1.7.9.5

View File

@ -1,71 +0,0 @@
Upstream-Status: Submitted
-Khem
From e20fd2c2427be981c16cb936cc6866d08520de9b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 25 Mar 2013 19:34:39 -0700
Subject: [PATCH] i386/sysdep.h: Remove STABS_* macros
uclibc is compiled with elf/dwarf and secondly HAVE_CPP_ASM_DEBUGINFO
is not defined so we generate bogus .stab sections needlessly
Some of post processing tools get confused when they see both
dwarf and stab sections
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
libc/sysdeps/linux/i386/sysdep.h | 27 ---------------------------
1 file changed, 27 deletions(-)
diff --git a/libc/sysdeps/linux/i386/sysdep.h b/libc/sysdeps/linux/i386/sysdep.h
index 983c4f5..7a8d2e2 100644
--- a/libc/sysdeps/linux/i386/sysdep.h
+++ b/libc/sysdeps/linux/i386/sysdep.h
@@ -43,12 +43,9 @@
incomplete stabs information. Fake some entries here which specify
the current source file. */
#define ENTRY(name) \
- STABS_CURRENT_FILE1("") \
- STABS_CURRENT_FILE(name) \
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
.align ALIGNARG(4); \
- STABS_FUN(name) \
C_LABEL(name) \
cfi_startproc; \
CALL_MCOUNT
@@ -57,30 +54,6 @@
#define END(name) \
cfi_endproc; \
ASM_SIZE_DIRECTIVE(name) \
- STABS_FUN_END(name)
-
-#ifdef HAVE_CPP_ASM_DEBUGINFO
-/* Disable that goop, because we just pass -g through to the assembler
- and it generates proper line number information directly. */
-# define STABS_CURRENT_FILE1(name)
-# define STABS_CURRENT_FILE(name)
-# define STABS_FUN(name)
-# define STABS_FUN_END(name)
-#else
-/* Remove the following two lines once the gdb bug is fixed. */
-#define STABS_CURRENT_FILE(name) \
- STABS_CURRENT_FILE1 (#name)
-#define STABS_CURRENT_FILE1(name) \
- 1: .stabs name,100,0,0,1b;
-/* Emit stabs definition lines. We use F(0,1) and define t(0,1) as `int',
- the same way gcc does it. */
-#define STABS_FUN(name) STABS_FUN2(name, name##:F(0,1))
-#define STABS_FUN2(name, namestr) \
- .stabs "int:t(0,1)=r(0,1);-2147483648;2147483647;",128,0,0,0; \
- .stabs #namestr,36,0,0,name;
-#define STABS_FUN_END(name) \
- 1: .stabs "",36,0,0,1b-name;
-#endif
/* If compiled for profiling, call `mcount' at the start of each function. */
#ifdef PROF
--
1.7.9.5

View File

@ -13,9 +13,9 @@ Upstream-Status: Pending
Index: git/libc/sysdeps/linux/arm/Makefile.arch
===================================================================
--- git.orig/libc/sysdeps/linux/arm/Makefile.arch 2013-03-25 19:48:48.000000000 -0700
+++ git/libc/sysdeps/linux/arm/Makefile.arch 2013-03-25 19:51:57.496677771 -0700
@@ -13,7 +13,10 @@
--- git.orig/libc/sysdeps/linux/arm/Makefile.arch 2013-05-23 11:13:32.000000000 -0700
+++ git/libc/sysdeps/linux/arm/Makefile.arch 2013-05-23 11:16:18.304333131 -0700
@@ -13,7 +13,9 @@
vfork.S clone.S
SSRC-$(UCLIBC_HAS_LFS) += mmap64.S
@ -23,7 +23,6 @@ Index: git/libc/sysdeps/linux/arm/Makefile.arch
+SSRC-$(UCLIBC_HAS_THREADS_NATIVE) += libc-thumb_atomics.S
+libc-nonshared-$(UCLIBC_HAS_THREADS_NATIVE) += $(ARCH_OUT)/libc-aeabi_read_tp.os
+libc-static-$(UCLIBC_HAS_THREADS_NATIVE) += $(ARCH_OUT)/libc-aeabi_read_tp.o
+
CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise.c
CSRC-$(UCLIBC_HAS_CONTEXT_FUNCS) += makecontext.c
SSRC-$(UCLIBC_HAS_CONTEXT_FUNCS) += getcontext.S setcontext.S swapcontext.S

View File

@ -0,0 +1,3 @@
UCLIBC_HAS_LOCALE=y
UCLIBC_HAS_XLOCALE=y
UCLIBC_BUILD_MINIMAL_LOCALE=y

View File

@ -0,0 +1 @@
UCLIBC_HAS_OBSTACK=y

View File

@ -6,21 +6,21 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
Index: git/libc/sysdeps/linux/powerpc/Makefile.arch
===================================================================
--- git.orig/libc/sysdeps/linux/powerpc/Makefile.arch 2013-01-21 16:18:22.000000000 -0800
+++ git/libc/sysdeps/linux/powerpc/Makefile.arch 2013-01-21 16:21:25.363552429 -0800
--- git.orig/libc/sysdeps/linux/powerpc/Makefile.arch 2013-05-23 11:09:50.000000000 -0700
+++ git/libc/sysdeps/linux/powerpc/Makefile.arch 2013-05-23 11:12:06.072328399 -0700
@@ -5,7 +5,7 @@
# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
#
-CSRC-y := __syscall_error.c pread_write.c ioctl.c
+CSRC-y := __syscall_error.c pread_write.c ioctl.c copysignl.c
-CSRC-y := __syscall_error.c ioctl.c
+CSRC-y := __syscall_error.c ioctl.c copysignl.c
SSRC-y := \
__longjmp.S setjmp.S bsd-setjmp.S bsd-_setjmp.S brk.S \
Index: git/libc/sysdeps/linux/powerpc/copysignl.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ git/libc/sysdeps/linux/powerpc/copysignl.c 2013-01-21 16:20:46.807552554 -0800
+++ git/libc/sysdeps/linux/powerpc/copysignl.c 2013-05-23 11:11:37.600327865 -0700
@@ -0,0 +1,89 @@
+/* s_copysignl.c -- long double version of s_copysign.c.
+ * Conversion to long double by Ulrich Drepper,

View File

@ -60,8 +60,10 @@ export V="2"
CFLAGS_arm := "${@oe_filter_out('-fno-omit-frame-pointer', '${CFLAGS}', d)}"
UCLIBC_EXTRA_CFLAGS := "${@oe_filter_out('(-I\S+|-i\S+)', '${CFLAGS}', d)}"
UCLIBC_EXTRA_LDFLAGS := "${@oe_filter_out('(-L\S+|-l\S+)', '${LDFLAGS}', d)}"
do_compile_prepend () {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake pregen
}
configmangle = '/^KERNEL_HEADERS/d; \
@ -146,8 +148,10 @@ do_configure() {
# Mangle the resulting .config depending on OE variables
sed -i -e '${configmangle}' ${S}/merged.config
cp ${S}/merged.config .config
merge_config.sh -r -n -m .config ${@" ".join(find_cfgs(d))}
cml1_do_configure
oe_runmake KCONFIG_ALLCONFIG=${S}/merged.config allnoconfig
}
do_install() {