Browse Source

update glibc to latest upstream

Waldemar Brodkorb 10 years ago
parent
commit
b0857d40f5

+ 2 - 3
package/glibc/Makefile

@@ -10,7 +10,6 @@ include $(TOPDIR)/toolchain/glibc/Makefile.inc
 include $(TOPDIR)/toolchain/glibc/Makefile.multilib
 
 PKG_DESCR:=		GNU C library
-PKG_VER:=		2.16
 PKG_SECTION:=		base
 PKG_OPTS:=		noremove
 PKG_SUBPKGS:=		GLIBC GLIBC_DEV GLIBC_STATIC
@@ -47,7 +46,7 @@ else
 	$(CP) $(STAGING_TARGET_DIR)/lib/ld*.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH)
 	for file in libc libcrypt libdl libm libnsl libresolv libutil libnss_compat libnss_dns libnss_files; do \
 		$(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
-		$(CP) $(STAGING_TARGET_DIR)/lib/$$file-$(PKG_VER).so $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
+		$(CP) $(STAGING_TARGET_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
 	done
 	${INSTALL_DIR} $(IDIR_GLIBC)/usr/bin
 	$(CP) $(STAGING_TARGET_DIR)/usr/bin/getconf $(IDIR_GLIBC)/usr/bin
@@ -79,7 +78,7 @@ endif
 	${CP} ${STAGING_TARGET_DIR}/usr/lib/crt* ${IDIR_GLIBC_DEV}/usr/lib
 	${CP} ${STAGING_TARGET_DIR}/usr/lib/libc_nonshared.a ${IDIR_GLIBC_DEV}/usr/lib
 	-for file in libcrypt libdl libm libresolv libutil; do \
-		cd $(IDIR_GLIBC_DEV)/$(ADK_TARGET_LIBC_PATH); ln -sf $$file-$(PKG_VER).so $$file.so; \
+		cd $(IDIR_GLIBC_DEV)/$(ADK_TARGET_LIBC_PATH); ln -sf $$file-$(PKG_VERSION).so $$file.so; \
 	done
 	# header package
 	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-linux-$(KERNEL_VERSION)-$(KERNEL_RELEASE)/linux-$(KERNEL_VERSION) \

+ 1 - 5
toolchain/Makefile

@@ -15,7 +15,7 @@ include $(TOPDIR)/rules.mk
 
 TARGETS:=binutils gmp mpfr mpc libelf gcc
 ifeq ($(ADK_TARGET_LIB_GLIBC),y)
-TARGETS+=glibc-ports glibc
+TARGETS+=glibc
 LIBC:=glibc
 endif
 ifeq ($(ADK_TARGET_LIB_EGLIBC),y)
@@ -45,11 +45,7 @@ download: $(DOWNLOAD)
 fixup: $(FIXUP)
 
 gcc-prepare: binutils-install gmp-install mpfr-install mpc-install libelf-install
-ifeq ($(ADK_TARGET_LIB_GLIBC),y)
-$(LIBC)-prepare: gcc-prepare kernel-headers-prepare glibc-ports-prepare
-else
 $(LIBC)-prepare: gcc-prepare kernel-headers-prepare
-endif
 gcc-configure: $(LIBC)-prepare
 $(LIBC)-compile: gcc-configure
 gcc-compile: $(LIBC)-install

+ 0 - 22
toolchain/glibc-ports/Makefile

@@ -1,22 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-include ../rules.mk
-include Makefile.inc
-
-include ${TOPDIR}/mk/buildhlp.mk
-
-$(WRKBUILD)/.headers:
-	touch $@
-
-$(WRKBUILD)/.configured:
-	touch $@
-
-$(WRKBUILD)/.compiled:
-	touch $@
-
-$(WRKBUILD)/.installed:
-	touch $@
-
-include ${TOPDIR}/mk/toolchain.mk

+ 0 - 8
toolchain/glibc-ports/Makefile.inc

@@ -1,8 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-PKG_NAME:=		glibc-ports
-PKG_VERSION:=		2.16.0
-PKG_RELEASE:=		1
-PKG_MD5SUM:=		20c689888d89f9c11dd7f91b48ca4f69
-PKG_SITES:=		${MASTER_SITE_GNU:=glibc/}

+ 0 - 25
toolchain/glibc-ports/patches/mips.patch

@@ -1,25 +0,0 @@
-diff -Nur glibc-ports-2.16.0.orig/sysdeps/mips/mips32/Makefile glibc-ports-2.16.0/sysdeps/mips/mips32/Makefile
---- glibc-ports-2.16.0.orig/sysdeps/mips/mips32/Makefile	2012-06-21 19:08:19.000000000 +0200
-+++ glibc-ports-2.16.0/sysdeps/mips/mips32/Makefile	2012-08-01 17:45:07.000000000 +0200
-@@ -1,3 +1,3 @@
--ifeq ($(filter -mabi=32,$(CC)),)
--CC += -mabi=32
--endif
-+#ifeq ($(filter -mabi=32,$(CC)),)
-+#CC += -mabi=32
-+#endif
-diff -Nur glibc-ports-2.16.0.orig/sysdeps/mips/preconfigure glibc-ports-2.16.0/sysdeps/mips/preconfigure
---- glibc-ports-2.16.0.orig/sysdeps/mips/preconfigure	2012-06-21 19:08:19.000000000 +0200
-+++ glibc-ports-2.16.0/sysdeps/mips/preconfigure	2012-08-01 17:45:07.000000000 +0200
-@@ -19,11 +19,6 @@
- 		32) machine=mips/mips32/kern64 ;;
- 		esac
- 		machine=$machine/$config_machine
--		if test $mips_config_abi != $mips_cc_abi; then
--		  # This won't make it to config.make, but we want to
--		  # set this in case configure tests depend on it.
--		  CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi"
--		fi
- 		;;
- mips*)		base_machine=mips machine=mips/mips32/$machine ;;
- esac

