diff --git a/archivers/Makefile b/archivers/Makefile index 624b2b7128ae..5bfce871b36c 100644 --- a/archivers/Makefile +++ b/archivers/Makefile @@ -1,283 +1,284 @@ COMMENT = Archivers SUBDIR += 7-zip SUBDIR += 9e SUBDIR += R-cran-zip SUBDIR += advancecomp SUBDIR += amigadepacker SUBDIR += ancient SUBDIR += apache-commons-compress SUBDIR += arc SUBDIR += arj SUBDIR += ark SUBDIR += atool SUBDIR += bicom SUBDIR += brotli SUBDIR += bzip SUBDIR += bzip2 SUBDIR += c-blosc SUBDIR += c-blosc2 SUBDIR += cabextract SUBDIR += ccmix SUBDIR += cmdpack SUBDIR += dact SUBDIR += deb2targz SUBDIR += deco SUBDIR += deutex SUBDIR += dpkg SUBDIR += draco SUBDIR += dzip SUBDIR += engrampa SUBDIR += fastjar SUBDIR += file-roller SUBDIR += fpc-bzip2 SUBDIR += fpc-unzip SUBDIR += gcab SUBDIR += gcpio SUBDIR += gnome-autoar SUBDIR += grzip SUBDIR += gtar SUBDIR += gzip SUBDIR += gzip-hpp SUBDIR += gzrecover SUBDIR += ha SUBDIR += hlextract SUBDIR += innoextract SUBDIR += javatar SUBDIR += jzlib SUBDIR += kf5-karchive SUBDIR += kzip SUBDIR += laszip SUBDIR += lazperf SUBDIR += lbrate SUBDIR += lbzip2 SUBDIR += lcab SUBDIR += lha SUBDIR += lha-ac SUBDIR += lhasa SUBDIR += lib1541img SUBDIR += libarc SUBDIR += libarchive SUBDIR += libarchive-qt SUBDIR += libcabinet SUBDIR += libcomprex SUBDIR += libdeflate SUBDIR += libdynamite SUBDIR += liblz4 SUBDIR += liblzxcomp SUBDIR += libmspack SUBDIR += libpar2 SUBDIR += librtfcomp SUBDIR += libunrar SUBDIR += libunrar6 SUBDIR += libzip SUBDIR += libzippp SUBDIR += linux-c7-lz4 SUBDIR += lizard SUBDIR += lrzip SUBDIR += lua-lzlib SUBDIR += lua-zlib SUBDIR += lxqt-archiver SUBDIR += lzfse SUBDIR += lzip SUBDIR += lziprecover SUBDIR += lzlib SUBDIR += lzma SUBDIR += lzmalib SUBDIR += lzo2 SUBDIR += lzop SUBDIR += makeself SUBDIR += mar SUBDIR += maxcso SUBDIR += minizip SUBDIR += minizip-ng SUBDIR += mscompress SUBDIR += mtf SUBDIR += nevada-toolset SUBDIR += nfpm SUBDIR += nomarch SUBDIR += nwreckdum SUBDIR += ocaml-bz2 SUBDIR += ocaml-zip SUBDIR += opkg-openwrt SUBDIR += ouch SUBDIR += p5-Archive-Any SUBDIR += p5-Archive-Any-Lite SUBDIR += p5-Archive-Any-Plugin-Rar SUBDIR += p5-Archive-Extract SUBDIR += p5-Archive-Extract-Libarchive SUBDIR += p5-Archive-Libarchive SUBDIR += p5-Archive-Peek SUBDIR += p5-Archive-Rar SUBDIR += p5-Archive-SimpleExtractor SUBDIR += p5-Archive-Tar SUBDIR += p5-Archive-Tar-Wrapper SUBDIR += p5-Archive-Zip SUBDIR += p5-Compress-Bzip2 SUBDIR += p5-Compress-LZ4 SUBDIR += p5-Compress-LZF SUBDIR += p5-Compress-LZO SUBDIR += p5-Compress-LZW SUBDIR += p5-Compress-Raw-Bzip2 SUBDIR += p5-Compress-Raw-Lzma SUBDIR += p5-Compress-Raw-Zlib SUBDIR += p5-Compress-Snappy SUBDIR += p5-Compress-Zstd SUBDIR += p5-Gzip-Faster SUBDIR += p5-IO-Compress SUBDIR += p5-IO-Compress-Brotli SUBDIR += p5-IO-Compress-Lzf SUBDIR += p5-IO-Compress-Lzma SUBDIR += p5-IO-Compress-Lzop SUBDIR += p5-IO-Zlib SUBDIR += p5-Mac-Macbinary SUBDIR += p5-POE-Filter-Bzip2 SUBDIR += p5-POE-Filter-LZF SUBDIR += p5-POE-Filter-LZO SUBDIR += p5-POE-Filter-LZW SUBDIR += p5-POE-Filter-Zlib SUBDIR += p5-PerlIO-gzip SUBDIR += p5-PerlIO-via-Bzip2 SUBDIR += packddir SUBDIR += paq SUBDIR += par SUBDIR += par2cmdline SUBDIR += par2cmdline-turbo SUBDIR += parchive SUBDIR += pbzip2 SUBDIR += pear-File_Archive SUBDIR += pear-Horde_Compress SUBDIR += pear-Horde_Compress_Fast SUBDIR += pear-Horde_Pack SUBDIR += pear-PHP_Archive SUBDIR += peazip SUBDIR += pecl-lzf SUBDIR += pecl-rar SUBDIR += php-brotli SUBDIR += php-horde_lz4 SUBDIR += php-lz4 SUBDIR += php-snappy SUBDIR += php-zstd SUBDIR += php80-bz2 SUBDIR += php80-phar SUBDIR += php80-zip SUBDIR += php80-zlib SUBDIR += php81-bz2 SUBDIR += php81-phar SUBDIR += php81-zip SUBDIR += php81-zlib SUBDIR += php82-bz2 SUBDIR += php82-phar SUBDIR += php82-zip SUBDIR += php82-zlib SUBDIR += pigz SUBDIR += pixz SUBDIR += plzip SUBDIR += ppmd SUBDIR += ppunpack SUBDIR += pxz SUBDIR += py-acefile + SUBDIR += py-blosc2 SUBDIR += py-borgbackup SUBDIR += py-borgbackup11 SUBDIR += py-brotli SUBDIR += py-brotlicffi SUBDIR += py-brotlipy SUBDIR += py-bup SUBDIR += py-bz2file SUBDIR += py-compressed-rtf SUBDIR += py-cramjam SUBDIR += py-libarchive-c SUBDIR += py-lz4 SUBDIR += py-lzma SUBDIR += py-lzstring SUBDIR += py-python-lhafile SUBDIR += py-python-lzo SUBDIR += py-python-rpm-packaging SUBDIR += py-python-snappy SUBDIR += py-rarfile SUBDIR += py-rcssmin SUBDIR += py-rjsmin SUBDIR += py-sozipfile SUBDIR += py-warctools SUBDIR += py-xopen SUBDIR += py-zopfli SUBDIR += py-zstandard SUBDIR += py-zstd SUBDIR += qpress SUBDIR += quazip SUBDIR += rar SUBDIR += rpm2cpio SUBDIR += rpm4 SUBDIR += rubygem-archive-tar-minitar SUBDIR += rubygem-archive-zip SUBDIR += rubygem-bzip2-ruby SUBDIR += rubygem-fpm SUBDIR += rubygem-libarchive SUBDIR += rubygem-minitar SUBDIR += rubygem-minitar-cli SUBDIR += rubygem-ruby-xz SUBDIR += rubygem-rubyzip SUBDIR += rubygem-rubyzip13 SUBDIR += rubygem-rubyzip2 SUBDIR += rubygem-rubyzip20 SUBDIR += rubygem-snappy SUBDIR += rvm SUBDIR += rzip SUBDIR += sectar SUBDIR += sharutils SUBDIR += snappy SUBDIR += snappy-java SUBDIR += snzip SUBDIR += squsq SUBDIR += star SUBDIR += stormlib SUBDIR += streamvbyte SUBDIR += stuffit SUBDIR += szip SUBDIR += tar-stream-chunker SUBDIR += tardy SUBDIR += tartest SUBDIR += thunar-archive-plugin SUBDIR += torrentzip SUBDIR += ucl SUBDIR += unace SUBDIR += unadf SUBDIR += unalz SUBDIR += unarchiver SUBDIR += unarj SUBDIR += unarr SUBDIR += undms SUBDIR += unfoo SUBDIR += unlzx SUBDIR += unmakeself SUBDIR += unmass SUBDIR += unrar SUBDIR += unrar-iconv SUBDIR += unrpa SUBDIR += unshield SUBDIR += unzip SUBDIR += unzoo SUBDIR += upx SUBDIR += urbackup-client SUBDIR += urbackup-server SUBDIR += v1541commander SUBDIR += vbz-compression SUBDIR += xar SUBDIR += xarchive SUBDIR += xarchiver SUBDIR += xdms SUBDIR += xmill SUBDIR += xpk SUBDIR += zchunk SUBDIR += zip SUBDIR += zipmix SUBDIR += zipper SUBDIR += zlib-ng SUBDIR += zoo SUBDIR += zopfli SUBDIR += zpaqfranz SUBDIR += zstd SUBDIR += zstr SUBDIR += zutils .include diff --git a/archivers/py-blosc2/Makefile b/archivers/py-blosc2/Makefile new file mode 100644 index 000000000000..8b933417ea54 --- /dev/null +++ b/archivers/py-blosc2/Makefile @@ -0,0 +1,41 @@ +PORTNAME= blosc2 +PORTVERSION= 2.2.0 +CATEGORIES= archivers python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Python wrapper for the C-Blosc2 library +WWW= https://github.com/Blosc/python-blosc2 + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +BUILD_DEPENDS= cmake:devel/cmake-core \ + ninja:devel/ninja \ + ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}scikit-build>=0:devel/py-scikit-build@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} +LIB_DEPENDS= libblosc2.so:archivers/c-blosc2 +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}ndindex>=1.4:math/py-ndindex@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}numpy>=1.20.3,1:math/py-numpy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}py-cpuinfo>=0:sysutils/py-py-cpuinfo@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}rich>=0:textproc/py-rich@${PY_FLAVOR} + +USES= pkgconfig python:3.8+ +USE_PYTHON= autoplist concurrent cython pep517 + +MAKE_ENV= CMAKE_ARGS=-DUSE_SYSTEM_BLOSC2=ON + +post-extract: + @${RM} ${WRKSRC}/blosc2/c-blosc2/blosc/shuffle-avx2.c.orig + +post-patch: +# Clean up bundled libraries + @${RM} -r ${WRKSRC}/blosc2/c-blosc2/ + +post-install: + ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + + +.include diff --git a/archivers/py-blosc2/distinfo b/archivers/py-blosc2/distinfo new file mode 100644 index 000000000000..09a27244985f --- /dev/null +++ b/archivers/py-blosc2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1681052880 +SHA256 (blosc2-2.2.0.tar.gz) = 4cf3893fe85da4bd899ecf7a457fd09b2212fad256182100108de7a92b88aa87 +SIZE (blosc2-2.2.0.tar.gz) = 4135248 diff --git a/archivers/py-blosc2/files/patch-pyproject.toml b/archivers/py-blosc2/files/patch-pyproject.toml new file mode 100644 index 000000000000..0493f71cbd28 --- /dev/null +++ b/archivers/py-blosc2/files/patch-pyproject.toml @@ -0,0 +1,9 @@ +--- pyproject.toml.orig 2023-04-04 10:26:30 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools", "scikit-build", "cython", "cmake", "ninja", "oldest-supported-numpy"] ++requires = ["setuptools", "scikit-build", "cython", "numpy"] + + [tool.cibuildwheel] + skip = "cp36-* cp37-* pp37-* *-manylinux_i686 *_ppc64le *_s390x *-musllinux*" diff --git a/archivers/py-blosc2/pkg-descr b/archivers/py-blosc2/pkg-descr new file mode 100644 index 000000000000..0a8ee49311ca --- /dev/null +++ b/archivers/py-blosc2/pkg-descr @@ -0,0 +1,17 @@ +C-Blosc2 is the new major version of C-Blosc, and is backward compatible with +both the C-Blosc1 API and its in-memory format. Python-Blosc2 is a Python +package that wraps C-Blosc2, the newest version of the Blosc compressor. + +Currently Python-Blosc2 already reproduces the API of Python-Blosc, so it can be +used as a drop-in replacement. However, there are a few exceptions for a full +compatibility. + +In addition, Python-Blosc2 aims to leverage the new C-Blosc2 API so as to +support super-chunks, multi-dimensional arrays (NDArray), serialization and +other bells and whistles introduced in C-Blosc2. Although this is always and +endless process, we have already catch up with most of the C-Blosc2 API +capabilities. + +Note: Python-Blosc2 is meant to be backward compatible with Python-Blosc data. +That means that it can read data generated with Python-Blosc, but the opposite +is not true (i.e. there is no forward compatibility).