From fadee18df073a6aebb45852546d6fb37aa9c6b34 Mon Sep 17 00:00:00 2001 From: kaloz Date: Fri, 26 Feb 2010 11:03:59 +0000 Subject: [PATCH] [toolchain/uclibc]: upgrade and fixup support for the uclibc nptl branch git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19871 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- toolchain/uClibc/Makefile | 7 ++-- toolchain/uClibc/config-0.9.30+nptl/common | 11 +++++-- .../patches-0.9.30+nptl/120-adjtimex.patch | 14 -------- .../patches-0.9.30+nptl/150-use_gnu99.patch | 33 +++++++++++++++++++ 4 files changed, 47 insertions(+), 18 deletions(-) delete mode 100644 toolchain/uClibc/patches-0.9.30+nptl/120-adjtimex.patch create mode 100644 toolchain/uClibc/patches-0.9.30+nptl/150-use_gnu99.patch diff --git a/toolchain/uClibc/Makefile b/toolchain/uClibc/Makefile index 4ea15f14b..b94fc2e71 100644 --- a/toolchain/uClibc/Makefile +++ b/toolchain/uClibc/Makefile @@ -12,10 +12,10 @@ PKG_VERSION:=$(call qstrip,$(CONFIG_UCLIBC_VERSION)) ifeq ($(CONFIG_UCLIBC_VERSION_NPTL),y) PKG_SOURCE_URL:=git://git.busybox.net/uClibc PKG_SOURCE_PROTO:=git - PKG_SOURCE_VERSION:=0949826e9501e9f08767aeb476ea1464bf95f218 + PKG_SOURCE_VERSION:=ef18cfe8ebab25f5ef92e81956f50e2dc57df602 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz - LIBC_SO_VERSION:=0.9.30-svn + LIBC_SO_VERSION:=0.9.30-git else PKG_SOURCE_URL:=http://www.uclibc.org/downloads PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 @@ -73,6 +73,7 @@ define Host/Prepare -e 's,^.*CONFIG_ARM_OABI.*,CONFIG_ARM_OABI=$(if $(CONFIG_EABI_SUPPORT),n,y),g' \ -e 's,^.*UCLIBC_HAS_SHADOW.*,UCLIBC_HAS_SHADOW=$(if $(CONFIG_SHADOW_PASSWORDS),y,n),g' \ $(HOST_BUILD_DIR)/.config + $(MAKE) -C $(HOST_BUILD_DIR) oldconfig KBUILD_HAVE_NLS= HOSTCFLAGS="-DKBUILD_NO_NLS" $(MAKE) -C $(HOST_BUILD_DIR)/extra/config conf KBUILD_HAVE_NLS= HOSTCFLAGS="-DKBUILD_NO_NLS" PATH='$(TARGET_PATH)' $(MAKE) -C $(HOST_BUILD_DIR) \ PREFIX="$(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev/" \ @@ -81,6 +82,7 @@ define Host/Prepare HOSTCC="$(HOSTCC)" \ CC="$(TARGET_CC)" \ CPU_CFLAGS="$(TARGET_CFLAGS)" \ + ARCH="$(CONFIG_ARCH)" \ pregen \ install_headers endef @@ -94,6 +96,7 @@ UCLIBC_MAKE = PATH='$(TARGET_PATH)' $(MAKE) -C $(HOST_BUILD_DIR) \ RUNTIME_PREFIX=/ \ HOSTCC="$(HOSTCC)" \ CPU_CFLAGS="$(TARGET_CFLAGS)" \ + ARCH="$(CONFIG_ARCH)" \ LIBGCC="$(subst libgcc.a,libgcc_initial.a,$(shell $(TARGET_CC) -print-libgcc-file-name))" \ DOSTRIP="" diff --git a/toolchain/uClibc/config-0.9.30+nptl/common b/toolchain/uClibc/config-0.9.30+nptl/common index f516343fd..33c927330 100644 --- a/toolchain/uClibc/config-0.9.30+nptl/common +++ b/toolchain/uClibc/config-0.9.30+nptl/common @@ -17,9 +17,11 @@ DEVEL_PREFIX="/usr/" DOPIC=y DOSTRIP=y DO_C99_MATH=y +# DO_XSI_MATH is not set # EXTRA_WARNINGS is not set FORCE_OPTIONS_FOR_ARCH=y # FORCE_SHAREABLE_TEXT_SEGMENTS is not set +HARDWIRED_ABSPATH=y # HAS_NO_THREADS is not set HAVE_DOT_CONFIG=y # HAVE_NO_PIC is not set @@ -32,7 +34,8 @@ LDSO_CACHE_SUPPORT=y LDSO_LDD_SUPPORT=y # LDSO_PRELOAD_FILE_SUPPORT is not set LDSO_RUNPATH=y -LINUXTHREADS_NEW=y +LDSO_SEARCH_INTERP_PATH=y +# LINUXTHREADS_NEW is not set # LINUXTHREADS_OLD is not set # MALLOC is not set MALLOC_GLIBC_COMPAT=y @@ -78,7 +81,7 @@ UCLIBC_CTOR_DTOR=y UCLIBC_DYNAMIC_ATEXIT=y UCLIBC_EXTRA_CFLAGS="" UCLIBC_GRP_BUFFER_SIZE=256 -# UCLIBC_HAS_ADVANCED_REALTIME is not set +UCLIBC_HAS_ADVANCED_REALTIME=y # UCLIBC_HAS_ARC4RANDOM is not set UCLIBC_HAS_BSD_ERR=y UCLIBC_HAS_BSD_RES_CLOSE=y @@ -114,8 +117,12 @@ UCLIBC_HAS_HEXADECIMAL_FLOATS=y UCLIBC_HAS_IPV4=y UCLIBC_HAS_IPV6=y UCLIBC_HAS_LFS=y +UCLIBC_HAS_LIBNSL_STUB=y +UCLIBC_HAS_LIBRESOLV_STUB=y +UCLIBC_HAS_LIBUTIL=y # UCLIBC_HAS_LOCALE is not set UCLIBC_HAS_NETWORK_SUPPORT=y +# UCLIBC_HAS_NFTW is not set # UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set # UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set UCLIBC_HAS_PRINTF_M_SPEC=y diff --git a/toolchain/uClibc/patches-0.9.30+nptl/120-adjtimex.patch b/toolchain/uClibc/patches-0.9.30+nptl/120-adjtimex.patch deleted file mode 100644 index 5127701df..000000000 --- a/toolchain/uClibc/patches-0.9.30+nptl/120-adjtimex.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: uClibc-0.9.29/include/sys/timex.h -=================================================================== ---- uClibc-0.9.29.orig/include/sys/timex.h 2007-12-30 17:34:21.983513096 +0100 -+++ uClibc-0.9.29/include/sys/timex.h 2007-12-30 17:34:32.180094169 +0100 -@@ -116,7 +116,8 @@ - - __BEGIN_DECLS - --extern int __adjtimex (struct timex *__ntx) __THROW; -+#undef __adjtimex -+#define __adjtimex adjtimex - extern int adjtimex (struct timex *__ntx) __THROW; - - extern int ntp_gettime (struct ntptimeval *__ntv) __THROW; diff --git a/toolchain/uClibc/patches-0.9.30+nptl/150-use_gnu99.patch b/toolchain/uClibc/patches-0.9.30+nptl/150-use_gnu99.patch new file mode 100644 index 000000000..bfa55583d --- /dev/null +++ b/toolchain/uClibc/patches-0.9.30+nptl/150-use_gnu99.patch @@ -0,0 +1,33 @@ +--- a/libpthread/nptl/Makefile.in ++++ b/libpthread/nptl/Makefile.in +@@ -174,7 +174,7 @@ + CFLAGS-pthread_barrierattr_setpshared.c = -D_GNU_SOURCE + CFLAGS-sem_open.c = -D_GNU_SOURCE + +-CFLAGS-nptl = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 $(SSP_ALL_CFLAGS) ++CFLAGS-nptl = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 -std=gnu99 $(SSP_ALL_CFLAGS) + + CFLAGS-OMIT-alloca_cutoff.c = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 + CFLAGS-OMIT-forward.c = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 +--- a/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in ++++ b/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in +@@ -82,7 +82,7 @@ + CFLAGS-timer_routines.c = -I$(top_srcdir)librt -DIS_IN_librt=1 + CFLAGS-timer_settime.c = -I$(top_srcdir)librt -DIS_IN_librt=1 + +-CFLAGS-linux = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 $(SSP_ALL_CFLAGS) ++CFLAGS-linux = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 -std=gnu99 $(SSP_ALL_CFLAGS) + #CFLAGS:=$(CFLAGS:-O1=-O2) + + CFLAGS-OMIT-libc_pthread_init.c = -DNOT_IN_libc=1 -DIS_IN_libpthread=1 +--- a/ldso/ldso/Makefile.in ++++ b/ldso/ldso/Makefile.in +@@ -13,7 +13,7 @@ + CFLAGS-ldso += -fno-omit-frame-pointer + + CFLAGS-ldso += -I$(top_srcdir)ldso/ldso/$(TARGET_ARCH) -I$(top_srcdir)ldso/include -I$(top_srcdir)ldso/ldso +-CFLAGS-ldso += -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" -DUCLIBC_LDSO=\"$(UCLIBC_LDSO)\" ++CFLAGS-ldso += -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" -DUCLIBC_LDSO=\"$(UCLIBC_LDSO)\" -std=gnu99 + + ifeq ($(DODEBUG),y) + # Not really much point in including debugging info, since gdb -- 2.20.1