From c6397e3e4cdedf3dbeedcb1e5de23e8e27053a5a Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Tue, 4 Feb 2020 16:36:47 +0100 Subject: gnu: Add cl-hdf5-cffi. * gnu/packages/lisp-xyz.scm (sbcl-hdf5-cffi, cl-hdf5-cffi, ecl-hdf5-cffi): New variables. Signed-off-by: Guillaume Le Vaillant --- gnu/packages/lisp-xyz.scm | 64 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index c878542d66..5f7c3ea030 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2019 Jesse Gildersleve ;;; Copyright © 2019, 2020 Guillaume Le Vaillant ;;; Copyright © 2019 Brett Gilio +;;; Copyright © 2020 Konrad Hinsen ;;; ;;; This file is part of GNU Guix. ;;; @@ -10157,3 +10158,66 @@ them as PNG files.") (define-public ecl-cl-qrencode (sbcl-package->ecl-package sbcl-cl-qrencode)) + +(define-public sbcl-hdf5-cffi + (let ((commit "5b5c88f191e470e4fe96b462334e3ce0806eed5c") + (revision "1")) + (package + (name "sbcl-hdf5-cffi") + (version (git-version "1.8.18" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hdfgroup/hdf5-cffi.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0vda3075423xz83qky998lpac5b04dwfv7bwgh9jq8cs5v0zrxjf")))) + (build-system asdf-build-system/sbcl) + (synopsis "Common Lisp bindings for the HDF5 library") + (description + "@code{hdf5-cffi} is a CFFI wrapper for the HDF5 library.") + (home-page "https://github.com/hdfgroup/hdf5-cffi") + (license (license:non-copyleft + (string-append "https://github.com/HDFGroup/hdf5-cffi/raw/" + commit + "/LICENSE"))) + (inputs + `(("cffi" ,sbcl-cffi) + ("cffi-grovel" ,sbcl-cffi-grovel) + ("hdf5" ,hdf5-1.10))) + (native-inputs + `(("fiveam" ,sbcl-fiveam))) + (arguments + `(#:asd-system-name "hdf5-cffi" + #:asd-file "hdf5-cffi.asd" + #:test-asd-file "hdf5-cffi.test.asd" + ;; Tests depend on hdf5-cffi.examples.asd in addition to hdf5-cffi.asd, + ;; I don't know if there is a way to tell asdf-build-system to load + ;; an additional system first, so tests are disabled. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/library.lisp" + (("libhdf5.so") + (string-append + (assoc-ref inputs "hdf5") + "/lib/libhdf5.so"))))) + (add-after 'unpack 'fix-dependencies + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "hdf5-cffi.asd" + ((":depends-on \\(:cffi\\)") + ":depends-on (:cffi :cffi-grovel)")) + (substitute* "hdf5-cffi.test.asd" + ((":depends-on \\(:cffi :hdf5-cffi") + ":depends-on (:cffi :cffi-grovel :hdf5-cffi")))))))))) + +(define-public cl-hdf5-cffi + (sbcl-package->cl-source-package sbcl-hdf5-cffi)) + +(define-public ecl-hdf5-cffi + (sbcl-package->ecl-package sbcl-hdf5-cffi)) -- cgit v1.2.3