summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2021-11-10 19:45:16 -0500
committerMichael Orlitzky <mjo@gentoo.org>2021-11-10 19:46:14 -0500
commit523f3b80e6b43dfb42c0c7ca1328eb2733f088ee (patch)
treebe553dca309fc5271663d5283b2fc2e05e264cf7 /sci-mathematics
parentapp-arch/tarsync: Bump to version 0.2.2 (diff)
downloadgentoo-523f3b80e6b43dfb42c0c7ca1328eb2733f088ee.tar.gz
gentoo-523f3b80e6b43dfb42c0c7ca1328eb2733f088ee.tar.bz2
gentoo-523f3b80e6b43dfb42c0c7ca1328eb2733f088ee.zip
sci-mathematics/pari: new upstream version pari-2.13.3.
Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/pari/Manifest1
-rw-r--r--sci-mathematics/pari/pari-2.13.3.ebuild121
2 files changed, 122 insertions, 0 deletions
diff --git a/sci-mathematics/pari/Manifest b/sci-mathematics/pari/Manifest
index 5d9fd6547a60..7bbbbe6a835c 100644
--- a/sci-mathematics/pari/Manifest
+++ b/sci-mathematics/pari/Manifest
@@ -1 +1,2 @@
DIST pari-2.13.2.tar.gz 4766461 BLAKE2B f765edaee8e3b85f859edb1ac82f20aab6cda1a1bb87a2bfaf2de0824d401aef8d5f559a95bc2da565b492f49445b7cf9bcce45376b100e6ca736d82a381ca88 SHA512 ee034e4f2d385755aa5fcddb8b562a2faf4d847591d35c47461e3cbf01382da3a85f004685c842e0c530fdb29e384b69dc496a568b9b204e276b4c8e27afd382
+DIST pari-2.13.3.tar.gz 4768312 BLAKE2B e6df23d3929ef1549009eb82c628cc2b9f1f3a446b2c2b246e157b93859006c3f4526c6fef4b975be87b9c6c011e179c169b4f237981c2ca1e02df0adbc4c00a SHA512 16cc20e44bc9b408798a86ffc31f8096e5adc01e0b8f7620e3d03201d71ddbe1d1bfecb22ab69c5b03270e9e97657042de29bb2055173b0d4cf169ec4373972b
diff --git a/sci-mathematics/pari/pari-2.13.3.ebuild b/sci-mathematics/pari/pari-2.13.3.ebuild
new file mode 100644
index 000000000000..3d8273de659b
--- /dev/null
+++ b/sci-mathematics/pari/pari-2.13.3.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Computer-aided number theory C library and tools"
+HOMEPAGE="https://pari.math.u-bordeaux.fr/"
+SRC_URI="https://pari.math.u-bordeaux.fr/pub/${PN}/unix/${P}.tar.gz"
+
+LICENSE="GPL-2"
+
+# The subslot is the value of $soname_num obtained from
+# upstream's config/version script.
+SLOT="0/7"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="data doc fltk gmp test threads X"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( virtual/latex-base )
+"
+DEPEND="
+ sys-libs/readline:0=
+ data? ( sci-mathematics/pari-data )
+ doc? ( X? ( x11-misc/xdg-utils ) )
+ fltk? ( x11-libs/fltk:1= )
+ gmp? ( dev-libs/gmp:0= )
+ X? ( x11-libs/libX11:0= )"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}"-2.9.4-strip.patch
+ "${FILESDIR}/${PN}"-2.9.4-ppc.patch
+ "${FILESDIR}/${PN}"-2.11.2-no-automagic.patch
+ "${FILESDIR}/${PN}"-2.9.4-fltk-detection.patch
+ "${FILESDIR}/${PN}"-2.11.2-Makefile-LDFLAGS.patch
+ "${FILESDIR}/${PN}"-2.11.2-Makefile-docinstall.patch
+)
+
+src_prepare() {
+ default
+
+ # move doc dir to a gentoo doc dir and replace acroread by xdg-open
+ sed -i \
+ -e "s:\$d = \$0:\$d = '${EPREFIX}/usr/share/doc/${PF}':" \
+ -e 's:"acroread":"xdg-open":' \
+ doc/gphelp.in || die "Failed to fix doc dir"
+}
+
+src_configure() {
+ tc-export CC CXX PKG_CONFIG
+
+ # Workaraound to "asm operand has impossible constraints" as
+ # suggested in bug #499996.
+ use x86 && append-cflags $(test-flags-CC -fno-stack-check)
+
+ # need to force optimization here, as it breaks without
+ if is-flag -O0; then
+ replace-flags -O0 -O2
+ elif ! is-flag -O?; then
+ append-flags -O2
+ fi
+
+ # sysdatadir installs a pari.cfg stuff which is informative only.
+ # It is supposed to be for "architecture-dependent" data.
+ # It needs to be easily discoverable for downstream packages such as gp2c.
+ # We set LD to "" so that it is set to the value of the compiler used
+ # which is how a normal end user is expected to configure it. pari's build
+ # system do not cope very well with a naked linker, it is expecting a
+ # compiler driver. See https://bugs.gentoo.org/722090
+ LD="" ./Configure \
+ --prefix="${EPREFIX}"/usr \
+ --datadir="${EPREFIX}/usr/share/${PN}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --sysdatadir="${EPREFIX}"/usr/share/pari \
+ --mandir="${EPREFIX}"/usr/share/man/man1 \
+ --with-readline="${EPREFIX}"/usr \
+ --with-readline-lib="${EPREFIX}/usr/$(get_libdir)" \
+ --with-ncurses-lib="${EPREFIX}/usr/$(get_libdir)" \
+ $(use_with fltk) \
+ $(use_with gmp) \
+ --without-qt \
+ $(usex threads "--mt=pthread" "" "" "") \
+ || die "./Configure failed"
+}
+
+src_compile() {
+ local mymake=""
+ use hppa && \
+ mymake=DLLD\="${EPREFIX}"/usr/bin/gcc\ DLLDFLAGS\=-shared\ -Wl,-soname=\$\(LIBPARI_SONAME\)\ -lm
+
+ emake ${mymake} gp
+
+ if use doc; then
+ # To prevent sandbox violations by metafont
+ VARTEXFONTS="${T}/fonts" emake docpdf
+ fi
+}
+
+src_test() {
+ # Welcome to the jungle, where the tests fail if you make your
+ # terminal bigger.
+ emake COLUMNS=80 test-all
+}
+
+src_install() {
+ DOCS=( AUTHORS CHANGES* COMPAT NEW README* )
+ default
+
+ if use doc; then
+ docompress -x "/usr/share/doc/${PF}"
+ emake \
+ DESTDIR="${D}" \
+ EXDIR="${ED}/usr/share/doc/${PF}/examples" \
+ DOCDIR="${ED}/usr/share/doc/${PF}" \
+ install-doc
+ fi
+}