upgpkg: ocaml 5.0.0-1
[arch-packages.git] / maxima / trunk / PKGBUILD
blob731a17ead034b587cfa447bbc4032c21e79ca28a
1 # Maintainer: Antonio Rojas <arojas@archlinux.org>
2 # Contributor: Ronald van Haren <ronald.archlinux.org>
3 # Contributor: Damir Perisa <damir@archlinux.org>
5 pkgbase=maxima
6 pkgname=($pkgbase{,-sbcl,-ecl,-fas})
7 pkgver=5.46.0
8 _sbclver=2.3.3
9 _eclver=21.2.1
10 pkgrel=9
11 pkgdesc='A sophisticated computer algebra system'
12 arch=(x86_64)
13 license=(GPL)
14 url='http://maxima.sourceforge.net'
15 depends=(texinfo shared-mime-info)
16 makedepends=(python emacs ecl sbcl)
17 # needs rebuild when bash changes version
18 # needs a rebuild when ecl or sbcl changes version
19 options=(!zipman) # don't zip info pages or they won't work inside maxima
20 source=(https://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz
21         matrixexp.patch
22         maxima-sbcl-gmp.patch)
23 sha256sums=('7390f06b48da65c9033e8b2f629b978b90056454a54022db7de70e2225aa8b07'
24             'ef1bc6a15fc982ff8c6aa1800bbbd3284d9e060ca27abf9d8c1266632c0c2619'
25             '7e85da0b6672b096d7aefac861573a57323dfe805e08d033781448f7ca6ed856')
27 prepare() {
28   patch -d $pkgname-$pkgver -p1 < matrixexp.patch # fix matrix exponentiation
29   patch -d $pkgname-$pkgver -p1 < maxima-sbcl-gmp.patch # Use GMP arithmetic with sbcl (Void Linux)
32 build() {
33   cd $pkgbase-$pkgver
34   ./configure \
35     --prefix=/usr \
36     --mandir=/usr/share/man \
37     --infodir=/usr/share/info \
38     --libexecdir=/usr/lib \
39     --enable-sbcl \
40     --enable-ecl \
41     --with-default-lisp=sbcl
43   # help avoid (re)running makeinfo/tex
44   touch doc/info/maxima.info
45   make
48 #check() {  # test 23&129 fail from rtest_taylor
49 #  cd $pkgname-$pkgver
50 #  make check
53 package_maxima() {
54   depends+=(maxima-backend)
55   replaces=('maxima-ecl<5.45.1-9')
56   optdepends=('gnuplot: plotting capabilities'
57               'rlwrap: readline support via /usr/bin/rmaxima'
58               'tk: graphical xmaxima interface')
60   cd $pkgbase-$pkgver
61   make DESTDIR="$pkgdir" emacsdir=/usr/share/emacs/site-lisp/maxima install
63 # Remove backends
64   rm -r "$pkgdir"/usr/lib/maxima/$pkgver/binary-*
67 package_maxima-sbcl() {
68   pkgdesc='SBCL backend for Maxima'
69   depends=(gmp sbcl=$_sbclver)
70   provides=(maxima-backend)
72   install -Dm755 $pkgbase-$pkgver/src/binary-sbcl/maxima.core -t "$pkgdir"/usr/lib/maxima/$pkgver/binary-sbcl
75 package_maxima-ecl() {
76   pkgdesc='ECL backend for Maxima'
77   depends=(ecl=$_eclver)
78   provides=(maxima-backend)
80   install -Dm755 $pkgbase-$pkgver/src/binary-ecl/maxima -t "$pkgdir"/usr/lib/maxima/$pkgver/binary-ecl
83 package_maxima-fas() {
84   pkgdesc='Maxima FAS module for ECL'
85   depends=(ecl=$_eclver maxima)
87   install -Dm644 $pkgbase-$pkgver/src/binary-ecl/maxima.fas -t "$pkgdir"/usr/lib/ecl-$_eclver