Andrew Geissler | 6aa7eec | 2023-03-03 12:41:14 -0600 | [diff] [blame] | 1 | SUMMARY = "Python bindings for libgpiod." |
| 2 | AUTHOR = "Bartosz Golaszewski <brgl@bgdev.pl>" |
| 3 | |
| 4 | LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & CC-BY-SA-4.0" |
| 5 | LIC_FILES_CHKSUM = " \ |
| 6 | file://../../LICENSES/GPL-2.0-or-later.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ |
| 7 | file://../../LICENSES/LGPL-2.1-or-later.txt;md5=4b54a1fd55a448865a0b32d41598759d \ |
| 8 | file://../../LICENSES/CC-BY-SA-4.0.txt;md5=fba3b94d88bfb9b81369b869a1e9a20f \ |
| 9 | " |
| 10 | |
| 11 | require recipes-support/libgpiod/libgpiod-src.inc |
| 12 | |
| 13 | SRC_URI += "file://run-ptest" |
| 14 | |
Andrew Geissler | fc113ea | 2023-03-31 09:59:46 -0500 | [diff] [blame] | 15 | SRC_URI[sha256sum] = "f74cbf82038b3cb98ebeb25bce55ee2553be28194002d2a9889b9268cce2dd07" |
Andrew Geissler | 6aa7eec | 2023-03-03 12:41:14 -0600 | [diff] [blame] | 16 | S = "${WORKDIR}/libgpiod-2.0/bindings/python" |
| 17 | |
| 18 | inherit setuptools3 ptest |
| 19 | |
| 20 | DEPENDS += "libgpiod" |
| 21 | RDEPENDS:${PN} += "libgpiod (>= 2.0)" |
| 22 | RDEPENDS:${PN}-ptest += "python3-setuptools" |
| 23 | |
| 24 | export GPIOD_WITH_TESTS = "${@bb.utils.contains("PTEST_ENABLED", "1", "1", "0", d)}" |
| 25 | PTEST_CFLAGS = "${@bb.utils.contains("PTEST_ENABLED", "1", "-I../../tests/gpiosim", "", d)}" |
| 26 | # Setuptools store full filesystem paths in DWARF files. Map them to './' to |
| 27 | # avoid QA warnings. |
| 28 | export CFLAGS = "${PTEST_CFLAGS} -fdebug-prefix-map=${B}=./" |
| 29 | |
| 30 | do_install:append() { |
| 31 | # Python setuptools have an issue where they install C extensions even if |
| 32 | # they're not in the list of packages to be packaged. This is how the test |
| 33 | # extensions end up being installed. Remove them here. |
| 34 | rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/tests/ |
| 35 | } |
| 36 | |
| 37 | do_install_ptest() { |
| 38 | install -d ${D}${PTEST_PATH}/gpiod-test/gpiosim |
| 39 | install -d ${D}${PTEST_PATH}/gpiod-test/procname |
| 40 | install -m 0644 ${B}/tests/*.py ${D}${PTEST_PATH}/gpiod-test/ |
| 41 | install -m 0644 ${B}/build/lib*/tests/gpiosim/_ext* ${D}${PTEST_PATH}/gpiod-test/gpiosim |
| 42 | install -m 0644 ${B}/tests/gpiosim/*.py ${D}${PTEST_PATH}/gpiod-test/gpiosim |
| 43 | install -m 0644 ${B}/build/lib*/tests/procname/_ext* ${D}${PTEST_PATH}/gpiod-test/procname |
| 44 | install -m 0644 ${B}/tests/procname/*.py ${D}${PTEST_PATH}/gpiod-test/procname |
| 45 | } |