# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Ronald van Haren <ronald.archlinux.org>
# Contributor: Damir Perisa <damir@archlinux.org>
# Modified to compile against ecl by: maribu

pkgname=maxima-ecl
_pkgname=maxima
pkgver=5.45.1
_eclver=21.2.1
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 maxima-printing.patch)
sha256sums=('fe9016276970bef214a1a244348558644514d7fdfaa4fc8b9d0e87afcbb4e7dc'
            '90ced3b33361fa24c2b417e0aeba8956892f0965b4a22d57d0c04115f2a3274b'
            'ef1bc6a15fc982ff8c6aa1800bbbd3284d9e060ca27abf9d8c1266632c0c2619'
            '631f65e477a1496b0ce71d385117713274fcabfa2487c52b165fc3b1d015c0db')

prepare() {
  cd $_pkgname-$pkgver

# build maxima ecl library
  patch -p1 -i ../build-fasl.patch
# fix matrix exponentiation
  patch -p1 -i ../matrixexp.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"
}
