libxcb: fix rebuild when MACHINE changes
authorRoss Burton <ross.burton@intel.com>
Mon, 9 Dec 2013 16:58:27 +0000 (16:58 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 10 Dec 2013 17:42:41 +0000 (17:42 +0000)
This recipe was patching the sysroot path directly into configure.ac, which
fails when the same source tree is re-used for another machine.

Instead, patch in $PKG_CONFIG_SYSROOT_DIR which is already exported for use by
pkg-config.

Also remove some commented-out lines that have no purpose.

(From OE-Core rev: e7876641c684448c6760050f23fd17dd5e850b48)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-graphics/xorg-lib/libxcb.inc
meta/recipes-graphics/xorg-lib/libxcb/xcbincludedir.patch

index 91df1be..7f9b0af 100644 (file)
@@ -12,10 +12,9 @@ LICENSE = "MIT-X"
 
 PARALLEL_MAKE = ""
 DEPENDS = "xcb-proto xproto libxau libxslt-native xcb-proto-native libpthread-stubs"
-# DEPENDS += "xsltproc-native gperf-native"
 
-SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2"
-#           file://xcbincludedir.patch"
+SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2 \
+           file://xcbincludedir.patch"
 
 PACKAGES =+ "libxcb-composite libxcb-damage libxcb-dpms libxcb-glx \
              libxcb-randr libxcb-record libxcb-render libxcb-res \
@@ -25,7 +24,6 @@ PACKAGES =+ "libxcb-composite libxcb-damage libxcb-dpms libxcb-glx \
              libxcb-dri2 libxcb-dri3 libxcb-present"
 
 FILES_${PN} = "${libdir}/libxcb.so.*"
-#FILES_${PN}-dev = "${libdir}/libxcb.* ${libdir}/pkgconfig/*.pc ${includedir}/xcb/*.h"
 FILES_libxcb-dri2 = "${libdir}/libxcb-dri2.so.*"
 FILES_libxcb-dri3 = "${libdir}/libxcb-dri3.so.*"
 FILES_libxcb-composite = "${libdir}/libxcb-composite.so.*"
@@ -52,13 +50,3 @@ FILES_libxcb-xvmc = "${libdir}/libxcb-xvmc.so.*"
 FILES_libxcb-present = "${libdir}/libxcb-present.so.*"
 
 inherit autotools pkgconfig pythonnative
-
-# XCBPROTO_XCBINCLUDEDIR is set based on `pkg-config --variable=xcbincludedir xcb-proto`
-# but the xcbincludedir variable doesn't point into the staging area, so it needs some
-# tweaking here:
-do_configure_prepend () {
-    sed -i "s|XCBPROTO_XCBINCLUDEDIR=\`|XCBPROTO_XCBINCLUDEDIR=${STAGING_DIR_HOST}/\`|" \
-        ${S}/configure.ac
-    sed -i "s|XCBPROTO_XCBPYTHONDIR=\`|XCBPROTO_XCBPYTHONDIR=${STAGING_DIR_HOST}/\`|" \
-        ${S}/configure.ac
-}
index d858a63..46297c3 100644 (file)
@@ -1,8 +1,14 @@
-Upstream-Status: Inappropriate [configuration]
+As pkg-config --variable doesn't respect the sysroot, add the pkg-config sysroot
+to the beginning of variables that are used later on the host.
 
---- libxcb-1.0.orig/configure.ac       2006-11-23 15:33:01.000000000 +0000
-+++ libxcb-1.0/configure.ac    2008-09-10 20:29:12.000000000 +0100
-@@ -50,7 +50,7 @@
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/configure.ac b/configure.ac
+index 94da4f7..d29cd6a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -64,7 +64,7 @@ AC_SUBST(NEEDED)
  
  # Find the xcb-proto protocol descriptions
  AC_MSG_CHECKING(XCBPROTO_XCBINCLUDEDIR)
@@ -11,3 +17,12 @@ Upstream-Status: Inappropriate [configuration]
  AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR)
  AC_SUBST(XCBPROTO_XCBINCLUDEDIR)
  
+@@ -74,7 +74,7 @@ AC_SUBST(XCBPROTO_VERSION)
+ # Find the xcbgen Python package
+ AC_MSG_CHECKING(XCBPROTO_XCBPYTHONDIR)
+-XCBPROTO_XCBPYTHONDIR=`$PKG_CONFIG --variable=pythondir xcb-proto`
++XCBPROTO_XCBPYTHONDIR=$PKG_CONFIG_SYSROOT_DIR/`$PKG_CONFIG --variable=pythondir xcb-proto`
+ AC_MSG_RESULT($XCBPROTO_XCBPYTHONDIR)
+ AC_SUBST(XCBPROTO_XCBPYTHONDIR)