diff mbox series

[meta-python,scarthgap] python3-backports-zstd: add recipe

Message ID 20260519-add-backports-zstd-v1-1-b417d7d9c0eb@bootlin.com
State New
Headers show
Series [meta-python,scarthgap] python3-backports-zstd: add recipe | expand

Commit Message

Jérémie Dautheribes (Schneider Electric ) May 19, 2026, 2:49 p.m. UTC
Signed-off-by: Jérémie Dautheribes (Schneider Electric) <jeremie.dautheribes@bootlin.com>
---
Hello,

This patch adds support for the backports-zstd Python module in the
Scarthgap branch. The recipe was previously part of the master branch but
was removed [1] because the module was integrated into the Python standard
library starting from Python 3.14.

However, since Scarthgap uses Python 3.12, I believe it is reasonable to
include this backport for users on this branch.

[1]: https://git.openembedded.org/meta-openembedded/commit/meta-python?id=d2539548d0c0e0a42a54fd35bb0e039e23396725
---
 ...oml-make-license-entries-compatible-with-.patch | 38 ++++++++++++++++++++++
 ...ojects.toml-lower-setuptools-requirements.patch | 31 ++++++++++++++++++
 .../python/python3-backports-zstd_1.5.0.bb         | 21 ++++++++++++
 3 files changed, 90 insertions(+)


---
base-commit: ae7dfb12245c7f9b9a353499e2688015bd4e6413
change-id: 20260519-add-backports-zstd-0ccdda4bc156

Best regards,
--  
Jérémie Dautheribes (Schneider Electric) <jeremie.dautheribes@bootlin.com>
diff mbox series

Patch

diff --git a/meta-python/recipes-devtools/python/python3-backports-zstd/0001-pyproject.toml-make-license-entries-compatible-with-.patch b/meta-python/recipes-devtools/python/python3-backports-zstd/0001-pyproject.toml-make-license-entries-compatible-with-.patch
new file mode 100644
index 0000000000..3e20085071
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-backports-zstd/0001-pyproject.toml-make-license-entries-compatible-with-.patch
@@ -0,0 +1,38 @@ 
+From 1114b0d2b60056a3690be1f7629c112cf28ce367 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Dautheribes=20=28Schneider=20Electric?=
+ =?UTF-8?q?=29?= <jeremie.dautheribes@bootlin.com>
+Date: Fri, 15 May 2026 13:39:15 +0000
+Subject: [PATCH] pyproject.toml: make license entries compatible with
+ setputools v69
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The pypropject.toml uses license and license-files entries that are only
+compatible with seuptools >= v77, while Yocto Scarthgap only provides
+setuptools v69.
+
+This is the only detected impact, otherwise the do_compile/do_package work
+fine.
+
+Upstream-Status: Inappropriate [specific to OE LTS version]
+Signed-off-by: Jérémie Dautheribes (Schneider Electric) <jeremie.dautheribes@bootlin.com>
+---
+ pyproject.toml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index ec9a1ea..18e6816 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -5,8 +5,8 @@ authors = [{ name = "Rogdham", email = "contact@rogdham.net" }]
+ description = "Backport of compression.zstd"
+ readme = { file = "README.md", content-type = "text/markdown" }
+ keywords = ["backport", "backports", "pep-784", "zstd"]
+-license = "PSF-2.0"
+-license-files = ["LICENSE.txt", "LICENSE_zstd.txt"]
++license = { text = "PSF-2.0" }
++#license-files = ["LICENSE.txt"]
+ classifiers = [
+     "Development Status :: 5 - Production/Stable",
+     "Intended Audience :: Developers",
diff --git a/meta-python/recipes-devtools/python/python3-backports-zstd/0002-pyprojects.toml-lower-setuptools-requirements.patch b/meta-python/recipes-devtools/python/python3-backports-zstd/0002-pyprojects.toml-lower-setuptools-requirements.patch
new file mode 100644
index 0000000000..7cbeeff61d
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-backports-zstd/0002-pyprojects.toml-lower-setuptools-requirements.patch
@@ -0,0 +1,31 @@ 
+From 2ab6ba1d48a3d0e13382e346ba0a638548a5513e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Dautheribes=20=28Schneider=20Electric?=
+ =?UTF-8?q?=29?= <jeremie.dautheribes@bootlin.com>
+Date: Tue, 19 May 2026 14:06:43 +0000
+Subject: [PATCH] pyprojects.toml: lower setuptools requirements
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Scarthgap provides setuptools v69, so adjust the requirement
+accordingly.
+
+Upstream-Status: Inappropriate [specific to OE LTS version]
+Signed-off-by: Jérémie Dautheribes (Schneider Electric) <jeremie.dautheribes@bootlin.com>
+---
+ pyproject.toml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 18e6816..b5953e2 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -30,7 +30,7 @@ Source = "https://github.com/rogdham/backports.zstd"
+ #
+ 
+ [build-system]
+-requires = ["setuptools>=80"]
++requires = ["setuptools>=69"]
+ build-backend = "setuptools.build_meta"
+ 
+ [tool.setuptools.packages.find]
diff --git a/meta-python/recipes-devtools/python/python3-backports-zstd_1.5.0.bb b/meta-python/recipes-devtools/python/python3-backports-zstd_1.5.0.bb
new file mode 100644
index 0000000000..0c83202b4a
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-backports-zstd_1.5.0.bb
@@ -0,0 +1,21 @@ 
+SUMMARY = "Backport of compression.zstd"
+DESCRIPTION = "Backport of PEP-784 'adding Zstandard to the standard library'"
+HOMEPAGE = "https://github.com/Rogdham/backports.zstd/"
+LICENSE = "0BSD & PSF-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=224f30639105a6ab845e068c2d0903ff \
+                    file://LICENSE_zstd.txt;md5=85fffd6822a26cd7d2a6eeb939ada0da \
+                    file://src/c/pythoncapi-compat/COPYING;md5=f74f54822fab8814a50330e4e4578b88 \
+                    file://src/c/zstd/LICENSE;md5=0822a32f7acdbe013606746641746ee8"
+
+inherit pypi python_setuptools_build_meta
+
+SRC_URI += " \
+        file://0001-pyproject.toml-make-license-entries-compatible-with-.patch \
+        file://0002-pyprojects.toml-lower-setuptools-requirements.patch \
+"
+
+SRC_URI[sha256sum] = "a5e622a82eb183b4fbe18032755ce0a15fa9a82f2adb9b621620b91247aaedb7"
+
+PYPI_PACKAGE = "backports_zstd"
+
+BBCLASSEXTEND = "native nativesdk"