summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Baptiste Volatier <jbv@pm.me>2021-11-12 14:24:05 +0000
committerEfraim Flashner <efraim@flashner.co.il>2021-11-16 15:16:44 +0200
commit546f8537aad3ac03fef43e036d3cab3abc943915 (patch)
tree1edc5c7e87b93c6490aa312be544c775f07ba80f
parente9a5fb7ad96072cd46623c87909f3a724c2e209d (diff)
gnu: Add julia-sundials-jull
* gnu/packages/julia-jll.scm (julia-sundials-jll): New variable. * gnu/packages/maths.scm (sundials-julia): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
-rw-r--r--gnu/packages/julia-jll.scm39
-rw-r--r--gnu/packages/maths.scm25
2 files changed, 64 insertions, 0 deletions
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 <nicolo@nixo.xyz>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2021 Jean-Baptiste Volatier <jbv@pm.me>
;;;
;;; 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")