apteryx pushed a commit to branch master in repository guix. commit f04d44562fde5bb96d820e14dc7129c26d0a4bd8 Author: Maxim Cournoyer <maxim.courno...@gmail.com> AuthorDate: Tue Dec 17 15:12:48 2024 +0900
gnu: Add c-blosc2. Adapted from https://raw.githubusercontent.com/Blosc/c-blosc2/refs/heads/main/.guix/modules/c-blosc2-package.scm. * gnu/packages/compression.scm (c-blosc2): New variable. Change-Id: Ic0f11487e8d920dd31dfb009485c204fa1b575f7 Signed-off-by: Maxim Cournoyer <maxim.courno...@gmail.com> Co-authored-by: Ivan Vilata i Balaguer <i...@selidor.net> --- gnu/packages/compression.scm | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 121b26b499..bb2a846c9a 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -33,7 +33,7 @@ ;;; Copyright © 2021 Antoine Côté <antoine.c...@posteo.net> ;;; Copyright © 2021 Vincent Legoll <vincent.leg...@gmail.com> ;;; Copyright © 2021 Simon Tournier <zimon.touto...@gmail.com> -;;; Copyright © 2021 Maxim Cournoyer <maxim.courno...@gmail.com> +;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim.courno...@gmail.com> ;;; Copyright © 2021 Ahmad Jarara <g...@ajarara.io> ;;; Copyright © 2022 Greg Hogan <c...@greghogan.com> ;;; Copyright © 2022 Zhu Zihao <all_but_l...@163.com> @@ -2804,6 +2804,46 @@ computations.") ;; other non-copyleft licenses. (license license:bsd-3))) +(define-public c-blosc2 + (package + (name "c-blosc2") + (version "2.15.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Blosc/c-blosc2") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17kqwvw2n6bgzidi8f5906s5hc9wm1lbfbpd491gf7csxjck99sx")))) + (build-system cmake-build-system) + (arguments + (list #:configure-flags #~(list "-DBUILD_STATIC=OFF" + "-DDEACTIVATE_AVX2=ON" + "-DDEACTIVATE_AVX512=ON" + "-DPREFER_EXTERNAL_LZ4=ON" + "-DPREFER_EXTERNAL_ZLIB=ON" + "-DPREFER_EXTERNAL_ZSTD=ON"))) + (inputs (list lz4 zlib `(,zstd "lib"))) + (home-page "https://blosc.org") + (synopsis "Blocking, shuffling and lossless compression library") + (description + "Blosc is a high performance compressor optimized for binary +data (i.e. floating point numbers, integers and booleans, although it can +handle string data too). It has been designed to transmit data to the +processor cache faster than the traditional, non-compressed, direct memory +fetch approach via a @code{memcpy()} system 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 is backward compatible with +both the C-Blosc1 API and its in-memory format. However, the reverse thing is +generally not true for the format; buffers generated with C-Blosc2 are not +format-compatible with C-Blosc1 (i.e. forward compatibility is not +supported).") + (license license:bsd-3))) + (define-public ecm (package (name "ecm")