summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2021-05-31 11:48:36 +0300
committerEfraim Flashner <efraim@flashner.co.il>2021-05-31 12:54:47 +0300
commit277fef2026024c90518e0eff12a06b9593782f40 (patch)
tree2c3d98185f8da66df7f808e8db27c59aea90e663 /gnu
parentf273a4b799e5cb3976785f2ea3e8a36074dc6724 (diff)
downloadguix-277fef2026024c90518e0eff12a06b9593782f40.tar.gz
gnu: Add julia-quadmath.
* gnu/packages/julia-xyz.scm (julia-quadmath): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/julia-xyz.scm38
1 files changed, 38 insertions, 0 deletions
diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 51bd9241b0..33f597ca3f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -23,6 +23,7 @@
   #:use-module (guix packages)
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages julia-jll))
 
 (define-public julia-abstractffts
@@ -1516,6 +1517,43 @@ actual computation.")
 plotting components.")
     (license license:expat)))
 
+(define-public julia-quadmath
+  (package
+    (name "julia-quadmath")
+    (version "0.5.5")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaMath/Quadmath.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "051biw4b9zni7cmh2f1yzifp1v8wazlfxrdz4p44lyd1wba6379w"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'hardcode-libmath-location
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((gcclib (assoc-ref inputs "gcc:lib")))
+               (substitute* "src/Quadmath.jl"
+                 (("libgcc_s.so.1" lib) (string-append gcclib "/lib/" lib))
+                 (("libquadmath.so.0" lib) (string-append gcclib "/lib/" lib)))
+               #t))))))
+    (propagated-inputs
+     `(("julia-requires" ,julia-requires)))
+    (inputs
+     `(("gcc:lib" ,gcc "lib")))
+    (native-inputs
+     `(("julia-specialfunctions" ,julia-specialfunctions)))
+    (home-page "https://github.com/JuliaMath/Quadmath.jl")
+    (synopsis "Float128 and libquadmath for the Julia language")
+    (description "This is a Julia interface to @code{libquadmath}, providing a
+@code{Float128} type corresponding to the IEEE754 binary128 floating point
+format.")
+    (license license:expat)))
+
 (define-public julia-queryoperators
   (package
     (name "julia-queryoperators")