[arch-commits] Commit in maxima-ecl/repos/community-x86_64 (10 files)
Antonio Rojas
arojas at archlinux.org
Fri Jan 31 20:26:46 UTC 2020
Date: Friday, January 31, 2020 @ 20:26:45
Author: arojas
Revision: 560849
archrelease: copy trunk to community-x86_64
Added:
maxima-ecl/repos/community-x86_64/PKGBUILD
(from rev 560848, maxima-ecl/trunk/PKGBUILD)
maxima-ecl/repos/community-x86_64/build-fasl.patch
(from rev 560848, maxima-ecl/trunk/build-fasl.patch)
maxima-ecl/repos/community-x86_64/matrixexp.patch
(from rev 560848, maxima-ecl/trunk/matrixexp.patch)
maxima-ecl/repos/community-x86_64/maxima-printing.patch
(from rev 560848, maxima-ecl/trunk/maxima-printing.patch)
maxima-ecl/repos/community-x86_64/stack.patch
(from rev 560848, maxima-ecl/trunk/stack.patch)
Deleted:
maxima-ecl/repos/community-x86_64/PKGBUILD
maxima-ecl/repos/community-x86_64/build-fasl.patch
maxima-ecl/repos/community-x86_64/matrixexp.patch
maxima-ecl/repos/community-x86_64/maxima-printing.patch
maxima-ecl/repos/community-x86_64/stack.patch
-----------------------+
PKGBUILD | 114 ++++++++++++++++----------------
build-fasl.patch | 46 ++++++------
matrixexp.patch | 26 +++----
maxima-printing.patch | 38 +++++-----
stack.patch | 170 ++++++++++++++++++++++++------------------------
5 files changed, 197 insertions(+), 197 deletions(-)
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2020-01-31 20:26:20 UTC (rev 560848)
+++ PKGBUILD 2020-01-31 20:26:45 UTC (rev 560849)
@@ -1,57 +0,0 @@
-# Maintainer: Antonio Rojas <arojas at archlinux.org>
-# Contributor: Ronald van Haren <ronald.archlinux.org>
-# Contributor: Damir Perisa <damir at archlinux.org>
-# Modified to compile against ecl by: maribu
-
-pkgname=maxima-ecl
-_pkgname=maxima
-pkgver=5.43.0
-_eclver=16.1.3
-pkgrel=2
-pkgdesc="A sophisticated computer algebra system (compiled against ecl)"
-arch=(x86_64)
-license=(GPL)
-url="https://maxima.sourceforge.net"
-depends=(ecl=$_eclver texinfo shared-mime-info)
-makedepends=(python emacs)
-optdepends=('gnuplot: plotting capabilities' 'rlwrap: readline support via /usr/bin/rmaxima' 'tk: graphical xmaxima interface')
-conflicts=(maxima)
-provides=(maxima)
-options=(!zipman) # don't zip info pages or they won't work inside maxima
-source=("https://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.gz"
- build-fasl.patch matrixexp.patch stack.patch maxima-printing.patch)
-sha256sums=('dcfda54511035276fd074ac736e97d41905171e43a5802bb820914c3c885ca77'
- '90ced3b33361fa24c2b417e0aeba8956892f0965b4a22d57d0c04115f2a3274b'
- 'ef1bc6a15fc982ff8c6aa1800bbbd3284d9e060ca27abf9d8c1266632c0c2619'
- '60ed7d96da06361a2f2f2e9df36aecae0384fe454bf3f963a2cab6033e1bd7a5'
- '631f65e477a1496b0ce71d385117713274fcabfa2487c52b165fc3b1d015c0db')
-
-prepare() {
- cd $_pkgname-$pkgver
-
-# build maxima ecl library
- patch -p1 -i ../build-fasl.patch
-# fix matrix exponentiation
- patch -p1 -i ../matrixexp.patch
-# fix segfaults in sagemath
- patch -p1 -i ../stack.patch
-# fix bogus ? characters
- patch -p1 -i ../maxima-printing.patch
-}
-
-build() {
- cd $_pkgname-$pkgver
-
- ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info \
- --libexecdir=/usr/lib --enable-ecl --with-default-lisp=ecl
- make
-}
-
-package() {
- cd $_pkgname-$pkgver
- make DESTDIR="$pkgdir" emacsdir=/usr/share/emacs/site-lisp/maxima install
-
- _ecldir="/usr/lib/ecl-$_eclver"
- mkdir -p "$pkgdir/$_ecldir"
- install src/binary-ecl/maxima.fas "$pkgdir/$_ecldir"
-}
Copied: maxima-ecl/repos/community-x86_64/PKGBUILD (from rev 560848, maxima-ecl/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2020-01-31 20:26:45 UTC (rev 560849)
@@ -0,0 +1,57 @@
+# Maintainer: Antonio Rojas <arojas at archlinux.org>
+# Contributor: Ronald van Haren <ronald.archlinux.org>
+# Contributor: Damir Perisa <damir at archlinux.org>
+# Modified to compile against ecl by: maribu
+
+pkgname=maxima-ecl
+_pkgname=maxima
+pkgver=5.43.2
+_eclver=16.1.3
+pkgrel=1
+pkgdesc="A sophisticated computer algebra system (compiled against ecl)"
+arch=(x86_64)
+license=(GPL)
+url="https://maxima.sourceforge.net"
+depends=(ecl=$_eclver texinfo shared-mime-info)
+makedepends=(python emacs)
+optdepends=('gnuplot: plotting capabilities' 'rlwrap: readline support via /usr/bin/rmaxima' 'tk: graphical xmaxima interface')
+conflicts=(maxima)
+provides=(maxima)
+options=(!zipman) # don't zip info pages or they won't work inside maxima
+source=("https://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.gz"
+ build-fasl.patch matrixexp.patch stack.patch maxima-printing.patch)
+sha256sums=('ea78ec8c674c9293621ab8af6e44fbc3d869d63ae594c105abdffedef2fb77bb'
+ '90ced3b33361fa24c2b417e0aeba8956892f0965b4a22d57d0c04115f2a3274b'
+ 'ef1bc6a15fc982ff8c6aa1800bbbd3284d9e060ca27abf9d8c1266632c0c2619'
+ '60ed7d96da06361a2f2f2e9df36aecae0384fe454bf3f963a2cab6033e1bd7a5'
+ '631f65e477a1496b0ce71d385117713274fcabfa2487c52b165fc3b1d015c0db')
+
+prepare() {
+ cd $_pkgname-$pkgver
+
+# build maxima ecl library
+ patch -p1 -i ../build-fasl.patch
+# fix matrix exponentiation
+ patch -p1 -i ../matrixexp.patch
+# fix segfaults in sagemath
+ patch -p1 -i ../stack.patch
+# fix bogus ? characters
+ patch -p1 -i ../maxima-printing.patch
+}
+
+build() {
+ cd $_pkgname-$pkgver
+
+ ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info \
+ --libexecdir=/usr/lib --enable-ecl --with-default-lisp=ecl
+ make
+}
+
+package() {
+ cd $_pkgname-$pkgver
+ make DESTDIR="$pkgdir" emacsdir=/usr/share/emacs/site-lisp/maxima install
+
+ _ecldir="/usr/lib/ecl-$_eclver"
+ mkdir -p "$pkgdir/$_ecldir"
+ install src/binary-ecl/maxima.fas "$pkgdir/$_ecldir"
+}
Deleted: build-fasl.patch
===================================================================
--- build-fasl.patch 2020-01-31 20:26:20 UTC (rev 560848)
+++ build-fasl.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -1,23 +0,0 @@
-Build a fasl library for ecl in addition to an executable program.
-
-References:
-* http://trac.sagemath.org/ticket/16178
-* https://github.com/cschwan/sage-on-gentoo/issues/226
-* https://bugs.gentoo.org/show_bug.cgi?id=499634
-
-Index: maxima-5.29.1/src/maxima.system
-===================================================================
---- maxima-5.29.1.orig/src/maxima.system
-+++ maxima-5.29.1/src/maxima.system
-@@ -75,6 +75,11 @@
- ;; Convert dir/foo.fas to dir/foo.o
- (make-pathname :type "o" :defaults p))
- files)))
-+ (c::build-fasl "binary-ecl/maxima" :lisp-files obj
-+ :ld-flags
-+ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
-+ (find-package "MAXIMA")))))
-+ (if (and x (not (string= x ""))) (list x))))
- (c::build-program "binary-ecl/maxima" :lisp-files obj
- :ld-flags
- (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
Copied: maxima-ecl/repos/community-x86_64/build-fasl.patch (from rev 560848, maxima-ecl/trunk/build-fasl.patch)
===================================================================
--- build-fasl.patch (rev 0)
+++ build-fasl.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -0,0 +1,23 @@
+Build a fasl library for ecl in addition to an executable program.
+
+References:
+* http://trac.sagemath.org/ticket/16178
+* https://github.com/cschwan/sage-on-gentoo/issues/226
+* https://bugs.gentoo.org/show_bug.cgi?id=499634
+
+Index: maxima-5.29.1/src/maxima.system
+===================================================================
+--- maxima-5.29.1.orig/src/maxima.system
++++ maxima-5.29.1/src/maxima.system
+@@ -75,6 +75,11 @@
+ ;; Convert dir/foo.fas to dir/foo.o
+ (make-pathname :type "o" :defaults p))
+ files)))
++ (c::build-fasl "binary-ecl/maxima" :lisp-files obj
++ :ld-flags
++ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
++ (find-package "MAXIMA")))))
++ (if (and x (not (string= x ""))) (list x))))
+ (c::build-program "binary-ecl/maxima" :lisp-files obj
+ :ld-flags
+ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
Deleted: matrixexp.patch
===================================================================
--- matrixexp.patch 2020-01-31 20:26:20 UTC (rev 560848)
+++ matrixexp.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -1,13 +0,0 @@
---- a/share/linearalgebra/matrixexp.lisp
-+++ b/share/linearalgebra/matrixexp.lisp
-@@ -138,8 +138,8 @@
- (print `(ratvars = ,$ratvars gcd = '$gcd algebraic = ,$algebraic))
- (print `(ratfac = ,$ratfac))
- (merror "Unable to find the spectrum")))
--
-- (setq res ($fullratsimp (ncpower (sub (mult z ($ident n)) mat) -1) z))
-+
-+ (setq res ($fullratsimp ($invert_by_lu (sub (mult z ($ident n)) mat) '$crering) z))
- (setq m (length sp))
- (dotimes (i m)
- (setq zi (nth i sp))
Copied: maxima-ecl/repos/community-x86_64/matrixexp.patch (from rev 560848, maxima-ecl/trunk/matrixexp.patch)
===================================================================
--- matrixexp.patch (rev 0)
+++ matrixexp.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -0,0 +1,13 @@
+--- a/share/linearalgebra/matrixexp.lisp
++++ b/share/linearalgebra/matrixexp.lisp
+@@ -138,8 +138,8 @@
+ (print `(ratvars = ,$ratvars gcd = '$gcd algebraic = ,$algebraic))
+ (print `(ratfac = ,$ratfac))
+ (merror "Unable to find the spectrum")))
+-
+- (setq res ($fullratsimp (ncpower (sub (mult z ($ident n)) mat) -1) z))
++
++ (setq res ($fullratsimp ($invert_by_lu (sub (mult z ($ident n)) mat) '$crering) z))
+ (setq m (length sp))
+ (dotimes (i m)
+ (setq zi (nth i sp))
Deleted: maxima-printing.patch
===================================================================
--- maxima-printing.patch 2020-01-31 20:26:20 UTC (rev 560848)
+++ maxima-printing.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -1,19 +0,0 @@
-diff --git a/src/grind.lisp b/src/grind.lisp
-index 4ae73a3..86b80e6 100644
---- a/src/grind.lisp
-+++ b/src/grind.lisp
-@@ -295,12 +295,12 @@
- (msz nil l r)
- (do ((nl) (w 0))
- ((null (cdr x))
-- (setq nl (cons (if (stringp (car x))
-+ (setq nl (cons (if (atom (car x))
- (msz (makestring (car x)) l r)
- (msize (car x) l r lop rop))
- nl))
- (cons (+ w (caar nl)) (nreverse nl)))
-- (setq nl (cons (if (stringp (car x))
-+ (setq nl (cons (if (atom (car x))
- (msz (makestring (car x)) l r)
- (msize (car x) l r lop rop))
- nl)
Copied: maxima-ecl/repos/community-x86_64/maxima-printing.patch (from rev 560848, maxima-ecl/trunk/maxima-printing.patch)
===================================================================
--- maxima-printing.patch (rev 0)
+++ maxima-printing.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -0,0 +1,19 @@
+diff --git a/src/grind.lisp b/src/grind.lisp
+index 4ae73a3..86b80e6 100644
+--- a/src/grind.lisp
++++ b/src/grind.lisp
+@@ -295,12 +295,12 @@
+ (msz nil l r)
+ (do ((nl) (w 0))
+ ((null (cdr x))
+- (setq nl (cons (if (stringp (car x))
++ (setq nl (cons (if (atom (car x))
+ (msz (makestring (car x)) l r)
+ (msize (car x) l r lop rop))
+ nl))
+ (cons (+ w (caar nl)) (nreverse nl)))
+- (setq nl (cons (if (stringp (car x))
++ (setq nl (cons (if (atom (car x))
+ (msz (makestring (car x)) l r)
+ (msize (car x) l r lop rop))
+ nl)
Deleted: stack.patch
===================================================================
--- stack.patch 2020-01-31 20:26:20 UTC (rev 560848)
+++ stack.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -1,85 +0,0 @@
-diff --git a/src/hayat.lisp b/src/hayat.lisp
-index 07699d6..ab8984d 100644
---- a/src/hayat.lisp
-+++ b/src/hayat.lisp
-@@ -2189,6 +2189,23 @@
- (or (alike1 (exp-pt (get-datum (datum-var (car l)))) (exp-pt (car l)))
- (return () ))))
-
-+;; SUBTREE-SEARCH
-+;;
-+;; Search for subtrees, ST, of TREE that contain an element equal to BRANCH
-+;; under TEST as an immediate child and return them as a list.
-+;;
-+;; Examples:
-+;; (SUBTREE-SEARCH 2 '(1 2 3)) => '((1 2 3))
-+;; (SUBTREE-SEARCH 2 '(1 2 2 3)) => '((1 2 2 3))
-+;; (SUBTREE-SEARCH 2 '(1 (2) 3)) => '((2))
-+;; (SUBTREE-SEARCH 4 '(1 (2) 3)) => NIL
-+;; (SUBTREE-SEARCH 2 '(1 (2) 3 (2))) => '((2) (2))
-+
-+(defun subtree-search (branch tree &optional (test 'equalp))
-+ (unless (atom tree)
-+ (if (find branch tree :test test) (list tree)
-+ (mapcan (lambda (child) (subtree-search branch child test)) tree))))
-+
- (defun taylor2 (e)
- (let ((last-exp e)) ;; lexp-non0 should be bound here when needed
- (cond ((assolike e tlist) (var-expand e 1 () ))
-@@ -2232,8 +2249,31 @@
- ((null l) t)
- (or (free e (car l)) (return ()))))
- (newsym e))
-- (t (let ((exact-poly () )) ; Taylor series aren't exact
-- (taylor2 (diff-expand e tlist)))))))
-+ (t
-+ ;; When all else fails, call diff-expand to try to expand e around the
-+ ;; point as a Taylor series by taking repeated derivatives. This might
-+ ;; fail, unfortunately: If a required derivative doesn't exist, then
-+ ;; DIFF-EXPAND will return a form of the form "f'(x)" with the
-+ ;; variable, rather than the expansion point in it.
-+ ;;
-+ ;; Sometimes this works - in particular, if there is a genuine pole at
-+ ;; the point, we end up passing a sum of terms like x^(-k) to a
-+ ;; recursive invocation and all is good. Unfortunately, it can also
-+ ;; fail. For example, if e is abs(sin(x)) and we try to expand to first
-+ ;; order, the expression "1/1*(cos(x)*sin(x)/abs(sin(x)))*x^1+0" is
-+ ;; returned. If we call taylor2 on that, we will end up recursing and
-+ ;; blowing the stack. To avoid doing so, error out if EXPANSION
-+ ;; contains E as a subtree. However, don't error if it occurs as an
-+ ;; argument to %DERIVATIVE (in which case, we might well be fine). This
-+ ;; happens from things like taylor(log(f(x)), x, x0, 1).
-+
-+ (let* ((exact-poly nil) ; (Taylor series aren't exact)
-+ (expansion (diff-expand e tlist)))
-+ (when (find-if (lambda (subtree)
-+ (not (eq ($op subtree) '%derivative)))
-+ (subtree-search e expansion))
-+ (exp-pt-err))
-+ (taylor2 expansion))))))
-
- (defun compatvarlist (a b c d)
- (cond ((null a) t)
-@@ -2968,7 +3008,21 @@
- (and (or (member '$inf pt-list :test #'eq) (member '$minf pt-list :test #'eq))
- (unfam-sing-err)))
-
--(defun diff-expand (exp l) ;l is tlist
-+;; DIFF-EXPAND
-+;;
-+;; Expand EXP in the variables as specified in L, which is a list of tlists. If
-+;; L is a singleton, this just works by the classic Taylor expansion:
-+;;
-+;; f(x) = f(c) + f'(c) + f''(c)/2 + ... + f^(k)(c)/k!
-+;;
-+;; If L specifies multiple expansions, DIFF-EXPAND works recursively by
-+;; expanding one variable at a time. The derivatives are computed using SDIFF.
-+;;
-+;; In some cases, f'(c) or some higher derivative might be an expression of the
-+;; form 1/0. Instead of returning an error, DIFF-EXPAND uses f'(x)
-+;; instead. (Note: This seems bogus to me (RJS), but I'm just describing how
-+;; EVAL-DERIV works)
-+(defun diff-expand (exp l)
- (check-inf-sing (mapcar (function caddr) l))
- (cond ((not l) exp)
- (t
Copied: maxima-ecl/repos/community-x86_64/stack.patch (from rev 560848, maxima-ecl/trunk/stack.patch)
===================================================================
--- stack.patch (rev 0)
+++ stack.patch 2020-01-31 20:26:45 UTC (rev 560849)
@@ -0,0 +1,85 @@
+diff --git a/src/hayat.lisp b/src/hayat.lisp
+index 07699d6..ab8984d 100644
+--- a/src/hayat.lisp
++++ b/src/hayat.lisp
+@@ -2189,6 +2189,23 @@
+ (or (alike1 (exp-pt (get-datum (datum-var (car l)))) (exp-pt (car l)))
+ (return () ))))
+
++;; SUBTREE-SEARCH
++;;
++;; Search for subtrees, ST, of TREE that contain an element equal to BRANCH
++;; under TEST as an immediate child and return them as a list.
++;;
++;; Examples:
++;; (SUBTREE-SEARCH 2 '(1 2 3)) => '((1 2 3))
++;; (SUBTREE-SEARCH 2 '(1 2 2 3)) => '((1 2 2 3))
++;; (SUBTREE-SEARCH 2 '(1 (2) 3)) => '((2))
++;; (SUBTREE-SEARCH 4 '(1 (2) 3)) => NIL
++;; (SUBTREE-SEARCH 2 '(1 (2) 3 (2))) => '((2) (2))
++
++(defun subtree-search (branch tree &optional (test 'equalp))
++ (unless (atom tree)
++ (if (find branch tree :test test) (list tree)
++ (mapcan (lambda (child) (subtree-search branch child test)) tree))))
++
+ (defun taylor2 (e)
+ (let ((last-exp e)) ;; lexp-non0 should be bound here when needed
+ (cond ((assolike e tlist) (var-expand e 1 () ))
+@@ -2232,8 +2249,31 @@
+ ((null l) t)
+ (or (free e (car l)) (return ()))))
+ (newsym e))
+- (t (let ((exact-poly () )) ; Taylor series aren't exact
+- (taylor2 (diff-expand e tlist)))))))
++ (t
++ ;; When all else fails, call diff-expand to try to expand e around the
++ ;; point as a Taylor series by taking repeated derivatives. This might
++ ;; fail, unfortunately: If a required derivative doesn't exist, then
++ ;; DIFF-EXPAND will return a form of the form "f'(x)" with the
++ ;; variable, rather than the expansion point in it.
++ ;;
++ ;; Sometimes this works - in particular, if there is a genuine pole at
++ ;; the point, we end up passing a sum of terms like x^(-k) to a
++ ;; recursive invocation and all is good. Unfortunately, it can also
++ ;; fail. For example, if e is abs(sin(x)) and we try to expand to first
++ ;; order, the expression "1/1*(cos(x)*sin(x)/abs(sin(x)))*x^1+0" is
++ ;; returned. If we call taylor2 on that, we will end up recursing and
++ ;; blowing the stack. To avoid doing so, error out if EXPANSION
++ ;; contains E as a subtree. However, don't error if it occurs as an
++ ;; argument to %DERIVATIVE (in which case, we might well be fine). This
++ ;; happens from things like taylor(log(f(x)), x, x0, 1).
++
++ (let* ((exact-poly nil) ; (Taylor series aren't exact)
++ (expansion (diff-expand e tlist)))
++ (when (find-if (lambda (subtree)
++ (not (eq ($op subtree) '%derivative)))
++ (subtree-search e expansion))
++ (exp-pt-err))
++ (taylor2 expansion))))))
+
+ (defun compatvarlist (a b c d)
+ (cond ((null a) t)
+@@ -2968,7 +3008,21 @@
+ (and (or (member '$inf pt-list :test #'eq) (member '$minf pt-list :test #'eq))
+ (unfam-sing-err)))
+
+-(defun diff-expand (exp l) ;l is tlist
++;; DIFF-EXPAND
++;;
++;; Expand EXP in the variables as specified in L, which is a list of tlists. If
++;; L is a singleton, this just works by the classic Taylor expansion:
++;;
++;; f(x) = f(c) + f'(c) + f''(c)/2 + ... + f^(k)(c)/k!
++;;
++;; If L specifies multiple expansions, DIFF-EXPAND works recursively by
++;; expanding one variable at a time. The derivatives are computed using SDIFF.
++;;
++;; In some cases, f'(c) or some higher derivative might be an expression of the
++;; form 1/0. Instead of returning an error, DIFF-EXPAND uses f'(x)
++;; instead. (Note: This seems bogus to me (RJS), but I'm just describing how
++;; EVAL-DERIV works)
++(defun diff-expand (exp l)
+ (check-inf-sing (mapcar (function caddr) l))
+ (cond ((not l) exp)
+ (t
More information about the arch-commits
mailing list