From d919a10d53f95932b0bef986b49ff4ba639a7351 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Thu, 9 Nov 2023 21:47:47 +0100 Subject: [PATCH] python3-gpiod: update to v2.1.3 The python bindings for libgpiod have undergone several significant changes that make them easier to use for users of pip. The libgpiod sources are now vendored with the python3-gpiod as the biggest complaint by far was the fact that if the system doesn't provide the correct version of libgpiod, the python bindings won't build. This is however irrelevant for the meta-python recipe as we use the provided switch to keep linking against the libgpiod provided by meta-openembedded. We have changed the way the tests are built, they are now generated by a separate build script and no longer by setup.py. The package now correctly build with the preferred pep517 method so change the inherited classes. We have also gained control over the gpiod module on pypi (which previously hosted a pure python GPIO library) so the location of the sources has changed. Signed-off-by: Bartosz Golaszewski Signed-off-by: Khem Raj --- ...-gpiod_2.0.1.bb => python3-gpiod_2.1.3.bb} | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) rename meta-python/recipes-devtools/python/{python3-gpiod_2.0.1.bb => python3-gpiod_2.1.3.bb} (54%) diff --git a/meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb b/meta-python/recipes-devtools/python/python3-gpiod_2.1.3.bb similarity index 54% rename from meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb rename to meta-python/recipes-devtools/python/python3-gpiod_2.1.3.bb index ea8c185625..ef2f01fd46 100644 --- a/meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb +++ b/meta-python/recipes-devtools/python/python3-gpiod_2.1.3.bb @@ -3,17 +3,18 @@ SUMMARY = "Python bindings for libgpiod." LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & CC-BY-SA-4.0" # The actual license files live in the upstream libgpiod from which the pypi # package is spun out. -LIC_FILES_CHKSUM = "file://setup.py;beginline=57;endline=57;md5=120334ed83ec0cb248605e775bd13b87" +LIC_FILES_CHKSUM = "file://setup.py;beginline=237;endline=237;md5=f5ddb56912b7f20bf94aa4d1bdcd3533" SRC_URI += "file://run-ptest" -SRC_URI[sha256sum] = "d5c0f9502e97e7359b9dd601e29f15d668983ce50f5c13323f3302845f790fa6" +SRC_URI[sha256sum] = "a33193d6cab79d252329f71666a35a3668e04f1f82bf9b93ee2c9ae852398b20" -inherit setuptools3 ptest pypi +inherit setuptools3-base python_pep517 ptest pypi -PYPI_PACKAGE = "libgpiod" - -DEPENDS += "libgpiod" +DEPENDS += " \ + libgpiod \ + python3-setuptools-native \ +" RDEPENDS:${PN} += " \ libgpiod (>= 2.0) \ python3-datetime \ @@ -24,14 +25,20 @@ RDEPENDS:${PN}-ptest += " \ python3-setuptools \ " -export GPIOD_WITH_TESTS = "${@bb.utils.contains("PTEST_ENABLED", "1", "1", "0", d)}" +export LINK_SYSTEM_LIBGPIOD = "1" + +do_compile_ptest() { + ${STAGING_BINDIR_NATIVE}/python3-native/python3 build_tests.py +} do_install_ptest() { install -d ${D}${PTEST_PATH}/gpiod-test/gpiosim install -d ${D}${PTEST_PATH}/gpiod-test/procname install -m 0644 ${S}/tests/*.py ${D}${PTEST_PATH}/gpiod-test/ - install -m 0644 ${B}/build/lib*/tests/gpiosim/_ext* ${D}${PTEST_PATH}/gpiod-test/gpiosim + install -m 0644 ${B}/tests/gpiosim/_ext* ${D}${PTEST_PATH}/gpiod-test/gpiosim install -m 0644 ${S}/tests/gpiosim/*.py ${D}${PTEST_PATH}/gpiod-test/gpiosim - install -m 0644 ${B}/build/lib*/tests/procname/_ext* ${D}${PTEST_PATH}/gpiod-test/procname + install -m 0644 ${B}/tests/procname/_ext* ${D}${PTEST_PATH}/gpiod-test/procname install -m 0644 ${S}/tests/procname/*.py ${D}${PTEST_PATH}/gpiod-test/procname } + +INSANE_SKIP:${PN}-ptest += "buildpaths"