Patchwork [meta-multimedia,2/2] xbmc: add patch to make 'ld-is-gold' work with configure

login
register
mail settings
Submitter Koen Kooi
Date March 11, 2013, 10:39 a.m.
Message ID <1362998354-7195-2-git-send-email-koen@dominion.thruhere.net>
Download mbox | patch
Permalink /patch/45867/
State New, archived
Headers show

Comments

Koen Kooi - March 11, 2013, 10:39 a.m.
The custom XBMC XB_FIND_SONAME macro doesn't work with the gold linker, backport a patch to fix it

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
 ...igure-cope-with-ld-is-gold-DISTRO_FEATURE.patch |   43 ++++++++++++++++++++
 .../recipes-mediacentre/xbmc/xbmc_git.bb           |    5 ++-
 2 files changed, 47 insertions(+), 1 deletions(-)
 create mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
Khem Raj - March 11, 2013, 5:11 p.m.
On Mar 11, 2013, at 3:39 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:

> ++  #set -x
> +   if [[ "$host_vendor" != "apple" ]]; then
> +     AC_MSG_CHECKING([for lib$2 soname])
> +     $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-M 2>/dev/null | grep "^LOAD.*$2" | awk '{V=2; print $V}')
> ++    if [[ -z $$1_FILENAME ]]; then
> ++      #try gold linker syntax
> ++      $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-t 3>&1 1>&2 2>&3 | grep "$2")
> ++    fi
> +     if [[ ! -z $$1_FILENAME ]]; then
> +       $1_SONAME=$(objdump -p $$1_FILENAME | grep "SONAME.*$2" | awk '{V=2; print $V}')
> +     fi
> +@@ -55,6 +60,7 @@ AC_DEFUN([XB_FIND_SONAME],
> +     AC_MSG_RESULT([$$1_SONAME])
> +     AC_SUBST($1_SONAME)
> +   fi
> ++  #set +x

these set -x can be removed but if its upstream like that then fine.

Patch

diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
new file mode 100644
index 0000000..345e20e
--- /dev/null
+++ b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
@@ -0,0 +1,43 @@ 
+From fd8f73826240aae543a41a2bfeea0056e2fe594d Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Mon, 11 Mar 2013 11:04:29 +0100
+Subject: [PATCH] configure: cope with ld-is-gold DISTRO_FEATURE
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+---
+
+Upstream-Status: backport
+
+ configure.in |   12 +++++++-----
+ 1 files changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index ef94683..c8b459b 100755
+--- a/configure.in
++++ b/configure.in
+@@ -18,9 +18,14 @@ tolower(){
+ # check for library basenames
+ AC_DEFUN([XB_FIND_SONAME],
+ [
++  #set -x
+   if [[ "$host_vendor" != "apple" ]]; then
+     AC_MSG_CHECKING([for lib$2 soname])
+     $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-M 2>/dev/null | grep "^LOAD.*$2" | awk '{V=2; print $V}')
++    if [[ -z $$1_FILENAME ]]; then
++      #try gold linker syntax
++      $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-t 3>&1 1>&2 2>&3 | grep "$2")
++    fi
+     if [[ ! -z $$1_FILENAME ]]; then
+       $1_SONAME=$(objdump -p $$1_FILENAME | grep "SONAME.*$2" | awk '{V=2; print $V}')
+     fi
+@@ -55,6 +60,7 @@ AC_DEFUN([XB_FIND_SONAME],
+     AC_MSG_RESULT([$$1_SONAME])
+     AC_SUBST($1_SONAME)
+   fi
++  #set +x
+ ])
+ 
+ # Function to push and pop libs and includes for a command
+-- 
+1.7.7.6
+
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb b/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb
index 6331306..c2e8ed1 100644
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb
+++ b/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb
@@ -15,6 +15,7 @@  SRC_URI = "git://github.com/xbmc/xbmc.git;branch=eden;protocol=git \
            file://0001-configure-don-t-run-python-distutils-to-find-STAGING.patch \
            file://0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch \
            file://0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch \
+           file://0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch \
            file://configure.in-Avoid-running-code.patch \
           "
 
@@ -22,11 +23,13 @@  inherit autotools gettext python-dir
 
 S = "${WORKDIR}/git"
 
+# breaks compilation
+CCACHE = ""
+
 CACHED_CONFIGUREVARS += " \
  ac_cv_path_PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python" \
 "
 
-
 EXTRA_OECONF = " \
  --disable-rpath \
  --enable-libusb \