aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Shelton <stuart@shelton.me>2018-04-29 20:57:56 +0100
committerStuart Shelton <stuart@shelton.me>2018-04-29 21:06:17 +0100
commit5579adf9a8cab6da385eb71b86d6d8ac8f6ba22d (patch)
treed776db327d020cf6990985185d32a78c89710fdd /dev-perl
parentAdd dev-lang/php-5.6.35-r1, dev-lang/php-7.0.29, dev-lang/php-7.1.16 (diff)
downloadsrcshelton-5579adf9a8cab6da385eb71b86d6d8ac8f6ba22d.tar.gz
srcshelton-5579adf9a8cab6da385eb71b86d6d8ac8f6ba22d.tar.bz2
srcshelton-5579adf9a8cab6da385eb71b86d6d8ac8f6ba22d.zip
Add dev-perl/Math-Pari-2.10.809.0-r1
Diffstat (limited to 'dev-perl')
-rw-r--r--dev-perl/Math-Pari/Manifest1
-rw-r--r--dev-perl/Math-Pari/Math-Pari-2.10.809.0-r1.ebuild90
2 files changed, 91 insertions, 0 deletions
diff --git a/dev-perl/Math-Pari/Manifest b/dev-perl/Math-Pari/Manifest
index cb7caed6..6bb90f5b 100644
--- a/dev-perl/Math-Pari/Manifest
+++ b/dev-perl/Math-Pari/Manifest
@@ -5,4 +5,5 @@ DIST Math-Pari-2.01080605.tar.gz 122627 BLAKE2B 867839722c578fc5731745975b3f9a3b
DIST Math-Pari-2.01080900.zip 166396 BLAKE2B e4327d817cadc752e3471df873b1a4f2fe90efc18a9cbf195c6aa394f470fde9c1c32449b8e5237b5ee362ca0497e7295dc9c8dea7f41de8da17518a0573a768 SHA512 844324472632081e16d8c70e2f3b14a04cc125dc65ac1e4e75b495f7b83393cadc637c6b81d2e6657380b153a6d91eba4a437087481ffbd4c6c58c5da0e4d05b
DIST pari-2.3.5.tar.gz 2018097 BLAKE2B b5f4f8bc83cd77aceab791263e1a2f0294d0663d354fea454bad8cac3cdbac9c4c8381cc83bc947d518522701c36e94ce1d6862125a9bfd3b17b1a31c9baabc8 SHA512 0e49e6310b4c76ef3370786a13aa8cbc5bb0b7dc84ec1665866d623e6284f45db8584eea759e8b5954dc9b5c8a3e866e77a377d18073ed33f11708a7e88a4cca
EBUILD Math-Pari-2.10.806.50-r1.ebuild 3248 BLAKE2B 29191cb72ea6aeb3e1b69c3a183abecf751a816cb64b5269cab0a2aea32e013b4bcb4c7bae5a18c22df5896a72a329394728640e6b1acfd9a8726699fc25cfb6 SHA512 1dd12ba2c34804d03bce2e465f9c174946e5d5f7dce9ab5691bcecba06cb459e2306467cf85130c03ceb717b4b07935384fc4f0f2ab4a47477836b4f6d44d84b
+EBUILD Math-Pari-2.10.809.0-r1.ebuild 3067 BLAKE2B 610d6f80a117cb298dca10e6f10b38df0cfaf0a7374fa81c87d0c60aaf113770f82add3ef7b5c412eb64f97c9c5e2528ceba832b583daeff8ad5ceee3fc2a4e5 SHA512 6c8064964202418af8e62d55db95b796ac11dc3abf644e82cc6a7e2e61787ebcd8f0b57a3504993f9791fcd0b4f9734f77cbb71bb8480ca9ac81835b1a5b015c
EBUILD Math-Pari-2.10.809.0.ebuild 3349 BLAKE2B c82d49bb7278dee5b2d124c80fee8a5f8817db9f68338f6ba63bcde6e3198ce42a7bb34a464b7c849c4870ffaf53ea0057a1091096a286039a2acc4792285b26 SHA512 a60fb0e78bb37298d50473b7af0460d798c78c65b9cdf1214e95336a61fec5d655366f68b9cabddf2806e559cded3ff1794bd3a97444eff9883ec744ead6f986
diff --git a/dev-perl/Math-Pari/Math-Pari-2.10.809.0-r1.ebuild b/dev-perl/Math-Pari/Math-Pari-2.10.809.0-r1.ebuild
new file mode 100644
index 00000000..033fa455
--- /dev/null
+++ b/dev-perl/Math-Pari/Math-Pari-2.10.809.0-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=ILYAZ
+DIST_SECTION=modules
+DIST_VERSION=2.01080900
+DIST_A_EXT=zip
+inherit perl-module toolchain-funcs
+
+PARI_VER=2.3.5
+
+DESCRIPTION="Perl interface to PARI"
+SRC_URI="${SRC_URI}
+ http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-${PARI_VER}.tar.gz"
+
+SLOT="0"
+KEYWORDS="alpha amd64 hppa sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="abi_x86_x32 elibc_glibc"
+
+DEPEND="app-arch/unzip"
+
+S_PARI=${WORKDIR}/pari-${PARI_VER}
+
+PATCHES=(
+ "${FILESDIR}/no-flto.patch"
+ "${FILESDIR}/${P}-no-dot-inc.patch"
+)
+src_prepare() {
+ # On 64-bit hardware, these files are needed in both the 64/ and 32/
+ # directories for the testsuite to pass.
+ cd "${S_PARI}"/src/test/
+ for t in analyz compat ellglobalred elliptic galois graph intnum kernel \
+ linear nfields number objets ploth polyser program qfbsolve rfrac \
+ round4 stark sumiter trans ; do
+ i="in/${t}"
+ o32="32/${t}"
+ o64="64/${t}"
+ [ -f "$i" -a ! -f "$o32" ] && cp -al "$i" "$o32"
+ [ -f "$i" -a ! -f "$o64" ] && cp -al "$i" "$o64"
+ done
+ cd "${S_PARI}"
+ eapply "${FILESDIR}/pari-${PARI_VER}-no-dot-inc.patch"
+ cd "${S}"
+ perl-module_src_prepare
+}
+
+src_configure() {
+ # Unfortunately the assembly routines math-pari has for SPARC do not appear
+ # to be working at current. Perl cannot test math-pari or anything that
+ # pulls in the math-pari module as DynaLoader cannot load the resulting
+ # .so files math-pari generates. As such, we have to use the generic
+ # non-machine specific assembly methods here.
+ use sparc && myconf="${myconf} machine=none"
+
+ # This is a horrible, horrible hack - but on systems where the word-length
+ # of the kernel differs from that of userland, math-pari goes with the
+ # kernel size and then breaks :(
+ # This affects x32 systems and systems with a 64-bit kernel running a
+ # 32-bit userland. It likely affects other architectures (primarily MIPS?)
+ # also, but this fix deals only with the Intel case.
+ # We're limited in what we can do here, because 'perl-module_src_configure'
+ # is a shell-function inherited from the 'perl-module' eclass, and we don't
+ # want to freeze-and-import a whole chunk of this script just to ensure
+ # that the configure stage detects the correct architecture. Instead, we
+ # cunningly define and export a shell-function named 'perl' which is called
+ # in place of the perl binary and which itself invokes the perl binary,
+ # but in the correct context. We then remove this ASAP since, let's face
+ # it, this is bound to be hugely fragile...
+ if use elibc_glibc; then
+ if use abi_x86_x32 || [[ "$( uname -m )" == "x86_64" && "$( getconf LONG_BIT )" != "64" ]]; then
+ export real_perl_path="$( type -pf perl 2>/dev/null )"
+ if [[ -x "${real_perl_path}" ]]; then
+ function perl() {
+ linux32 "${real_perl_path}" "${@}"
+ }
+ export -f perl
+ fi
+ fi
+ fi
+
+ perl-module_src_configure
+
+ unset perl real_perl_path
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)" OTHERLDFLAGS="${LDFLAGS}"
+}