# Maintainer: Antonio Rojas <arojas@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - add LDFLAGS and CXXOPT to lower RAM usage
#  - make -j2 due to RAM constraints

highmem=1

pkgname=polymake
pkgver=4.13
pkgrel=2
_perlver=`perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]).".".($v->[2]);'`
pkgdesc='Open source software for research in polyhedral geometry'
arch=(x86_64)
url='https://polymake.org/'
license=(GPL-2.0-or-later)
depends=(bliss
         cddlib
         e-antic
         flint
         gcc-libs
         glibc
         gmp
         lrs
         mpfr
         normaliz
         perl=$_perlver
         perl-json
         perl-term-readkey
         perl-term-readline-gnu
         perl-xml-libxml
         perl-xml-libxslt
         perl-xml-writer
         ppl
         scip
         singular
         sympol
         zlib)
makedepends=(ant
             boost
             jdk-openjdk
             libnsl
             ninja
             permlib
             soplex)
optdepends=('java-runtime: java module')
source=(https://polymake.org/lib/exe/fetch.php/download/polymake-${pkgver/.r/r}-minimal.tar.bz2)
sha256sums=('f3adacd063b9ea60d5e9c37c6183f5dbb7458b0cb3491eba3efc38f20c565ceb')
options=(!emptydirs)

prepare() {
  sed -e 's|-lgmp|-lgmp -lmpfr|g' -i polymake-$pkgver/bundled/soplex/support/configure.pl # Fix soplex linking
}

build() {
  cd polymake-$pkgver
  ./configure \
    --prefix=/usr \
    --without-native \
    --with-cdd=/usr \
    --with-lrs=/usr \
    --with-permlib=/usr \
    --with-soplex=/usr \
    --with-sympol=/usr CXXOPT="-O1"
  LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
  make -j2
}

package() {
  cd polymake-$pkgver
  make DESTDIR="$pkgdir" install

# Executables are installed in mode 555, which breaks strip
  find "$pkgdir" -exec chmod u+w {} +
}