mirror of
https://git.yoctoproject.org/poky
synced 2026-09-14 21:49:33 +02:00
xcb: don't build-depend on python-native
xcb-proto had a dependency on python-native as it builds and installs a Python module, but xcb-proto is very low in the build to force a dependency on python-native. As it turns out libxcb simply asks pkg-config for the full path to the module xcb-proto installed and uses it directly so there is no need to build python-native. Instead replace AM_PATH_PYTHON with two explicit variable definitions (need to set PYTHON for automake's install logic). Also remove the dependency on xcb-proto-native as libxcb uses the data files and tooling from the target sysroot, and patching it to use the native sysroot adds complication for no good reason. (From OE-Core rev: bc38ef47b05128623a916172c2cfd244510b201e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
d7759a5b43
commit
8df88fb3c5
@@ -19,13 +19,13 @@ SRC_URI[sha256sum] = "b720fd6c7d200e5371affdb3f049cc8f88cff9aed942ff1b824d95eedb
|
|||||||
|
|
||||||
BBCLASSEXTEND = "native nativesdk"
|
BBCLASSEXTEND = "native nativesdk"
|
||||||
|
|
||||||
DEPENDS = "xcb-proto xproto libxau xcb-proto-native libpthread-stubs libxdmcp"
|
DEPENDS = "xcb-proto xproto libxau libpthread-stubs libxdmcp"
|
||||||
|
|
||||||
PACKAGES_DYNAMIC = "^libxcb-.*"
|
PACKAGES_DYNAMIC = "^libxcb-.*"
|
||||||
|
|
||||||
FILES_${PN} = "${libdir}/libxcb.so.*"
|
FILES_${PN} = "${libdir}/libxcb.so.*"
|
||||||
|
|
||||||
inherit autotools pkgconfig pythonnative distro_features_check
|
inherit autotools pkgconfig distro_features_check
|
||||||
|
|
||||||
# The libxau and others requires x11 in DISTRO_FEATURES
|
# The libxau and others requires x11 in DISTRO_FEATURES
|
||||||
REQUIRED_DISTRO_FEATURES = "x11"
|
REQUIRED_DISTRO_FEATURES = "x11"
|
||||||
|
|||||||
@@ -9,17 +9,18 @@ BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB"
|
|||||||
SECTION = "x11/libs"
|
SECTION = "x11/libs"
|
||||||
LICENSE = "MIT-X"
|
LICENSE = "MIT-X"
|
||||||
|
|
||||||
SRC_URI = "http://xcb.freedesktop.org/dist/xcb-proto-${PV}.tar.bz2"
|
SRC_URI = "http://xcb.freedesktop.org/dist/xcb-proto-${PV}.tar.bz2 \
|
||||||
|
file://no-python-native.patch"
|
||||||
|
|
||||||
inherit autotools pkgconfig pythonnative
|
inherit autotools pkgconfig
|
||||||
|
|
||||||
PACKAGES += "python-xcbgen"
|
PACKAGES += "python-xcbgen"
|
||||||
|
|
||||||
|
FILES_${PN} = ""
|
||||||
FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd"
|
FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd"
|
||||||
FILES_python-xcbgen = "${libdir}/python*"
|
FILES_python-xcbgen = "${libdir}/xcb-proto"
|
||||||
|
|
||||||
RDEPENDS_${PN}-dev = ""
|
RDEPENDS_${PN}-dev = ""
|
||||||
RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
|
RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
|
||||||
|
|
||||||
DEPENDS_append_class-native = " python-native"
|
|
||||||
BBCLASSEXTEND = "native nativesdk"
|
BBCLASSEXTEND = "native nativesdk"
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
Upstream uses AM_PATH_PYTHON to find a python binary and ask it where to install
|
||||||
|
libraries. This means we either need to depend on python-native (large build
|
||||||
|
dependency, early in the build) or use the host python (pythondir reflects the
|
||||||
|
host and not the target, breaks builds).
|
||||||
|
|
||||||
|
The third option is to just hardcode the path where the module goes, as most
|
||||||
|
callers of the code use pkg-config to find where it was installed anyway.
|
||||||
|
|
||||||
|
Upstream-Status: Inappropriate
|
||||||
|
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index d140bfe..c7b68da 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -14,7 +14,10 @@ if test "$XMLLINT" = "no"; then
|
||||||
|
AC_MSG_WARN([xmllint not found; unable to validate against schema.])
|
||||||
|
fi
|
||||||
|
|
||||||
|
-AM_PATH_PYTHON([2.5])
|
||||||
|
+pythondir="${libdir}/xcb-proto"
|
||||||
|
+AC_SUBST(pythondir)
|
||||||
|
+PYTHON="python"
|
||||||
|
+AC_SUBST(PYTHON)
|
||||||
|
|
||||||
|
xcbincludedir='${datadir}/xcb'
|
||||||
|
AC_SUBST(xcbincludedir)
|
||||||
Reference in New Issue
Block a user