diff options
| author | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2026-01-31 13:11:30 +0000 |
|---|---|---|
| committer | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2026-01-31 14:14:45 +0000 |
| commit | 2cdc267de7acf020458c1f8d811f0d2bcfb13324 (patch) | |
| tree | a0af0fdfce53e534bd321648a2a7e39e035327d6 | |
| parent | f8ebf6223626eea7baaccb40c1a1b9b029189da6 (diff) | |
devel/py-isal: Add py-isal 1.8.0
This package provides Python bindings for the ISA-L library. The Intel(R)
Intelligent Storage Acceleration Library (ISA-L) implements several key
algorithms in assembly language. This includes a variety of functions to provide
zlib/gzip-compatible compression.
python-isal provides the bindings by offering four modules:
- isal_zlib: A drop-in replacement for the zlib module that uses ISA-L to
accelerate its performance.
- igzip: A drop-in replacement for the gzip module that uses isal_zlib instead
of zlib to perform its compression and checksum tasks, which improves
performance.
- igzip_threaded offers an open function which returns buffered read or write
streams that can be used to read and write large files while escaping the GIL
using one or multiple threads. This functionality only works for streaming,
seeking is not supported.
- igzip_lib: Provides compression functions which have full access to the API of
ISA-L's compression functions.
| -rw-r--r-- | devel/Makefile | 1 | ||||
| -rw-r--r-- | devel/py-isal/Makefile | 28 | ||||
| -rw-r--r-- | devel/py-isal/distinfo | 3 | ||||
| -rw-r--r-- | devel/py-isal/files/patch-pyproject.toml | 18 | ||||
| -rw-r--r-- | devel/py-isal/pkg-descr | 17 |
5 files changed, 67 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 89b8e33a370b..fe9f8916cd7a 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -5106,6 +5106,7 @@ SUBDIR += py-ipython-pygments-lexers SUBDIR += py-ipython_genutils SUBDIR += py-ipywidgets + SUBDIR += py-isal SUBDIR += py-iso8601 SUBDIR += py-isodate SUBDIR += py-isoduration diff --git a/devel/py-isal/Makefile b/devel/py-isal/Makefile new file mode 100644 index 000000000000..716fccf6a881 --- /dev/null +++ b/devel/py-isal/Makefile @@ -0,0 +1,28 @@ +PORTNAME= isal +PORTVERSION= 1.8.0 +CATEGORIES= devel python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Python bindings for the ISA-L ibrary +WWW= https://python-isal.readthedocs.io/en/stable/ \ + https://github.com/pycompression/python-isal + +LICENSE= PSFL +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=8:devel/py-setuptools-scm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +LIB_DEPENDS= libisal.so:devel/isa-l + +USES= python +USE_PYTHON= autoplist concurrent pep517 + +MAKE_ENV= PYTHON_ISAL_LINK_DYNAMIC=1 + +post-install: + ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + + +.include <bsd.port.mk> diff --git a/devel/py-isal/distinfo b/devel/py-isal/distinfo new file mode 100644 index 000000000000..e8ba877c5138 --- /dev/null +++ b/devel/py-isal/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1768625559 +SHA256 (isal-1.8.0.tar.gz) = 124233e9a31a62030a07aafd48c26689561926f4e10417ed3ea46c211218f2b4 +SIZE (isal-1.8.0.tar.gz) = 4133365 diff --git a/devel/py-isal/files/patch-pyproject.toml b/devel/py-isal/files/patch-pyproject.toml new file mode 100644 index 000000000000..43ef07511259 --- /dev/null +++ b/devel/py-isal/files/patch-pyproject.toml @@ -0,0 +1,18 @@ +--- pyproject.toml.orig 2025-09-10 08:41:47 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools>=77", "setuptools-scm>=8"] ++requires = ["setuptools>=61", "setuptools-scm>=8"] + build-backend = "setuptools.build_meta" + + [project] +@@ -8,7 +8,7 @@ python bindings for the ISA-L ibrary.""" + description = """ + Faster zlib and gzip compatible compression and decompression by providing \ + python bindings for the ISA-L ibrary.""" +-license="PSF-2.0" ++license={text = "PSF-2.0"} + keywords=["isal", "isa-l", "compression", "deflate", "gzip", "igzip"] + authors = [{name = "Leiden University Medical Center"}, + {email = "r.h.p.vorderman@lumc.nl"}] diff --git a/devel/py-isal/pkg-descr b/devel/py-isal/pkg-descr new file mode 100644 index 000000000000..d7b02cc93c10 --- /dev/null +++ b/devel/py-isal/pkg-descr @@ -0,0 +1,17 @@ +This package provides Python bindings for the ISA-L library. The Intel(R) +Intelligent Storage Acceleration Library (ISA-L) implements several key +algorithms in assembly language. This includes a variety of functions to provide +zlib/gzip-compatible compression. + +python-isal provides the bindings by offering four modules: +- isal_zlib: A drop-in replacement for the zlib module that uses ISA-L to + accelerate its performance. +- igzip: A drop-in replacement for the gzip module that uses isal_zlib instead + of zlib to perform its compression and checksum tasks, which improves + performance. +- igzip_threaded offers an open function which returns buffered read or write + streams that can be used to read and write large files while escaping the GIL + using one or multiple threads. This functionality only works for streaming, + seeking is not supported. +- igzip_lib: Provides compression functions which have full access to the API of + ISA-L's compression functions. |
