summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/maths.scm9
-rw-r--r--gnu/packages/patches/maxima-defsystem-mkdir.patch13
2 files changed, 18 insertions, 4 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 89e0a17ab1..ca21806ced 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -922,7 +922,7 @@ to BMP, JPEG or PNG image formats.")
(define-public maxima
(package
(name "maxima")
- (version "5.34.1")
+ (version "5.36.1")
(source
(origin
(method url-fetch)
@@ -930,7 +930,8 @@ to BMP, JPEG or PNG image formats.")
version "-source/" name "-" version ".tar.gz"))
(sha256
(base32
- "1dw9vfzldpj7lv303xbw0wpyn6ra6i2yzwlrjbcx7j0jm5n43ji0"))))
+ "0x1rk659sn3cq0n5c90848ilzr1gb1wf0072fl6jhkdq00qgh2s0"))
+ (patches (list (search-patch "maxima-defsystem-mkdir.patch")))))
(build-system gnu-build-system)
(inputs
`(("gcl" ,gcl)
@@ -951,8 +952,8 @@ to BMP, JPEG or PNG image formats.")
(let ((v ,(package-version tk)))
(string-take v (string-index-right v #\.)))))
;; By default Maxima attempts to write temporary files to
- ;; '/tmp/nix-build-maxima-5.34.1', which doesn't exist. Work around
- ;; that.
+ ;; '/tmp/nix-build-maxima-*', which won't exist at run time.
+ ;; Work around that.
#:make-flags (list "TMPDIR=/tmp")
#:phases (alist-cons-before
'check 'pre-check
diff --git a/gnu/packages/patches/maxima-defsystem-mkdir.patch b/gnu/packages/patches/maxima-defsystem-mkdir.patch
new file mode 100644
index 0000000000..bc42e51a32
--- /dev/null
+++ b/gnu/packages/patches/maxima-defsystem-mkdir.patch
@@ -0,0 +1,13 @@
+Change 'ensure-directories-exist' to look for 'mkdir' in $PATH, not in /bin.
+
+--- maxima-5.36.1/lisp-utils/defsystem.lisp.orig 2014-11-22 16:21:30.000000000 -0500
++++ maxima-5.36.1/lisp-utils/defsystem.lisp 2015-05-25 21:53:31.223648483 -0400
+@@ -4627,7 +4627,7 @@
+ (cmd (if (member :win32 *features*)
+ (format nil "mkdir \"~a\""
+ (coerce (subst #\\ #\/ (coerce (namestring dir) 'list)) 'string))
+- (format nil "/bin/mkdir -p ~S" (namestring dir)))))
++ (format nil "mkdir -p ~S" (namestring dir)))))
+ (unless (directory dir)
+ (lisp:system cmd))
+ ;; The second return value is supposed to be T if directories were