---- uClibc-0.9.30/Rules.mak.orig 2008-11-12 13:24:16.000000000 +0100
-+++ uClibc-0.9.30/Rules.mak 2009-01-10 11:52:34.766458047 +0100
-@@ -528,7 +528,7 @@
+--- uClibc-0.9.32/Rules.mak.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/Rules.mak 2011-06-12 09:22:09.454050098 +0200
+@@ -624,7 +624,7 @@
LDFLAGS:=$(LDFLAGS_NOSTRIP) -Wl,-z,defs
ifeq ($(DODEBUG),y)
--CFLAGS += -O0 -g3
-+CFLAGS += $(OPTIMIZATION) -O0 -g3
+-CFLAGS += -O0 -g3 -DDEBUG
++CFLAGS += $(OPTIMIZATION) -O0 -g3 -DDEBUG
else
- CFLAGS += $(OPTIMIZATION) $(XARCH_CFLAGS)
+ CFLAGS += $(OPTIMIZATION)
endif
+++ /dev/null
---- uClibc-0.9.30.2/libc/sysdeps/linux/common/inotify.c~ 2010-01-13 22:22:31.000000000 +0100
-+++ uClibc-0.9.30.2/libc/sysdeps/linux/common/inotify.c 2010-01-19 17:20:39.994833811 +0100
-@@ -15,6 +15,10 @@
- _syscall0(int, inotify_init)
- #endif
-
-+#ifdef __NR_inotify_init1
-+_syscall1(int, inotify_init1, int, flags)
-+#endif
-+
- #ifdef __NR_inotify_add_watch
- _syscall3(int, inotify_add_watch, int, fd, const char *, path, uint32_t, mask)
- #endif
---- uClibc-0.9.30.2/libc/sysdeps/linux/common/sys/inotify.h~ 2010-01-13 22:22:31.000000000 +0100
-+++ uClibc-0.9.30.2/libc/sysdeps/linux/common/sys/inotify.h 2010-01-19 17:21:14.199833529 +0100
-@@ -73,6 +73,9 @@
- | IN_MOVED_TO | IN_CREATE | IN_DELETE \
- | IN_DELETE_SELF | IN_MOVE_SELF)
-
-+/* Flags for the parameter of inotify_init1. */
-+#define IN_CLOEXEC 02000000
-+#define IN_NONBLOCK 04000
-
- __BEGIN_DECLS
-
-@@ -79,6 +79,8 @@
- /* Create and initialize inotify instance. */
- extern int inotify_init (void) __THROW;
-
-+extern int inotify_init1 (int flags) __THROW;
-+
- /* Add watch of object NAME to inotify instance FD. Notify about
- events specified by MASK. */
- extern int inotify_add_watch (int __fd, const char *__name, uint32_t __mask)
+++ /dev/null
---- uClibc-0.9.31/Makefile.in.orig 2010-08-19 22:48:44.950821619 +0200
-+++ uClibc-0.9.31/Makefile.in 2010-08-20 08:57:52.934824134 +0200
-@@ -287,7 +287,7 @@
- ### ucontext.h
-
- ifneq ($(findstring install,$(MAKECMDGOALS)),)
--$(PREFIX)$(RUNTIME_PREFIX)$(MULTILIB_DIR) $(addprefix $(PREFIX)$(DEVEL_PREFIX),include lib):
-+$(PREFIX)$(RUNTIME_PREFIX)$(MULTILIB_DIR) $(addprefix $(PREFIX)$(DEVEL_PREFIX),include $(MULTILIB_DIR)):
- $(do_mkdir)
- endif
-
---- uClibc-0.9.30/libpthread/linuxthreads.old/Makefile.in.orig 2008-11-07 22:15:53.000000000 +0100
-+++ uClibc-0.9.30/libpthread/linuxthreads.old/Makefile.in 2009-01-10 11:36:18.378455532 +0100
-@@ -12,15 +12,15 @@
+--- uClibc-0.9.32/libpthread/linuxthreads.old/Makefile.in.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/libpthread/linuxthreads.old/Makefile.in 2011-06-12 09:00:50.687340614 +0200
+@@ -14,16 +14,16 @@
CFLAGS-libpthread/linuxthreads.old/sysdeps/$(TARGET_ARCH)/ := $(CFLAGS-linuxthreads.old)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
-LDFLAGS-libpthread.so := $(LDFLAGS)
+LDFLAGS-libpthread-uclibc.so := $(LDFLAGS)
endif
+-LDFLAGS-$(UCLIBC_FORMAT_DSBT_ELF)-libpthread.so := -Wl,--dsbt-index=10
++LDFLAGS-$(UCLIBC_FORMAT_DSBT_ELF)-libpthread-uclibc.so := -Wl,--dsbt-index=10
-LIBS-libpthread.so := $(LIBS) $(ldso)
+LIBS-libpthread-uclibc.so := $(LIBS) $(ldso)
libpthread_FULL_NAME := libpthread-$(VERSION).so
-@@ -70,16 +70,20 @@
+@@ -73,13 +73,13 @@
libpthread-so-y += $(libpthread_OBJ:.o=.os) $(libpthread-shared-y)
lib-a-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.a
#ifeq ($(DOMULTI),n)
-$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend)
+$(top_builddir)lib/libpthread-uclibc.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend)
- $(call link.so,$(libpthread_FULL_NAME),$(MAJOR_VERSION))
+ $(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
#else
-#$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread.oS | $(libc.depend)
+#$(top_builddir)lib/libpthread-uclibc.so: $(libpthread_OUT)/libpthread.oS | $(libc.depend)
- # $(call linkm.so,$(libpthread_FULL_NAME),$(MAJOR_VERSION))
+ # $(call linkm.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
#endif
+@@ -90,6 +90,10 @@
+ $(Q)$(RM) $@
+ $(do_ar)
+
+$(top_builddir)lib/libpthread.so: $(top_builddir)lib/libpthread-uclibc.so
+ $(LN) -sf $(notdir $<).$(MAJOR_VERSION) $@.$(MAJOR_VERSION)
+ $(LN) -sf $(notdir $<) $@
+
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
- $(libpthread_OUT)/libpthread_so.a: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)
+ $(libpthread_OUT)/libpthread.oS: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)
endif
---- uClibc-0.9.30/libpthread/linuxthreads/Makefile.in.orig 2008-11-07 22:15:53.000000000 +0100
-+++ uClibc-0.9.30/libpthread/linuxthreads/Makefile.in 2009-01-10 11:38:44.322453856 +0100
-@@ -19,15 +19,15 @@
+--- uClibc-0.9.32/libpthread/linuxthreads/Makefile.in.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/libpthread/linuxthreads/Makefile.in 2011-06-12 09:03:14.797345439 +0200
+@@ -23,15 +23,15 @@
#CFLAGS:=$(CFLAGS:-O0=-O1)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
libpthread_FULL_NAME := libpthread-$(VERSION).so
-@@ -80,19 +80,23 @@
+@@ -84,13 +84,13 @@
libpthread-so-y += $(libpthread_OBJ:.o=.oS)
lib-a-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.a
#ifeq ($(DOMULTI),n)
-$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend) $(top_builddir)lib/libpthread_nonshared.a
+$(top_builddir)lib/libpthread-uclibc.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend) $(top_builddir)lib/libpthread_nonshared.a
- $(call link.so,$(libpthread_FULL_NAME),$(MAJOR_VERSION))
+ $(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
#else
-#$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread.oS | $(libc.depend) $(top_builddir)lib/libpthread_nonshared.a
+#$(top_builddir)lib/libpthread-uclibc.so: $(libpthread_OUT)/libpthread.oS | $(libc.depend) $(top_builddir)lib/libpthread_nonshared.a
- # $(call linkm.so,$(libpthread_FULL_NAME),$(MAJOR_VERSION))
+ # $(call linkm.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
#endif
$(Q)$(RM) $@
- $(Q)cp $(top_srcdir)extra/scripts/format.lds $@
- $(Q)echo "GROUP ( $(notdir $@).$(MAJOR_VERSION) libpthread_nonshared.a )" >> $@
+@@ -98,6 +98,10 @@
+ $(Q)echo "GROUP ( $(notdir $@).$(ABI_VERSION) libpthread_nonshared.a )" >> $@.tmp
+ $(Q)mv $@.tmp $@
+$(top_builddir)lib/libpthread.so: $(top_builddir)lib/libpthread-uclibc.so
+ $(LN) -sf $(notdir $<).$(MAJOR_VERSION) $@.$(MAJOR_VERSION)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
$(libpthread_OUT)/libpthread_so.a: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)
endif
+--- uClibc-0.9.32/libpthread/nptl/Makefile.in.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/libpthread/nptl/Makefile.in 2011-06-12 10:54:46.594236173 +0200
+@@ -64,17 +64,17 @@
+ librt-so-y += $(librt_OBJS:.o=.oS) $(librt-pt-shared-only-routines-y:.o=.oS)
+
+ ifeq ($(UCLIBC_CTOR_DTOR),y)
+-START_FILE-libpthread.so := $(top_builddir)/libpthread/nptl/sysdeps/pthread/crti.o
+-END_FILE-libpthread.so := $(top_builddir)/libpthread/nptl/sysdeps/pthread/crtn.o
+-LDFLAGS-libpthread.so += -nostartfiles
+-$(top_builddir)lib/libpthread.so: | $(START_FILE-libpthread.so) $(END_FILE-libpthread.so)
++START_FILE-libpthread-uclibc.so := $(top_builddir)/libpthread/nptl/sysdeps/pthread/crti.o
++END_FILE-libpthread-uclibc.so := $(top_builddir)/libpthread/nptl/sysdeps/pthread/crtn.o
++LDFLAGS-libpthread-uclibc.so += -nostartfiles
++$(top_builddir)lib/libpthread-uclibc.so: | $(START_FILE-libpthread-uclibc.so) $(END_FILE-libpthread-uclibc.so)
+ endif
+
+ libpthread_FULL_NAME := libpthread-$(VERSION).so
+ lib-a-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.a
+-lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.so
++lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread-uclibc.so
+
+-$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend) $(libdl.depend) $(top_builddir)lib/libpthread_nonshared.a
++$(top_builddir)lib/libpthread-uclibc.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend) $(libdl.depend) $(top_builddir)lib/libpthread_nonshared.a
+ $(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
+ $(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
+ $(Q)echo "GROUP ( $(notdir $@).$(ABI_VERSION) libpthread_nonshared.a )" >> $@.tmp
+@@ -92,6 +92,10 @@
+ $(Q)$(RM) $@
+ $(do_ar)
+
++$(top_builddir)lib/libpthread.so: $(top_builddir)lib/libpthread-uclibc.so
++ $(LN) -sf $(notdir $<).$(MAJOR_VERSION) $@.$(MAJOR_VERSION)
++ $(LN) -sf $(notdir $<) $@
++
+ #
+ # Create 'pthread-errnos.h' header file.
+ #
+@@ -139,15 +143,15 @@
+ $(do_rm) $(addprefix $(libpthread_OUT)/*., o os oS a)
+
+ ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
+-LDFLAGS-libpthread.so += $(LDFLAGS_NOSTRIP) -Wl,-z,defs
++LDFLAGS-libpthread-uclibc.so += $(LDFLAGS_NOSTRIP) -Wl,-z,defs
+ else
+-LDFLAGS-libpthread.so += $(LDFLAGS)
++LDFLAGS-libpthread-uclibc.so += $(LDFLAGS)
+ endif
+
+-LDFLAGS-libpthread.so += $(top_builddir)lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so $(top_builddir)lib/libdl-$(VERSION).so \
++LDFLAGS-libpthread-uclibc.so += $(top_builddir)lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so $(top_builddir)lib/libdl-$(VERSION).so \
+ -Wl,-z,nodelete,-z,initfirst,-init=__pthread_initialize_minimal_internal
+
+-LIBS-libpthread.so := $(LIBS)
++LIBS-libpthread-uclibc.so := $(LIBS)
+
+ CFLAGS-nptl = -DNOT_IN_libc -DIS_IN_libpthread $(SSP_ALL_CFLAGS)
+
+++ /dev/null
---- uClibc-0.9.30.3/libc/sysdeps/linux/i386/crtn.S~ 2010-03-12 20:32:42.000000000 +0100
-+++ uClibc-0.9.30.3/libc/sysdeps/linux/i386/crtn.S 2011-05-27 22:21:25.932407849 +0200
-@@ -6,7 +6,6 @@
- popl %ebx
- popl %ebp
- ret
--.size _init,.-_init
-
-
-
-@@ -16,7 +15,6 @@
- popl %ebx
- popl %ebp
- ret
--.size _fini,.-_fini
-
-
-
---- uClibc-0.9.30.3/libc/sysdeps/linux/x86_64/crtn.S~ 2010-03-12 20:32:42.000000000 +0100
-+++ uClibc-0.9.30.3/libc/sysdeps/linux/x86_64/crtn.S 2011-05-27 22:21:50.250189687 +0200
-@@ -7,7 +7,6 @@
- .type _init, %function
- addq $8, %rsp
- ret
--.size _init,.-_init
-
-
- .section .fini
-@@ -15,4 +14,3 @@
- .type _fini, %function
- addq $8, %rsp
- ret
--.size _fini, .-_fini
+++ /dev/null
---- uClibc-0.9.30.2/libc/sysdeps/linux/common/bits/socket.h~ 2010-01-13 22:22:31.000000000 +0100
-+++ uClibc-0.9.30.2/libc/sysdeps/linux/common/bits/socket.h 2010-01-19 23:13:33.325749790 +0100
-@@ -53,10 +53,20 @@
- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based,
- datagrams of fixed maximum length. */
- #define SOCK_SEQPACKET SOCK_SEQPACKET
-- SOCK_PACKET = 10 /* Linux specific way of getting packets
-+ SOCK_PACKET = 10, /* Linux specific way of getting packets
- at the dev level. For writing rarp and
- other similar things on the user level. */
- #define SOCK_PACKET SOCK_PACKET
-+
-+ /* Flags to be ORed into the type parameter of socket and socketpair and
-+ used for the flags parameter of paccept. */
-+
-+ SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the
-+ new descriptor(s). */
-+#define SOCK_CLOEXEC SOCK_CLOEXEC
-+ SOCK_NONBLOCK = 04000 /* Atomically mark descriptor(s) as
-+ non-blocking. */
-+#define SOCK_NONBLOCK SOCK_NONBLOCK
- };
-
- /* Protocol families. */
---- uClibc-0.9.29/libc/misc/internals/__uClibc_main.c.orig 2007-06-03 22:49:56.106515000 +0200
-+++ uClibc-0.9.29/libc/misc/internals/__uClibc_main.c 2007-06-03 23:04:27.296161963 +0200
-@@ -78,7 +78,7 @@
- /*
- * Prototypes.
+--- uClibc-0.9.32/libc/misc/internals/__uClibc_main.c.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/libc/misc/internals/__uClibc_main.c 2011-06-12 09:23:48.324053409 +0200
+@@ -118,7 +118,7 @@
*/
--extern void weak_function _stdio_init(void) attribute_hidden;
-+extern void weak_function _stdio_init(void);
extern int *weak_const_function __errno_location(void);
extern int *weak_const_function __h_errno_location(void);
+-extern void weak_function _stdio_init(void) attribute_hidden;
++extern void weak_function _stdio_init(void);
#ifdef __UCLIBC_HAS_LOCALE__
+ extern void weak_function _locale_init(void) attribute_hidden;
+ #endif
--- uClibc-0.9.29/libc/stdlib/_atexit.c.orig 2007-05-04 16:13:17.000000000 +0200
+++ uClibc-0.9.29/libc/stdlib/_atexit.c 2007-06-04 00:40:04.671116329 +0200
@@ -305,7 +305,7 @@
+ ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_CPU)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/c++
+ ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_CPU)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/g++
endif
- for app in addr2line ar as cpp gasp nm objcopy \
+ for app in addr2line ar as cpp nm objcopy \
objdump ranlib size strings strip; do \
APPNAME=`which $(CROSS)$${app}`; \
if [ -x "$$APPNAME" ] ; then \
+ ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_ARCH)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/c++
+ ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_ARCH)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/g++
+endif
-+ for app in addr2line ar as cpp gasp nm objcopy \
++ for app in addr2line ar as cpp nm objcopy \
+ objdump ranlib size strings strip; do \
+ APPNAME=`which $(CROSS)$${app}`; \
+ if [ -x "$$APPNAME" ] ; then \
+ rm -f gcc-uClibc.h *-uclibc-gcc *-uclibc-ld core
+
+
---- uClibc-0.9.30.3/Makefile.in.orig 2010-03-12 20:32:42.000000000 +0100
-+++ uClibc-0.9.30.3/Makefile.in 2010-03-25 08:10:37.622710245 +0100
-@@ -19,7 +19,7 @@
+--- uClibc-0.9.32/Makefile.in.orig 2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/Makefile.in 2011-06-12 09:20:09.634046086 +0200
+@@ -23,7 +23,7 @@
ifeq ($(HAVE_DOT_CONFIG),y)
libs: pregen
# In this section, we need .config
-@@ -187,7 +187,7 @@
+@@ -192,7 +192,7 @@
HOSTCC="$(HOSTCC)" \
install_dev
+install: install_runtime install_dev install_toolchain
- RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB=$(shell $(top_srcdir)extra/scripts/relative_path.sh $(DEVEL_PREFIX)lib $(RUNTIME_PREFIX)lib)
-@@ -445,6 +445,12 @@
+ RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB=$(shell $(top_srcdir)extra/scripts/relative_path.sh $(DEVEL_PREFIX)$(MULTILIB_DIR) $(RUNTIME_PREFIX)$(MULTILIB_DIR))
+@@ -405,6 +405,12 @@
endif # ifeq ($(HAVE_DOT_CONFIG),y)
+install_toolchain: toolchain
+ $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C extra/gcc-uClibc install
+
- hostutils: headers
+ hostutils: | pregen
$(Q)$(MAKE) CROSS="$(CROSS)" CC="$(CC)" HOSTCC="$(HOSTCC)" DOTHOST=.host -C utils $@
+++ /dev/null
-commit 00d805f334c009164d7cecab931086a0545af8d1
-Author: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
-Date: Fri Oct 9 18:10:50 2009 +0200
-
- check_ld some more flags
-
- gold does not currently implement these.
-
- Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
-
-diff --git a/Rules.mak b/Rules.mak
-index d64897f..ceb1e10 100644
---- a/Rules.mak
-+++ b/Rules.mak
-@@ -282,7 +282,7 @@ endif
- # Idx Name Size VMA LMA File off Algn
- # 0 .text xxxxxxxx 00000000 00000000 xxxxxxxx 2**2 <===!
- CPU_CFLAGS-y += $(call check_gcc,-ffunction-sections -fdata-sections,)
--ifneq ($(call check_ld,--sort-common,),)
-+ifneq ($(call check_ld,--sort-common),)
- CPU_LDFLAGS-y += -Wl,--sort-common
- endif
- ifneq ($(call check_ld,--sort-section alignment),)
-@@ -547,8 +547,11 @@ ifneq ($(HAVE_SHARED),y)
- CFLAGS += -DSTATIC
- endif
-
-+LDFLAG_WARN_ONCE:=$(if $(call check_ld,--warn-once),-Wl$(comma)--warn-once)
-+LDFLAG_SORT_COMMON:=$(if $(call check_ld,--sort-common),-Wl$(comma)--sort-common)
-+LDFLAG_DISCARD_ALL:=$(if $(call check_ld,--discard-all),-Wl$(comma)--discard-all)
- LDFLAGS_NOSTRIP:=$(CPU_LDFLAGS-y) -shared \
-- -Wl,--warn-common -Wl,--warn-once -Wl,-z,combreloc
-+ -Wl,--warn-common $(LDFLAG_WARN_ONCE) -Wl,-z,combreloc
- # binutils-2.16.1 warns about ignored sections, 2.16.91.0.3 and newer are ok
- #LDFLAGS_NOSTRIP+=$(call check_ld,--gc-sections)
-
-diff --git a/ldso/ldso/Makefile.in b/ldso/ldso/Makefile.in
-index 350cc81..9e228b7 100644
---- a/ldso/ldso/Makefile.in
-+++ b/ldso/ldso/Makefile.in
-@@ -35,7 +35,7 @@ LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS)
- else
- LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs
- endif
--LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,_start -Wl,-z,now -Wl,-Bsymbolic -Wl,--export-dynamic -Wl,--sort-common -Wl,--discard-locals -Wl,--discard-all -Wl,--no-undefined
-+LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,_start -Wl,-z,now -Wl,-Bsymbolic -Wl,--export-dynamic $(LDFLAG_SORT_COMMON) -Wl,--discard-locals $(LDFLAG_DISCARD_ALL) -Wl,--no-undefined
-
- ldso_FULL_NAME := $(UCLIBC_LDSO_NAME)-$(VERSION).so
-
#
# Conditional build:
%bcond_without shared # don't build shared lib support
+%bcond_with nptl # libpthread: NPTL instead of LinuxThreads (experimental; no i386)
%bcond_with verbose # verbose mode
#
%ifarch alpha
Summary: C library optimized for size
Summary(pl.UTF-8): Biblioteka C zoptymalizowana na rozmiar
Name: uClibc
-Version: 0.9.30.3
-Release: 7
+Version: 0.9.32
+Release: 1
Epoch: 4
License: LGPL v2.1
Group: Libraries
-Source0: http://uclibc.org/downloads/%{name}-%{version}.tar.bz2
-# Source0-md5: 73a4bf4a0fa508b01a7a3143574e3d21
+Source0: http://uclibc.org/downloads/%{name}-%{version}.tar.xz
+# Source0-md5: 51660b93b8f1edb486049981fecfd148
Patch0: %{name}-newsoname.patch
Patch1: %{name}-toolchain-wrapper.patch
Patch2: %{name}-targetcpu.patch
Patch3: %{name}-debug.patch
Patch4: %{name}-stdio-unhide.patch
-Patch5: %{name}-inotify_init1.patch
-Patch6: %{name}-sockflags.patch
-Patch7: %{name}-nosize.patch
-Patch8: %{name}-warn-once.patch
+Patch5: %{name}-epoll.patch
URL: http://uclibc.org/
-BuildRequires: binutils-gasp
+BuildRequires: binutils >= 2.16
BuildRequires: cpp
+%if %{with nptl}
+BuildRequires: gcc >= 5:4.1
+%else
BuildRequires: gcc >= 5:3.0
-BuildRequires: linux-libc-headers >= 7:2.6.24
+%endif
+BuildRequires: linux-libc-headers >= 7:2.6.27
+BuildRequires: make >= 3.80
BuildRequires: ncurses-devel
BuildRequires: rpmbuild(macros) >= 1.453
BuildRequires: sed >= 4.0
+BuildRequires: tar >= 1:1.22
BuildRequires: which
+BuildRequires: xz
+%{?with_nptl:Requires: uname(version) >= 2.6}
+# only these supported by this .spec; uClibc code supports some more
ExclusiveArch: alpha %{ix86} ppc sparc sparcv9 %{x8664}
+%{?with_nptl:ExcludeArch: i386}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%if "%{cc_version}" >= "4.2"
Summary(pl.UTF-8): Pliki dla programistów uClibc
Group: Development/Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: binutils-gasp
-Requires: linux-libc-headers >= 7:2.6.24
+Requires: linux-libc-headers >= 7:2.6.27
%requires_eq gcc
%description devel
%patch3 -p1
%patch4 -p1
%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
# ARCH is already determined by uname -m
%ifarch %{ix86}
%endif
cat <<'EOF' >> $defconfig
+# HAS_NO_THREADS is not set
+%{!?with_nptl:LINUXTHREADS_OLD=y}
+%{?with_nptl:UCLIBC_HAS_THREADS_NATIVE=y}
UCLIBC_HAS_IPV6=y
DO_C99_MATH=y
UCLIBC_HAS_RPC=y
DESTDIR=$RPM_BUILD_ROOT
%if %{with shared}
+%if %{without nptl}
mv -f $RPM_BUILD_ROOT%{uclibc_root}/usr/lib/{libpthread-uclibc,libpthread}.so
ln -sf libpthread-%{version}.so $RPM_BUILD_ROOT%{uclibc_root}/lib/libpthread.so.0
+%endif
chmod a+rx $RPM_BUILD_ROOT%{uclibc_root}/lib/*.so
%endif
fi
done
-rm -rf $RPM_BUILD_ROOT%{uclibc_root}/usr/include/{linux,asm*}
# rpm -ql linux-libc-headers | awk -F/ ' /^\/usr\/include\// { print "/usr/include/" $4 } ' | sort -u
for dir in asm asm-generic linux mtd rdma sound video xen; do
ln -sf /usr/include/${dir} $RPM_BUILD_ROOT%{uclibc_root}/usr/include/${dir}
done
-# for future use
-%ifarch sparc64
-ln -sf /usr/include/asm-sparc $RPM_BUILD_ROOT%{uclibc_root}/usr/include/asm-sparc
-ln -sf /usr/include/asm-sparc64 $RPM_BUILD_ROOT%{uclibc_root}/usr/include/asm-sparc64
-%endif
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-cc
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-cpp
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-g++
-%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-gasp
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-gcc
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-ld
%attr(755,root,root) %{_bindir}/%{_target_cpu}-uclibc-nm
%attr(755,root,root) %{uclibc_root}/usr/bin/cc
%attr(755,root,root) %{uclibc_root}/usr/bin/cpp
%attr(755,root,root) %{uclibc_root}/usr/bin/g++
-%attr(755,root,root) %{uclibc_root}/usr/bin/gasp
%attr(755,root,root) %{uclibc_root}/usr/bin/gcc
%attr(755,root,root) %{uclibc_root}/usr/bin/ld
%attr(755,root,root) %{uclibc_root}/usr/bin/nm