Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame^] | 1 | SUMMARY = "XCB: The X protocol C binding headers" |
| 2 | DESCRIPTION = "Function prototypes for the X protocol C-language Binding \ |
| 3 | (XCB). XCB is a replacement for Xlib featuring a small footprint, \ |
| 4 | latency hiding, direct access to the protocol, improved threading \ |
| 5 | support, and extensibility." |
| 6 | HOMEPAGE = "http://xcb.freedesktop.org" |
| 7 | BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" |
| 8 | |
| 9 | SECTION = "x11/libs" |
| 10 | LICENSE = "MIT" |
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \ |
| 12 | file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65" |
| 13 | |
| 14 | SRC_URI = "http://xcb.freedesktop.org/dist/${BP}.tar.bz2" |
| 15 | |
| 16 | SRC_URI[md5sum] = "abe9aa4886138150bbc04ae4f29b90e3" |
| 17 | SRC_URI[sha256sum] = "7b98721e669be80284e9bbfeab02d2d0d54cd11172b72271e47a2fe875e2bde1" |
| 18 | |
| 19 | inherit autotools pkgconfig |
| 20 | |
| 21 | # Force the use of Python 3 and a specific library path so we don't need to |
| 22 | # depend on python3-native |
| 23 | CACHED_CONFIGUREVARS += "PYTHON=python3 am_cv_python_pythondir=${libdir}/xcb-proto" |
| 24 | |
| 25 | PACKAGES += "python-xcbgen" |
| 26 | |
| 27 | FILES_${PN} = "" |
| 28 | FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd" |
| 29 | FILES_python-xcbgen = "${libdir}/xcb-proto" |
| 30 | |
| 31 | RDEPENDS_${PN}-dev = "" |
| 32 | RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" |
| 33 | |
| 34 | BBCLASSEXTEND = "native nativesdk" |
| 35 | |
| 36 | # Need to do this dance because we're forcing the use of host Python above and |
| 37 | # if xcb-proto is built with Py3.5 and then re-used from sstate on a host with |
| 38 | # Py3.6 the second build will write new cache files into the sysroot which won't |
| 39 | # be listed in the manifest so won't be deleted, resulting in an error on |
| 40 | # rebuilds. Solve this by deleting the entire cache directory when this package |
| 41 | # is removed from the sysroot. |
| 42 | SSTATEPOSTINSTFUNCS += "xcb_sstate_postinst" |
| 43 | xcb_sstate_postinst() { |
| 44 | if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ] |
| 45 | then |
| 46 | cat <<EOF >${SSTATE_INST_POSTRM} |
| 47 | #!/bin/sh |
| 48 | rm -rf ${libdir}/xcb-proto/xcbgen/__pycache__ |
| 49 | EOF |
| 50 | fi |
| 51 | } |