git: d902c881754a - main - archivers/c-blosc2: Add c-blosc2 2.0.4

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Mon, 01 Nov 2021 13:45:12 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=d902c881754a647f4780899b439302af952bb102

commit d902c881754a647f4780899b439302af952bb102
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2021-11-01 13:23:11 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2021-11-01 13:41:15 +0000

    archivers/c-blosc2: Add c-blosc2 2.0.4
    
    Blosc is a high performance compressor optimized for binary data (i.e. floating
    point numbers, integers and booleans). It has been designed to transmit data to
    the processor cache faster than the traditional, non-compressed, direct memory
    fetch approach via a memcpy() OS call. Blosc main goal is not just to reduce the
    size of large datasets on-disk or in-memory, but also to accelerate memory-bound
    computations.
    
    C-Blosc2 is the new major version of C-Blosc, and tries hard to be backward
    compatible with both the C-Blosc1 API and its in-memory format. However, the
    reverse thing is generally not true; buffers generated with C-Blosc2 are not
    format-compatible with C-Blosc1 (i.e. forward compatibility is not supported).
    
    WWW: https://www.blosc.org/
    WWW: https://github.com/Blosc/c-blosc2
---
 archivers/Makefile           |  1 +
 archivers/c-blosc2/Makefile  | 28 ++++++++++++++++++++++++++++
 archivers/c-blosc2/distinfo  |  3 +++
 archivers/c-blosc2/pkg-descr | 14 ++++++++++++++
 archivers/c-blosc2/pkg-plist | 11 +++++++++++
 5 files changed, 57 insertions(+)

diff --git a/archivers/Makefile b/archivers/Makefile
index 48ae8c9cf95d..dbe2ea177dd4 100644
--- a/archivers/Makefile
+++ b/archivers/Makefile
@@ -13,6 +13,7 @@
     SUBDIR += bzip
     SUBDIR += bzip2
     SUBDIR += c-blosc
+    SUBDIR += c-blosc2
     SUBDIR += cabextract
     SUBDIR += cmdpack
     SUBDIR += dact
diff --git a/archivers/c-blosc2/Makefile b/archivers/c-blosc2/Makefile
new file mode 100644
index 000000000000..7d421e619990
--- /dev/null
+++ b/archivers/c-blosc2/Makefile
@@ -0,0 +1,28 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+
+PORTNAME=	c-blosc2
+PORTVERSION=	2.0.4
+DISTVERSIONPREFIX=	v
+CATEGORIES=	archivers
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	High performance compressor optimized for binary data
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
+
+LIB_DEPENDS=	liblz4.so:archivers/liblz4 \
+		libzstd.so:archivers/zstd
+
+USES=		cmake
+
+CMAKE_OFF=	BUILD_LITE DEACTIVATE_AVX2 DEACTIVATE_ZLIB DEACTIVATE_ZSTD
+CMAKE_ON=	BUILD_BENCHMARKS BUILD_EXAMPLES BUILD_FUZZERS BUILD_PLUGINS BUILD_SHARED BUILD_STATIC BUILD_TESTS DEACTIVATE_IPP PREFER_EXTERNAL_LZ4 PREFER_EXTERNAL_ZLIB PREFER_EXTERNAL_ZSTD TEST_INCLUDE_COMPAT TEST_INCLUDE_EXAMPLES
+USE_LDCONFIG=	yes
+
+PLIST_SUB=	PORTVERSION=${PORTVERSION}
+
+GH_ACCOUNT=	Blosc
+USE_GITHUB=	yes
+
+.include <bsd.port.mk>
diff --git a/archivers/c-blosc2/distinfo b/archivers/c-blosc2/distinfo
new file mode 100644
index 000000000000..4f622a26dcf2
--- /dev/null
+++ b/archivers/c-blosc2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1635730865
+SHA256 (Blosc-c-blosc2-v2.0.4_GH0.tar.gz) = 90c78edcc262759dd16d243141513310624bb4fda3d98ac34dcfb78255e151c1
+SIZE (Blosc-c-blosc2-v2.0.4_GH0.tar.gz) = 2062503
diff --git a/archivers/c-blosc2/pkg-descr b/archivers/c-blosc2/pkg-descr
new file mode 100644
index 000000000000..901e7eddc1f3
--- /dev/null
+++ b/archivers/c-blosc2/pkg-descr
@@ -0,0 +1,14 @@
+Blosc is a high performance compressor optimized for binary data (i.e. floating
+point numbers, integers and booleans). It has been designed to transmit data to
+the processor cache faster than the traditional, non-compressed, direct memory
+fetch approach via a memcpy() OS call. Blosc main goal is not just to reduce the
+size of large datasets on-disk or in-memory, but also to accelerate memory-bound
+computations.
+
+C-Blosc2 is the new major version of C-Blosc, and tries hard to be backward
+compatible with both the C-Blosc1 API and its in-memory format. However, the
+reverse thing is generally not true; buffers generated with C-Blosc2 are not
+format-compatible with C-Blosc1 (i.e. forward compatibility is not supported).
+
+WWW: https://www.blosc.org/
+WWW: https://github.com/Blosc/c-blosc2
diff --git a/archivers/c-blosc2/pkg-plist b/archivers/c-blosc2/pkg-plist
new file mode 100644
index 000000000000..571b277c76f4
--- /dev/null
+++ b/archivers/c-blosc2/pkg-plist
@@ -0,0 +1,11 @@
+include/blosc2.h
+include/blosc2/blosc2-common.h
+include/blosc2/blosc2-export.h
+include/blosc2/blosc2-stdio.h
+include/blosc2/codecs-registry.h
+include/blosc2/filters-registry.h
+lib/libblosc2.a
+lib/libblosc2.so
+lib/libblosc2.so.2
+lib/libblosc2.so.%%PORTVERSION%%
+libdata/pkgconfig/blosc2.pc