diff mbox series

[v3,1/3] python3-pyzstd: import 0.17.0 from meta-python

Message ID 20251217150828.1044438-2-koen.kooi@oss.qualcomm.com
State New
Headers show
Series Fix and adjust ukify packaging | expand

Commit Message

Koen Kooi Dec. 17, 2025, 3:08 p.m. UTC
From the upstream website:
	Pyzstd module provides classes and functions for compressing and
	decompressing data, using Facebook's Zstandard (or zstd as short name)
	algorithm.

This recipe is being moved over for systemd 258.x, the 'ukify' tool
depends on this.

Signed-off-by: Koen Kooi <koen.kooi@oss.qualcomm.com>
---

Changes since v1:
 * Adjusted pyzstd patch to not specify an upper limit to the setuptools
   version, as suggested by Alexander Kanavin.

 ...emove-setuptools-version-limit-of-74.patch | 27 +++++++++++++++++++
 .../python/python3-pyzstd_0.17.0.bb           | 19 +++++++++++++
 2 files changed, 46 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
 create mode 100644 meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
diff mbox series

Patch

diff --git a/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch b/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
new file mode 100644
index 0000000000..f2910322ff
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
@@ -0,0 +1,27 @@ 
+From bc9b975c9f41e43481a2eb0623b4180926baecec Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 9 Apr 2025 14:38:31 -0700
+Subject: [PATCH] Remove setuptools version limit of '74'
+
+Upstream sticks to 0.74 since setuptools have dropped msvc9compiler
+support beyond that which is needed for python 3.9 on windows. We
+do not have this problem on Linux
+
+Upstream-Status: Inappropriate [OE-specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ pyproject.toml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index dd885e4..5d4d511 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -1,6 +1,6 @@
+ [build-system]
+ # setuptools 64+ support --build-option
+ # setuptools 74+ drops distutils.msvc9compiler required for Python 3.9 under Windows
+-requires = ["setuptools>=64,<74"]
++requires = ["setuptools>=64"]
+ backend-path = ["build_script"]
+ build-backend = "pyzstd_pep517"
diff --git a/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb b/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
new file mode 100644
index 0000000000..0ed6cd47c7
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
@@ -0,0 +1,19 @@ 
+DESCRIPTION = "Pyzstd module provides classes and functions for compressing and \
+decompressing data, using Facebook’s Zstandard (or zstd as short name) algorithm."
+HOMEPAGE = "https://github.com/animalize/pyzstd"
+SECTION = "devel/python"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=aedb5a2679cd1552fb61c181ef974b9e"
+
+PYPI_PACKAGE = "pyzstd"
+
+SRC_URI += "file://0001-Remove-setuptools-version-limit-of-74.patch"
+SRC_URI[sha256sum] = "d84271f8baa66c419204c1dd115a4dec8b266f8a2921da21b81764fa208c1db6"
+
+inherit pypi python_setuptools_build_meta ptest-python-pytest
+
+# clang-16 with -flto segfaults on arm, therefore ignore flto for now
+do_configure:append:arm:toolchain-clang() {
+    sed -i -e "s|'-flto'|''|" ${S}/setup.py
+}