summaryrefslogtreecommitdiff
path: root/sci-mathematics/flint
diff options
context:
space:
mode:
Diffstat (limited to 'sci-mathematics/flint')
-rw-r--r--sci-mathematics/flint/Manifest5
-rw-r--r--sci-mathematics/flint/files/flint-2.5.2-memory_message.patch16
-rw-r--r--sci-mathematics/flint/files/flint-2.5.2-pie.patch78
-rw-r--r--sci-mathematics/flint/files/flint-2.5.2-utf8.patch13
-rw-r--r--sci-mathematics/flint/files/flintxx-include.patch19
-rw-r--r--sci-mathematics/flint/flint-2.5.2-r1.ebuild74
6 files changed, 205 insertions, 0 deletions
diff --git a/sci-mathematics/flint/Manifest b/sci-mathematics/flint/Manifest
index 981a87020fd0..0190da47d9fa 100644
--- a/sci-mathematics/flint/Manifest
+++ b/sci-mathematics/flint/Manifest
@@ -5,10 +5,15 @@ AUX flint-2.4.4-PIE-FTBFS.patch 615 BLAKE2B ae78b613c652624f7a994074233b71c8cb69
AUX flint-2.4.4-test.patch 709 BLAKE2B fab049ce8f75a4632a9a20d6ee0892f5e3b8f7ed65bd8bb1fb887569a86a1474ccc903b815dfdf203b426b74a519234cdb1a3851b1ba7698f4abe54fd12abb0b SHA512 46f66ef5104b535c0004b63cac30bd0dcd66ff554502387597d0ab5f8d7a8189431872510c0666ad99dd7c15ec7756a87b670ef162ad6b085150c6eee7a7a376
AUX flint-2.4.5-gmp6-compat.patch 3495 BLAKE2B 69ac50eb94ee9d01d6c396024c08f2f7e6c2e3674c04712a63f18d2b8c9c830a903a27f88dfbb8c44841442a42feafd8272718f1654be2b1d9a495045a3b8e12 SHA512 e7caf37d900380eacb5bea67be1d2e78a1468b92dd21c052d8d5b5d362782425b52107cc97dc68ef73e0da494071f01e980e6b1fafed5bfc8a090f8b9e7e5c3b
AUX flint-2.4.5-ntl62.patch 454 BLAKE2B cec67356f4b94431d11e3e81f9f37259ddf92a2a77678a604879475f3c8251d70ad5d7edf184ca1f0b01f19239b9b26670dae4e5f346353796855b6b82c07d6e SHA512 c19092d0dd4060469e383aa0844cff40ab55d9f4dda77edf5f8dc7f1a8ad833541cdf92d196fc6b21ad43fadcba6d70d0ace4574e1c6828d2c25d9f74094fbb0
+AUX flint-2.5.2-memory_message.patch 504 BLAKE2B ff8ddc685c973f75a133f36eb1284d833dfc35bf42c19c87a55c8b7816c77ed180b1438d782a7cde45025e11f6f30c4105465f2b80507cb42b6bb7d67fd0bc87 SHA512 86c99da2278530caccc3b4e7be06d014664c8f11438cb5dad32b68b91a5997e23366be6433d576ca9515cba5f46227939a1e4131199383ff7d00afe10e3b9d55
+AUX flint-2.5.2-pie.patch 3126 BLAKE2B 730b11cd1a47c476e7e12003a6a493fd019cd9fab7dcd5c691212bf23243378821b52c39bb0c1d0526e912aa6ae6b0d10939a155947932e6ba3df631df4cbf6c SHA512 58e11ac02c861f570887dcf61b1014fcb35e1b47104099a30511ad0ceab9340e4866b72b83f753421d8f33b611b59dbbe3156438789df69e0b3237320884d687
+AUX flint-2.5.2-utf8.patch 625 BLAKE2B ab76e01125f0f483b09c22a30656019963a98629c36e24f85c96800fe587dafaf2dbd2d26d4e319a97a29a6618ce9caa3078da5101a3ac6613f380596855a08d SHA512 cb0bdddd3de1077c01d118b0c9e7052d8510c1be976c44be0465bcaae41e02d6da80f78854e1bbff9ef47584c604b39181a2066dc0630e5effc7c77282d2352a
+AUX flintxx-include.patch 507 BLAKE2B 250e54de1ab5b70cffdac7348b78db543cbdb366efa419dea62ffed2b0b5f95b787019e96fb95b9253b5289d58a2322b41f660f1719516e410e4245b09accb7b SHA512 144dc23d8706e22c6ac5d50bc2ce6c9e2eb8016155bec48a809bceec435d07781105c073b669302132963f063ab1c311e7381f78cc29a0141ca78eceb25aa0dc
DIST flint-2.4.4.tar.gz 1639262 BLAKE2B 54162a4d2f02c3e8e441b6a96c1e7ba4e5e8d8ad7b2d36bb7ead49bb112cd94403cb503d1e56621a0a6fedad6387e63dc39888ff3757e298aea55bf55acc4e20 SHA512 236997cf64bdc96741740889f450fdbaf7d7e9b58252645f864d28005c9e7bdf87f7187cd17526606c605f0489f026398a1361b8f209f71158ca3b31c42d86d2
DIST flint-2.4.5.tar.gz 1640022 BLAKE2B 1267d81bb0270556614ebc8bff65287e0b3738ba0f3245f066ee7ea6971ab4d9082beb2c0a336dcd5b9c1517261aaf55c0bee519c6f71984834a7920002ad95c SHA512 088ff512ea2330f9323a6ca0dc875e8c0926d755317d6007eba4b333a14d7612e82ebcfeabd26d1ec4b9204c4517dee08f914ad1ec852e37336fe378710a8bfc
DIST flint-2.5.2.tar.gz 2212242 BLAKE2B 36b9b1f2acb1d79534d85884d755fddba3b8b40efbe92aeeecd7d1526cd21f0849054c30d23c565c6a13c609992cf22f56f5b640da15e1c7e6ba6840fc710d47 SHA512 cce36947b558aabecaf780171b4bbc0e1330c3b1a7e3580717584be5cab4991d33b190531c7995b224a3a440e28c4a610d6f781901e29f48ced12a9c5ba960a2
EBUILD flint-2.4.4-r1.ebuild 1556 BLAKE2B df9874dd99c5a624e59d3cfe31e7b76cbcb9186d46cd54374f26b698cf303dbfc887af151bc1ddab8aabc799a560d1325d43a20657dc7039da6f92580ba7984c SHA512 2e32029930d81a5f2e7e23b589a1ff4cb07b06cbddc350d588a50159cef5cbc4b3c05bb1fbf16752313cc98443106d4b0ff3d794bf543100f522ff1f3d71937b
EBUILD flint-2.4.5.ebuild 1644 BLAKE2B 041ab4f00f44bdd24cbba2d7e41f6ce8a3c3066dfdb2a5af3704c935400ee8d0368b08c1a0034ac80ff580ad08f3d9b6e7e7167893a0a9f93c92933365fe64e4 SHA512 8a2b4c422b2cb28f4dd89fb035a85cc3fbfe725b069f934de2a51a1e114929f80670d047a5c4acca7e585d0f51ba9b6d90f3f38c12bcc8daa557fbf9baa68ca6
+EBUILD flint-2.5.2-r1.ebuild 1712 BLAKE2B 5958681f6035d6ef083c2479cd06ccc9fea58fc4470cc8d9298857379630af4d29589ce0b2f41f08fb512b50267ef37529169287e61489765ddc57794677ebee SHA512 65d3890260fa76fba84e6911923dbbc2907c4b2b13862a7db730812fca1f90e7b31aff724d814c59c60ddf393dc670ec661d1ed2f8dfd4dc3dd3e197e331036c
EBUILD flint-2.5.2.ebuild 1380 BLAKE2B 2b8e87bfe4d77f3d937a2ed963e894d382694f0bda1b36b3dd8166b994aa0c89f26b921686a9d92702417f7cbdf3d0af17b1e22e48e4e6b859ba4001ef9113b0 SHA512 8faa425010435c1badc4323aad4d2db99c09c79a42103340142bdf442a090857118d74171e11d347a5b844e294d5406f0b1055910312ff53e2594ccadc22a826
MISC metadata.xml 481 BLAKE2B f0d2cbeda37050bec654c0cba3c45b7340f37b29aa570c744d0a882f662481e7d8d777f48b0530fa23090807d9ad0a913733f4d55a3661f82322cfe544b90508 SHA512 63b38afaf08270df42d3a26cca9f5f491562dd89d8e9c43def3849a624d6694343147e47a602d75e44a656a8db1f7cb06885534fe39917cb46f2f895efc8ff16
diff --git a/sci-mathematics/flint/files/flint-2.5.2-memory_message.patch b/sci-mathematics/flint/files/flint-2.5.2-memory_message.patch
new file mode 100644
index 000000000000..65638aa7790b
--- /dev/null
+++ b/sci-mathematics/flint/files/flint-2.5.2-memory_message.patch
@@ -0,0 +1,16 @@
+This fixes a Python 3 doctest failure in
+rings/polynomial/polynomial_integer_dense_flint.pyx: see #28334.
+See https://github.com/wbhart/flint2/pull/585 for upstream PR
+
+diff --git a/memory_manager.c b/memory_manager.c
+index 04abf8a..bece9f5 100644
+--- a/memory_manager.c
++++ b/memory_manager.c
+@@ -41,6 +41,7 @@ pthread_mutex_t register_lock;
+ static void flint_memory_error()
+ {
+ flint_printf("Exception (FLINT memory_manager). Unable to allocate memory.\n");
++ fflush(stdout);
+ abort();
+ }
+
diff --git a/sci-mathematics/flint/files/flint-2.5.2-pie.patch b/sci-mathematics/flint/files/flint-2.5.2-pie.patch
new file mode 100644
index 000000000000..442d0254e82d
--- /dev/null
+++ b/sci-mathematics/flint/files/flint-2.5.2-pie.patch
@@ -0,0 +1,78 @@
+In newer binutils, ld options -r and -pie conflict.
+Patch due to Jörg-Volker Peetz
+(source : https://groups.google.com/d/msg/sage-devel/TduebNoZuBE/sEULolL0BQAJ),
+packaged by Emmanuel Charpentier
+
+diff -ru flint-2.5.2-orig/fq/Makefile flint-2.5.2-new/fq/Makefile
+--- flint-2.5.2-orig/fq/Makefile 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/fq/Makefile 2016-11-07 18:41:09.148996528 +0100
+@@ -35,7 +35,7 @@
+ $(CC) $(CFLAGS) -c $(INCS) $< -o $@
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ $(BUILD_DIR)/%.lo: %.c
+ $(CC) $(PICFLAG) $(CFLAGS) $(INCS) -c $< -o $@
+diff -ru flint-2.5.2-orig/fq_poly/Makefile flint-2.5.2-new/fq_poly/Makefile
+--- flint-2.5.2-orig/fq_poly/Makefile 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/fq_poly/Makefile 2016-11-07 18:41:09.148996528 +0100
+@@ -35,7 +35,7 @@
+ $(CC) $(CFLAGS) -c $(INCS) $< -o $@
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ $(BUILD_DIR)/%.lo: %.c
+ $(CC) $(PICFLAG) $(CFLAGS) $(INCS) -c $< -o $@
+diff -ru flint-2.5.2-orig/Makefile.subdirs flint-2.5.2-new/Makefile.subdirs
+--- flint-2.5.2-orig/Makefile.subdirs 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/Makefile.subdirs 2016-11-07 18:41:09.144996522 +0100
+@@ -59,7 +59,7 @@
+ $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) -c $< -o $@ -MMD -MP -MF "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$@"
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(QUIET_CC) $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(QUIET_CC) $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ -include $(LOBJS:.lo=.d)
+
+Seulement dans flint-2.5.2-new/: Makefile.subdirs.orig
+diff -ru flint-2.5.2-orig/padic_mat/Makefile flint-2.5.2-new/padic_mat/Makefile
+--- flint-2.5.2-orig/padic_mat/Makefile 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/padic_mat/Makefile 2016-11-07 18:41:09.148996528 +0100
+@@ -35,7 +35,7 @@
+ $(CC) $(CFLAGS) -c $(INCS) $< -o $@
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ $(BUILD_DIR)/%.lo: %.c
+ $(CC) $(PICFLAG) $(CFLAGS) $(INCS) -c $< -o $@
+diff -ru flint-2.5.2-orig/padic_poly/Makefile flint-2.5.2-new/padic_poly/Makefile
+--- flint-2.5.2-orig/padic_poly/Makefile 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/padic_poly/Makefile 2016-11-07 18:41:09.148996528 +0100
+@@ -35,7 +35,7 @@
+ $(CC) $(CFLAGS) -c $(INCS) $< -o $@
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ $(BUILD_DIR)/%.lo: %.c
+ $(CC) $(PICFLAG) $(CFLAGS) $(INCS) -c $< -o $@
+diff -ru flint-2.5.2-orig/qadic/Makefile flint-2.5.2-new/qadic/Makefile
+--- flint-2.5.2-orig/qadic/Makefile 2015-08-13 18:16:22.000000000 +0200
++++ flint-2.5.2-new/qadic/Makefile 2016-11-07 18:41:09.148996528 +0100
+@@ -35,7 +35,7 @@
+ $(CC) $(CFLAGS) -c $(INCS) $< -o $@
+
+ $(MOD_LOBJ): $(LOBJS)
+- $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
++ $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
+
+ $(BUILD_DIR)/%.lo: %.c
+ $(CC) $(PICFLAG) $(CFLAGS) $(INCS) -c $< -o $@
diff --git a/sci-mathematics/flint/files/flint-2.5.2-utf8.patch b/sci-mathematics/flint/files/flint-2.5.2-utf8.patch
new file mode 100644
index 000000000000..de82fc49dd38
--- /dev/null
+++ b/sci-mathematics/flint/files/flint-2.5.2-utf8.patch
@@ -0,0 +1,13 @@
+diff --git a/fmpz_mat/doc/fmpz_mat.txt b/fmpz_mat/doc/fmpz_mat.txt
+index 2f07624..d741899 100644
+--- a/fmpz_mat/doc/fmpz_mat.txt
++++ b/fmpz_mat/doc/fmpz_mat.txt
+@@ -1114,7 +1114,7 @@ void fmpz_mat_gram(fmpz_mat_t B, const fmpz_mat_t A)
+
+ Sets \code{B} to the Gram matrix of the $m$-dimensional lattice \code{L} in
+ $n$-dimensional Euclidean space $R^n$ spanned by the rows of
+- the $m$ × $n$ matrix \code{A}. Dimensions must be compatible.
++ the $m \times n$ matrix \code{A}. Dimensions must be compatible.
+ \code{A} and \code{B} are allowed to be the same object if \code{A} is a
+ square matrix.
+
diff --git a/sci-mathematics/flint/files/flintxx-include.patch b/sci-mathematics/flint/files/flintxx-include.patch
new file mode 100644
index 000000000000..cb6744e23645
--- /dev/null
+++ b/sci-mathematics/flint/files/flintxx-include.patch
@@ -0,0 +1,19 @@
+Fix include errors with flintxx
+
+https://github.com/wbhart/flint2/commit/c0768dc54b5ece38252857f8e7423d5ce81a43f7
+
+
+
+diff --git a/flintxx/flint_classes.h b/flintxx/flint_classes.h
+index eac2d1a..6baa392 100644
+--- a/flintxx/flint_classes.h
++++ b/flintxx/flint_classes.h
+@@ -27,7 +27,7 @@
+ // Contrary to other parts of this library, they are tailored very
+ // specifically towards FLINT.
+
+-#include "flint.h"
++#include "../flint.h"
+ #include "mp.h"
+ #include "expression.h"
+ #include "expression_traits.h"
diff --git a/sci-mathematics/flint/flint-2.5.2-r1.ebuild b/sci-mathematics/flint/flint-2.5.2-r1.ebuild
new file mode 100644
index 000000000000..795bf6e90c61
--- /dev/null
+++ b/sci-mathematics/flint/flint-2.5.2-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Fast Library for Number Theory"
+HOMEPAGE="http://www.flintlib.org/"
+SRC_URI="http://www.flintlib.org/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/13"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="doc gc ntl static-libs"
+
+BDEPEND="doc? (
+ app-text/texlive-core
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+)"
+DEPEND="dev-libs/gmp:=
+ dev-libs/mpfr:=
+ gc? ( dev-libs/boehm-gc )
+ ntl? ( dev-libs/ntl:= )"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/flintxx-include.patch"
+ "${FILESDIR}/${PN}-2.5.2-pie.patch"
+ "${FILESDIR}/${PN}-2.5.2-utf8.patch"
+ "${FILESDIR}/${PN}-2.5.2-memory_message.patch"
+)
+
+src_prepare(){
+ default
+
+ # The autodetection finds "lib" first, which may e.g. contain 32-bit
+ # libs during a 64-bit build.
+ sed -e "s:{GMP_DIR}/lib\":{GMP_DIR}/$(get_libdir)\":g" \
+ -e "s:{MPFR_DIR}/lib\":{MPFR_DIR}/$(get_libdir)\":g" \
+ -e "s:{NTL_DIR}/lib\":{NTL_DIR}/$(get_libdir)\":g" \
+ -e "s:{GC_DIR}/lib\":{GC_DIR}/$(get_libdir)\":g" \
+ -i configure || die
+}
+
+src_configure() {
+ ./configure \
+ --prefix="${EPREFIX}/usr" \
+ --with-gmp="${EPREFIX}/usr" \
+ --with-mpfr="${EPREFIX}/usr" \
+ $(usex ntl "--with-ntl=${EPREFIX}/usr" "") \
+ $(use_enable static-libs static) \
+ $(usex gc "--with-gc=${EPREFIX}/usr" "") \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ || die
+}
+
+src_compile() {
+ emake verbose
+ use doc && emake -C doc/latex
+}
+
+src_test() {
+ emake AT= QUIET_CC= QUIET_CXX= QUIET_AR= check
+}
+
+src_install() {
+ emake DESTDIR="${D}" LIBDIR="$(get_libdir)" install
+ einstalldocs
+ use doc && dodoc doc/latex/flint-manual.pdf
+}