# Template file for 'giac' pkgname=giac version=1.9.0.59 revision=1 build_style=gnu-configure configure_args="--disable-micropy --disable-quickjs" hostmakedepends="automake gettext-devel libtool" makedepends="fltk-devel gmp-devel gsl-devel libjpeg-turbo-devel libpng-devel readline-devel mpfr-devel pari-devel $(vopt_if openblas 'openblas-devel' 'lapack-devel')" depends="desktop-file-utils hicolor-icon-theme" short_desc="Free computer algebra system" maintainer="Gonzalo TornarĂ­a " license="GPL-3.0-or-later" homepage="https://www-fourier.ujf-grenoble.fr/~parisse/giac.html" changelog="https://www-fourier.ujf-grenoble.fr/~parisse/install_en#new" distfiles="https://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/giac_${version%.*}-${version##*.}.tar.gz" checksum=c5b1ba93f42e758f46d541b28d9350f165eaf8c459bdea80f4a73a72d43c10de # need more than 4*65536 stack, see try_parse() in gen.cc line 11812 LDFLAGS="-Wl,-z,stack-size=2097152" build_options="openblas" case $XBPS_TARGET_MACHINE in # avoid numerical noise caused by extended-precision of registers i686*) CXXFLAGS="-mfpmath=sse -msse2" ;; esac case "$XBPS_TARGET_MACHINE" in x86_64*|i686*|aarch64*|armv[67]*|ppc64*) # Prefer accelerated routines where available build_options_default="openblas" ;; *) ;; esac post_extract() { # Missing... triggers doc rebuild which fails touch doc/en/tutoriel.stamp } pre_configure() { # use full version in banner -- upstream hides last component vsed -i configure.ac \ -e '/m4_define(\[giac_micro_version]/ s/\[0]/[0-'${version##*.}']/' autoreconf -fi if [ "$build_option_openblas" ]; then export BLAS_LIBS=-lopenblas export BLAS_CFLAGS=-I/usr/include/openblas export LAPACK_LIBS=-lopenblas export LAPACK_CFLAGS=-I/usr/include/openblas fi } post_install() { # remove duplicates rm -r ${DESTDIR}/usr/share/doc echo "giac: check that '#include ' works (see #45708)" echo '#include ' | ${CC} -c -isystem "${DESTDIR}/usr/include" -xc++ - -o /dev/null } libgiac_package() { short_desc+=" - runtime library" pkg_install() { vmove "usr/lib/*.so.*" } } giac-devel_package() { short_desc+=" - development files" depends="${sourcepkg}>=${version}_${revision} $makedepends" pkg_install() { vmove usr/include vmove "usr/lib/*.a" vmove "usr/lib/*.so" } } giac-doc_package() { short_desc+=" - Documentation and Examples" pkg_install() { vmove "usr/share/giac/doc" vmove "usr/share/giac/examples" find ${PKGDESTDIR} -name "Makefile*" -delete } }