diff --git a/gnu/packages/julia-jll.scm b/gnu/packages/julia-jll.scm index d8cf5b9eaf..3f2b0c1dec 100644 --- a/gnu/packages/julia-jll.scm +++ b/gnu/packages/julia-jll.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2021 Nicolò Balzarotti ;;; Copyright © 2021 Simon Tournier ;;; Copyright © 2021 Efraim Flashner +;;; Copyright © 2021 Jean-Baptiste Volatier ;;; ;;; This file is part of GNU Guix. ;;; @@ -2759,3 +2760,41 @@ build tree Yggdrasil.") (synopsis "Zstd library wrappers") (description "This package provides a wrapper for the zstd library.") (license license:expat))) + +(define-public julia-sundials-jll + (package + (name "julia-sundials-jll") + (version "5.2.1+0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaBinaryWrappers/Sundials_jll.jl") + (commit (string-append "Sundials-v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0cijb9frq8gj8bjpqf2lr5d0jxlj262y6h6xi4z3536dingrvffc")))) + (build-system julia-build-system) + (arguments + '(#:tests? #f ; no runtests + #:phases + (modify-phases %standard-phases + (add-after 'link-depot 'override-binary-path + (lambda* (#:key inputs #:allow-other-keys) + (map + (lambda (wrapper) + (substitute* wrapper + (("global artifact_dir.*") + (string-append + "global artifact_dir = \"" + (assoc-ref inputs "sundials") "\"\n")))) + ;; There's a Julia file for each platform, override them all + (find-files "src/wrappers/" "\\.jl$"))))))) + (inputs + `(("sundials" ,sundials-julia))) + (propagated-inputs + `(("julia-jllwrappers" ,julia-jllwrappers))) + (home-page "https://github.com/JuliaBinaryWrappers/Sundials_jll.jl") + (synopsis "SUndials library wrappers") + (description "This package provides a wrapper for the sundials library.") + (license license:expat))) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5152fe6942..a6fe2b5f49 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6159,6 +6159,31 @@ easily be incorporated into existing simulation codes.") ,%openmpi-setup))))) (synopsis "SUNDIALS with OpenMPI support"))) +(define-public sundials-julia + (package + (inherit sundials) + (name "sundials-julia") + (version "5.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/LLNL/sundials") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nx4sqhmi126m14myzm7syv2053harav9snl0a247wnkcgs5rxrv")))) + (inputs + `(("lapack" ,lapack) + ,@(package-inputs sundials))) + (arguments + (substitute-keyword-arguments (package-arguments sundials) + ((#:configure-flags flags '()) + `(cons* "-DLAPACK_ENABLE:BOOL=ON" + ,flags)))) + (synopsis "SUNDIALS with lapack support as required by julia-sundials-jll"))) + (define-public combinatorial-blas (package (name "combinatorial-blas")