Add many julia packages (separate this in multiple commits)
This commit is contained in:
parent
8aa3c608a8
commit
d5893da6f6
|
@ -1071,7 +1071,7 @@ and GPU architectures.")
|
|||
(define-public gr
|
||||
(package
|
||||
(name "gr")
|
||||
(version "0.41.4")
|
||||
(version "0.41.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1081,7 +1081,7 @@ and GPU architectures.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1r3f0vqw85i9g3awzfh20zzjcc71h8r7nld2qv4rmqf3gigck2kr"))
|
||||
"1iymzpa6wbbn3vh7n11ax859bmxwq74n2n3y012fd5ad369yflcj"))
|
||||
(modules '((guix build utils)))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -3426,6 +3426,42 @@ packages.")
|
|||
;; GPUQREngine, RBio, SuiteSparse_GPURuntime, SuiteSparseQR, UMFPACK
|
||||
(license (list license:gpl2+ license:lgpl2.1+))))
|
||||
|
||||
(define-public suitesparse-wrapper
|
||||
(package
|
||||
(name "suitesparse-wrapper")
|
||||
(version "5.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url
|
||||
"https://github.com/JuliaLinearAlgebra/SuiteSparseBuilder.git")
|
||||
(commit (string-append "v" version "-0.2.20-1"))))
|
||||
(file-name "SuiteSparse")
|
||||
(sha256
|
||||
(base32 "0wj4ipjv415aib5h398b1qxmwjk54f577n8h7dn68dkybpd2rnp3"))))
|
||||
(native-inputs `(("suitesparse" ,suitesparse)))
|
||||
(arguments
|
||||
`(#:tests? #f ; no "check" target
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "prefix=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-before 'build 'make-output
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(mkdir-p (string-append (assoc-ref outputs "out") "/lib"))
|
||||
#t))
|
||||
(add-before 'build 'change-directory
|
||||
(lambda _
|
||||
(chdir "src/SuiteSparse_wrapper/")
|
||||
#t)))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://julialinearalgebra.github.io/SuiteSparse.jl/latest/")
|
||||
(synopsis "SuiteSparse wrappers used by Julia SuiteSparse.jl")
|
||||
(description "Binary wrappes for the Julia SuiteSparse.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public atlas
|
||||
(package
|
||||
(name "atlas")
|
||||
|
|
|
@ -58,6 +58,7 @@
|
|||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages julia)
|
||||
#:use-module (gnu packages libffi)
|
||||
#:use-module (gnu packages machine-learning)
|
||||
#:use-module (gnu packages maths)
|
||||
|
@ -395,6 +396,50 @@ available, greatly increasing its breadth and scope.")
|
|||
(description
|
||||
"This package provides the R math library as an independent package.")))
|
||||
|
||||
(define-public rmath-julia
|
||||
(package
|
||||
(name "rmath-julia")
|
||||
(version "0.2.2")
|
||||
(source
|
||||
;; This ships it's own version of Rmath sources, version 3.4.1
|
||||
;; Not sure if we should move our own there
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/JuliaStats/Rmath-julia.git")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "107l5fgd7m1dx5wl53zvjxq8qnb5smzsnpganrhxycjgw708manj"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("julia" ,julia)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(delete 'install)
|
||||
(delete 'check)
|
||||
(add-after 'build 'check
|
||||
(lambda _
|
||||
;; test.jl is a bit outdated
|
||||
(substitute* "test.jl"
|
||||
;; Random required for randexp
|
||||
(("using Base.Test") "using Test; using Random")
|
||||
(("Void") "Cvoid")
|
||||
(("cfunction") "@cfunction"))
|
||||
(invoke "julia" "test.jl") #t))
|
||||
(add-after 'check 'install
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
(let ((out (string-append (assoc-ref outputs "out") "/lib/")))
|
||||
(mkdir-p out)
|
||||
(copy-file "src/libRmath-julia.so"
|
||||
(string-append out "libRmath-julia.so")))
|
||||
#t)))))
|
||||
(home-page "https://github.com/JuliaStats/Rmath-julia")
|
||||
(synopsis "The Rmath library from R, for Julia")
|
||||
(description
|
||||
"This is a slightly modified version of the standalone Rmath library from R, built to be used with the Rmath.jl Julia package.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-boot
|
||||
(package
|
||||
(name "r-boot")
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
|
||||
(define* (julia-build store name inputs
|
||||
#:key source
|
||||
(tests? #t)
|
||||
(tests? #f)
|
||||
(phases '(@ (guix build julia-build-system)
|
||||
%standard-phases))
|
||||
(outputs '("out"))
|
||||
|
|
|
@ -79,16 +79,21 @@
|
|||
#t)
|
||||
|
||||
(define* (check #:key tests? source inputs outputs #:allow-other-keys)
|
||||
(display "Running tests")
|
||||
(when tests?
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(package (strip-store-file-name source))
|
||||
(builddir (string-append out "/share/julia/")))
|
||||
(setenv "JULIA_DEPOT_PATH" builddir)
|
||||
(setenv "JULIA_LOAD_PATH" (generate-load-path inputs outputs))
|
||||
(display builddir)
|
||||
(invoke "julia" (string-append builddir
|
||||
"packages/"
|
||||
package "/test/runtests.jl"))))
|
||||
;; Sometimes tests require files in the current directory
|
||||
(with-directory-excursion
|
||||
(string-append builddir "packages/" package "/test")
|
||||
(invoke "julia"
|
||||
;; Force bound checking even when annotated not to
|
||||
;; This appears to be the default on travis
|
||||
"--check-bounds=yes"
|
||||
"runtests.jl"))))
|
||||
#t)
|
||||
|
||||
(define (julia-create-package-toml outputs source
|
||||
|
@ -123,7 +128,7 @@ version = \"" version "\"
|
|||
(delete 'check) ; tests must be run after installation
|
||||
(replace 'install install)
|
||||
(add-after 'install 'precompile precompile)
|
||||
(add-after 'install 'check check)
|
||||
(add-after 'precompile 'check check)
|
||||
;; TODO: In the future we could add a "system-image-generation" phase
|
||||
;; where we use PackageCompiler.jl to speed up package loading times
|
||||
(delete 'configure)
|
||||
|
|
Loading…
Reference in New Issue