diff --git a/dev-libs/c-blosc2/Manifest b/dev-libs/c-blosc2/Manifest index 6b5175a69b14b..d9ee74ed21a1a 100644 --- a/dev-libs/c-blosc2/Manifest +++ b/dev-libs/c-blosc2/Manifest @@ -1 +1,3 @@ DIST c-blosc2-2.23.1.gh.tar.gz 3338640 BLAKE2B 528b4b87d2b8e29648de131b1d01a62402dbfd582e141b7933fa1faaf102aa6bcd5e4348e54a6bed7ac3046866e5a2bee8a808a14ad38c50d1ca310a59d692b2 SHA512 c6dd74c6f31649d361395b4817a2ca2e0da5353c5cd3ef7ce5f3969251b3393aaf3c2941cc77dd41a9672efb8acc7f68a9e5e8acf86b978123eed13a1225f827 +DIST c-blosc2-3.0.0.gh.tar.gz 1823736 BLAKE2B c23bc88288f07903344da86117576fb29f5a2085d5c6d16a466b7152e7edbf47a1c4862d4ffa7e06bff48a75b03276a6748729ede65f623718a7659a09a14607 SHA512 d6d85682f2d9c269ca896e7fc893d32c226634008f61b6078200d484a168730251545ed01f011980152d8d4b5bec9f8ed0a365abe251de4459d51e81ceadc733 +DIST zfp-1.0.1.gh.tar.gz 508016 BLAKE2B 6911402dd70fa423ac0a3add54229e2603530c9444534da603e08c078c2a8087c78989f113756e4388b00e17ebb7fe92fb7e98f43fca837eaaa8c728cb2d41da SHA512 5bbd98ed2f98e75c654afa863cab3023abb2eeb8f203f9049c75d5dbdf4b364cfb5c8378e10e6aaeaf13242315ad4949b06619810a67b3adaed095b7e8a48d5a diff --git a/dev-libs/c-blosc2/c-blosc2-3.0.0.ebuild b/dev-libs/c-blosc2/c-blosc2-3.0.0.ebuild new file mode 100644 index 0000000000000..5d8103d603e71 --- /dev/null +++ b/dev-libs/c-blosc2/c-blosc2-3.0.0.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +ZFP_PV=1.0.1 +ZFP_P=zfp-${ZFP_PV} + +DESCRIPTION="Blocking, shuffling and lossless compression library" +HOMEPAGE=" + https://blosc.org/c-blosc2/c-blosc2.html + https://github.com/Blosc/c-blosc2/ +" +SRC_URI=" + https://github.com/Blosc/c-blosc2/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://github.com/LLNL/zfp/archive/${ZFP_PV}.tar.gz + -> ${ZFP_P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0/8" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test +zlib +zstd" +REQUIRED_USE="test? ( zlib zstd )" +RESTRICT="!test? ( test )" + +DEPEND=" + >=app-arch/lz4-1.7.5:= + zlib? ( virtual/zlib:= ) + zstd? ( app-arch/zstd:= ) +" +RDEPEND=" + ${DEPEND} +" + +# Tests fail in parallel, https://github.com/Blosc/c-blosc2/issues/432 +CTEST_JOBS=1 + +src_configure() { + # remove bundled libs (just in case) + rm -rf internal-complibs || die + + local mycmakeargs=( + -DBUILD_STATIC=OFF + -DBUILD_TESTS=$(usex test) + -DBUILD_BENCHMARKS=OFF + -DBUILD_EXAMPLES=OFF + -DBUILD_FUZZERS=OFF + -DDEACTIVATE_ZLIB=$(usex !zlib) + -DDEACTIVATE_ZSTD=$(usex !zstd) + -DPREFER_EXTERNAL_LZ4=ON + -DPREFER_EXTERNAL_ZLIB=ON + -DPREFER_EXTERNAL_ZSTD=ON + # TODO: unbundle? make plugins optional? + -DBLOSC_ZFP_SOURCE_DIR="${WORKDIR}/${ZFP_P}" + + # force regular zlib, at least for the time being + -DCMAKE_DISABLE_FIND_PACKAGE_ZLIB_NG=ON + + # upstream overrides CMAKE_C_FLAGS, preventing ${CFLAGS} defaults + # from applying, https://github.com/Blosc/c-blosc2/issues/433 + -DCMAKE_C_FLAGS="${CFLAGS}" + # why do we need to pass it explicitly? + -DCMAKE_INSTALL_INCLUDEDIR=include + ) + cmake_src_configure +}