summaryrefslogtreecommitdiff
path: root/gnu/packages/maths.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/maths.scm')
-rw-r--r--gnu/packages/maths.scm148
1 files changed, 78 insertions, 70 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index ff3f1cf007..9ac365fbb4 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -26,7 +26,7 @@
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com>
;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com>
-;;; Copyright © 2018, 2020, 2021 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2018, 2020-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2018 Eric Brown <brown@fastmail.com>
;;; Copyright © 2018, 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Amin Bandali <bandali@gnu.org>
@@ -634,14 +634,14 @@ precision floating point numbers.")
(define-public gsl
(package
(name "gsl")
- (version "2.7")
+ (version "2.7.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gsl/gsl-"
version ".tar.gz"))
(sha256
(base32
- "0av04cpblphvvs3kl5rwphniarml503501vrpqw31rd0bmwg7fzg"))))
+ "0jxkxrnpys2j3rh8bzx0bmnh4w6xm28jd57rgxsjp0s863agpc6w"))))
(build-system gnu-build-system)
(arguments
(let ((system (%current-system)))
@@ -853,7 +853,7 @@ integer programming problems and computes Markov bases for statistics.")
libtool
texlive-amsfonts
texlive-dvips-l3backend
- texlive-latex-graphics
+ texlive-graphics
texlive-latex-l3backend
texlive-tiny))
(arguments
@@ -4582,66 +4582,67 @@ parts of it.")
"0r4sz3rn68fyc2paq0a04pgfi7iszpm95f6ggbzxpvjzx9qxbcql"))))
(build-system gnu-build-system)
(arguments
- `(#:test-target "test"
- ;; DYNAMIC_ARCH is only supported on x86. When it is disabled and no
- ;; TARGET is specified, OpenBLAS will tune itself to the build host, so
- ;; we need to disable substitutions.
- #:substitutable?
- ,(let ((system (or (%current-target-system) (%current-system))))
- (or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system)
- (string-prefix? "mips" system)
- (string-prefix? "aarch64" system)))
- #:make-flags
- (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
- "SHELL=bash"
- "MAKE_NB_JOBS=0" ;use jobserver for submakes
- "NO_STATIC=1" ;avoid a 67 MiB static archive
-
- ;; 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.
- ;; Unfortunately, this is not supported on all architectures,
- ;; where it leads to failed builds.
- ,@(let ((system (or (%current-target-system) (%current-system))))
- (cond
- ((or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system)
- (string-prefix? "powerpc64le" system)
- (string-prefix? "aarch64" system))
- ;; Dynamic older enables a few extra CPU architectures that
- ;; were released before 2010.
- '("DYNAMIC_ARCH=1" "DYNAMIC_OLDER=1" "TARGET=GENERIC"))
- ;; On some of these architectures the CPU can't be detected.
- ;; On MIPS we force the "SICORTEX" TARGET, as for the other
- ;; two available MIPS targets special extended instructions
- ;; for Loongson cores are used.
- ((string-prefix? "mips" system)
- '("TARGET=SICORTEX"))
- ;; Failed to detect CPU.
- ((string-prefix? "armhf" system)
- '("TARGET=ARMV7"))
- ((string-prefix? "riscv64" system)
- '("TARGET=RISCV64_GENERIC"))
- (else '()))))
- ;; no configure script
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (add-before 'build 'set-extralib
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Get libgfortran found when building in utest.
- (setenv "FEXTRALIB"
- (string-append
- "-L"
- (dirname
- (search-input-file inputs "/lib/libgfortran.so")))))))))
+ (list
+ #:test-target "test"
+ ;; DYNAMIC_ARCH is only supported on x86. When it is disabled and no
+ ;; TARGET is specified, OpenBLAS will tune itself to the build host, so
+ ;; we need to disable substitutions.
+ #:substitutable?
+ (let ((system (or (%current-target-system) (%current-system))))
+ (or (string-prefix? "x86_64" system)
+ (string-prefix? "i686" system)
+ (string-prefix? "mips" system)
+ (string-prefix? "aarch64" system)))
+ #:make-flags
+ #~(list (string-append "PREFIX=" #$output)
+ "SHELL=bash"
+ "MAKE_NB_JOBS=0" ;use jobserver for submakes
+ "NO_STATIC=1" ;avoid a 67 MiB static archive
+
+ ;; 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.
+ ;; Unfortunately, this is not supported on all architectures,
+ ;; where it leads to failed builds.
+ #$@(let ((system (or (%current-target-system) (%current-system))))
+ (cond
+ ((or (string-prefix? "x86_64" system)
+ (string-prefix? "i686" system)
+ (string-prefix? "powerpc64le" system)
+ (string-prefix? "aarch64" system))
+ ;; Dynamic older enables a few extra CPU architectures that
+ ;; were released before 2010.
+ '("DYNAMIC_ARCH=1" "DYNAMIC_OLDER=1" "TARGET=GENERIC"))
+ ;; On some of these architectures the CPU can't be detected.
+ ;; On MIPS we force the "SICORTEX" TARGET, as for the other
+ ;; two available MIPS targets special extended instructions
+ ;; for Loongson cores are used.
+ ((string-prefix? "mips" system)
+ '("TARGET=SICORTEX"))
+ ;; Failed to detect CPU.
+ ((string-prefix? "armhf" system)
+ '("TARGET=ARMV7"))
+ ((string-prefix? "riscv64" system)
+ '("TARGET=RISCV64_GENERIC"))
+ (else '()))))
+ ;; no configure script
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'set-extralib
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Get libgfortran found when building in utest.
+ (setenv "FEXTRALIB"
+ (string-append
+ "-L"
+ (dirname
+ (search-input-file inputs "/lib/libgfortran.so")))))))))
(inputs
(list `(,gfortran "lib")))
(native-inputs
@@ -4658,9 +4659,9 @@ parts of it.")
(supported-systems '("x86_64-linux" "aarch64-linux" "mips64el-linux"))
(arguments
(substitute-keyword-arguments (package-arguments openblas)
- ((#:make-flags flags '())
- `(append (list "INTERFACE64=1" "LIBNAMESUFFIX=ilp64")
- ,flags))))
+ ((#:make-flags flags #~'())
+ #~(append (list "INTERFACE64=1" "LIBNAMESUFFIX=ilp64")
+ #$flags))))
(synopsis "Optimized BLAS library based on GotoBLAS (ILP64 version)")
(license license:bsd-3)))
@@ -5210,6 +5211,13 @@ with C89.")
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
+ (add-before 'configure 'set-environment
+ (lambda _
+ ;; Pass "-fno-ipa-modref" flag to the compiler to work
+ ;; around a test failure with GCC 11. This is a
+ ;; header-only library so these flags only affect tests.
+ ;; See <https://github.com/g-truc/glm/pull/1087>.
+ (setenv "CXXFLAGS" "-O2 -g -fno-ipa-modref")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Since version 0.9.9.6, 'make install' is not supported
@@ -5764,6 +5772,8 @@ set.")
texlive-cm
texlive-courier
texlive-etoolbox
+ texlive-fancyhdr
+ texlive-fancyvrb
texlive-helvetic
texlive-jknappen
texlive-sectsty
@@ -5775,8 +5785,6 @@ set.")
texlive-latex-cmap
texlive-latex-colortbl
texlive-latex-etoc
- texlive-latex-fancyhdr
- texlive-latex-fancyvrb
texlive-latex-float
texlive-latex-fncychap
texlive-latex-framed
@@ -5790,10 +5798,10 @@ set.")
texlive-latex-parskip
texlive-latex-stackengine
texlive-latex-tabulary
- texlive-latex-titlesec
texlive-latex-tocloft
texlive-latex-upquote
texlive-latex-varwidth
+ texlive-titlesec
texlive-ulem
texlive-wasysym
texlive-wrapfig))))