diff mbox series

[meta-python,v2,3/4] python3-gpiod: fetch sources from pypi

Message ID 20230414115147.136593-4-brgl@bgdev.pl
State Under Review
Headers show
Series python3-gpiod: fetch sources from pypi | expand

Commit Message

Bartosz Golaszewski April 14, 2023, 11:51 a.m. UTC
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

Python bindings to libgpiod are now available on pypi. The source
package is a limited subset of the original repository. As such the
ptest package now requires the libgpiod-ptest to be available at
run-time (for libgpiosim.so against which the test C extension is
linked).

The problem with installing the C extensions for tests is now fixed so
drop the do_install:append(). We no longer have to pass any additional
CFLAGS to setup.py either.

We update the version of the recipe but the changes only apply to
building and packaging, there are no functional changes to the code.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 .../python/python3-gpiod_2.0.1.bb             | 38 ++++++++++++++
 .../python/python3-gpiod_2.0.bb               | 49 -------------------
 2 files changed, 38 insertions(+), 49 deletions(-)
 create mode 100644 meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb
 delete mode 100644 meta-python/recipes-devtools/python/python3-gpiod_2.0.bb
diff mbox series

Patch

diff --git a/meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb b/meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb
new file mode 100644
index 000000000..f833e6903
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-gpiod_2.0.1.bb
@@ -0,0 +1,38 @@ 
+SUMMARY = "Python bindings for libgpiod."
+AUTHOR = "Bartosz Golaszewski <brgl@bgdev.pl>"
+
+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"
+
+SRC_URI += "file://run-ptest"
+
+SRC_URI[sha256sum] = "d5c0f9502e97e7359b9dd601e29f15d668983ce50f5c13323f3302845f790fa6"
+
+inherit setuptools3 ptest pypi
+
+PYPI_PACKAGE = "libgpiod"
+
+DEPENDS += "libgpiod"
+RDEPENDS:${PN} += " \
+    libgpiod (>= 2.0) \
+    python3-datetime \
+    python3-profile \
+"
+RDEPENDS:${PN}-ptest += " \
+    libgpiod-ptest \
+    python3-setuptools \
+"
+
+export GPIOD_WITH_TESTS = "${@bb.utils.contains("PTEST_ENABLED", "1", "1", "0", d)}"
+
+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 ${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 ${S}/tests/procname/*.py ${D}${PTEST_PATH}/gpiod-test/procname
+}
diff --git a/meta-python/recipes-devtools/python/python3-gpiod_2.0.bb b/meta-python/recipes-devtools/python/python3-gpiod_2.0.bb
deleted file mode 100644
index e39d5beb1..000000000
--- a/meta-python/recipes-devtools/python/python3-gpiod_2.0.bb
+++ /dev/null
@@ -1,49 +0,0 @@ 
-SUMMARY = "Python bindings for libgpiod."
-AUTHOR = "Bartosz Golaszewski <brgl@bgdev.pl>"
-
-LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & CC-BY-SA-4.0"
-LIC_FILES_CHKSUM = " \
-    file://../../LICENSES/GPL-2.0-or-later.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-    file://../../LICENSES/LGPL-2.1-or-later.txt;md5=4b54a1fd55a448865a0b32d41598759d \
-    file://../../LICENSES/CC-BY-SA-4.0.txt;md5=fba3b94d88bfb9b81369b869a1e9a20f \
-"
-
-require recipes-support/libgpiod/libgpiod-src.inc
-
-SRC_URI += "file://run-ptest"
-
-SRC_URI[sha256sum] = "f74cbf82038b3cb98ebeb25bce55ee2553be28194002d2a9889b9268cce2dd07"
-S = "${WORKDIR}/libgpiod-${PV}/bindings/python"
-
-inherit setuptools3 ptest
-
-DEPENDS += "libgpiod"
-RDEPENDS:${PN} += " \
-    libgpiod (>= 2.0) \
-    python3-datetime \
-    python3-profile \
-"
-RDEPENDS:${PN}-ptest += "python3-setuptools"
-
-export GPIOD_WITH_TESTS = "${@bb.utils.contains("PTEST_ENABLED", "1", "1", "0", d)}"
-PTEST_CFLAGS = "${@bb.utils.contains("PTEST_ENABLED", "1", "-I../../tests/gpiosim", "", d)}"
-# Setuptools store full filesystem paths in DWARF files. Map them to './' to
-# avoid QA warnings.
-export CFLAGS = "${PTEST_CFLAGS} -fdebug-prefix-map=${B}=./"
-
-do_install:append() {
-    # Python setuptools have an issue where they install C extensions even if
-    # they're not in the list of packages to be packaged. This is how the test
-    # extensions end up being installed. Remove them here.
-    rm -rf ${D}${PYTHON_SITEPACKAGES_DIR}/tests/
-}
-
-do_install_ptest() {
-    install -d ${D}${PTEST_PATH}/gpiod-test/gpiosim
-    install -d ${D}${PTEST_PATH}/gpiod-test/procname
-    install -m 0644 ${B}/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/*.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/*.py ${D}${PTEST_PATH}/gpiod-test/procname
-}