[oe-commits] Graham Gower : glibc: Build glibc 2.9 with glibc-ports 2.9

git version control git at git.openembedded.org
Thu Sep 10 04:42:47 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: ec1461ce16b91c008d22000f6a471b2b106669ce
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=ec1461ce16b91c008d22000f6a471b2b106669ce

Author: Graham Gower <graham.gower at gmail.com>
Date:   Tue Aug 11 21:32:03 2009 +0000

glibc: Build glibc 2.9 with glibc-ports 2.9

This combination of glibc-2.9 with glibc-ports-2.7 fails to build on mipsel.
The reason we have been using glibc-ports 2.7 was that glibc-ports 2.9 was
not tagged or we didn't see it for various reasons.

Build glibc 2.9 with glibc-port 2.9 and drop the three ARM patches as
they have been applied to the upstream glibc-ports tree:

http://sourceware.org/git/?p=glibc-ports.git;a=commitdiff;h=7272ed4e474a398b8ce1e7374cdaa8592b840e2a
http://sourceware.org/git/?p=glibc-ports.git;a=commitdiff;h=e6e41f0f4963bfb0c0e32f8263ae028b288b5453

Patchwork: http://patchwork.openembedded.org/patch/933/
Signed-off-By: Graham Gower <graham.gower at gmail.com>
Signed-off-By: Holger Hans Peter <zecke at selfish.org>
Acked-by: Khem Raj <raj.khem at gmail.com>

---

 conf/checksums.ini                                 |    4 +++
 recipes/glibc/glibc-2.9/glibc-2.9-use-_begin.patch |   28 ++++++++++++++++++++
 recipes/glibc/glibc_2.9.bb                         |   12 +++-----
 3 files changed, 36 insertions(+), 8 deletions(-)

diff --git a/conf/checksums.ini b/conf/checksums.ini
index 6c29242..7d3bf18 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -8274,6 +8274,10 @@ sha256=d094028bc6d6691f56b4efeff7cd7e1c7ca10733e0cb5efc36e8fb08d8324bf1
 md5=eaeb8527b8fa286c2d887157214f9998
 sha256=3e481996259af87c3581da23481970a27de679e3c87cfa9a5a59751cd20c7b44
 
+[ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-2.9.tar.bz2]
+md5=7d5d86031cb15403e4d246658209ee81
+sha256=824c97b83f1ec2894ee0e824db6d542c40b978d2f6c4364c7411777e44b15a64
+
 [ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/2.16/glibmm-2.16.2.tar.bz2]
 md5=408054366f0acc01014f4c4af2304da5
 sha256=f033f6f39c32fc17ecce63087e41408671a3a43d698c83de2528af3fc7276d28
diff --git a/recipes/glibc/glibc-2.9/glibc-2.9-use-_begin.patch b/recipes/glibc/glibc-2.9/glibc-2.9-use-_begin.patch
new file mode 100644
index 0000000..8d36a05
--- /dev/null
+++ b/recipes/glibc/glibc-2.9/glibc-2.9-use-_begin.patch
@@ -0,0 +1,28 @@
+From 7c8a67320e26b8c11108bf0a3410d3aef9cf3486 Mon Sep 17 00:00:00 2001
+From: Ulrich Drepper <drepper at redhat.com>
+Date: Sat, 31 Jan 2009 00:21:15 +0000
+Subject: [PATCH] * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to newer linker scripts.
+---
+diff --git a/elf/Makefile b/elf/Makefile
+index 8079fe9..e44ff1d 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -1,4 +1,4 @@
+-# Copyright (C) 1995-2007, 2008 Free Software Foundation, Inc.
++# Copyright (C) 1995-2007, 2008, 2009 Free Software Foundation, Inc.
+ # This file is part of the GNU C Library.
+ 
+ # The GNU C Library is free software; you can redistribute it and/or
+@@ -304,7 +304,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld-map)
+ 		  $(LDFLAGS-rtld) -Wl,-z,defs -Wl,--verbose 2>&1 |	\
+ 		  LC_ALL=C \
+ 		  sed -e '/^=========/,/^=========/!d;/^=========/d'	\
+-		      -e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
++		      -e 's/\. = .* + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
+ 		  > $@.lds
+ 	$(LINK.o) -nostdlib -nostartfiles -shared -o $@			\
+ 		  $(LDFLAGS-rtld) -Wl,-z,defs $(z-now-$(bind-now))	\
+-- 
+1.6.3.2
+
+
diff --git a/recipes/glibc/glibc_2.9.bb b/recipes/glibc/glibc_2.9.bb
index eb15750..c3ebc16 100644
--- a/recipes/glibc/glibc_2.9.bb
+++ b/recipes/glibc/glibc_2.9.bb
@@ -5,7 +5,7 @@ ARM_INSTRUCTION_SET = "arm"
 PACKAGES_DYNAMIC = "libc6*"
 RPROVIDES_${PN}-dev = "libc6-dev virtual-libc-dev"
 
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
 
 # the -isystem in bitbake.conf screws up glibc do_stage
 BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
@@ -43,7 +43,7 @@ RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
 #	   file://arm-ioperm.patch;patch=1;pnum=0 \
 #	   file://ldd.patch;patch=1;pnum=0 \
 SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
-	   ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-2.7.tar.bz2 \
+	   ftp://ftp.gnu.org/pub/gnu/glibc/glibc-ports-${PV}.tar.bz2 \
 	   ftp://ftp.gnu.org/pub/gnu/glibc/glibc-libidn-${PV}.tar.bz2 \
 	   file://nscd-init.patch;patch=1;pnum=0 \
            file://arm-memcpy.patch;patch=1 \
@@ -55,9 +55,6 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
 	   file://glibc-check_pf.patch;patch=1;pnum=0 \
            file://ldd-unbash.patch;patch=1 \
 	   file://glibc-arm-IO-acquire-lock-fix.diff;patch=1 \
-	   file://local-args6.diff;patch=1 \
-	   file://arm-check-pf.patch;patch=1 \
-	   file://arm-lowlevellock-include-tls.patch;patch=1 \
 	   file://generic-bits_select.h \
 	   file://generic-bits_types.h \
 	   file://generic-bits_typesizes.h \
@@ -66,10 +63,9 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
            file://generate-supported.mk \
            file://march-i686.patch;patch=1;pnum=0 \
 	   file://tls_i486.patch;patch=1 \
-	   file://glibc-arm-no-asm-page.patch;patch=1 \
+	   file://glibc-2.9-use-_begin.patch;patch=1 \
            "
 
-
 # Build fails on sh3 and sh4 without additional patches
 SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1"
 SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1"
@@ -92,7 +88,7 @@ EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
 
 do_munge() {
 	# Integrate ports and libidn into tree
-	mv ${WORKDIR}/glibc-ports-2.7 ${S}/ports
+	mv ${WORKDIR}/glibc-ports-${PV} ${S}/ports
 	mv ${WORKDIR}/glibc-libidn-${PV} ${S}/libidn
 
 	# Ports isn't really working... Fix it





More information about the Openembedded-commits mailing list