# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Gaetan Bisson <bisson@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - comment adding -flto to CFLAGS
#  - generalize cd Olinux-* for install-bin-sta

pkgname=pari
pkgver=2.13.2
pkgrel=1
pkgdesc='Computer algebra system designed for fast computations in number theory'
url='https://pari.math.u-bordeaux.fr/'
license=(GPL)
arch=(x86_64)
depends=(gmp libx11)
makedepends=(perl texlive-core chrpath)
optdepends=('perl: gphelp, tex2mail'
            'pari-elldata: J. Cremona elliptic curve database'
            'pari-galdata: to compute Galois groups in degrees 8 through 11'
            'pari-seadata: needed by ellap for large primes'
            'pari-galpol: GALPOL database of polynomials defining Galois extensions of the rationals')
checkdepends=(pari-elldata pari-galdata pari-seadata pari-galpol)
source=(https://pari.math.u-bordeaux.fr/pub/pari/unix/$pkgname-$pkgver.tar.gz{,.asc})
sha256sums=('1679985094a0b723d14f49aa891dbe5ec967aa4040050a2c50bd764ddb3eba24'
            'SKIP')
validpgpkeys=('42028EA404A2E9D80AC453148F0E7C2B4522E387')

prepare() {  
  cd $pkgname-$pkgver
  sed -e 's|DLLDFLAGS  = \$DLLDFLAGS|DLLDFLAGS  = $DLLDFLAGS $LDFLAGS|' -i config/Makefile.SH # Honor system LDFLAGS
}

build() {
  cd $pkgname-$pkgver

  # Upstream Bill Allombert recommends linking gp statically against
  # libpari.so with -flto to recover speed losses incurred when enabling
  # pthread support. That's also what he now does for the Debian package.
  #export CFLAGS+=' -flto'

  ./Configure \
    --prefix=/usr \
    --with-readline \
    --mt=pthread \
    --with-gmp
  make all
  make -C Olinux-* gp-sta
}

check() {
  cd $pkgname-$pkgver
  make test-all
}

package() {
  cd $pkgname-$pkgver
  make DESTDIR="$pkgdir" install
  make DESTDIR="$pkgdir" -C Olinux-* install-bin-sta
  ln -sf gp.1.gz "$pkgdir"/usr/share/man/man1/pari.1
  chrpath -d "$pkgdir"/usr/bin/gp-*
}