aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2011-06-15 06:26:05 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2011-06-15 09:23:54 +0000
commit6fa50adc4d0ab25d2ad24df914893a3cc66d3baf (patch)
treeb3ea6442543eee1080dc574cc2db153303dbb2a8
parent9132b760e8fa027f206d3c16fa45ab73e3b45721 (diff)
downloadaports-6fa50adc4d0ab25d2ad24df914893a3cc66d3baf.tar.bz2
aports-6fa50adc4d0ab25d2ad24df914893a3cc66d3baf.tar.xz
main/libc0.9.32: upgrade to 0.9.32
-rw-r--r--main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch53
-rw-r--r--main/libc0.9.32/0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch34
-rw-r--r--main/libc0.9.32/0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch28
-rw-r--r--main/libc0.9.32/APKBUILD28
-rw-r--r--main/libc0.9.32/uclibc-epoll_pwait-hack.patch20
-rw-r--r--main/libc0.9.32/uclibc-generic-backtrace.patch262
-rw-r--r--main/libc0.9.32/uclibc-ubacktrace-asneeded-fix.patch2
-rw-r--r--main/libc0.9.32/uclibcconfig.arm1
-rw-r--r--main/libc0.9.32/uclibcconfig.powerpc1
-rw-r--r--main/libc0.9.32/uclibcconfig.x865
-rw-r--r--main/libc0.9.32/uclibcconfig.x86_641
11 files changed, 38 insertions, 397 deletions
diff --git a/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch b/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch
deleted file mode 100644
index 382cc94aba..0000000000
--- a/main/libc0.9.32/0001-posix_fadvise64-fix-x86-implementation.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From d4db9d07a970e27e3042d09892fbaeca5f40c1a8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Wed, 20 Apr 2011 13:45:36 +0300
-Subject: [PATCH] posix_fadvise64: fix x86 implementation
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Commit 73d59554144f429b1cf0d4d7fa7de42bdf59ad92 completely broke
-the x86 implementation of posix_fadvise64. It moved the first
-the assembly code retn instruction gets missing depending on the
-
-Technically the file has two implementaions for posix_fadvise64,
-one when __NR_fadvise64_64 is available, and second one if only
-__NR_fadvise64 is there. Fix the #ifdef's to be proper for that.
-
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
----
- libc/sysdeps/linux/i386/posix_fadvise64.S | 4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-
-diff --git a/libc/sysdeps/linux/i386/posix_fadvise64.S b/libc/sysdeps/linux/i386/posix_fadvise64.S
-index b4aeff1..8a8947d 100644
---- a/libc/sysdeps/linux/i386/posix_fadvise64.S
-+++ b/libc/sysdeps/linux/i386/posix_fadvise64.S
-@@ -22,7 +22,7 @@
- #include <bits/errno.h>
- #include <sys/syscall.h>
-
--#if defined __NR_fadvise64_64
-+#if defined __NR_fadvise64_64 || defined __NR_fadvise64
-
- /* Was named __libc_posix_fadvise64 for some inexplicable reason.
- ** google says only uclibc has *__libc*_posix_fadviseXXX,
-@@ -35,6 +35,7 @@
- .global posix_fadvise64
- .type posix_fadvise64,%function
- posix_fadvise64:
-+#if defined __NR_fadvise64_64
- /* Save regs */
- pushl %ebp
- pushl %ebx
-@@ -91,6 +92,7 @@ overflow:
-
- /* Returns 0 on success, else an error code. */
- negl %eax
-+#endif
-
- /* Successful; return the syscall's value. */
- ret
---
-1.7.1
-
diff --git a/main/libc0.9.32/0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch b/main/libc0.9.32/0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch
deleted file mode 100644
index 4567817f11..0000000000
--- a/main/libc0.9.32/0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0256aca9b486f77af72ea941dfc852c2c4cff15b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Fri, 8 Apr 2011 11:51:03 +0300
-Subject: [PATCH] resolv: fix res_close not to hang with ipv6
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The memory release loop is missing an obvious counter increment.
-
-Signed-off-by: Timo Teräs <timo.teras@iki.fi>
----
- libc/inet/resolv.c | 4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c
-index 47bab75..1e394d4 100644
---- a/libc/inet/resolv.c
-+++ b/libc/inet/resolv.c
-@@ -3006,9 +3006,9 @@ void res_close(void)
- #ifdef __UCLIBC_HAS_IPV6__
- {
- char *p1 = (char*) &(_res.nsaddr_list[0]);
-- int m = 0;
-+ int m;
- /* free nsaddrs[m] if they do not point to nsaddr_list[x] */
-- while (m < ARRAY_SIZE(_res._u._ext.nsaddrs)) {
-+ for (m = 0; m < ARRAY_SIZE(_res._u._ext.nsaddrs); m++) {
- char *p2 = (char*)(_res._u._ext.nsaddrs[m]);
- if (p2 < p1 || (p2 - p1) > sizeof(_res.nsaddr_list))
- free(p2);
---
-1.7.1
-
diff --git a/main/libc0.9.32/0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch b/main/libc0.9.32/0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch
deleted file mode 100644
index 4764e006dc..0000000000
--- a/main/libc0.9.32/0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 85f4b028d767fc390a7b866d2f58d58be489242d Mon Sep 17 00:00:00 2001
-From: Kevin Day <thekevinday@gmail.com>
-Date: Wed, 30 Mar 2011 04:51:22 -0700
-Subject: [PATCH] utils/ldd: Check for returned pointer from strrchr not the
- value it holds
-
-Signed-off-by: Kevin Day <thekevinday@gmail.com>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- utils/ldd.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/utils/ldd.c b/utils/ldd.c
-index 3858c81..904075c 100644
---- a/utils/ldd.c
-+++ b/utils/ldd.c
-@@ -553,7 +553,7 @@ static struct library *find_elf_interpreter(ElfW(Ehdr) *ehdr)
- interp_name = strdup(s);
- interp_dir = strdup(s);
- tmp = strrchr(interp_dir, '/');
-- if (*tmp)
-+ if (tmp)
- *tmp = '\0';
- else {
- free(interp_dir);
---
-1.7.4.4
-
diff --git a/main/libc0.9.32/APKBUILD b/main/libc0.9.32/APKBUILD
index 51a8f8eb74..80cacf8978 100644
--- a/main/libc0.9.32/APKBUILD
+++ b/main/libc0.9.32/APKBUILD
@@ -2,9 +2,9 @@
_abiver=0.9.32
pkgname=libc$_abiver
_gitver=
-pkgver=0.9.32_rc3
+pkgver=0.9.32
_ver=${pkgver/_/-}
-pkgrel=16
+pkgrel=0
pkgdesc="C library for developing embedded Linux systems"
url=http://uclibc.org
license="LGPL-2"
@@ -28,14 +28,11 @@ source="http://uclibc.org/downloads/uClibc-${_ver}.tar.bz2
0003-ldso-support-RTLD_NOLOAD.patch
0001-libdl-rudimentary-locking-for-dlopen-dlsym-dlclose.patch
0001-malloc-standard-synchronize-on-fork.patch
- 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch
- 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch
- 0001-posix_fadvise64-fix-x86-implementation.patch
0001-time-fix-parsing-of-tzdata-files-where-off_t-is-64-b.patch
0001-getaddrinfo-allow-numeric-service-without-any-hints.patch
- uclibc-generic-backtrace.patch
uclibc-ubacktrace-asneeded-fix.patch
uclibc-librt-asneeded-fix.patch
+ uclibc-epoll_pwait-hack.patch
uclibcconfig.x86
uclibcconfig.x86_64
uclibcconfig.i486
@@ -130,7 +127,7 @@ libthread_db() {
mv "$pkgdir"/lib/libthread_db* "$subpkgdir"/lib/
}
-md5sums="e7f420aa2fb28e7021d02c043acba71b uClibc-0.9.32-rc3.tar.bz2
+md5sums="cfcb6c25d8ebe12817499d8749ee8ae1 uClibc-0.9.32.tar.bz2
a9bfb77ea7dc5fb9abf4d4b19201c614 compat-stack-guard.patch
5d6e3e382b66f59cfd7242a4fe453f98 uclibc-resolv-cname-fix.diff
e0c901502602f7e9e002d910d0f32ab9 0001-libm-x86_64-implement-fesetround.patch
@@ -139,18 +136,15 @@ b4fb68ad3d0e8331b1b40c30eb21dfdc 0002-stdlib-fix-arc4random-return-type-to-u_in
6147efd2eee5af5e734896823c2d1a3d 0003-ldso-support-RTLD_NOLOAD.patch
3e151ae3d3613dff9296d166aca3a800 0001-libdl-rudimentary-locking-for-dlopen-dlsym-dlclose.patch
30f27fe51fdc4d121166ad2af18dfb8d 0001-malloc-standard-synchronize-on-fork.patch
-2ab8c375fe1cd406319b4c5ef538da2b 0001-resolv-fix-res_close-not-to-hang-with-ipv6.patch
-12f6297249755d3996918485bbd6031d 0001-utils-ldd-Check-for-returned-pointer-from-strrchr-no.patch
-100d026c2d7cf7fc5906229448c791d4 0001-posix_fadvise64-fix-x86-implementation.patch
2548d9f470c9a5b2c117ec3d6f35c105 0001-time-fix-parsing-of-tzdata-files-where-off_t-is-64-b.patch
9e1ffc8dae55f4489c770f284734804f 0001-getaddrinfo-allow-numeric-service-without-any-hints.patch
-871956085df0bf90f4054e294a3770ce uclibc-generic-backtrace.patch
-814ae23243116cf61690218b9b6019f6 uclibc-ubacktrace-asneeded-fix.patch
+7c47e9cb284b0da8df6ed2096b2c9c66 uclibc-ubacktrace-asneeded-fix.patch
e5caf13c43ee8d48f22eded21b857d81 uclibc-librt-asneeded-fix.patch
-35ef159d3c56ad67f520ab033e0f6930 uclibcconfig.x86
-a0b00fb82825f91671b76b1d8f979944 uclibcconfig.x86_64
-35ef159d3c56ad67f520ab033e0f6930 uclibcconfig.i486
-9c4708d6d5868c2a24f46959eb0be1c7 uclibcconfig.arm
-f37b8efb311aadf2084dbd25f8b09b07 uclibcconfig.powerpc
+0ed588014227935fbb83b207282f3c15 uclibc-epoll_pwait-hack.patch
+7a0a26d002de3a2dcb541e4db9840485 uclibcconfig.x86
+d08010019b097a099ab23810c0da60ce uclibcconfig.x86_64
+7a0a26d002de3a2dcb541e4db9840485 uclibcconfig.i486
+af6526daf5adb86398cab1bf67514c51 uclibcconfig.arm
+a8eb360d4ae99dc6e7634d7e9b5c653a uclibcconfig.powerpc
7bf1af84106de9e05160ed6d4853c54f sha512-crypt.patch
f3be4f2bc54d7561d252937e10abf0d2 uclibc-utils.trigger"
diff --git a/main/libc0.9.32/uclibc-epoll_pwait-hack.patch b/main/libc0.9.32/uclibc-epoll_pwait-hack.patch
new file mode 100644
index 0000000000..7e28056848
--- /dev/null
+++ b/main/libc0.9.32/uclibc-epoll_pwait-hack.patch
@@ -0,0 +1,20 @@
+diff --git a/libc/sysdeps/linux/common/epoll.c b/libc/sysdeps/linux/common/epoll.c
+index 85b0cfd..8fff9e6 100644
+--- a/libc/sysdeps/linux/common/epoll.c
++++ b/libc/sysdeps/linux/common/epoll.c
+@@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait;
+ int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents,
+ int timeout, const sigset_t *set)
+ {
++ int n = _NSIG / 8;
+ if (SINGLE_THREAD_P)
+- return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
++ return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, n);
+ # ifdef __UCLIBC_HAS_THREADS_NATIVE__
+ else {
+ int oldtype = LIBC_CANCEL_ASYNC ();
+- int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
++ int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, n);
+ LIBC_CANCEL_RESET (oldtype);
+ return result;
+ }
diff --git a/main/libc0.9.32/uclibc-generic-backtrace.patch b/main/libc0.9.32/uclibc-generic-backtrace.patch
deleted file mode 100644
index 13281a9491..0000000000
--- a/main/libc0.9.32/uclibc-generic-backtrace.patch
+++ /dev/null
@@ -1,262 +0,0 @@
-From 7b5b79f09f0bffe1fccda00d4c5cdf7a7be45413 Mon Sep 17 00:00:00 2001
-From: Carmelo Amoroso <carmelo.amoroso@st.com>
-Date: Fri, 22 Apr 2011 10:55:43 +0000
-Subject: libubacktrace: generic implementation based dwarf
-
-Use the initial implementation for SH4 based on dwarf for all archs.
-Indeed there are not obvious reason for which it should not work in general.
-
-Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
----
-diff --git a/libubacktrace/Makefile.in b/libubacktrace/Makefile.in
-index c1dd5d7..fac684e 100644
---- a/libubacktrace/Makefile.in
-+++ b/libubacktrace/Makefile.in
-@@ -18,29 +18,16 @@ libubacktrace_FULL_NAME := libubacktrace-$(VERSION).so
-
- libubacktrace_DIR := $(top_srcdir)libubacktrace
- libubacktrace_OUT := $(top_builddir)libubacktrace
--libubacktrace_ARCH_DIR := $(libubacktrace_DIR)/sysdeps/$(TARGET_ARCH)
--libubacktrace_ARCH_OUT := $(libubacktrace_OUT)/sysdeps/$(TARGET_ARCH)
--
---include $(libubacktrace_ARCH_DIR)/Makefile.arch
-
- libubacktrace_SRC-y :=
- libubacktrace_SRC-$(UCLIBC_HAS_BACKTRACE) := backtrace.c backtracesyms.c backtracesymsfd.c
-
--CFLAGS-libubacktrace/sysdeps/$(TARGET_ARCH)/ := $(CFLAGS-libubacktrace)
--
--# remove generic sources, if arch specific version is present
--ifneq ($(strip $(libubacktrace_ARCH_SRC-y)),)
--libubacktrace_SRC-y := $(filter-out $(notdir $(libubacktrace_ARCH_SRC-y)),$(libubacktrace_SRC-y))
--libubacktrace_ARCH_SRC := $(addprefix $(libubacktrace_ARCH_DIR)/,$(libubacktrace_ARCH_SRC-y))
--libubacktrace_ARCH_OBJ := $(patsubst $(libubacktrace_ARCH_DIR)/%.c,$(libubacktrace_ARCH_OUT)/%.o,$(libubacktrace_ARCH_SRC))
--endif
--
-+# -fexections is required for backtrace to work using dwarf2
-+CFLAGS-backtrace.c := -fexceptions
-
--libubacktrace_SRC := $(addprefix $(libubacktrace_DIR)/,$(libubacktrace_SRC-y))
--libubacktrace_OBJ := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.o,$(libubacktrace_SRC))
-
--libubacktrace_SRCS := $(libubacktrace_SRC) $(libubacktrace_ARCH_SRC)
--libubacktrace_OBJS := $(libubacktrace_OBJ) $(libubacktrace_ARCH_OBJ)
-+libubacktrace_SRCS := $(addprefix $(libubacktrace_DIR)/,$(libubacktrace_SRC-y))
-+libubacktrace_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.o,$(libubacktrace_SRCS))
-
- ifeq ($(DOPIC),y)
- libubacktrace-a-y := $(libubacktrace_OBJS:.o=.os)
-diff --git a/libubacktrace/backtrace.c b/libubacktrace/backtrace.c
-index 8721800..18b91b1 100644
---- a/libubacktrace/backtrace.c
-+++ b/libubacktrace/backtrace.c
-@@ -4,16 +4,81 @@
- * User application that wants to use backtrace needs to be
- * compiled with -fexceptions option and -rdynamic to get full
- * symbols printed.
--
-- * Copyright (C) 2010 STMicroelectronics Ltd
-+ *
-+ * Copyright (C) 2009, 2010 STMicroelectronics Ltd.
-+ *
-+ * Author(s): Giuseppe Cavallaro <peppe.cavallaro@st.com>
-+ * - Initial implementation for glibc
-+ *
- * Author(s): Carmelo Amoroso <carmelo.amoroso@st.com>
-+ * - Reworked for uClibc
-+ * - use dlsym/dlopen from libdl
-+ * - rewrite initialisation to not use libc_once
-+ * - make it available in static link too
- *
- * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
- *
- */
--#error "Arch specific implementation must be provided to properly work"
--int backtrace (void **array, int size)
-+
-+#include <execinfo.h>
-+#include <dlfcn.h>
-+#include <stdlib.h>
-+#include <unwind.h>
-+#include <assert.h>
-+#include <stdio.h>
-+
-+struct trace_arg
- {
-- return -1;
-+ void **array;
-+ int cnt, size;
-+};
-+
-+static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *);
-+static _Unwind_Ptr (*unwind_getip) (struct _Unwind_Context *);
-+
-+static void backtrace_init (void)
-+{
-+ void *handle = dlopen ("libgcc_s.so.1", RTLD_LAZY);
-+
-+ if (handle == NULL
-+ || ((unwind_backtrace = dlsym (handle, "_Unwind_Backtrace")) == NULL)
-+ || ((unwind_getip = dlsym (handle, "_Unwind_GetIP")) == NULL)) {
-+ printf("libgcc_s.so.1 must be installed for backtrace to work\n");
-+ abort();
-+ }
- }
-
-+static _Unwind_Reason_Code
-+backtrace_helper (struct _Unwind_Context *ctx, void *a)
-+{
-+ struct trace_arg *arg = a;
-+
-+ assert (unwind_getip != NULL);
-+
-+ /* We are first called with address in the __backtrace function. Skip it. */
-+ if (arg->cnt != -1)
-+ arg->array[arg->cnt] = (void *) unwind_getip (ctx);
-+ if (++arg->cnt == arg->size)
-+ return _URC_END_OF_STACK;
-+ return _URC_NO_REASON;
-+}
-+
-+/*
-+ * Perform stack unwinding by using the _Unwind_Backtrace.
-+ *
-+ * User application that wants to use backtrace needs to be
-+ * compiled with -fexceptions option and -rdynamic to get full
-+ * symbols printed.
-+ */
-+int backtrace (void **array, int size)
-+{
-+ struct trace_arg arg = { .array = array, .size = size, .cnt = -1 };
-+
-+ if (unwind_backtrace == NULL)
-+ backtrace_init();
-+
-+ if (size >= 1)
-+ unwind_backtrace (backtrace_helper, &arg);
-+
-+ return arg.cnt != -1 ? arg.cnt : 0;
-+}
-diff --git a/libubacktrace/sysdeps/sh/Makefile.arch b/libubacktrace/sysdeps/sh/Makefile.arch
-deleted file mode 100644
-index 9b0de38..0000000
---- a/libubacktrace/sysdeps/sh/Makefile.arch
-+++ b/dev/null
-@@ -1,12 +0,0 @@
--# Makefile for uClibc (sh/libubacktrace)
--#
--# Copyright (C) 2010 STMicroelectronics Ltd
--# Author: Carmelo Amoroso <carmelo.amoroso@st.com>
--
--# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
--#
--
--libubacktrace_ARCH_SRC-y := backtrace.c
--
--# -fexections is required for backtrace to work using dwarf2
--CFLAGS-backtrace.c := -fexceptions
-diff --git a/libubacktrace/sysdeps/sh/backtrace.c b/libubacktrace/sysdeps/sh/backtrace.c
-deleted file mode 100644
-index 18b91b1..0000000
---- a/libubacktrace/sysdeps/sh/backtrace.c
-+++ b/dev/null
-@@ -1,84 +0,0 @@
--/*
-- * Perform stack unwinding by using the _Unwind_Backtrace.
-- *
-- * User application that wants to use backtrace needs to be
-- * compiled with -fexceptions option and -rdynamic to get full
-- * symbols printed.
-- *
-- * Copyright (C) 2009, 2010 STMicroelectronics Ltd.
-- *
-- * Author(s): Giuseppe Cavallaro <peppe.cavallaro@st.com>
-- * - Initial implementation for glibc
-- *
-- * Author(s): Carmelo Amoroso <carmelo.amoroso@st.com>
-- * - Reworked for uClibc
-- * - use dlsym/dlopen from libdl
-- * - rewrite initialisation to not use libc_once
-- * - make it available in static link too
-- *
-- * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-- *
-- */
--
--#include <execinfo.h>
--#include <dlfcn.h>
--#include <stdlib.h>
--#include <unwind.h>
--#include <assert.h>
--#include <stdio.h>
--
--struct trace_arg
--{
-- void **array;
-- int cnt, size;
--};
--
--static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *);
--static _Unwind_Ptr (*unwind_getip) (struct _Unwind_Context *);
--
--static void backtrace_init (void)
--{
-- void *handle = dlopen ("libgcc_s.so.1", RTLD_LAZY);
--
-- if (handle == NULL
-- || ((unwind_backtrace = dlsym (handle, "_Unwind_Backtrace")) == NULL)
-- || ((unwind_getip = dlsym (handle, "_Unwind_GetIP")) == NULL)) {
-- printf("libgcc_s.so.1 must be installed for backtrace to work\n");
-- abort();
-- }
--}
--
--static _Unwind_Reason_Code
--backtrace_helper (struct _Unwind_Context *ctx, void *a)
--{
-- struct trace_arg *arg = a;
--
-- assert (unwind_getip != NULL);
--
-- /* We are first called with address in the __backtrace function. Skip it. */
-- if (arg->cnt != -1)
-- arg->array[arg->cnt] = (void *) unwind_getip (ctx);
-- if (++arg->cnt == arg->size)
-- return _URC_END_OF_STACK;
-- return _URC_NO_REASON;
--}
--
--/*
-- * Perform stack unwinding by using the _Unwind_Backtrace.
-- *
-- * User application that wants to use backtrace needs to be
-- * compiled with -fexceptions option and -rdynamic to get full
-- * symbols printed.
-- */
--int backtrace (void **array, int size)
--{
-- struct trace_arg arg = { .array = array, .size = size, .cnt = -1 };
--
-- if (unwind_backtrace == NULL)
-- backtrace_init();
--
-- if (size >= 1)
-- unwind_backtrace (backtrace_helper, &arg);
--
-- return arg.cnt != -1 ? arg.cnt : 0;
--}
---
-cgit v0.8.2.1
-
-Fix up config file reference.
---- uClibc-0.9.32-rc3.orig/extra/Configs/Config.in
-+++ uClibc-0.9.32-rc3/extra/Configs/Config.in
-@@ -2322,7 +2322,7 @@
-
- config UCLIBC_HAS_BACKTRACE
- bool "Add support for application self-debugging"
-- depends on HAVE_SHARED && TARGET_sh
-+ depends on HAVE_SHARED
- default n
- help
- Answer Y here to compile support for application self-debugging, by adding
diff --git a/main/libc0.9.32/uclibc-ubacktrace-asneeded-fix.patch b/main/libc0.9.32/uclibc-ubacktrace-asneeded-fix.patch
index 7ac85a03f3..8fc06508eb 100644
--- a/main/libc0.9.32/uclibc-ubacktrace-asneeded-fix.patch
+++ b/main/libc0.9.32/uclibc-ubacktrace-asneeded-fix.patch
@@ -4,7 +4,7 @@
endif
ifeq ($(UCLIBC_HAS_BACKTRACE),y)
# Add the AS_NEEDED entry for libubacktrace.so
-- if [ -f $(top_builddir)lib/libc.so -a -f $(PREFIX)$(RUNTIME_PREFIX)$(MULTILIB_DIR)/$(SHARED_MAJORNAME) ] ; then \
+- if [ -f $(top_builddir)lib/libc.so -a -f $(PREFIX)$(RUNTIME_PREFIX)$(MULTILIB_DIR)/$(SHARED_LIBNAME) ] ; then \
+ if [ -f $(top_builddir)lib/libc.so -a -f $(PREFIX)$(DEVEL_PREFIX)$(MULTILIB_DIR)/libc.so ] ; then \
echo "GROUP ( $(UBACKTRACE_ASNEEDED) )" >> $(PREFIX)$(DEVEL_PREFIX)$(MULTILIB_DIR)/libc.so; \
fi
diff --git a/main/libc0.9.32/uclibcconfig.arm b/main/libc0.9.32/uclibcconfig.arm
index 09897ab54e..da17fec837 100644
--- a/main/libc0.9.32/uclibcconfig.arm
+++ b/main/libc0.9.32/uclibcconfig.arm
@@ -220,6 +220,7 @@ UCLIBC_HAS_FNMATCH=y
UCLIBC_HAS_WORDEXP=y
UCLIBC_HAS_NFTW=y
UCLIBC_HAS_FTW=y
+# UCLIBC_HAS_FTS is not set
UCLIBC_HAS_GLOB=y
UCLIBC_HAS_GNU_GLOB=y
UCLIBC_HAS_UTMPX=y
diff --git a/main/libc0.9.32/uclibcconfig.powerpc b/main/libc0.9.32/uclibcconfig.powerpc
index e0597ae5ab..e4d8779395 100644
--- a/main/libc0.9.32/uclibcconfig.powerpc
+++ b/main/libc0.9.32/uclibcconfig.powerpc
@@ -204,6 +204,7 @@ UCLIBC_HAS_FNMATCH=y
UCLIBC_HAS_WORDEXP=y
UCLIBC_HAS_NFTW=y
UCLIBC_HAS_FTW=y
+# UCLIBC_HAS_FTS is not set
UCLIBC_HAS_GLOB=y
UCLIBC_HAS_GNU_GLOB=y
UCLIBC_HAS_UTMPX=y
diff --git a/main/libc0.9.32/uclibcconfig.x86 b/main/libc0.9.32/uclibcconfig.x86
index 510759e50c..dcbe1d010b 100644
--- a/main/libc0.9.32/uclibcconfig.x86
+++ b/main/libc0.9.32/uclibcconfig.x86
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Version: 0.9.32-rc3
-# Tue Mar 22 12:47:37 2011
+# Version: 0.9.32
+# Tue Jun 14 09:35:04 2011
#
# TARGET_alpha is not set
# TARGET_arm is not set
@@ -219,6 +219,7 @@ UCLIBC_HAS_FNMATCH=y
UCLIBC_HAS_WORDEXP=y
UCLIBC_HAS_NFTW=y
UCLIBC_HAS_FTW=y
+# UCLIBC_HAS_FTS is not set
UCLIBC_HAS_GLOB=y
UCLIBC_HAS_GNU_GLOB=y
UCLIBC_HAS_UTMPX=y
diff --git a/main/libc0.9.32/uclibcconfig.x86_64 b/main/libc0.9.32/uclibcconfig.x86_64
index e218fc0f52..29a81d3dd0 100644
--- a/main/libc0.9.32/uclibcconfig.x86_64
+++ b/main/libc0.9.32/uclibcconfig.x86_64
@@ -202,6 +202,7 @@ UCLIBC_HAS_FNMATCH=y
UCLIBC_HAS_WORDEXP=y
UCLIBC_HAS_NFTW=y
UCLIBC_HAS_FTW=y
+# UCLIBC_HAS_FTS is not set
UCLIBC_HAS_GLOB=y
UCLIBC_HAS_GNU_GLOB=y
UCLIBC_HAS_UTMPX=y