summaryrefslogtreecommitdiff
path: root/sci-mathematics/4ti2
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-09 00:12:01 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-09 00:12:01 +0000
commitb95a6fd4a7b591baa7cfc689f8ce5643592d07be (patch)
tree6a7c4722b40bdb6c409879ce253d8b42817fec14 /sci-mathematics/4ti2
parent8b3c41ecef8a1cdd270ce3aabcfdfb991839699c (diff)
gentoo auto-resync : 09:02:2025 - 00:12:00
Diffstat (limited to 'sci-mathematics/4ti2')
-rw-r--r--sci-mathematics/4ti2/4ti2-1.6.10.ebuild47
-rw-r--r--sci-mathematics/4ti2/Manifest4
-rw-r--r--sci-mathematics/4ti2/files/4ti2-1.6.10-slibtool.patch78
3 files changed, 129 insertions, 0 deletions
diff --git a/sci-mathematics/4ti2/4ti2-1.6.10.ebuild b/sci-mathematics/4ti2/4ti2-1.6.10.ebuild
new file mode 100644
index 000000000000..580a2eadbe87
--- /dev/null
+++ b/sci-mathematics/4ti2/4ti2-1.6.10.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Software package for algebraic, geometric and combinatorial problems"
+HOMEPAGE="https://4ti2.github.io"
+SRC_URI="https://github.com/4ti2/4ti2/releases/download/Release_${PV//./_}/${P}.tar.gz
+ https://dev.gentoo.org/~mjo/distfiles/${P}-musl.patch.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ sci-mathematics/glpk:=[gmp]
+ dev-libs/gmp:0=[cxx(+)]"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-slibtool.patch"
+ "${WORKDIR}/${P}-musl.patch"
+)
+
+src_prepare() {
+ default
+
+ # The swig subdir is not used on Gentoo, and in 1.6.10, they
+ # actually forgot to ship it. Let's make extra sure that e.g.
+ # we don't waste time autoreconfing it.
+ rm -rf swig || die
+ sed -e '/SUBDIRS += swig/d' -i Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ # This is not pointless: configure.ac disables shared libraries and
+ # enables static libraries by default.
+ econf --enable-shared --disable-static
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sci-mathematics/4ti2/Manifest b/sci-mathematics/4ti2/Manifest
index 2261eaaf09e0..400dbf505c69 100644
--- a/sci-mathematics/4ti2/Manifest
+++ b/sci-mathematics/4ti2/Manifest
@@ -1,5 +1,9 @@
AUX 4ti2-1.3.2-gold.patch 434 BLAKE2B 38162dea9fa7e7072966fc7c5fc72c05e2d122dbfbb25aa0027f992f0fe23bd1232245c670b8f3d3a2b75e67319a217aead99850ec6d1a025c6c4a890605b2c3 SHA512 109f89dcf1f66fae079d9ba4c265b0a9ad0a60b88848ae38175d98c51b8b8fce3e92b0f862191340f4a8dd8c60a768c77b1504d0a797553b5cd1fe5bc95189ff
+AUX 4ti2-1.6.10-slibtool.patch 3198 BLAKE2B e6785a6deb104aa114624dfdbcf3e7848ed27eac88fa073f246c70dcd7b8b6e21911904def4940c650b874507fe3ab61e3acdcf330c259fa6134ea3cdd29c6b3 SHA512 be2cc10232e08052cda53661d1048dbf833409ea5e7e2707c6183a943d537c0a4aabf2da69e41e67ff61849b782f4377259407456ea8766c577e08f26987c998
AUX 4ti2-1.6.7-gcc13.patch 895 BLAKE2B 2827da0a04f2871af174ffda828aca91141d18f379e30c27c10e3807b369b502ef7ebf781a4137e0c6651e5e7922912857bbf5cd3d24b12c1571828983ba3f63 SHA512 0de85310fd9680ed1f3adc5b4990283d4d6ee2ebf8a8c82e195ad323fcf1cbd16fa3727dc428f26b945edf660285332354a102c19eb37737beabbc5d9cfe9444
+DIST 4ti2-1.6.10-musl.patch.xz 15820 BLAKE2B 2994a4e0e589e8c8233bf9367206129605538145b3dffd6dc186026d0e45d78e382467dbebd13d5e0ae5d4f96a0a9411811d3ddb390b5a9e68e4251bd37fbb02 SHA512 2fd0f470cf5d571875715be3dd67ea05edb222f1ca30f33698f3bfe1c470fa56695b03ccdf27dfaacaa613616cf67bc9165072c710d267be370a718f40a268bd
+DIST 4ti2-1.6.10.tar.gz 5496480 BLAKE2B e6d90e0282c1ad63ee887c7f301ce8127791d1f75b5c8a43866b812e7e773495ee2cf33e1e1d23eb3974cdd0632d7efc61ee7b2029902adad5601c3eedacbced SHA512 d591ed272664c7467e9b28082c0a99002b3a4616cf437eecd243ccca2ab0f08abdba5dcd039a109b05793f7aaf9f405af9a58c7eff90b7b01b3b1f34fb7fdb2e
DIST 4ti2-1.6.7.tar.gz 5649869 BLAKE2B ab0e7da1de88e5e99ead0b8fa7f7a72773b84ae903a31dc3134e83364ea45069889f8ce9812bb471cf72b824fe013756d557489b4d2ab31216141d5b6347acfc SHA512 38d638fe01ff3cef1aebae1eefd276cf02f808978851b4465e132f77d3ab34ea51d512e2ea28a42ac65263b458c43cf420dc5f8ac930f959dd0c14916cef9841
+EBUILD 4ti2-1.6.10.ebuild 1168 BLAKE2B ed74aae750dc6c887785b576aa2067a77a47761bd0e8c18ab252cd0c61a51f8aefbaf68ff4b937a561a379a3360130bf26157f15c5eaa941e0cc47c2e7c5b8f6 SHA512 ceb1a742061be09112307c8535ea63bc56248aed0e9cc7acdb5d080eece2cc6cc8e4254596c09cbfc909a9f5bc7fe52446d9dfd96dacadb90d9ebe09d382cde6
EBUILD 4ti2-1.6.7-r1.ebuild 882 BLAKE2B 53225de86083c1f5f65a65138979c59eef5d460b0b7e5443d25a5e07957d7df61c4f0bb87621cea0a0e0cea754abcad61da66da0418f9b42354ae0b301d3fb5b SHA512 44966dc8c9f8aa40c02bb542dec561b7c658264ec29845933ff92caea50b9a4dd016b57f1c724f22bfde8a0a81a54b9c29485b82bdf369512b687c9f5982169d
MISC metadata.xml 531 BLAKE2B b06d3faf7ccbde8dfc9012e3d4060a703639873b4ebbda9c2fb07ef1fd4e6ad6b97d09e7ed12d8adfd35492c2cdc93ae9290987129e7f0aa34d6b0df6f8513ae SHA512 3564979bae9192cadb2351ec2a401d71de987d78e320701676f8e356a3352b75e921dd807a33e4963687489cd4b9f1dab7112c7d631cb74fef39d3b66943970e
diff --git a/sci-mathematics/4ti2/files/4ti2-1.6.10-slibtool.patch b/sci-mathematics/4ti2/files/4ti2-1.6.10-slibtool.patch
new file mode 100644
index 000000000000..5765fa75d5fb
--- /dev/null
+++ b/sci-mathematics/4ti2/files/4ti2-1.6.10-slibtool.patch
@@ -0,0 +1,78 @@
+mjo: we had another patch in Gentoo that adds "-lgmp" to 4ti2gmp_LDADD.
+I merged it into this one because otherwise they conflict.
+
+From b87d4c02616d6e5218658a782854e3156ab885aa Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Thu, 7 Mar 2024 14:10:14 -0800
+Subject: [PATCH] build: link internal dependencies with .la files
+
+When linking with internal dependencies the correct way is to add the
+libtool archives (.la) files to the appropriate LIBADD or LDADD
+variables.
+
+This fixes a build issue when using slibtool instead of GNU libtool.
+
+Gentoo issue: https://bugs.gentoo.org/916679
+---
+ src/groebner/Makefile.am | 10 +++++-----
+ src/zsolve/Makefile.am | 3 ++-
+ swig/allegrocommonlisp/Makefile.am | 8 ++++----
+ 3 files changed, 11 insertions(+), 10 deletions(-)
+
+diff --git a/src/groebner/Makefile.am b/src/groebner/Makefile.am
+index 64c2780..183920f 100644
+--- a/src/groebner/Makefile.am
++++ b/src/groebner/Makefile.am
+@@ -268,17 +268,17 @@ WRAPPERSCRIPTS = \
+ nodist_bin_SCRIPTS = $(WRAPPERSCRIPTS)
+ DISTCLEANFILES = $(WRAPPERSCRIPTS)
+
+-AM_LDFLAGS = -L../4ti2 -R$(libdir) -l4ti2common -no-undefined
++AM_LDFLAGS = -R$(libdir) -no-undefined
+
+ # 16 bit precision flags.
+-# 4ti2int16_LDADD = lib4ti2int16.la
++# 4ti2int16_LDADD = lib4ti2int16.la $(top_builddir)/src/4ti2/lib4ti2common.la
+ # 4ti2int16_CPPFLAGS = -D_4ti2_INT16_
+ # 4ti2int16_SOURCES = $(4ti2sources)
+ # lib4ti2int16_la_CPPFLAGS = -D_4ti2_INT16_
+ # lib4ti2int16_la_SOURCES = $(lib4ti2sources)
+
+ # 32 bit precision flags.
+-4ti2int32_LDADD = lib4ti2int32.la
++4ti2int32_LDADD = lib4ti2int32.la $(top_builddir)/src/4ti2/lib4ti2common.la
+ 4ti2int32_CPPFLAGS = -D_4ti2_INT32_
+ 4ti2int32_CXXFLAGS = $(TRAPV) $(AM_CXXFLAGS)
+ 4ti2int32_SOURCES = $(4ti2sources)
+@@ -287,7 +287,7 @@ lib4ti2int32_la_CXXFLAGS = $(TRAPV) $(AM_CXXFLAGS)
+ lib4ti2int32_la_SOURCES = $(lib4ti2sources)
+
+ # 64 bit precision flags.
+-4ti2int64_LDADD = lib4ti2int64.la
++4ti2int64_LDADD = lib4ti2int64.la $(top_builddir)/src/4ti2/lib4ti2common.la
+ 4ti2int64_CPPFLAGS = -D_4ti2_INT64_
+ 4ti2int64_CXXFLAGS = $(TRAPV) $(AM_CXXFLAGS)
+ 4ti2int64_SOURCES = $(4ti2sources)
+@@ -298,7 +298,7 @@ lib4ti2int64_la_SOURCES = $(lib4ti2sources)
+ # Arbitrary precision flags.
+ # 4ti2 uses GMP (GLPL), an arbitrary precision arithmetic library.
+ if HAVE_GMP_WITH_CXX
+-4ti2gmp_LDADD = lib4ti2gmp.la
++4ti2gmp_LDADD = lib4ti2gmp.la -lgmp $(top_builddir)/src/4ti2/lib4ti2common.la
+ 4ti2gmp_CPPFLAGS = -D_4ti2_GMP_ $(GMP_CFLAGS)
+ 4ti2gmp_SOURCES = $(4ti2sources)
+ lib4ti2gmp_la_CPPFLAGS = -D_4ti2_GMP_
+diff --git a/src/zsolve/Makefile.am b/src/zsolve/Makefile.am
+index 3a55c40..7826993 100644
+--- a/src/zsolve/Makefile.am
++++ b/src/zsolve/Makefile.am
+@@ -88,7 +88,8 @@ endif
+ # Link in the "common" 4ti2 functions.
+ # -no-undefined declares that no undefined symbols will remain after linking all these libraries.
+ # (This is necessary to build shared libraries on Cygwin.)
+-libzsolve_la_LDFLAGS = -L../4ti2 -R$(libdir) -l4ti2common ${GMP_LIBS} -no-undefined
++libzsolve_la_LDFLAGS = -R$(libdir) ${GMP_LIBS} -no-undefined
++libzsolve_la_LIBADD = $(top_builddir)/src/4ti2/lib4ti2common.la
+
+ bin_SCRIPTS = hilbert graver
+ DISTCLEANFILES = hilbert graver