+ 2 - 6
toolchain/glibc/Makefile

@@ -34,8 +34,6 @@ ifeq ($(ADK_TARGET_WITH_MULTILIB),y)
 $(WRKBUILD)/.headers_configure: 
 	for abi in $(TABI); do \
 		mkdir -p $(GLIBC_BUILD_DIR_INITIAL)-$${abi/*:/}; \
-		(cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \
-			ln -sf ../../w-glibc-ports-$(PKG_VERSION)-1/glibc-ports-$(PKG_VERSION)/ ports); \
 		(cd $(GLIBC_BUILD_DIR_INITIAL)-$${abi/*:/}; \
 			${GLIBC_ENV} \
 			CC="${REAL_GNU_TARGET_NAME}-gcc -m$${abi/*:/}" \
@@ -60,8 +58,6 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure
 else
 $(WRKBUILD)/.headers_configure:
 	mkdir -p $(GLIBC_BUILD_DIR_INITIAL)
-	(cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \
-	ln -sf ../../w-glibc-ports-$(PKG_VERSION)-1/glibc-ports-$(PKG_VERSION)/ ports);
 	(cd $(GLIBC_BUILD_DIR_INITIAL); \
 		${GLIBC_ENV} \
 		$(WRKBUILD)/configure \
@@ -77,7 +73,7 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure
 		$(MAKE) ${GLIBC_MAKEOPTS} install-headers \
 	);
 	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs.h
-	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64}.h
+	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64,soft,hard}.h
 	touch $@
 endif
 
@@ -111,7 +107,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
 	# default libgcc searching for 64 bit libraries
 	${GLIBC_ENV} $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL)-64 install_root=$(STAGING_TARGET_DIR) install
 	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs.h
-	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64}.h
+	touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64,soft,hard}.h
 	for abi in $(TABI); do \
 		mkdir -p $(STAGING_TARGET_DIR)/lib/$(REAL_GNU_TARGET_NAME)/4.7.2/$${abi/*:/} ; \
 		$(CP) $(STAGING_TARGET_DIR)-$${abi/*:/}/lib/* $(STAGING_TARGET_DIR)-$${abi/*:/}/usr/lib/* \

+ 3 - 2
toolchain/glibc/Makefile.inc

@@ -2,9 +2,9 @@
 # material, please see the LICENCE file in the top-level directory.
 
 PKG_NAME:=		glibc
-PKG_VERSION:=		2.16.0
+PKG_VERSION:=		2.17
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		b5f786fa7df4ff947bcd240c0e595f98
+PKG_MD5SUM:=		8a7f11b9ac5d0d5efa4c82175b5a9c1b
 PKG_SITES:=		${MASTER_SITE_GNU:=glibc/}
 GLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
 			--host=$(REAL_GNU_TARGET_NAME) \
@@ -15,6 +15,7 @@ GLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
 			--disable-profile \
 			--disable-debug \
 			--without-gd \
+			--disable-nscd \
 			--with-__thread \
 			--with-tls \
 			--enable-kernel="2.6.0" \

+ 0 - 18
toolchain/glibc/patches/gcc_eh.patch

@@ -1,18 +0,0 @@
-diff -Nur glibc-2.16.0.orig/Makeconfig glibc-2.16.0/Makeconfig
---- glibc-2.16.0.orig/Makeconfig	2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/Makeconfig	2012-09-28 20:11:14.000000000 +0200
-@@ -519,11 +519,11 @@
- ifneq ($(have-cc-with-libunwind),yes)
-   libunwind =
- else
--  libunwind = -lunwind
-+  libunwind =
- endif
--libgcc_eh := -Wl,--as-needed -lgcc_s $(libunwind) -Wl,--no-as-needed
-+libgcc_eh := -Wl,--as-needed $(libunwind) -Wl,--no-as-needed
- gnulib := -lgcc $(libgcc_eh)
--static-gnulib := -lgcc -lgcc_eh $(libunwind)
-+static-gnulib := -lgcc $(libunwind)
- libc.so-gnulib := -lgcc
- endif
- +preinit = $(addprefix $(csu-objpfx),crti.o)

+ 10 - 22
toolchain/glibc/patches/glibc-cross.patch

@@ -1,6 +1,6 @@
-diff -Nur glibc-2.16.0.orig/sunrpc/rpc/types.h glibc-2.16.0/sunrpc/rpc/types.h
---- glibc-2.16.0.orig/sunrpc/rpc/types.h	2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/sunrpc/rpc/types.h	2012-08-01 18:05:49.000000000 +0200
+diff -Nur glibc-2.17.orig/sunrpc/rpc/types.h glibc-2.17/sunrpc/rpc/types.h
+--- glibc-2.17.orig/sunrpc/rpc/types.h	2012-12-25 04:02:13.000000000 +0100
++++ glibc-2.17/sunrpc/rpc/types.h	2013-08-12 14:59:35.000000000 +0200
 @@ -69,19 +69,25 @@
  #include <sys/types.h>
  #endif
@@ -39,21 +39,9 @@ diff -Nur glibc-2.16.0.orig/sunrpc/rpc/types.h glibc-2.16.0/sunrpc/rpc/types.h
  # define __daddr_t_defined
  #endif
  
-diff -Nur glibc-2.16.0.orig/sunrpc/rpc_clntout.c glibc-2.16.0/sunrpc/rpc_clntout.c
---- glibc-2.16.0.orig/sunrpc/rpc_clntout.c	2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/sunrpc/rpc_clntout.c	2012-08-01 18:05:49.000000000 +0200
-@@ -31,7 +31,7 @@
-  */
- #include <stdio.h>
- #include <string.h>
--#include <rpc/types.h>
-+#include "rpc/types.h"
- #include "rpc_parse.h"
- #include "rpc_util.h"
- #include "proto.h"
-diff -Nur glibc-2.16.0.orig/sunrpc/rpc_main.c glibc-2.16.0/sunrpc/rpc_main.c
---- glibc-2.16.0.orig/sunrpc/rpc_main.c	2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/sunrpc/rpc_main.c	2012-08-01 18:05:49.000000000 +0200
+diff -Nur glibc-2.17.orig/sunrpc/rpc_main.c glibc-2.17/sunrpc/rpc_main.c
+--- glibc-2.17.orig/sunrpc/rpc_main.c	2012-12-25 04:02:13.000000000 +0100
++++ glibc-2.17/sunrpc/rpc_main.c	2013-08-12 14:59:37.000000000 +0200
 @@ -38,7 +38,11 @@
  #include <stdio.h>
  #include <string.h>
@@ -66,7 +54,7 @@ diff -Nur glibc-2.16.0.orig/sunrpc/rpc_main.c glibc-2.16.0/sunrpc/rpc_main.c
  #include <ctype.h>
  #include <sys/types.h>
  #include <sys/param.h>
-@@ -958,10 +962,12 @@
+@@ -954,10 +958,12 @@
  	abort ();
        temp = rindex (cmd->infile, '.');
        cp = stpcpy (mkfilename, "Makefile.");
@@ -82,9 +70,9 @@ diff -Nur glibc-2.16.0.orig/sunrpc/rpc_main.c glibc-2.16.0/sunrpc/rpc_main.c
  
      }
    else
-diff -Nur glibc-2.16.0.orig/sunrpc/rpc_scan.c glibc-2.16.0/sunrpc/rpc_scan.c
---- glibc-2.16.0.orig/sunrpc/rpc_scan.c	2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/sunrpc/rpc_scan.c	2012-08-01 18:05:49.000000000 +0200
+diff -Nur glibc-2.17.orig/sunrpc/rpc_scan.c glibc-2.17/sunrpc/rpc_scan.c
+--- glibc-2.17.orig/sunrpc/rpc_scan.c	2012-12-25 04:02:13.000000000 +0100
++++ glibc-2.17/sunrpc/rpc_scan.c	2013-08-12 14:59:37.000000000 +0200
 @@ -37,7 +37,11 @@
  #include <stdio.h>
  #include <ctype.h>