;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2017, 2018, 2019 Paul Garlick <pgarlick@tourbillion-technology.com>
+;;; Copyright © 2017, 2018, 2019, 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Dave Love <me@fx@gnu.org>
-;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2018, 2019 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com>
;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Eric Brown <brown@fastmail.com>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2018 Amin Bandali <bandali@gnu.org>
+;;; Copyright © 2018 Amin Bandali <mab@gnu.org>
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
+;;; Copyright © 2019 Robert Smith <robertsmith@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
- #:use-module (guix build-system r)
#:use-module (guix build-system ruby)
#:use-module (gnu packages algebra)
#:use-module (gnu packages audio)
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages netpbm)
+ #:use-module (gnu packages onc-rpc)
#:use-module (gnu packages pcre)
#:use-module (gnu packages popt)
#:use-module (gnu packages perl)
(define-public gsl
(package
(name "gsl")
- (version "2.5")
+ (version "2.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gsl/gsl-"
version ".tar.gz"))
(sha256
(base32
- "1395y9hlhqadn5g9j8q22224fds5sd92jxi9czfavjj24myasq04"))
- (patches (search-patches "gsl-test-i686.patch"))))
+ "1a460zj9xmbgvcymkdhqh313c4l29mn9cffbi5vf33x3qygk70mp"))))
(build-system gnu-build-system)
(arguments
`(;; Currently there are numerous tests that fail on "exotic"
computing convex hulls.")
(license license:gpl2+)))
+(define-public lrslib
+ (package
+ (name "lrslib")
+ (version "7.0a")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/"
+ "lrslib-0"
+ (string-delete #\. version) ".tar.gz"))
+ (sha256
+ (base32
+ "034fa45r9hwx6ljmgpxk2872q34nklkalpdkc6s9hqw57rivi36k"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("gmp" ,gmp)))
+ (arguments
+ `(#:tests? #f ; no check phase
+ #:make-flags `("CC=gcc"
+ ,(string-append "prefix=" (assoc-ref %outputs "out"))
+ "all-shared")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (substitute* "makefile"
+ (("-L \\.") "-L . -Wl,-rpath='$$ORIGIN/../lib'"))
+ #t)))))
+ (home-page "http://cgm.cs.mcgill.ca/~avis/C/lrs.html")
+ (synopsis "Convex hulls of polyhedra with exact arithmetic")
+ (description
+ "The C code of lrslib implements the reverse search algorithm for
+vertex enumeration and convex hull problems. Its input file format is
+compatible with cddlib. All computations are done exactly in either
+multiple precision or fixed integer arithmetic. Output is not stored
+in memory, so even problems with very large output sizes can sometimes
+be solved.")
+ (license license:gpl2+)))
+
(define-public arpack-ng
(package
(name "arpack-ng")
(define-public lapack
(package
(name "lapack")
- (version "3.7.1")
+ (version "3.9.0")
(source
(origin
(method url-fetch)
version ".tgz"))
(sha256
(base32
- "1j51r7n5w4k7r3lrvy7710xrpkg40wf4rqnmngfz6ck9ypckzign"))))
+ "1155qixp26c12yrxc76z9mlfw2h3xxymxxv5znpgzh5gaykpndgj"))))
(build-system cmake-build-system)
(home-page "http://www.netlib.org/lapack/")
(inputs `(("fortran" ,gfortran)
- ("python" ,python-2)))
+ ("python" ,python-wrapper)))
(arguments
`(#:configure-flags (list
"-DBUILD_SHARED_LIBS:BOOL=YES"
"-DLAPACKE=ON"
-
;; Build the 'LAPACKE_clatms' functions.
- "-DLAPACKE_WITH_TMG=ON")
- #:phases
- (modify-phases %standard-phases
- (add-before 'check 'patch-python
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((python (assoc-ref inputs "python")))
- (substitute* "lapack_testing.py"
- (("/usr/bin/env python") python)))
- #t)))))
+ "-DLAPACKE_WITH_TMG=ON"
+ "-DBUILD_TESTING=ON")))
(synopsis "Library for numerical linear algebra")
(description
"LAPACK is a Fortran 90 library for solving the most commonly occurring
(define-public hdf4
(package
(name "hdf4")
- (version "4.2.13")
+ (version "4.2.14")
(source
(origin
(method url-fetch)
(uri (string-append "https://support.hdfgroup.org/ftp/HDF/releases/HDF"
version "/src/hdf-" version ".tar.bz2"))
(sha256
- (base32 "1wz0586zh91pqb95wvr0pbh71a8rz358fdj6n2ksp85x2cis9lsm"))
+ (base32 "0n29klrrbwan9307np0d9hr128dlpc4nnlf57a140080ll3jmp8l"))
(patches (search-patches "hdf4-architectures.patch"
"hdf4-reproducibility.patch"
- "hdf4-shared-fortran.patch"))))
+ "hdf4-shared-fortran.patch"
+ "hdf4-tirpc.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("gfortran" ,gfortran)
("flex" ,flex)))
(inputs
`(("zlib" ,zlib)
- ("libjpeg" ,libjpeg)))
+ ("libjpeg" ,libjpeg-turbo)
+ ("libtirpc" ,libtirpc)))
(arguments
`(#:parallel-tests? #f
- #:configure-flags '("--enable-shared")
+ #:configure-flags (list "--enable-shared"
+ (string-append "CPPFLAGS=-I"
+ (assoc-ref %build-inputs "libtirpc")
+ "/include/tirpc"))
#:phases
(modify-phases %standard-phases
;; This is inspired by two of Debian's patches.
(find-files ex ".*"))
(delete-file-recursively ex))
#t)))))
- (home-page "http://www.hdfgroup.org")
+ (home-page "https://www.hdfgroup.org")
(synopsis "Management suite for extremely large and complex data")
(description "HDF5 is a suite that makes possible the management of
extremely large and complex data collections.")
(license (license:x11-style
- "http://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING"))))
+ "https://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING"))))
(define-public hdf5-1.10
(package (inherit hdf5)
- (version "1.10.4")
+ (version "1.10.6")
(source
(origin
(method url-fetch)
(take (string-split version #\.) 2))
"/src/hdf5-" version ".tar.bz2")))
(sha256
- (base32 "1pr85fa1sh2ky6ai2hs3f21lp252grl2cq3wbyi4rh7dm83gyrqj"))
- (patches (search-patches "hdf5-config-date.patch"
- "hdf5-mpi-deprecations.patch"))))))
+ (base32 "1gf38x51128hn00744358w27xgzjk0ff4wra4yxh2lk804ck1mh9"))
+ (patches (search-patches "hdf5-config-date.patch"))))))
(define-public hdf-java
(package
(origin
(method url-fetch)
(uri (string-append
- "http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-"
+ "https://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-"
version "/src/CMake-hdfjava-" version ".tar.gz"))
(sha256
(base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr"))
`(("hdf4" ,hdf4)
("hdf5" ,hdf5)
("zlib" ,zlib)
- ("libjpeg" ,libjpeg)
+ ("libjpeg" ,libjpeg-turbo)
("slf4j-api" ,java-slf4j-api)))
(arguments
`(#:configure-flags
`(("gfortran" ,gfortran)))
(inputs
`(("hdf4" ,hdf4-alt) ; assume most HDF-EOS2 users won't use the HDF4 netCDF API
+ ;; XXX: These inputs are really dependencies of hdf4.
("zlib" ,zlib)
- ("libjpeg" ,libjpeg)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libtirpc" ,libtirpc)
+
("gctp" ,gctp)))
(arguments
`( #:configure-flags '("--enable-install-include" "--enable-shared"
(source
(origin
(method url-fetch)
- (uri (string-append "http://www.hdfgroup.org/ftp/HDF5/tools/"
+ (uri (string-append "https://www.hdfgroup.org/ftp/HDF5/tools/"
"h5check/src/h5check-" version ".tar.gz"))
(sha256
(base32
`(("hdf4" ,hdf4-alt)
("hdf5" ,hdf5)
("zlib" ,zlib)
- ("libjpeg" ,libjpeg)))
+ ("libjpeg" ,libjpeg-turbo)))
(arguments
`(#:configure-flags '("--enable-doxygen" "--enable-dot" "--enable-hdf4")
#t)))
#:parallel-tests? #f)) ;various race conditions
- (home-page "http://www.unidata.ucar.edu/software/netcdf/")
+ (home-page "https://www.unidata.ucar.edu/software/netcdf/")
(synopsis "Library for scientific data")
(description "NetCDF is an interface for scientific data access and a
software library that provides an implementation of the interface. The netCDF
,@(package-inputs octave-cli)))
(native-inputs
`(("qttools" , qttools) ;for lrelease
- ("texlive" ,texlive) ;for texi2dvi
+ ("texlive" ,(texlive-union (list texlive-epsf))) ; for texi2dvi
,@(package-native-inputs octave-cli)))
(arguments
(substitute-keyword-arguments (package-arguments octave-cli)
(version "2.16.0")
(source
(origin
- (method url-fetch)
- (uri (string-append "http://gmsh.info/src/gmsh-"
- version "-source.tgz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.onelab.info/gmsh/gmsh.git")
+ (commit
+ (string-append "gmsh_"
+ (string-map (lambda (x) (if (eq? x #\.) #\_ x))
+ version)))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "1slf0bfkwrcgn6296wb4qhbk4ahz6i4wfb10hnim08x05vrylag8"))
+ (base32 "08rq4jajwmlpivnm9yifz2jhaivnz065lnk0h2zv773nwl9wf162"))
(modules '((guix build utils)))
(snippet
;; Remove non-free METIS code
`(#:configure-flags `("-DENABLE_METIS:BOOL=OFF"
"-DENABLE_BUILD_SHARED:BOOL=ON"
"-DENABLE_BUILD_DYNAMIC:BOOL=ON")))
- (home-page "http://www.geuz.org/gmsh/")
+ (home-page "http://gmsh.info/")
(synopsis "3D finite element grid generator")
(description "Gmsh is a 3D finite element grid generator with a built-in
CAD engine and post-processor. Its design goal is to provide a fast, light
(define-public maxflow
(package
(name "maxflow")
- (version "3.04")
+ ;; Versioning is ambiguous: the git tag matching this commit is ‘3.0.5’,
+ ;; which matches CMakeLists.txt, but README.md and CHANGES say ‘3.04’.
+ (version "3.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gerddie/maxflow.git")
- (commit "42401fa54823d16b9da47716f04e5d9ef1605875")))
- (file-name (string-append name "-" version "-checkout"))
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
"0rll38whw55h0vcjrrwdnh9ascvxby0ph7n1l0d12z17cg215kkb"))))
(build-system cmake-build-system)
- (home-page "http://pub.ist.ac.at/~vnk/software.html")
+ (home-page "https://pub.ist.ac.at/~vnk/software.html")
(synopsis "Library implementing Maxflow algorithm")
(description "An implementation of the maxflow algorithm described in
@cite{An Experimental Comparison of Min-Cut/Max-Flow Algorithms for
(copy-recursively exdir exdir')
(delete-file-recursively exdir)
#t))))))
- (home-page "http://www.mcs.anl.gov/petsc")
+ (home-page "https://www.mcs.anl.gov/petsc")
(synopsis "Library to solve PDEs")
(description "PETSc, pronounced PET-see (the S is silent), is a suite of
data structures and routines for the scalable (parallel) solution of
scientific applications modeled by partial differential equations.")
(license (license:non-copyleft
- "http://www.mcs.anl.gov/petsc/documentation/copyright.html"))))
+ "https://www.mcs.anl.gov/petsc/documentation/copyright.html"))))
(define-public petsc-complex
(package (inherit petsc)
(define-public python-petsc4py
(package
(name "python-petsc4py")
- (version "3.10.1")
+ (version "3.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "petsc4py" version))
(sha256
(base32
- "094hcnran0r2z1wlvmjswsz3ski1m9kqrl5l0ax8jjhnk55x0flh"))))
+ "1rm1qj5wlkhxl39by9n78lh3gbmii31wsnb8j1rr5hvfr5xgbx2q"))))
(build-system python-build-system)
(arguments
`(#:phases
(define-public python-slepc4py
(package
(name "python-slepc4py")
- (version "3.10.0")
+ (version "3.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "slepc4py" version))
(sha256
(base32
- "0x049dyc8frgh79fvvavf4vlbqp4mgm61nsaivzdav4316vvlv1j"))))
+ "1ksp08kxf4wg408b9nn39z3qfhy643j22d4rfbl30vzxk2rxh4lq"))))
(build-system python-build-system)
(arguments
`(#:phases
(define-public mumps
(package
(name "mumps")
- (version "5.1.2")
+ (version "5.2.1")
(source
(origin
(method url-fetch)
version ".tar.gz"))
(sha256
(base32
- "1s9asin08zqzmh08257sdghhivvy9vjif7c53fhaxaax2kd5qd7b"))
- (patches (search-patches "mumps-build-parallelism.patch"))))
+ "0jklh54x4y3ik1zkw6db7766kakjm5910diyaghfxxf8vwsgr26r"))
+ (patches (search-patches "mumps-build-parallelism.patch"
+ "mumps-shared-libseq.patch"
+ "mumps-shared-mumps.patch"
+ "mumps-shared-pord.patch"))))
(build-system gnu-build-system)
(inputs
`(("fortran" ,gfortran)
FC = gfortran
FL = gfortran
INCSEQ = -I$(topdir)/libseq
-LIBSEQ = -L$(topdir)/libseq -lmpiseq
+LIBSEQ = $(topdir)/libseq/libmpiseq.a
LIBSEQNEEDED = libseqneeded~;
CC = mpicc
FC = mpifort
FL = mpifort~]
AR = ar vr # rules require trailing space, ugh...
RANLIB = ranlib
-LIBBLAS = -L~a -lopenblas~@[
-SCALAP = -L~a -lscalapack~]
+BLASDIR = ~a
+LIBBLAS = -Wl,-rpath=$(BLASDIR) -Wl,-rpath='$$ORIGIN' -L$(BLASDIR) -lopenblas~@[
+SCALAPDIR = ~a
+SCALAP = -Wl,-rpath=$(SCALAPDIR) -Wl,-rpath='$$ORIGIN' -L$(SCALAPDIR) -lscalapack~]
LIBOTHERS = -pthread
CDEFS = -DAdd_
PIC = -fPIC
LIBS = $(SCALAP) $(LIBSEQ)
LPORDDIR = $(topdir)/PORD/lib
IPORD = -I$(topdir)/PORD/include
-LPORD = -L$(LPORDDIR) -lpord
+LPORD = $(LPORDDIR)/libpord.a
ORDERINGSF = -Dpord~@[
METISDIR = ~a
IMETIS = -I$(METISDIR)/include
-LMETIS = -L$(METISDIR)/lib -lmetis
+LMETIS = -Wl,-rpath $(METISDIR)/lib -L$(METISDIR)/lib -lmetis
ORDERINGSF += -Dmetis~]~@[~:{
SCOTCHDIR = ~a
ISCOTCH = -I$(SCOTCHDIR)/include
-LSCOTCH = -L$(SCOTCHDIR)/lib ~a-lesmumps -lscotch -lscotcherr
+LSCOTCH = -Wl,-rpath $(SCOTCHDIR)/lib -L$(SCOTCHDIR)/lib ~a-lesmumps -lscotch -lscotcherr
ORDERINGSF += ~a~}~]
ORDERINGSC = $(ORDERINGSF)
-LORDERINGS = $(LPORD) $(LMETIS) $(LSCOTCH)
+LORDERINGS = $(LPORD) $(LMETIS) $(LSCOTCH) $(LIBSEQ)
IORDERINGSF = $(ISCOTCH)
IORDERINGSC = $(IPORD) $(IMETIS) $(ISCOTCH)"
(assoc-ref inputs "mpi")
(copy-recursively "include" (string-append out "/include"))
(when (file-exists? "libseq/libmpiseq.a")
(install-file "libseq/libmpiseq.a" libdir))
+ (when (file-exists? "libseq/libmpiseq.so")
+ (install-file "libseq/libmpiseq.so" libdir))
#t))))))
(home-page "http://mumps.enseeiht.fr")
(synopsis "Multifrontal sparse direct solver")
(inputs
(alist-delete "pt-scotch" (package-inputs mumps-openmpi)))))
-(define-public r-quadprog
- (package
- (name "r-quadprog")
- (version "1.5-7")
- (source
- (origin
- (method url-fetch)
- (uri (cran-uri "quadprog" version))
- (sha256
- (base32
- "0vg7i9p241bwvfdspjbydjrsvgipl6nsb8bjigp0hbbgvxbixx0s"))))
- (build-system r-build-system)
- (native-inputs
- `(("gfortran" ,gfortran)))
- (home-page "https://cran.r-project.org/web/packages/quadprog")
- (synopsis "Functions to solve quadratic programming problems")
- (description
- "This package contains routines and documentation for solving quadratic
-programming problems.")
- (license license:gpl3+)))
-
-(define-public r-pracma
- (package
- (name "r-pracma")
- (version "2.2.5")
- (source (origin
- (method url-fetch)
- (uri (cran-uri "pracma" version))
- (sha256
- (base32 "0isd3s0i4mzmva8lkh0j76hwjy1w50q7d1n9lhxsnnkgalx3xs1g"))))
- (build-system r-build-system)
- (home-page "https://cran.r-project.org/web/packages/pracma/")
- (synopsis "Practical numerical math functions")
- (description "This package provides functions for numerical analysis and
-linear algebra, numerical optimization, differential equations, plus some
-special functions. It uses Matlab function names where appropriate to simplify
-porting.")
- (license license:gpl3+)))
-
(define-public ruby-asciimath
(package
(name "ruby-asciimath")
(install-file f (string-append out "/lib")))
(find-files "../lib/" ".*metis\\..*"))
#t))))))
- (home-page "http://www.labri.fr/perso/pelegrin/scotch/")
+ (home-page "https://www.labri.fr/perso/pelegrin/scotch/")
(synopsis "Programs and libraries for graph algorithms")
(description "SCOTCH is a set of programs and libraries which implement
the static mapping and sparse matrix reordering algorithms developed within
(define-public wxmaxima
(package
(name "wxmaxima")
- (version "19.08.0")
+ (version "19.11.1")
(source
(origin
(method git-fetch)
(commit (string-append "Version-" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "028g4g2081vsgslbdliskfy5q2wknvknw89lk3zp89py6wranxas"))))
+ (base32 "16xizaddb27432n1083y89ir5zdqvllsgbwrzzk4jc2rw1ldxfsv"))))
(build-system cmake-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)))
(define-public openblas
(package
(name "openblas")
- (version "0.3.5")
+ (version "0.3.7")
(source
(origin
(method url-fetch)
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "062kg4ny1ywz7k5grpb4pbf0hba0w6manbajwkmv4f477a31sxpl"))))
+ "0jbdjsi0qsxahdcm42agnn1y7xpmg0hrhwjsxg0zbhs9wwy3p568"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"SHELL=bash"
"MAKE_NB_JOBS=0" ;use jobserver for submakes
+
+ ;; This is the maximum number of threads OpenBLAS will ever use (that
+ ;; is, if $OPENBLAS_NUM_THREADS is greater than that, then NUM_THREADS
+ ;; is used.) If we don't set it, the makefile sets it to the number
+ ;; of cores of the build machine, which is obviously wrong.
+ "NUM_THREADS=128"
+
;; Build the library for all supported CPUs. This allows
;; switching CPU targets at runtime with the environment variable
;; OPENBLAS_CORETYPE=<type>, where "type" is a supported CPU type.
(license license:bsd-3)))
(define-public openblas-ilp64
- (package (inherit openblas)
+ (package/inherit openblas
(name "openblas-ilp64")
(supported-systems '("x86_64-linux" "aarch64-linux" "mips64el-linux"))
(arguments
(define-public glm
(package
(name "glm")
- (version "0.9.9.5")
+ (version "0.9.9.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/g-truc/glm/releases/download/"
version "/glm-" version ".zip"))
(sha256
- (base32
- "1vmg7hb4xvsa77zpbwiw6lqc7pyaj56dihx6xriny5b9rrh4iqsg"))))
+ (base32 "1l0pi1qi37mk6s0yrkrw07lspv4gcqnr9ryg3521hrl77ff37dwx"))
+ (patches (search-patches "glm-restore-install-target.patch"))))
(build-system cmake-build-system)
(native-inputs
`(("unzip" ,unzip)))
(define-public dealii
(package
(name "dealii")
- (version "9.0.1")
+ (version "9.1.1")
(source
(origin
(method url-fetch)
"download/v" version "/dealii-" version ".tar.gz"))
(sha256
(base32
- "0r7f8rhl3xr94imd372plizdcbqk0a70w73lwc3vw912dxk0sbyz"))
- (patches (search-patches "dealii-mpi-deprecations.patch"))
+ "0xhjv0gzswpjbc43xbrpwfc5848g508l01855nszx3g5gwzlhnzw"))
(modules '((guix build utils)))
(snippet
;; Remove bundled sources: UMFPACK, TBB, muParser, and boost
`(("doc++" ,doc++)
("netpbm" ,netpbm)
("perl" ,perl) ; needed to run 'ppmquant' during tests
- ("texlive" ,(texlive-union (list texlive-generic-xypic
- texlive-fonts-xypic
+ ("texlive" ,(texlive-union (list texlive-xypic
+ texlive-cm
texlive-latex-hyperref
texlive-bibtex)))
("ghostscript" ,ghostscript)))
(define-public vc
(package
(name "vc")
- (version "1.3.3")
+ (version "1.4.1")
(source
(origin (method url-fetch)
(uri (string-append "https://github.com/VcDevel/Vc/releases/"
"download/" version "/Vc-" version ".tar.gz"))
(sha256
(base32
- "1zmlpn32jzb38smp3j834llmbix3whsrbw0h397qxysbw792kih8"))))
+ "17qili8bf8r78cng65yf4qmgna8kiqjqbgcqbric6v9j6nkhkrk8"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags
;; By default, Vc will optimize for the CPU of the build machine.
;; Setting this to "none" makes it create portable binaries. See
;; "cmake/OptimizeForArchitecture.cmake".
- "-DTARGET_ARCHITECTURE=none")))
+ "-DTARGET_ARCHITECTURE=none")
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'copy-testdata
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (let ((testdata (assoc-ref (or native-inputs inputs)
+ "testdata")))
+ (copy-recursively testdata "tests/testdata")
+ #t))))))
+ (native-inputs
+ `(("virtest" ,virtest)
+
+ ;; This is a submodule in the git project, but not part of the
+ ;; released sources. See the git branch for the commit to take.
+ ("testdata" ,(let ((commit "9ada1f34d6a41f1b5553d6223f277eae72c039d3"))
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/VcDevel/vc-testdata")
+ (commit "9ada1f34d6a41f1b5553d6223f277eae72c039d3")))
+ (file-name (git-file-name "vc-testdata"
+ (string-take commit 7)))
+ (sha256
+ (base32
+ "1hkhqib03qlcq412ym2dciynfxcdr2ygqhnplz4l1vissr1wnqn2")))))))
(synopsis "SIMD vector classes for C++")
(description "Vc provides portable, zero-overhead C++ types for explicitly
data-parallel programming. It is a library designed to ease explicit
(define-public z3
(package
(name "z3")
- (version "4.8.4")
+ (version "4.8.7")
(home-page "https://github.com/Z3Prover/z3")
(source (origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "014igqm5vwswz0yhz0cdxsj3a6dh7i79hvhgc3jmmmz3z0xm1gyn"))))
+ "0hprcdwhhyjigmhhk6514m71bnmvqci9r8gglrqilgx424r6ff7q"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(base32
"1687xpjjzig27y2pnqv7hv09smpijyfdpz7qjgmcxf4shfajlfkc"))))
(build-system cmake-build-system)
- (home-page "http://libelemental.org")
+ (home-page "https://github.com/elemental/Elemental")
(native-inputs
`(("gfortran" ,gfortran)))
(inputs
(define-public mcrl2
(package
(name "mcrl2")
- (version "201707.1.15162")
+ (version "201908.0")
(source (origin
(method url-fetch)
- (uri (string-append "http://www.mcrl2.org/download/devel/mcrl2-"
- version
- ".tar.gz"))
+ (uri (string-append
+ "https://www.mcrl2.org/download/release/mcrl2-"
+ version ".tar.gz"))
(sha256
(base32
- "1ziww2fchsklm25hl9p2mngssxfh9w07nc114cncqaxfibqp2p8f"))))
- (native-inputs
- `(("subversion" ,subversion)))
+ "1i4xgl2d5fgiz1mwi50cyfkrrcpm8nxfayfjgmhq7chs58wlhfsz"))))
(inputs
`(("boost" ,boost)
("glu" ,glu)
(home-page "https://mcrl2.org")
(license license:boost1.0)))
-(define-public r-subplex
- (package
- (name "r-subplex")
- (version "1.5-4")
- (source
- (origin
- (method url-fetch)
- (uri (cran-uri "subplex" version))
- (sha256
- (base32
- "10cbgbx1bgsax5z7gz6716g360xpq4mvq19cf4qqrxv02mmwz57z"))))
- (build-system r-build-system)
- (native-inputs
- `(("gfortran" ,gfortran)))
- (home-page "https://cran.r-project.org/web/packages/subplex")
- (synopsis "Unconstrained optimization using the subplex algorithm")
- (description "This package implements the Subplex optimization algorithm.
-It solves unconstrained optimization problems using a simplex method on
-subspaces. The method is well suited for optimizing objective functions that
-are noisy or are discontinuous at the solution.")
- (license license:gpl3+)))
-
-(define-public r-desolve
+(define-public mcrl2-minimal
(package
- (name "r-desolve")
- (version "1.24")
- (source
- (origin
- (method url-fetch)
- (uri (cran-uri "deSolve" version))
- (sha256
- (base32
- "0hkvspq0fp8j64l9zayab2l2nazazhwfgfym0jllh0xv5a12r99s"))))
- (properties `((upstream-name . "deSolve")))
- (build-system r-build-system)
- (native-inputs
- `(("gfortran" ,gfortran)))
- (home-page "https://desolve.r-forge.r-project.org/")
- (synopsis "Solvers for initial value problems of differential equations")
- (description "This package provides functions that solve initial
-value problems of a system of first-order ordinary differential equations (ODE),
-of partial differential equations (PDE), of differential algebraic equations
-(DAE), and of delay differential equations. The functions provide an interface
-to the FORTRAN functions lsoda, lsodar, lsode, lsodes of the ODEPACK collection,
-to the FORTRAN functions dvode and daspk and a C-implementation of solvers of
-the Runge-Kutta family with fixed or variable time steps. The package contains
-routines designed for solving ODEs resulting from 1-D, 2-D and 3-D partial
-differential equations (PDE) that have been converted to ODEs by numerical
-differencing.")
- (license license:gpl2+)))
+ (inherit mcrl2)
+ (name "mcrl2-minimal")
+ (inputs
+ `(("boost" ,boost)))
+ (arguments
+ '(#:configure-flags '("-DMCRL2_ENABLE_GUI_TOOLS=OFF")))))
(define-public tcalc
(package
(add-after 'build 'build-tests
(lambda* (#:key inputs make-flags #:allow-other-keys)
(setenv "CPLUS_INCLUDE_PATH"
- (string-append (assoc-ref inputs "dune-grid") "/share:"
- (getenv "CPLUS_INCLUDE_PATH")))
+ (string-append (assoc-ref inputs "dune-grid") "/share"))
(apply invoke "make" "build_tests" make-flags))))))
(inputs
`(("dune-common" ,dune-common)
(define-public nauty
(package
(name "nauty")
- (version "2.6r11")
+ (version "2.6r12")
(source (origin
(method url-fetch)
(uri (string-append
".tar.gz"))
(sha256
(base32
- "05z6mk7c31j70md83396cdjmvzzip1hqb88pfszzc6k4gy8h3m2y"))))
+ "1p4mxf8q5wm47nxyskxbqwa5p1vvkycv1zgswvnk9nsn6vff0al6"))))
(build-system gnu-build-system)
(outputs '("out" "lib"))
(arguments
termination analysis via the automatic synthesis of linear ranking
functions.")
(license license:gpl3+)))
+
+(define-public speedcrunch
+ (package
+ (name "speedcrunch")
+ (version "0.12.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://bitbucket.org/heldercorreia/speedcrunch.git")
+ (commit (string-append "release-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0vh7cd1915bjqzkdp3sk25ngy8cq624mkh8c53c5bnzk357kb0fk"))))
+ (build-system cmake-build-system)
+ (inputs `(("qtbase" ,qtbase)))
+ (native-inputs `(("qttools" ,qttools)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir-to-src
+ (lambda _ (chdir "src") #t)))))
+ (synopsis "High-precision scientific calculator")
+ (description
+ "SpeedCrunch is a high-precision scientific calculator. It features a
+syntax-highlighted scrollable display and is designed to be fully used via
+keyboard. Some distinctive features are auto-completion of functions and
+variables, a formula book, and quick insertion of constants from various
+fields of knowledge.")
+ (home-page "http://speedcrunch.org/")
+ (license license:gpl2+)))
+
+(define-public minisat
+ ;; This is the last commit which is available upstream, no
+ ;; release happened since 2010.
+ (let ((commit "37dc6c67e2af26379d88ce349eb9c4c6160e8543")
+ (revision "1"))
+ (package
+ (name "minisat")
+ (version (string-append "2.2.0-" revision "." (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/niklasso/minisat.git")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "091hf3qkm197s5r7xcr3m07xsdwyz2rqk1hc9kj0hn13imz09irq"))
+ (patches
+ (search-patches "minisat-friend-declaration.patch"
+ "minisat-install.patch"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags (list (string-append "prefix=" %output))
+ #:tests? #f ;no check target
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ `(("zlib:static" ,zlib "static")
+ ("zlib" ,zlib)))
+ (synopsis
+ "Small, yet efficient, SAT solver")
+ (description
+ "MiniSat is a minimalistic, open-source SAT solver, developed to help
+researchers and developers alike to get started on SAT.")
+ (home-page
+ "http://minisat.se/MiniSat.html")
+ (license license:expat))))