[oe-commits] Graham Gower : dbus: fix building on mipsel and clean up PIE/ pie fix to work again.

git version control git at git.openembedded.org
Sat Jul 3 04:22:52 UTC 2010


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

Author: Graham Gower <graham.gower at gmail.com>
Date:   Thu Jul  1 14:39:51 2010 +0000

dbus: fix building on mipsel and clean up PIE/pie fix to work again.

D-Bus fails to link with --gc-sections on mipsel.

|   CCLD   dbus-daemon
| collect2: ld returned 1 exit status
| make[2]: *** [dbus-daemon] Error 1
| make[2]: *** Waiting for unfinished jobs....
| /home/grg/oe2/tmp/cross/mipsel/lib/gcc/mipsel-oe-linux/4.4.4/../../../../mipsel-oe-linux/bin/ld: can not make stub section: File format not recognized
| /home/grg/oe2/tmp/cross/mipsel/lib/gcc/mipsel-oe-linux/4.4.4/../../../../mipsel-oe-linux/bin/ld: failed to set dynamic section sizes: File format not recognized

Also, the previous fPIE/pie fix no longer works.
While here, clean up INC_PR.

Signed-off-by: Graham Gower <graham.gower at gmail.com>
Signed-off-by: Khem Raj <raj.khem at gmail.com>

---

 recipes/dbus/dbus.inc       |   11 ++++++++---
 recipes/dbus/dbus_1.2.20.bb |    2 ++
 recipes/dbus/dbus_1.2.22.bb |    2 ++
 recipes/dbus/dbus_1.2.24.bb |    2 ++
 recipes/dbus/dbus_1.3.0.bb  |    4 ++--
 5 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/recipes/dbus/dbus.inc b/recipes/dbus/dbus.inc
index ec66960..55a156d 100644
--- a/recipes/dbus/dbus.inc
+++ b/recipes/dbus/dbus.inc
@@ -4,7 +4,7 @@ SECTION = "base"
 LICENSE = "GPL"
 DEPENDS = "expat glib-2.0 virtual/libintl libsm libice virtual/libx11"
 
-INC_PR = "r18"
+INC_PR = "r19"
 
 SRC_URI = "\
   http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz;name=dbus \
@@ -35,8 +35,13 @@ EXTRA_OECONF = "\
   ${EXTRA_OECONF_X} \
 "
 
-do_compile_prepend_mipsel() {
-	sed -i -e 's/\-fPIE//' -e 's/\-pie\ \-Wl\,\-z\,relro//' bus/Makefile
+# On mipsel, D-Bus fails to link with --gc-sections and segfaults before main()
+# when built with -fPIE/-pie.
+do_configure_prepend_mipsel() {
+	sed -i -e 's/\-fPIE//' \
+		-e 's/\-pie\ \-Wl\,\-z\,relro//' \
+		-e 's/-Wl,--gc-sections//' \
+		${S}/configure.in
 }
 
 do_install_append() {
diff --git a/recipes/dbus/dbus_1.2.20.bb b/recipes/dbus/dbus_1.2.20.bb
index 43805a5..25cc5ac 100644
--- a/recipes/dbus/dbus_1.2.20.bb
+++ b/recipes/dbus/dbus_1.2.20.bb
@@ -1,5 +1,7 @@
 include dbus.inc
 
+PR = "${INC_PR}.0"
+
 SRC_URI = "\
   http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz;name=dbus \
   file://tmpdir.patch \
diff --git a/recipes/dbus/dbus_1.2.22.bb b/recipes/dbus/dbus_1.2.22.bb
index 35a5267..74386ed 100644
--- a/recipes/dbus/dbus_1.2.22.bb
+++ b/recipes/dbus/dbus_1.2.22.bb
@@ -1,5 +1,7 @@
 include dbus.inc
 
+PR = "${INC_PR}.0"
+
 SRC_URI = "\
   http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz;name=dbus \
   file://tmpdir.patch \
diff --git a/recipes/dbus/dbus_1.2.24.bb b/recipes/dbus/dbus_1.2.24.bb
index 4e408e7..a2b7eea 100644
--- a/recipes/dbus/dbus_1.2.24.bb
+++ b/recipes/dbus/dbus_1.2.24.bb
@@ -1,5 +1,7 @@
 include dbus.inc
 
+PR = "${INC_PR}.0"
+
 SRC_URI = "\
   http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz;name=dbus \
   file://tmpdir.patch \
diff --git a/recipes/dbus/dbus_1.3.0.bb b/recipes/dbus/dbus_1.3.0.bb
index 830816f..a923166 100644
--- a/recipes/dbus/dbus_1.3.0.bb
+++ b/recipes/dbus/dbus_1.3.0.bb
@@ -1,5 +1,7 @@
 include dbus.inc
 
+PR = "${INC_PR}.0"
+
 SRC_URI = "\
   http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
   \
@@ -20,7 +22,5 @@ SRC_URI = "\
 # This is the development version of dbus that will lead to 1.4.x
 DEFAULT_PREFERENCE = "-1"
 
-PR = "r2"
-
 SRC_URI[md5sum] = "b3298d5ce0e4ad4731b1e4e1787d56bb"
 SRC_URI[sha256sum] = "fe32b49667894cf91b0a97503163be5c4814ecf67259e8feb26d1ba57cb03dae"





More information about the Openembedded-commits mailing list