diff options
author | Khem Raj <raj.khem@gmail.com> | 2011-07-01 16:17:44 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-07-07 10:57:53 +0100 |
commit | 07d06735279d6214197ebb3614dea0b90c2e7300 (patch) | |
tree | 3ab6dadb991ef4e7953a87c3f25c2ffbb7806429 /meta/recipes-core/uclibc | |
parent | d0829aea5f3d170f188e806eca253f994a318e31 (diff) | |
download | poky-07d06735279d6214197ebb3614dea0b90c2e7300.tar.gz |
uclibc_git: Move SRCREV past 0.9.32 release
Set DP = -1 since 0.9.32 should be preferred
Remove patches already merged upstream
Change PV to 0.9.32+0.9.33-rc0
(From OE-Core rev: b0f87affd43ebaf4a9fd07e1cb99408073c61263)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/uclibc')
14 files changed, 70 insertions, 957 deletions
diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch b/meta/recipes-core/uclibc/uclibc-git/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch deleted file mode 100644 index da97d389a0..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | From 06cdcd2a9dd6b46b7fbb5b3ae0a62bdb7ee6c402 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Mon, 27 Jun 2011 17:48:18 -0700 | ||
4 | Subject: [PATCH] Config.in.arch: Free UCLIBC_HAS_FPU setting from depending on UCLIBC_HAS_FLOATS | ||
5 | |||
6 | UCLIBC_HAS_FLOATS and UCLIBC_HAS_FPU are denoting two different aspects. | ||
7 | UCLIBC_HAS_FLOATS covers the floating point operations which has nothing | ||
8 | to do if you have FPU or not. | ||
9 | |||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
11 | --- | ||
12 | extra/Configs/Config.in.arch | 1 - | ||
13 | 1 files changed, 0 insertions(+), 1 deletions(-) | ||
14 | |||
15 | diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch | ||
16 | index 5f7a2b0..c1ca390 100644 | ||
17 | --- a/extra/Configs/Config.in.arch | ||
18 | +++ b/extra/Configs/Config.in.arch | ||
19 | @@ -133,7 +133,6 @@ config UCLIBC_HAS_FLOATS | ||
20 | |||
21 | config UCLIBC_HAS_FPU | ||
22 | bool "Target CPU has a floating point unit (FPU)" | ||
23 | - depends on UCLIBC_HAS_FLOATS | ||
24 | default y | ||
25 | help | ||
26 | If your target CPU does not have a Floating Point Unit (FPU) or a | ||
27 | -- | ||
28 | 1.7.0.4 | ||
29 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch b/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch deleted file mode 100644 index 6892ceb922..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | From ecc7d34cbbaf83aae87b091555650ed33e27ed2e Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Thu, 30 Jun 2011 00:32:11 -0700 | ||
4 | Subject: [PATCH] mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike 04000 commonly | ||
5 | |||
6 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
7 | --- | ||
8 | include/sys/signalfd.h | 9 +++++++++ | ||
9 | 1 files changed, 9 insertions(+), 0 deletions(-) | ||
10 | |||
11 | diff --git a/include/sys/signalfd.h b/include/sys/signalfd.h | ||
12 | index 8cee17c..f1cb63a 100644 | ||
13 | --- a/include/sys/signalfd.h | ||
14 | +++ b/include/sys/signalfd.h | ||
15 | @@ -64,6 +64,15 @@ enum | ||
16 | # define SFD_NONBLOCK SFD_NONBLOCK | ||
17 | }; | ||
18 | |||
19 | +#elif defined __mips__ | ||
20 | +enum | ||
21 | + { | ||
22 | + SFD_CLOEXEC = 02000000, | ||
23 | +# define SFD_CLOEXEC SFD_CLOEXEC | ||
24 | + SFD_NONBLOCK = 0200 | ||
25 | +# define SFD_NONBLOCK SFD_NONBLOCK | ||
26 | + }; | ||
27 | + | ||
28 | #else | ||
29 | enum | ||
30 | { | ||
31 | -- | ||
32 | 1.7.0.4 | ||
33 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/append_UCLIBC_EXTRA_CFLAGS.patch b/meta/recipes-core/uclibc/uclibc-git/append_UCLIBC_EXTRA_CFLAGS.patch deleted file mode 100644 index edcb4e324b..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/append_UCLIBC_EXTRA_CFLAGS.patch +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | UCLIBC_EXTRA_CFLAGS is currently added before the OPTIMIZATION flags | ||
2 | and OPTIMIZATION is chosen to be Os by default. But in OE we pass the optimisation | ||
3 | flags through UCLIBC_EXTRA_CFLAGS but they are not effective since -Os is | ||
4 | specified at last. So we need to change the order of these option flags | ||
5 | |||
6 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | |||
10 | diff --git a/Rules.mak b/Rules.mak | ||
11 | index 65fe47c..eca7f40 100644 | ||
12 | --- a/Rules.mak | ||
13 | +++ b/Rules.mak | ||
14 | @@ -585,9 +574,6 @@ CFLAGS := -include $(top_srcdir)include/libc-symbols.h \ | ||
15 | -nostdinc -I$(top_builddir)include -I$(top_srcdir)include -I. \ | ||
16 | -I$(top_srcdir)libc/sysdeps/linux \ | ||
17 | -I$(top_srcdir)libc/sysdeps/linux/$(TARGET_ARCH) | ||
18 | -ifneq ($(strip $(UCLIBC_EXTRA_CFLAGS)),"") | ||
19 | -CFLAGS += $(call qstrip,$(UCLIBC_EXTRA_CFLAGS)) | ||
20 | -endif | ||
21 | |||
22 | # We need this to be checked within libc-symbols.h | ||
23 | ifneq ($(HAVE_SHARED),y) | ||
24 | @@ -633,6 +619,9 @@ LDFLAGS += -Wl,-s | ||
25 | else | ||
26 | STRIPTOOL := true -Stripping_disabled | ||
27 | endif | ||
28 | +ifneq ($(strip $(UCLIBC_EXTRA_CFLAGS)),"") | ||
29 | +CFLAGS += $(call qstrip,$(UCLIBC_EXTRA_CFLAGS)) | ||
30 | +endif | ||
31 | |||
32 | ifeq ($(DOMULTI),y) | ||
33 | # we try to compile all sources at once into an object (IMA), but | ||
diff --git a/meta/recipes-core/uclibc/uclibc-git/detect-bx-availibility.patch b/meta/recipes-core/uclibc/uclibc-git/detect-bx-availibility.patch deleted file mode 100644 index c5d212a642..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/detect-bx-availibility.patch +++ /dev/null | |||
@@ -1,75 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313307agb; | ||
3 | Sat, 8 Jan 2011 16:45:20 -0800 (PST) | ||
4 | Received: by 10.227.141.78 with SMTP id l14mr16920947wbu.128.1294533919168; | ||
5 | Sat, 08 Jan 2011 16:45:19 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id w30si33755908wbd.17.2011.01.08.16.45.18; | ||
9 | Sat, 08 Jan 2011 16:45:19 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClHDo; Sun, 09 Jan 2011 01:45:18 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 6/7] ARM: detect BX availibility at build time | ||
21 | Date: Sun, 9 Jan 2011 01:45:09 +0100 | ||
22 | Message-Id: <1294533910-19305-7-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | The "use BX" option is now a suggestion that BX be used if available. | ||
28 | Use a macro to detect if BX is available at build time. If so, and | ||
29 | the user requested it be used, then use it. Otherwise, error out. | ||
30 | |||
31 | Macro courtesy Khem RAJ: | ||
32 | http://lists.uclibc.org/pipermail/uclibc/2009-April/042301.html | ||
33 | |||
34 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
35 | Cc: Khem Raj <raj.khem@gmail.com> | ||
36 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
37 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
38 | --- | ||
39 | extra/Configs/Config.arm | 4 +++- | ||
40 | libc/sysdeps/linux/arm/bits/arm_asm.h | 9 ++++++++- | ||
41 | 2 files changed, 11 insertions(+), 2 deletions(-) | ||
42 | |||
43 | diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm | ||
44 | index 227b90c..9aa9e56 100644 | ||
45 | --- a/extra/Configs/Config.arm | ||
46 | +++ b/extra/Configs/Config.arm | ||
47 | @@ -33,4 +33,6 @@ config COMPILE_IN_THUMB_MODE | ||
48 | config USE_BX | ||
49 | bool "Use BX in function return" | ||
50 | help | ||
51 | - Use BX instruction for THUMB aware architectures. | ||
52 | + Say 'y' to use BX to return from functions on your thumb-aware | ||
53 | + processor. Say 'y' if you need to use interworking. Say 'n' if not. | ||
54 | + It is safe to say 'y' even if you're not doing interworking. | ||
55 | diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h | ||
56 | index 1d87df6..921c9a3 100644 | ||
57 | --- a/libc/sysdeps/linux/arm/bits/arm_asm.h | ||
58 | +++ b/libc/sysdeps/linux/arm/bits/arm_asm.h | ||
59 | @@ -24,5 +24,12 @@ | ||
60 | #define THUMB1_ONLY 1 | ||
61 | #endif | ||
62 | |||
63 | -#endif /* _ARM_ASM_H */ | ||
64 | +#if defined(__USE_BX__) | ||
65 | +# if ( defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \ | ||
66 | + || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \ | ||
67 | + ) | ||
68 | +# error Use of BX was requested, but is not available on the target processor. | ||
69 | +# endif /* ARCH level */ | ||
70 | +#endif /* __USE_BX__ */ | ||
71 | |||
72 | +#endif /* _ARM_ASM_H */ | ||
73 | -- | ||
74 | 1.7.1 | ||
75 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/epoll-asm-fix.patch b/meta/recipes-core/uclibc/uclibc-git/epoll-asm-fix.patch deleted file mode 100644 index bcd834d618..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/epoll-asm-fix.patch +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | Fix a compile error due to last argument to syscall() not being memory addressable. | ||
2 | |||
3 | Upstream-Status: Pending | ||
4 | Signed-off-by: Phil Blundell <philb@gnu.org> | ||
5 | |||
6 | diff --git a/libc/sysdeps/linux/common/epoll.c b/libc/sysdeps/linux/common/epoll.c | ||
7 | index 85b0cfd..c034b2c 100644 | ||
8 | --- a/libc/sysdeps/linux/common/epoll.c | ||
9 | +++ b/libc/sysdeps/linux/common/epoll.c | ||
10 | @@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait; | ||
11 | int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents, | ||
12 | int timeout, const sigset_t *set) | ||
13 | { | ||
14 | + int nsig = _NSIG / 8; | ||
15 | if (SINGLE_THREAD_P) | ||
16 | - return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8); | ||
17 | + return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig); | ||
18 | # ifdef __UCLIBC_HAS_THREADS_NATIVE__ | ||
19 | else { | ||
20 | int oldtype = LIBC_CANCEL_ASYNC (); | ||
21 | - int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8); | ||
22 | + int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig); | ||
23 | LIBC_CANCEL_RESET (oldtype); | ||
24 | return result; | ||
25 | } | ||
diff --git a/meta/recipes-core/uclibc/uclibc-git/include-arm-asm.h.patch b/meta/recipes-core/uclibc/uclibc-git/include-arm-asm.h.patch deleted file mode 100644 index 621896fb10..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/include-arm-asm.h.patch +++ /dev/null | |||
@@ -1,65 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313304agb; | ||
3 | Sat, 8 Jan 2011 16:45:19 -0800 (PST) | ||
4 | Received: by 10.227.155.75 with SMTP id r11mr17188266wbw.3.1294533918432; | ||
5 | Sat, 08 Jan 2011 16:45:18 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id k3si33753340wbx.29.2011.01.08.16.45.17; | ||
9 | Sat, 08 Jan 2011 16:45:18 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClHDf; Sun, 09 Jan 2011 01:45:17 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 5/7] ARM: #include <bits/arm_asm.h> where __USE_BX__ is used | ||
21 | Date: Sun, 9 Jan 2011 01:45:08 +0100 | ||
22 | Message-Id: <1294533910-19305-6-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | The check for __USE_BX__ will be available in bits/arm_asm.h, | ||
28 | so the latter must be included wherever the former is used. | ||
29 | |||
30 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
31 | Cc: Khem Raj <raj.khem@gmail.com> | ||
32 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
33 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
34 | --- | ||
35 | ldso/ldso/arm/dl-startup.h | 1 + | ||
36 | libc/sysdeps/linux/arm/sysdep.h | 1 + | ||
37 | 2 files changed, 2 insertions(+), 0 deletions(-) | ||
38 | |||
39 | diff --git a/ldso/ldso/arm/dl-startup.h b/ldso/ldso/arm/dl-startup.h | ||
40 | index a95389d..2dfdaff 100644 | ||
41 | --- a/ldso/ldso/arm/dl-startup.h | ||
42 | +++ b/ldso/ldso/arm/dl-startup.h | ||
43 | @@ -7,6 +7,7 @@ | ||
44 | */ | ||
45 | |||
46 | #include <features.h> | ||
47 | +#include <bits/arm_asm.h> | ||
48 | |||
49 | #if !defined(__thumb__) | ||
50 | __asm__( | ||
51 | diff --git a/libc/sysdeps/linux/arm/sysdep.h b/libc/sysdeps/linux/arm/sysdep.h | ||
52 | index 013f88c..e498695 100644 | ||
53 | --- a/libc/sysdeps/linux/arm/sysdep.h | ||
54 | +++ b/libc/sysdeps/linux/arm/sysdep.h | ||
55 | @@ -21,6 +21,7 @@ | ||
56 | #define _LINUX_ARM_SYSDEP_H 1 | ||
57 | |||
58 | #include <common/sysdep.h> | ||
59 | +#include <bits/arm_asm.h> | ||
60 | |||
61 | #include <sys/syscall.h> | ||
62 | /* For Linux we can use the system call table in the header file | ||
63 | -- | ||
64 | 1.7.1 | ||
65 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/orign_path.patch b/meta/recipes-core/uclibc/uclibc-git/orign_path.patch index 631951e489..b22be8ce63 100644 --- a/meta/recipes-core/uclibc/uclibc-git/orign_path.patch +++ b/meta/recipes-core/uclibc/uclibc-git/orign_path.patch | |||
@@ -3,11 +3,11 @@ http://lists.busybox.net/pipermail/uclibc/2011-March/045003.html | |||
3 | 3 | ||
4 | Upstream-Status: Pending | 4 | Upstream-Status: Pending |
5 | 5 | ||
6 | diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c | 6 | Index: git/ldso/ldso/dl-elf.c |
7 | index 505247e..2b2d429 100644 | 7 | =================================================================== |
8 | --- a/ldso/ldso/dl-elf.c | 8 | --- git.orig/ldso/ldso/dl-elf.c 2011-07-01 15:20:51.000000000 -0700 |
9 | +++ b/ldso/ldso/dl-elf.c | 9 | +++ git/ldso/ldso/dl-elf.c 2011-07-01 15:21:47.493578777 -0700 |
10 | @@ -133,53 +133,60 @@ _dl_protect_relro (struct elf_resolve *l) | 10 | @@ -133,53 +133,60 @@ |
11 | * in uClibc/ldso/util/ldd.c */ | 11 | * in uClibc/ldso/util/ldd.c */ |
12 | static struct elf_resolve * | 12 | static struct elf_resolve * |
13 | search_for_named_library(const char *name, int secure, const char *path_list, | 13 | search_for_named_library(const char *name, int secure, const char *path_list, |
@@ -99,7 +99,7 @@ index 505247e..2b2d429 100644 | |||
99 | return NULL; | 99 | return NULL; |
100 | } | 100 | } |
101 | 101 | ||
102 | @@ -231,7 +238,8 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 102 | @@ -231,7 +238,8 @@ |
103 | if (pnt) { | 103 | if (pnt) { |
104 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 104 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
105 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); | 105 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); |
@@ -109,7 +109,7 @@ index 505247e..2b2d429 100644 | |||
109 | return tpnt1; | 109 | return tpnt1; |
110 | } | 110 | } |
111 | #endif | 111 | #endif |
112 | @@ -239,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 112 | @@ -239,7 +247,7 @@ |
113 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ | 113 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ |
114 | if (_dl_library_path) { | 114 | if (_dl_library_path) { |
115 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); | 115 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); |
@@ -118,7 +118,7 @@ index 505247e..2b2d429 100644 | |||
118 | { | 118 | { |
119 | return tpnt1; | 119 | return tpnt1; |
120 | } | 120 | } |
121 | @@ -253,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 121 | @@ -253,7 +261,7 @@ |
122 | if (pnt) { | 122 | if (pnt) { |
123 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 123 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
124 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); | 124 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); |
@@ -127,7 +127,7 @@ index 505247e..2b2d429 100644 | |||
127 | return tpnt1; | 127 | return tpnt1; |
128 | } | 128 | } |
129 | #endif | 129 | #endif |
130 | @@ -287,7 +295,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 130 | @@ -287,7 +295,7 @@ |
131 | /* Look for libraries wherever the shared library loader | 131 | /* Look for libraries wherever the shared library loader |
132 | * was installed */ | 132 | * was installed */ |
133 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); | 133 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); |
@@ -136,7 +136,7 @@ index 505247e..2b2d429 100644 | |||
136 | if (tpnt1 != NULL) | 136 | if (tpnt1 != NULL) |
137 | return tpnt1; | 137 | return tpnt1; |
138 | 138 | ||
139 | @@ -300,7 +308,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 139 | @@ -300,7 +308,7 @@ |
140 | #ifndef __LDSO_CACHE_SUPPORT__ | 140 | #ifndef __LDSO_CACHE_SUPPORT__ |
141 | ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib" | 141 | ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib" |
142 | #endif | 142 | #endif |
@@ -145,12 +145,12 @@ index 505247e..2b2d429 100644 | |||
145 | if (tpnt1 != NULL) | 145 | if (tpnt1 != NULL) |
146 | return tpnt1; | 146 | return tpnt1; |
147 | 147 | ||
148 | diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c | 148 | Index: git/ldso/ldso/ldso.c |
149 | index 7ee9257..9423670 100644 | 149 | =================================================================== |
150 | --- a/ldso/ldso/ldso.c | 150 | --- git.orig/ldso/ldso/ldso.c 2011-07-01 15:20:51.000000000 -0700 |
151 | +++ b/ldso/ldso/ldso.c | 151 | +++ git/ldso/ldso/ldso.c 2011-07-01 15:24:32.363820591 -0700 |
152 | @@ -272,6 +272,20 @@ static void __attribute__ ((destructor)) __attribute_used__ _dl_fini(void) | 152 | @@ -370,6 +370,20 @@ |
153 | } | 153 | return p - list; |
154 | } | 154 | } |
155 | 155 | ||
156 | +static void _dl_setup_progname(const char *argv0) | 156 | +static void _dl_setup_progname(const char *argv0) |
@@ -167,10 +167,10 @@ index 7ee9257..9423670 100644 | |||
167 | + } | 167 | + } |
168 | +} | 168 | +} |
169 | + | 169 | + |
170 | void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, | 170 | void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, |
171 | ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, | 171 | ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, char **argv |
172 | char **argv | 172 | DL_GET_READY_TO_RUN_EXTRA_PARMS) |
173 | @@ -321,9 +335,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, | 173 | @@ -421,9 +435,7 @@ |
174 | * been fixed up by now. Still no function calls outside of this | 174 | * been fixed up by now. Still no function calls outside of this |
175 | * library, since the dynamic resolver is not yet ready. | 175 | * library, since the dynamic resolver is not yet ready. |
176 | */ | 176 | */ |
@@ -179,5 +179,5 @@ index 7ee9257..9423670 100644 | |||
179 | - } | 179 | - } |
180 | + _dl_setup_progname(argv[0]); | 180 | + _dl_setup_progname(argv[0]); |
181 | 181 | ||
182 | #ifndef __LDSO_STANDALONE_SUPPORT__ | ||
182 | if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) { | 183 | if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) { |
183 | _dl_dprintf(_dl_debug_file, "Standalone execution is not supported yet\n"); | ||
diff --git a/meta/recipes-core/uclibc/uclibc-git/remove-eabi-oabi-selection.patch b/meta/recipes-core/uclibc/uclibc-git/remove-eabi-oabi-selection.patch deleted file mode 100644 index f4957351e9..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/remove-eabi-oabi-selection.patch +++ /dev/null | |||
@@ -1,91 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313309agb; | ||
3 | Sat, 8 Jan 2011 16:45:20 -0800 (PST) | ||
4 | Received: by 10.216.173.7 with SMTP id u7mr612034wel.50.1294533919433; | ||
5 | Sat, 08 Jan 2011 16:45:19 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id e10si33752027wer.68.2011.01.08.16.45.19; | ||
9 | Sat, 08 Jan 2011 16:45:19 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClJDu; Sun, 09 Jan 2011 01:45:18 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 7/7] ARM: remove EABI/OABI selection | ||
21 | Date: Sun, 9 Jan 2011 01:45:10 +0100 | ||
22 | Message-Id: <1294533910-19305-8-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | Rely on the compiler to be properly setup for the default ABI. | ||
28 | |||
29 | When installing-headers, there are two cases: | ||
30 | - NPTL: no issue, a cross-compiler is already expected | ||
31 | - LinuxThreads: no issue, EABI/OABI has no impact on installed headers. | ||
32 | |||
33 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
34 | Cc: Khem Raj <raj.khem@gmail.com> | ||
35 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
36 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
37 | --- | ||
38 | extra/Configs/Config.arm | 11 ----------- | ||
39 | libc/sysdeps/linux/arm/Makefile.arch | 9 +++++++-- | ||
40 | libc/sysdeps/linux/arm/bits/huge_val.h | 4 ++-- | ||
41 | 3 files changed, 9 insertions(+), 15 deletions(-) | ||
42 | |||
43 | Index: git/libc/sysdeps/linux/arm/Makefile.arch | ||
44 | =================================================================== | ||
45 | --- git.orig/libc/sysdeps/linux/arm/Makefile.arch | ||
46 | +++ git/libc/sysdeps/linux/arm/Makefile.arch | ||
47 | @@ -24,7 +24,12 @@ ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y) | ||
48 | CSRC += posix_fadvise.c posix_fadvise64.c | ||
49 | endif | ||
50 | |||
51 | -ifeq ($(CONFIG_ARM_EABI),y) | ||
52 | +# Is our compiler set up for EABI ? | ||
53 | +IS_EABI:=$(shell $(CC) $(CFLAGS) -x c - -E -dM </dev/null 2>/dev/null \ | ||
54 | + |sed -r -e '/^\#[[:space:]]*define[[:space:]]+__ARM_EABI__([[:space:]]+1)?$$/!d; s/.+/y/;' \ | ||
55 | + ) | ||
56 | + | ||
57 | +ifeq ($(IS_EABI),y) | ||
58 | CSRC += aeabi_assert.c aeabi_atexit.c aeabi_errno_addr.c \ | ||
59 | aeabi_localeconv.c aeabi_memclr.c aeabi_memcpy.c \ | ||
60 | aeabi_memmove.c aeabi_memset.c find_exidx.c | ||
61 | @@ -37,7 +42,7 @@ else | ||
62 | CSRC += syscall.c | ||
63 | endif | ||
64 | |||
65 | -ifeq ($(CONFIG_ARM_EABI),y) | ||
66 | +ifeq ($(IS_EABI),y) | ||
67 | libc-static-y += $(ARCH_OUT)/aeabi_lcsts.o $(ARCH_OUT)/aeabi_math.o \ | ||
68 | $(ARCH_OUT)/aeabi_sighandlers.o | ||
69 | libc-nonshared-y += $(ARCH_OUT)/aeabi_lcsts.os $(ARCH_OUT)/aeabi_math.os \ | ||
70 | Index: git/libc/sysdeps/linux/arm/bits/huge_val.h | ||
71 | =================================================================== | ||
72 | --- git.orig/libc/sysdeps/linux/arm/bits/huge_val.h | ||
73 | +++ git/libc/sysdeps/linux/arm/bits/huge_val.h | ||
74 | @@ -32,7 +32,7 @@ | ||
75 | # define HUGE_VAL (__extension__ 0x1.0p2047) | ||
76 | #elif defined __GNUC__ | ||
77 | |||
78 | -#ifndef __CONFIG_ARM_EABI__ | ||
79 | +#ifndef __ARM_EABI__ | ||
80 | # define HUGE_VAL \ | ||
81 | (__extension__ \ | ||
82 | ((union { unsigned __l __attribute__((__mode__(__DI__))); double __d; }) \ | ||
83 | @@ -50,7 +50,7 @@ | ||
84 | |||
85 | typedef union { unsigned char __c[8]; double __d; } __huge_val_t; | ||
86 | |||
87 | -#ifndef __CONFIG_ARM_EABI__ | ||
88 | +#ifndef __ARM_EABI__ | ||
89 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
90 | # define __HUGE_VAL_bytes { 0, 0, 0, 0, 0x7f, 0xf0, 0, 0 } | ||
91 | # endif | ||
diff --git a/meta/recipes-core/uclibc/uclibc-git/remove-sub-arch-variants.patch b/meta/recipes-core/uclibc/uclibc-git/remove-sub-arch-variants.patch deleted file mode 100644 index 16f3f41c30..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/remove-sub-arch-variants.patch +++ /dev/null | |||
@@ -1,215 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313303agb; | ||
3 | Sat, 8 Jan 2011 16:45:18 -0800 (PST) | ||
4 | Received: by 10.227.98.158 with SMTP id q30mr1255804wbn.151.1294533917314; | ||
5 | Sat, 08 Jan 2011 16:45:17 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id r3si33749838wbr.54.2011.01.08.16.45.16; | ||
9 | Sat, 08 Jan 2011 16:45:17 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClGDS; Sun, 09 Jan 2011 01:45:16 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 3/7] ARM: remove sub-arch/variants selection from menuconfig | ||
21 | Date: Sun, 9 Jan 2011 01:45:06 +0100 | ||
22 | Message-Id: <1294533910-19305-4-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | Rely on the compiler to be correctly set up to generate | ||
28 | appropriate code for the target variant. | ||
29 | |||
30 | This exposes the Thumb option, as it is no longer auto-selected. | ||
31 | The "Use BX" no longer depends on supported CPU to be selected, | ||
32 | so it now defaults to 'n' as it shall work by default on CPUs | ||
33 | that do not have BX. | ||
34 | |||
35 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
36 | Cc: Khem Raj <raj.khem@gmail.com> | ||
37 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
38 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
39 | --- | ||
40 | Rules.mak | 19 ------- | ||
41 | extra/Configs/Config.arm | 125 ++-------------------------------------------- | ||
42 | 2 files changed, 5 insertions(+), 139 deletions(-) | ||
43 | |||
44 | diff --git a/Rules.mak b/Rules.mak | ||
45 | index 2a16908..09741a6 100644 | ||
46 | --- a/Rules.mak | ||
47 | +++ b/Rules.mak | ||
48 | @@ -332,25 +332,6 @@ ifeq ($(TARGET_ARCH),arm) | ||
49 | OPTIMIZATION+=-fstrict-aliasing | ||
50 | CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian | ||
51 | CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian | ||
52 | - CPU_CFLAGS-$(CONFIG_GENERIC_ARM)+= | ||
53 | - CPU_CFLAGS-$(CONFIG_ARM610)+=-mtune=arm610 -march=armv3 | ||
54 | - CPU_CFLAGS-$(CONFIG_ARM710)+=-mtune=arm710 -march=armv3 | ||
55 | - CPU_CFLAGS-$(CONFIG_ARM7TDMI)+=-mtune=arm7tdmi -march=armv4t | ||
56 | - CPU_CFLAGS-$(CONFIG_ARM720T)+=-mtune=arm7tdmi -march=armv4t | ||
57 | - CPU_CFLAGS-$(CONFIG_ARM920T)+=-mtune=arm9tdmi -march=armv4t | ||
58 | - CPU_CFLAGS-$(CONFIG_ARM922T)+=-mtune=arm9tdmi -march=armv4t | ||
59 | - CPU_CFLAGS-$(CONFIG_ARM926T)+=-mtune=arm9e -march=armv5te | ||
60 | - CPU_CFLAGS-$(CONFIG_ARM10T)+=-mtune=arm10tdmi -march=armv5t | ||
61 | - CPU_CFLAGS-$(CONFIG_ARM1136JF_S)+=-mtune=arm1136jf-s -march=armv6 | ||
62 | - CPU_CFLAGS-$(CONFIG_ARM1176JZ_S)+=-mtune=arm1176jz-s -march=armv6 | ||
63 | - CPU_CFLAGS-$(CONFIG_ARM1176JZF_S)+=-mtune=arm1176jzf-s -march=armv6 | ||
64 | - CPU_CFLAGS-$(CONFIG_ARM_SA110)+=-mtune=strongarm110 -march=armv4 | ||
65 | - CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4 | ||
66 | - CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110) | ||
67 | - CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale | ||
68 | - CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt | ||
69 | - CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 | ||
70 | - CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 | ||
71 | CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb | ||
72 | endif | ||
73 | |||
74 | diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm | ||
75 | index c9c40d4..6c75a00 100644 | ||
76 | --- a/extra/Configs/Config.arm | ||
77 | +++ b/extra/Configs/Config.arm | ||
78 | @@ -30,129 +30,14 @@ config CONFIG_ARM_EABI | ||
79 | |||
80 | endchoice | ||
81 | |||
82 | -choice | ||
83 | - prompt "Target Processor Type" | ||
84 | - default CONFIG_GENERIC_ARM | ||
85 | - help | ||
86 | - This is the processor type of your CPU. This information is used for | ||
87 | - optimizing purposes. To build a library that will run on all ARMCPU | ||
88 | - types (albeit not optimally fast), you can specify "Generic Arm" here. | ||
89 | - If you pick anything other than "Generic Arm", there is no guarantee | ||
90 | - that uClibc will even run on anything other than the selected | ||
91 | - processor type. | ||
92 | - | ||
93 | - Here are the settings recommended for greatest speed: | ||
94 | - - "Generic Arm" select this if your compiler is already setup to | ||
95 | - optimize things properly, or if you want to run on pretty much | ||
96 | - everything, or you just don't much care. | ||
97 | - - For anything else, pick the ARM core type that best matches the | ||
98 | - cpu you will be using on your device. | ||
99 | - | ||
100 | - If you don't know what to do, choose "Generic Arm". | ||
101 | - | ||
102 | -config CONFIG_GENERIC_ARM | ||
103 | - bool "Generic Arm" | ||
104 | - | ||
105 | -config CONFIG_ARM610 | ||
106 | - bool "Arm 610" | ||
107 | - select ARCH_HAS_MMU | ||
108 | - | ||
109 | -config CONFIG_ARM710 | ||
110 | - bool "Arm 710" | ||
111 | - select ARCH_HAS_MMU | ||
112 | - | ||
113 | -config CONFIG_ARM7TDMI | ||
114 | - bool "Arm 7TDMI" | ||
115 | - select ARCH_HAS_NO_MMU | ||
116 | - select HAS_THUMB | ||
117 | - | ||
118 | -config CONFIG_ARM720T | ||
119 | - bool "Arm 720T" | ||
120 | - select ARCH_HAS_MMU | ||
121 | - select HAS_THUMB | ||
122 | - | ||
123 | -config CONFIG_ARM920T | ||
124 | - bool "Arm 920T" | ||
125 | - select ARCH_HAS_MMU | ||
126 | - select HAS_THUMB | ||
127 | - | ||
128 | -config CONFIG_ARM922T | ||
129 | - bool "Arm 922T" | ||
130 | - select ARCH_HAS_MMU | ||
131 | - select HAS_THUMB | ||
132 | - | ||
133 | -config CONFIG_ARM926T | ||
134 | - bool "Arm 926T" | ||
135 | - select ARCH_HAS_MMU | ||
136 | - select HAS_THUMB | ||
137 | - | ||
138 | -config CONFIG_ARM10T | ||
139 | - bool "Arm 10T" | ||
140 | - select ARCH_HAS_MMU | ||
141 | - select HAS_THUMB | ||
142 | - | ||
143 | -config CONFIG_ARM1136JF_S | ||
144 | - bool "Arm 1136JF-S" | ||
145 | - select ARCH_HAS_MMU | ||
146 | - select HAS_THUMB | ||
147 | - | ||
148 | -config CONFIG_ARM1176JZ_S | ||
149 | - bool "Arm 1176JZ-S" | ||
150 | - select ARCH_HAS_MMU | ||
151 | - select HAS_THUMB | ||
152 | - | ||
153 | -config CONFIG_ARM1176JZF_S | ||
154 | - bool "Arm 1176JZF-S" | ||
155 | - select ARCH_HAS_MMU | ||
156 | - select HAS_THUMB | ||
157 | - | ||
158 | -config CONFIG_ARM_CORTEX_M3 | ||
159 | - bool "Arm Cortex-M3" | ||
160 | - select ARCH_HAS_NO_MMU | ||
161 | - select FORCE_THUMB | ||
162 | - | ||
163 | -config CONFIG_ARM_CORTEX_M1 | ||
164 | - bool "Arm Cortex-M1" | ||
165 | - select ARCH_HAS_NO_MMU | ||
166 | - select FORCE_THUMB | ||
167 | - | ||
168 | -config CONFIG_ARM_SA110 | ||
169 | - bool "Intel StrongArm SA-110" | ||
170 | - select ARCH_HAS_MMU | ||
171 | - select HAS_THUMB | ||
172 | - | ||
173 | -config CONFIG_ARM_SA1100 | ||
174 | - bool "Intel StrongArm SA-1100" | ||
175 | - select ARCH_HAS_MMU | ||
176 | - select HAS_THUMB | ||
177 | - | ||
178 | -config CONFIG_ARM_XSCALE | ||
179 | - bool "Intel Xscale" | ||
180 | - select ARCH_HAS_MMU | ||
181 | - select HAS_THUMB | ||
182 | - | ||
183 | -config CONFIG_ARM_IWMMXT | ||
184 | - bool "Intel Xscale With WMMX PXA27x" | ||
185 | - select ARCH_HAS_MMU | ||
186 | - select HAS_THUMB | ||
187 | - | ||
188 | -endchoice | ||
189 | - | ||
190 | -config HAS_THUMB | ||
191 | - bool | ||
192 | - | ||
193 | -config FORCE_THUMB | ||
194 | - bool | ||
195 | - select HAS_THUMB | ||
196 | - select COMPILE_IN_THUMB_MODE | ||
197 | - select USE_BX | ||
198 | - | ||
199 | config COMPILE_IN_THUMB_MODE | ||
200 | - bool | ||
201 | + bool "Build using Thumb mode" | ||
202 | + select USE_BX | ||
203 | + help | ||
204 | + Say 'y' here to force building uClibc in thumb mode. | ||
205 | + Say 'n' to use your compiler's default mode. | ||
206 | |||
207 | config USE_BX | ||
208 | bool "Use BX in function return" | ||
209 | - default y | ||
210 | - depends on HAS_THUMB | ||
211 | help | ||
212 | Use BX instruction for THUMB aware architectures. | ||
213 | -- | ||
214 | 1.7.1 | ||
215 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/reorder-use-BX.patch b/meta/recipes-core/uclibc/uclibc-git/reorder-use-BX.patch deleted file mode 100644 index f9f19f9d08..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/reorder-use-BX.patch +++ /dev/null | |||
@@ -1,72 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313299agb; | ||
3 | Sat, 8 Jan 2011 16:45:16 -0800 (PST) | ||
4 | Received: by 10.227.134.5 with SMTP id h5mr1312651wbt.75.1294533915992; | ||
5 | Sat, 08 Jan 2011 16:45:15 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id m42si33753731wej.65.2011.01.08.16.45.15; | ||
9 | Sat, 08 Jan 2011 16:45:15 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClEDA; Sun, 09 Jan 2011 01:45:15 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 1/7] ARM: reorder "Use BX" option | ||
21 | Date: Sun, 9 Jan 2011 01:45:04 +0100 | ||
22 | Message-Id: <1294533910-19305-2-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | "Use BX" is not available on all CPUs, so the option depends on | ||
28 | a correct CPU to be chosen . It is weird that e BX" then appears | ||
29 | _above_ the CPU selection, not below. | ||
30 | |||
31 | Move the "Use BX" after the CPU selection. | ||
32 | |||
33 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
34 | Cc: Khem Raj <raj.khem@gmail.com> | ||
35 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
36 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
37 | --- | ||
38 | extra/Configs/Config.arm | 14 +++++++------- | ||
39 | 1 files changed, 7 insertions(+), 7 deletions(-) | ||
40 | |||
41 | diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm | ||
42 | index b060ace..3b90e67 100644 | ||
43 | --- a/extra/Configs/Config.arm | ||
44 | +++ b/extra/Configs/Config.arm | ||
45 | @@ -30,13 +30,6 @@ config CONFIG_ARM_EABI | ||
46 | |||
47 | endchoice | ||
48 | |||
49 | -config USE_BX | ||
50 | - bool "Use BX in function return" | ||
51 | - default y | ||
52 | - depends on !CONFIG_GENERIC_ARM && !CONFIG_ARM610 && !CONFIG_ARM710 | ||
53 | - help | ||
54 | - Use BX instruction for THUMB aware architectures. | ||
55 | - | ||
56 | choice | ||
57 | prompt "Target Processor Type" | ||
58 | default CONFIG_GENERIC_ARM | ||
59 | @@ -131,3 +124,10 @@ config CONFIG_ARM_IWMMXT | ||
60 | select ARCH_HAS_MMU | ||
61 | |||
62 | endchoice | ||
63 | + | ||
64 | +config USE_BX | ||
65 | + bool "Use BX in function return" | ||
66 | + default y | ||
67 | + depends on !CONFIG_GENERIC_ARM && !CONFIG_ARM610 && !CONFIG_ARM710 | ||
68 | + help | ||
69 | + Use BX instruction for THUMB aware architectures. | ||
70 | -- | ||
71 | 1.7.1 | ||
72 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/rtld_no.patch b/meta/recipes-core/uclibc/uclibc-git/rtld_no.patch index 30cb7f6ef6..36fec651fe 100644 --- a/meta/recipes-core/uclibc/uclibc-git/rtld_no.patch +++ b/meta/recipes-core/uclibc/uclibc-git/rtld_no.patch | |||
@@ -3,11 +3,11 @@ http://lists.busybox.net/pipermail/uclibc/2011-March/045004.html | |||
3 | 3 | ||
4 | Upstream-Status: Pending | 4 | Upstream-Status: Pending |
5 | 5 | ||
6 | diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h | 6 | Index: git/ldso/include/dl-elf.h |
7 | index 7fbb373..7102351 100644 | 7 | =================================================================== |
8 | --- a/ldso/include/dl-elf.h | 8 | --- git.orig/ldso/include/dl-elf.h 2011-07-01 15:20:51.000000000 -0700 |
9 | +++ b/ldso/include/dl-elf.h | 9 | +++ git/ldso/include/dl-elf.h 2011-07-01 15:30:43.274364603 -0700 |
10 | @@ -25,16 +25,18 @@ static __inline__ void _dl_map_cache(void) { } | 10 | @@ -26,16 +26,18 @@ |
11 | static __inline__ void _dl_unmap_cache(void) { } | 11 | static __inline__ void _dl_unmap_cache(void) { } |
12 | #endif | 12 | #endif |
13 | 13 | ||
@@ -18,21 +18,21 @@ index 7fbb373..7102351 100644 | |||
18 | extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt, | 18 | extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt, |
19 | unsigned long rel_addr, unsigned long rel_size); | 19 | unsigned long rel_addr, unsigned long rel_size); |
20 | extern int _dl_parse_relocation_information(struct dyn_elf *rpnt, | 20 | extern int _dl_parse_relocation_information(struct dyn_elf *rpnt, |
21 | unsigned long rel_addr, unsigned long rel_size); | 21 | struct r_scope_elem *scope, unsigned long rel_addr, unsigned long rel_size); |
22 | -extern struct elf_resolve * _dl_load_shared_library(int secure, | 22 | -extern struct elf_resolve * _dl_load_shared_library(int secure, |
23 | +extern struct elf_resolve * _dl_load_shared_library(int resolve_flags, | 23 | +extern struct elf_resolve * _dl_load_shared_library(int resolve_flags, |
24 | struct dyn_elf **rpnt, struct elf_resolve *tpnt, char *full_libname, | 24 | struct dyn_elf **rpnt, struct elf_resolve *tpnt, char *full_libname, |
25 | int trace_loaded_objects); | 25 | int trace_loaded_objects); |
26 | -extern struct elf_resolve * _dl_load_elf_shared_library(int secure, | 26 | -extern struct elf_resolve * _dl_load_elf_shared_library(int secure, |
27 | +extern struct elf_resolve * _dl_load_elf_shared_library(int resolve_flags, | 27 | +extern struct elf_resolve * _dl_load_elf_shared_library(int resolve_flags, |
28 | struct dyn_elf **rpnt, char *libname); | 28 | struct dyn_elf **rpnt, const char *libname); |
29 | extern struct elf_resolve *_dl_check_if_named_library_is_loaded(const char *full_libname, | 29 | extern struct elf_resolve *_dl_check_if_named_library_is_loaded(const char *full_libname, |
30 | int trace_loaded_objects); | 30 | int trace_loaded_objects); |
31 | diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c | 31 | Index: git/ldso/ldso/dl-elf.c |
32 | index 2b2d429..6d35bf2 100644 | 32 | =================================================================== |
33 | --- a/ldso/ldso/dl-elf.c | 33 | --- git.orig/ldso/ldso/dl-elf.c 2011-07-01 15:21:47.000000000 -0700 |
34 | +++ b/ldso/ldso/dl-elf.c | 34 | +++ git/ldso/ldso/dl-elf.c 2011-07-01 15:31:29.814432859 -0700 |
35 | @@ -132,7 +132,7 @@ _dl_protect_relro (struct elf_resolve *l) | 35 | @@ -132,7 +132,7 @@ |
36 | /* This function's behavior must exactly match that | 36 | /* This function's behavior must exactly match that |
37 | * in uClibc/ldso/util/ldd.c */ | 37 | * in uClibc/ldso/util/ldd.c */ |
38 | static struct elf_resolve * | 38 | static struct elf_resolve * |
@@ -41,7 +41,7 @@ index 2b2d429..6d35bf2 100644 | |||
41 | struct dyn_elf **rpnt, const char *origin) | 41 | struct dyn_elf **rpnt, const char *origin) |
42 | { | 42 | { |
43 | char *mylibname; | 43 | char *mylibname; |
44 | @@ -162,7 +162,7 @@ search_for_named_library(const char *name, int secure, const char *path_list, | 44 | @@ -162,7 +162,7 @@ |
45 | 45 | ||
46 | if (plen >= 7 && _dl_memcmp(p, "$ORIGIN", 7) == 0) { | 46 | if (plen >= 7 && _dl_memcmp(p, "$ORIGIN", 7) == 0) { |
47 | int olen; | 47 | int olen; |
@@ -50,7 +50,7 @@ index 2b2d429..6d35bf2 100644 | |||
50 | continue; | 50 | continue; |
51 | if (origin == NULL) | 51 | if (origin == NULL) |
52 | continue; | 52 | continue; |
53 | @@ -182,7 +182,7 @@ search_for_named_library(const char *name, int secure, const char *path_list, | 53 | @@ -182,7 +182,7 @@ |
54 | _dl_strcat(mylibname, "/"); | 54 | _dl_strcat(mylibname, "/"); |
55 | _dl_strcat(mylibname, name); | 55 | _dl_strcat(mylibname, name); |
56 | 56 | ||
@@ -59,7 +59,7 @@ index 2b2d429..6d35bf2 100644 | |||
59 | if (tpnt != NULL) | 59 | if (tpnt != NULL) |
60 | return tpnt; | 60 | return tpnt; |
61 | } | 61 | } |
62 | @@ -194,7 +194,7 @@ search_for_named_library(const char *name, int secure, const char *path_list, | 62 | @@ -194,7 +194,7 @@ |
63 | unsigned long _dl_error_number; | 63 | unsigned long _dl_error_number; |
64 | unsigned long _dl_internal_error_number; | 64 | unsigned long _dl_internal_error_number; |
65 | 65 | ||
@@ -68,7 +68,7 @@ index 2b2d429..6d35bf2 100644 | |||
68 | struct elf_resolve *tpnt, char *full_libname, int attribute_unused trace_loaded_objects) | 68 | struct elf_resolve *tpnt, char *full_libname, int attribute_unused trace_loaded_objects) |
69 | { | 69 | { |
70 | char *pnt; | 70 | char *pnt; |
71 | @@ -223,7 +223,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 71 | @@ -223,7 +223,7 @@ |
72 | 72 | ||
73 | if (libname != full_libname) { | 73 | if (libname != full_libname) { |
74 | _dl_if_debug_dprint("\ttrying file='%s'\n", full_libname); | 74 | _dl_if_debug_dprint("\ttrying file='%s'\n", full_libname); |
@@ -77,7 +77,7 @@ index 2b2d429..6d35bf2 100644 | |||
77 | if (tpnt1) { | 77 | if (tpnt1) { |
78 | return tpnt1; | 78 | return tpnt1; |
79 | } | 79 | } |
80 | @@ -238,7 +238,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 80 | @@ -238,7 +238,7 @@ |
81 | if (pnt) { | 81 | if (pnt) { |
82 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 82 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
83 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); | 83 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); |
@@ -86,7 +86,7 @@ index 2b2d429..6d35bf2 100644 | |||
86 | tpnt->libname)) != NULL) | 86 | tpnt->libname)) != NULL) |
87 | return tpnt1; | 87 | return tpnt1; |
88 | } | 88 | } |
89 | @@ -247,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 89 | @@ -247,7 +247,7 @@ |
90 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ | 90 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ |
91 | if (_dl_library_path) { | 91 | if (_dl_library_path) { |
92 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); | 92 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); |
@@ -95,7 +95,7 @@ index 2b2d429..6d35bf2 100644 | |||
95 | { | 95 | { |
96 | return tpnt1; | 96 | return tpnt1; |
97 | } | 97 | } |
98 | @@ -261,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 98 | @@ -261,7 +261,7 @@ |
99 | if (pnt) { | 99 | if (pnt) { |
100 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 100 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
101 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); | 101 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); |
@@ -104,7 +104,7 @@ index 2b2d429..6d35bf2 100644 | |||
104 | return tpnt1; | 104 | return tpnt1; |
105 | } | 105 | } |
106 | #endif | 106 | #endif |
107 | @@ -284,7 +284,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 107 | @@ -284,7 +284,7 @@ |
108 | || libent[i].flags == LIB_ELF_LIBC0 | 108 | || libent[i].flags == LIB_ELF_LIBC0 |
109 | || libent[i].flags == LIB_ELF_LIBC5) | 109 | || libent[i].flags == LIB_ELF_LIBC5) |
110 | && _dl_strcmp(libname, strs + libent[i].sooffset) == 0 | 110 | && _dl_strcmp(libname, strs + libent[i].sooffset) == 0 |
@@ -113,7 +113,7 @@ index 2b2d429..6d35bf2 100644 | |||
113 | ) { | 113 | ) { |
114 | return tpnt1; | 114 | return tpnt1; |
115 | } | 115 | } |
116 | @@ -295,14 +295,14 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, | 116 | @@ -295,14 +295,14 @@ |
117 | /* Look for libraries wherever the shared library loader | 117 | /* Look for libraries wherever the shared library loader |
118 | * was installed */ | 118 | * was installed */ |
119 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); | 119 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); |
@@ -130,16 +130,16 @@ index 2b2d429..6d35bf2 100644 | |||
130 | UCLIBC_RUNTIME_PREFIX "lib:" | 130 | UCLIBC_RUNTIME_PREFIX "lib:" |
131 | UCLIBC_RUNTIME_PREFIX "usr/lib" | 131 | UCLIBC_RUNTIME_PREFIX "usr/lib" |
132 | #ifndef __LDSO_CACHE_SUPPORT__ | 132 | #ifndef __LDSO_CACHE_SUPPORT__ |
133 | @@ -329,7 +329,7 @@ goof: | 133 | @@ -444,7 +444,7 @@ |
134 | * are required. | 134 | * are required. |
135 | */ | 135 | */ |
136 | 136 | ||
137 | -struct elf_resolve *_dl_load_elf_shared_library(int secure, | 137 | -struct elf_resolve *_dl_load_elf_shared_library(int secure, |
138 | +struct elf_resolve *_dl_load_elf_shared_library(int resolve_flags, | 138 | +struct elf_resolve *_dl_load_elf_shared_library(int resolve_flags, |
139 | struct dyn_elf **rpnt, char *libname) | 139 | struct dyn_elf **rpnt, const char *libname) |
140 | { | 140 | { |
141 | ElfW(Ehdr) *epnt; | 141 | ElfW(Ehdr) *epnt; |
142 | @@ -368,7 +368,7 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure, | 142 | @@ -483,7 +483,7 @@ |
143 | } | 143 | } |
144 | /* If we are in secure mode (i.e. a setu/gid binary using LD_PRELOAD), | 144 | /* If we are in secure mode (i.e. a setu/gid binary using LD_PRELOAD), |
145 | we don't load the library if it isn't setuid. */ | 145 | we don't load the library if it isn't setuid. */ |
@@ -148,7 +148,7 @@ index 2b2d429..6d35bf2 100644 | |||
148 | if (!(st.st_mode & S_ISUID)) { | 148 | if (!(st.st_mode & S_ISUID)) { |
149 | _dl_close(infile); | 149 | _dl_close(infile); |
150 | return NULL; | 150 | return NULL; |
151 | @@ -384,6 +384,10 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure, | 151 | @@ -499,6 +499,10 @@ |
152 | return tpnt; | 152 | return tpnt; |
153 | } | 153 | } |
154 | } | 154 | } |
@@ -159,11 +159,11 @@ index 2b2d429..6d35bf2 100644 | |||
159 | header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ | PROT_WRITE, | 159 | header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ | PROT_WRITE, |
160 | MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0); | 160 | MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0); |
161 | if (_dl_mmap_check_error(header)) { | 161 | if (_dl_mmap_check_error(header)) { |
162 | diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c | 162 | Index: git/ldso/ldso/ldso.c |
163 | index 9423670..b71af34 100644 | 163 | =================================================================== |
164 | --- a/ldso/ldso/ldso.c | 164 | --- git.orig/ldso/ldso/ldso.c 2011-07-01 15:24:32.000000000 -0700 |
165 | +++ b/ldso/ldso/ldso.c | 165 | +++ git/ldso/ldso/ldso.c 2011-07-01 15:24:55.143854007 -0700 |
166 | @@ -646,7 +646,9 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, | 166 | @@ -854,7 +854,9 @@ |
167 | if (!_dl_secure || _dl_strchr(str, '/') == NULL) { | 167 | if (!_dl_secure || _dl_strchr(str, '/') == NULL) { |
168 | _dl_if_debug_dprint("\tfile='%s'; needed by '%s'\n", str, _dl_progname); | 168 | _dl_if_debug_dprint("\tfile='%s'; needed by '%s'\n", str, _dl_progname); |
169 | 169 | ||
@@ -173,12 +173,12 @@ index 9423670..b71af34 100644 | |||
173 | + &rpnt, NULL, str, trace_loaded_objects); | 173 | + &rpnt, NULL, str, trace_loaded_objects); |
174 | if (!tpnt1) { | 174 | if (!tpnt1) { |
175 | #ifdef __LDSO_LDD_SUPPORT__ | 175 | #ifdef __LDSO_LDD_SUPPORT__ |
176 | if (trace_loaded_objects) | 176 | if (trace_loaded_objects || _dl_trace_prelink) |
177 | diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c | 177 | Index: git/ldso/libdl/libdl.c |
178 | index 68cd579..edf38d2 100644 | 178 | =================================================================== |
179 | --- a/ldso/libdl/libdl.c | 179 | --- git.orig/ldso/libdl/libdl.c 2011-07-01 15:20:51.000000000 -0700 |
180 | +++ b/ldso/libdl/libdl.c | 180 | +++ git/ldso/libdl/libdl.c 2011-07-01 15:24:55.143854007 -0700 |
181 | @@ -288,7 +288,7 @@ void *dlopen(const char *libname, int flag) | 181 | @@ -305,7 +305,7 @@ |
182 | #endif | 182 | #endif |
183 | 183 | ||
184 | /* A bit of sanity checking... */ | 184 | /* A bit of sanity checking... */ |
@@ -187,7 +187,7 @@ index 68cd579..edf38d2 100644 | |||
187 | _dl_error_number = LD_BAD_HANDLE; | 187 | _dl_error_number = LD_BAD_HANDLE; |
188 | return NULL; | 188 | return NULL; |
189 | } | 189 | } |
190 | @@ -358,8 +358,9 @@ void *dlopen(const char *libname, int flag) | 190 | @@ -375,8 +375,9 @@ |
191 | /* Try to load the specified library */ | 191 | /* Try to load the specified library */ |
192 | _dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d RTLD_NOW:%d\n", | 192 | _dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d RTLD_NOW:%d\n", |
193 | (char*)libname, (flag & RTLD_GLOBAL ? 1:0), (now_flag & RTLD_NOW ? 1:0)); | 193 | (char*)libname, (flag & RTLD_GLOBAL ? 1:0), (now_flag & RTLD_NOW ? 1:0)); |
@@ -198,10 +198,10 @@ index 68cd579..edf38d2 100644 | |||
198 | if (tpnt == NULL) { | 198 | if (tpnt == NULL) { |
199 | _dl_unmap_cache(); | 199 | _dl_unmap_cache(); |
200 | return NULL; | 200 | return NULL; |
201 | diff --git a/libc/sysdeps/linux/common/bits/dlfcn.h b/libc/sysdeps/linux/common/bits/dlfcn.h | 201 | Index: git/libc/sysdeps/linux/common/bits/dlfcn.h |
202 | index 4bfbbff..47b42ad 100644 | 202 | =================================================================== |
203 | --- a/libc/sysdeps/linux/common/bits/dlfcn.h | 203 | --- git.orig/libc/sysdeps/linux/common/bits/dlfcn.h 2011-07-01 15:20:52.000000000 -0700 |
204 | +++ b/libc/sysdeps/linux/common/bits/dlfcn.h | 204 | +++ git/libc/sysdeps/linux/common/bits/dlfcn.h 2011-07-01 15:24:55.143854007 -0700 |
205 | @@ -24,9 +24,9 @@ | 205 | @@ -24,9 +24,9 @@ |
206 | /* The MODE argument to `dlopen' contains one of the following: */ | 206 | /* The MODE argument to `dlopen' contains one of the following: */ |
207 | #define RTLD_LAZY 0x00001 /* Lazy function call binding. */ | 207 | #define RTLD_LAZY 0x00001 /* Lazy function call binding. */ |
@@ -213,3 +213,4 @@ index 4bfbbff..47b42ad 100644 | |||
213 | +#if 0 /* uClibc doesnt support these */ | 213 | +#if 0 /* uClibc doesnt support these */ |
214 | #define RTLD_DEEPBIND 0x00008 /* Use deep binding. */ | 214 | #define RTLD_DEEPBIND 0x00008 /* Use deep binding. */ |
215 | #endif | 215 | #endif |
216 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/select-force-thumb.patch b/meta/recipes-core/uclibc/uclibc-git/select-force-thumb.patch deleted file mode 100644 index 7967794a42..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/select-force-thumb.patch +++ /dev/null | |||
@@ -1,172 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313301agb; | ||
3 | Sat, 8 Jan 2011 16:45:17 -0800 (PST) | ||
4 | Received: by 10.216.186.82 with SMTP id v60mr20017574wem.56.1294533916559; | ||
5 | Sat, 08 Jan 2011 16:45:16 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id o13si33755824wee.56.2011.01.08.16.45.16; | ||
9 | Sat, 08 Jan 2011 16:45:16 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClFDL; Sun, 09 Jan 2011 01:45:16 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 2/7] ARM: introduce blind options to select & force THUMB mode | ||
21 | Date: Sun, 9 Jan 2011 01:45:05 +0100 | ||
22 | Message-Id: <1294533910-19305-3-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | Add three new blind options to set use of Thumb mode: | ||
28 | - COMPILE_IN_THUMB_MODE | ||
29 | - if set, CFLAGS will contain -mthumb | ||
30 | - if unset, the compiler's default is used | ||
31 | - HAS_THUMB | ||
32 | - CPUS with Thumb instruction set can select this | ||
33 | - use of BX depends on this | ||
34 | - FORCE_THUMB | ||
35 | - CPUs that are Thumb-only must select this | ||
36 | - this selects: HAS_THUMB, COMPILE_IN_THUMB_MODE and USE_BX | ||
37 | |||
38 | Also, remove leading space in Rules.mak. | ||
39 | |||
40 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
41 | Cc: Khem Raj <raj.khem@gmail.com> | ||
42 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
43 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
44 | --- | ||
45 | Rules.mak | 7 ++++--- | ||
46 | extra/Configs/Config.arm | 31 ++++++++++++++++++++++++++++--- | ||
47 | 2 files changed, 32 insertions(+), 6 deletions(-) | ||
48 | |||
49 | diff --git a/Rules.mak b/Rules.mak | ||
50 | index eecdc64..2a16908 100644 | ||
51 | --- a/Rules.mak | ||
52 | +++ b/Rules.mak | ||
53 | @@ -348,9 +348,10 @@ ifeq ($(TARGET_ARCH),arm) | ||
54 | CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4 | ||
55 | CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110) | ||
56 | CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale | ||
57 | - CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt | ||
58 | - CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 -mthumb | ||
59 | - CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 -mthumb | ||
60 | + CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt | ||
61 | + CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 | ||
62 | + CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 | ||
63 | + CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb | ||
64 | endif | ||
65 | |||
66 | ifeq ($(TARGET_ARCH),mips) | ||
67 | diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm | ||
68 | index 3b90e67..c9c40d4 100644 | ||
69 | --- a/extra/Configs/Config.arm | ||
70 | +++ b/extra/Configs/Config.arm | ||
71 | @@ -64,70 +64,95 @@ config CONFIG_ARM710 | ||
72 | config CONFIG_ARM7TDMI | ||
73 | bool "Arm 7TDMI" | ||
74 | select ARCH_HAS_NO_MMU | ||
75 | + select HAS_THUMB | ||
76 | |||
77 | config CONFIG_ARM720T | ||
78 | bool "Arm 720T" | ||
79 | select ARCH_HAS_MMU | ||
80 | + select HAS_THUMB | ||
81 | |||
82 | config CONFIG_ARM920T | ||
83 | bool "Arm 920T" | ||
84 | select ARCH_HAS_MMU | ||
85 | + select HAS_THUMB | ||
86 | |||
87 | config CONFIG_ARM922T | ||
88 | bool "Arm 922T" | ||
89 | select ARCH_HAS_MMU | ||
90 | + select HAS_THUMB | ||
91 | |||
92 | config CONFIG_ARM926T | ||
93 | bool "Arm 926T" | ||
94 | select ARCH_HAS_MMU | ||
95 | + select HAS_THUMB | ||
96 | |||
97 | config CONFIG_ARM10T | ||
98 | bool "Arm 10T" | ||
99 | select ARCH_HAS_MMU | ||
100 | + select HAS_THUMB | ||
101 | |||
102 | config CONFIG_ARM1136JF_S | ||
103 | bool "Arm 1136JF-S" | ||
104 | select ARCH_HAS_MMU | ||
105 | + select HAS_THUMB | ||
106 | |||
107 | config CONFIG_ARM1176JZ_S | ||
108 | bool "Arm 1176JZ-S" | ||
109 | select ARCH_HAS_MMU | ||
110 | + select HAS_THUMB | ||
111 | |||
112 | config CONFIG_ARM1176JZF_S | ||
113 | bool "Arm 1176JZF-S" | ||
114 | select ARCH_HAS_MMU | ||
115 | + select HAS_THUMB | ||
116 | |||
117 | config CONFIG_ARM_CORTEX_M3 | ||
118 | bool "Arm Cortex-M3" | ||
119 | select ARCH_HAS_NO_MMU | ||
120 | - select USE_BX | ||
121 | + select FORCE_THUMB | ||
122 | |||
123 | config CONFIG_ARM_CORTEX_M1 | ||
124 | bool "Arm Cortex-M1" | ||
125 | select ARCH_HAS_NO_MMU | ||
126 | - select USE_BX | ||
127 | + select FORCE_THUMB | ||
128 | |||
129 | config CONFIG_ARM_SA110 | ||
130 | bool "Intel StrongArm SA-110" | ||
131 | select ARCH_HAS_MMU | ||
132 | + select HAS_THUMB | ||
133 | |||
134 | config CONFIG_ARM_SA1100 | ||
135 | bool "Intel StrongArm SA-1100" | ||
136 | select ARCH_HAS_MMU | ||
137 | + select HAS_THUMB | ||
138 | |||
139 | config CONFIG_ARM_XSCALE | ||
140 | bool "Intel Xscale" | ||
141 | select ARCH_HAS_MMU | ||
142 | + select HAS_THUMB | ||
143 | |||
144 | config CONFIG_ARM_IWMMXT | ||
145 | bool "Intel Xscale With WMMX PXA27x" | ||
146 | select ARCH_HAS_MMU | ||
147 | + select HAS_THUMB | ||
148 | |||
149 | endchoice | ||
150 | |||
151 | +config HAS_THUMB | ||
152 | + bool | ||
153 | + | ||
154 | +config FORCE_THUMB | ||
155 | + bool | ||
156 | + select HAS_THUMB | ||
157 | + select COMPILE_IN_THUMB_MODE | ||
158 | + select USE_BX | ||
159 | + | ||
160 | +config COMPILE_IN_THUMB_MODE | ||
161 | + bool | ||
162 | + | ||
163 | config USE_BX | ||
164 | bool "Use BX in function return" | ||
165 | default y | ||
166 | - depends on !CONFIG_GENERIC_ARM && !CONFIG_ARM610 && !CONFIG_ARM710 | ||
167 | + depends on HAS_THUMB | ||
168 | help | ||
169 | Use BX instruction for THUMB aware architectures. | ||
170 | -- | ||
171 | 1.7.1 | ||
172 | |||
diff --git a/meta/recipes-core/uclibc/uclibc-git/transform-eabi-oabi-choice.patch b/meta/recipes-core/uclibc/uclibc-git/transform-eabi-oabi-choice.patch deleted file mode 100644 index 7acd5d17f6..0000000000 --- a/meta/recipes-core/uclibc/uclibc-git/transform-eabi-oabi-choice.patch +++ /dev/null | |||
@@ -1,71 +0,0 @@ | |||
1 | Delivered-To: raj.khem@gmail.com | ||
2 | Received: by 10.90.86.4 with SMTP id j4cs313305agb; | ||
3 | Sat, 8 Jan 2011 16:45:19 -0800 (PST) | ||
4 | Received: by 10.216.153.210 with SMTP id f60mr573848wek.114.1294533918335; | ||
5 | Sat, 08 Jan 2011 16:45:18 -0800 (PST) | ||
6 | Return-Path: <yann.morin.1998@anciens.enib.fr> | ||
7 | Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123]) | ||
8 | by mx.google.com with ESMTP id n4si33737071wej.152.2011.01.08.16.45.17; | ||
9 | Sat, 08 Jan 2011 16:45:18 -0800 (PST) | ||
10 | Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) client-ip=80.12.242.123; | ||
11 | Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of yann.morin.1998@anciens.enib.fr) smtp.mail=yann.morin.1998@anciens.enib.fr | ||
12 | Received: from roazhon.bzh.lan ([90.32.245.227]) | ||
13 | by mwinf5d24 with ME | ||
14 | id tClC1f0024v5z3u03ClGDX; Sun, 09 Jan 2011 01:45:17 +0100 | ||
15 | From: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
16 | To: uclibc@uclibc.org | ||
17 | Cc: Khem Raj <raj.khem@gmail.com>, | ||
18 | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, | ||
19 | Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
20 | Subject: [PATCH 4/7] ARM: transform the EABI/OABI choice into a boolean | ||
21 | Date: Sun, 9 Jan 2011 01:45:07 +0100 | ||
22 | Message-Id: <1294533910-19305-5-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
23 | X-Mailer: git-send-email 1.7.1 | ||
24 | In-Reply-To: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
25 | References: <1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr> | ||
26 | |||
27 | The CONFIG_ARM_OABI option is never used. | ||
28 | |||
29 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | ||
30 | Cc: Khem Raj <raj.khem@gmail.com> | ||
31 | Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | ||
32 | Cc: Carmelo AMOROSO <carmelo.amoroso@st.com> | ||
33 | --- | ||
34 | extra/Configs/Config.arm | 23 ++++++++--------------- | ||
35 | 1 files changed, 8 insertions(+), 15 deletions(-) | ||
36 | |||
37 | Index: git/extra/Configs/Config.arm | ||
38 | =================================================================== | ||
39 | --- git.orig/extra/Configs/Config.arm | ||
40 | +++ git/extra/Configs/Config.arm | ||
41 | @@ -12,23 +12,16 @@ config FORCE_OPTIONS_FOR_ARCH | ||
42 | default y | ||
43 | select ARCH_ANY_ENDIAN | ||
44 | |||
45 | -choice | ||
46 | - prompt "Target ABI" | ||
47 | - default CONFIG_ARM_EABI | ||
48 | +config CONFIG_ARM_EABI | ||
49 | + bool "Build for EABI" | ||
50 | help | ||
51 | - If you choose "EABI" here, functions and constants required by the | ||
52 | - ARM EABI will be built into the library. You should choose "EABI" | ||
53 | + If you say 'y' here, functions and constants required by the | ||
54 | + ARM EABI will be built into the library. You should say 'y' | ||
55 | if your compiler uses the ARM EABI, in which case you will also | ||
56 | - need a kernel supporting the EABI system call interface, or "OABI" | ||
57 | - for a compiler using the old Linux ABI. | ||
58 | - | ||
59 | -config CONFIG_ARM_OABI | ||
60 | - bool "OABI" | ||
61 | - | ||
62 | -config CONFIG_ARM_EABI | ||
63 | - bool "EABI" | ||
64 | + need a kernel supporting the EABI system call interface. | ||
65 | |||
66 | -endchoice | ||
67 | + If you say 'n' here, then the library will be built for the | ||
68 | + old Linux ABI. | ||
69 | |||
70 | config COMPILE_IN_THUMB_MODE | ||
71 | bool "Build using Thumb mode" | ||
diff --git a/meta/recipes-core/uclibc/uclibc_git.bb b/meta/recipes-core/uclibc/uclibc_git.bb index 0e43f9e669..a31d3a6051 100644 --- a/meta/recipes-core/uclibc/uclibc_git.bb +++ b/meta/recipes-core/uclibc/uclibc_git.bb | |||
@@ -1,8 +1,12 @@ | |||
1 | SRCREV="71d63ed75648da9b0b71afabb9c60aaad792c55c" | 1 | SRCREV="f87898ca4a7d4b7171779c06ff1f4848efeee431" |
2 | 2 | ||
3 | require uclibc.inc | 3 | require uclibc.inc |
4 | PV = "0.9.31+0.9.32rc3" | 4 | |
5 | PR = "${INC_PR}.5" | 5 | # We prefer a release version so DP -1 for this |
6 | DEFAULT_PREFERENCE = "-1" | ||
7 | |||
8 | PV = "0.9.32+0.9.33-rc0" | ||
9 | PR = "${INC_PR}.0" | ||
6 | PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc" | 10 | PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc" |
7 | 11 | ||
8 | FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}" | 12 | FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}" |
@@ -13,23 +17,12 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \ | |||
13 | file://uclibc-arm-ftruncate64.patch \ | 17 | file://uclibc-arm-ftruncate64.patch \ |
14 | file://uclibc_enable_log2_test.patch \ | 18 | file://uclibc_enable_log2_test.patch \ |
15 | file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch \ | 19 | file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch \ |
16 | file://reorder-use-BX.patch \ | ||
17 | file://select-force-thumb.patch \ | ||
18 | file://remove-sub-arch-variants.patch \ | ||
19 | file://transform-eabi-oabi-choice.patch \ | ||
20 | file://include-arm-asm.h.patch \ | ||
21 | file://detect-bx-availibility.patch \ | ||
22 | file://remove-eabi-oabi-selection.patch \ | ||
23 | file://powerpc_copysignl.patch \ | 20 | file://powerpc_copysignl.patch \ |
24 | file://argp-support.patch \ | 21 | file://argp-support.patch \ |
25 | file://argp-headers.patch \ | 22 | file://argp-headers.patch \ |
26 | file://remove_attribute_optimize_Os.patch \ | 23 | file://remove_attribute_optimize_Os.patch \ |
27 | file://append_UCLIBC_EXTRA_CFLAGS.patch \ | ||
28 | file://compile-arm-fork-with-O2.patch \ | 24 | file://compile-arm-fork-with-O2.patch \ |
29 | file://epoll-asm-fix.patch \ | ||
30 | file://orign_path.patch \ | 25 | file://orign_path.patch \ |
31 | file://rtld_no.patch \ | 26 | file://rtld_no.patch \ |
32 | file://0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch \ | ||
33 | file://0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch \ | ||
34 | " | 27 | " |
35 | S = "${WORKDIR}/git" | 28 | S = "${WORKDIR}/git" |