Comments
Patch
@@ -5,7 +5,7 @@ SECTION = "x11/drivers"
LICENSE = "MIT-X"
PE = "2"
-INC_PR = "r17"
+INC_PR = "r18"
DEPENDS = "virtual/xserver xproto randrproto util-macros"
@@ -31,3 +31,18 @@ do_configure_prepend () {
do_install_append() {
find ${D}${libdir}/xorg/modules -regex ".*\.la$" | xargs rm -f --
}
+
+# Function to add the relevant ABI dependency to drivers, which should be called
+# from a populate_packages append/prepend.
+def add_abi_depends(d, name):
+ # Map of ABI names exposed in the dependencies to pkg-config variables
+ abis = {
+ "video": "abi_videodrv",
+ "input": "abi_xinput"
+ }
+
+ output = os.popen("pkg-config xorg-server --variable=%s" % abis[name]).read()
+ abi = "xorg-abi-%s-%s" % (name, output.split(".")[0])
+
+ pn = d.getVar("PN", True)
+ d.appendVar('RDEPENDS_' + pn, ' ' + abi)
@@ -2,5 +2,9 @@ include xorg-driver-common.inc
DEPENDS += "inputproto kbproto "
+python populate_packages_prepend() {
+ add_abi_depends(d, "input")
+}
+
FILES_${PN} += " ${libdir}/xorg/modules/input/*.so"
FILES_${PN}-dbg += " ${libdir}/xorg/modules/input/.debug"
@@ -2,3 +2,6 @@ include xorg-driver-common.inc
DEPENDS =+ "renderproto videoproto xextproto fontsproto"
+python populate_packages_prepend() {
+ add_abi_depends(d, "video")
+}
At build time extract the xserver driver ABI versions that we're building against and add RDEPENDs on them, so the driver isn't used against an xserver with a different ABI (which won't work). Signed-off-by: Ross Burton <ross.burton@intel.com> --- .../xorg-driver/xorg-driver-common.inc | 17 ++++++++++++++++- .../xorg-driver/xorg-driver-input.inc | 4 ++++ .../xorg-driver/xorg-driver-video.inc | 3 +++ 3 files changed, 23 insertions(+), 1 deletion(-)