summaryrefslogtreecommitdiff
path: root/sci-mathematics
diff options
context:
space:
mode:
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/Manifest.gzbin19351 -> 19366 bytes
-rw-r--r--sci-mathematics/gap/Manifest2
-rw-r--r--sci-mathematics/gap/gap-4.13.1.ebuild2
-rw-r--r--sci-mathematics/gfan/Manifest4
-rw-r--r--sci-mathematics/gfan/files/gfan-0.6.2-find-name.patch18
-rw-r--r--sci-mathematics/gfan/files/gfan-0.6.2-fix-0602ResultantFanProjection.patch27
-rw-r--r--sci-mathematics/gfan/files/gfan-0.6.2-fix-spelling-errors.patch50
-rw-r--r--sci-mathematics/gfan/gfan-0.6.2-r5.ebuild78
-rw-r--r--sci-mathematics/octave/Manifest2
-rw-r--r--sci-mathematics/octave/octave-9.2.0-r1.ebuild (renamed from sci-mathematics/octave/octave-9.2.0.ebuild)10
-rw-r--r--sci-mathematics/polymake/Manifest3
-rw-r--r--sci-mathematics/polymake/files/polymake-4.12-no-perl-constraints.patch62
-rw-r--r--sci-mathematics/polymake/polymake-4.12.ebuild119
13 files changed, 370 insertions, 7 deletions
diff --git a/sci-mathematics/Manifest.gz b/sci-mathematics/Manifest.gz
index b9bf663f468a..bf3a45777fa3 100644
--- a/sci-mathematics/Manifest.gz
+++ b/sci-mathematics/Manifest.gz
Binary files differ
diff --git a/sci-mathematics/gap/Manifest b/sci-mathematics/gap/Manifest
index 15a9475dbe27..ddb4d6eae153 100644
--- a/sci-mathematics/gap/Manifest
+++ b/sci-mathematics/gap/Manifest
@@ -1,3 +1,3 @@
DIST gap-4.13.1-core.tar.gz 38673913 BLAKE2B a63cbd2211430bfbf1bc9bb489a68a2ee7182858ccb326dfe5e6d3a7b8fb6a8c34b56a539c8b9cf3a22a1cc3a4ffe22d365b0e5229ba2c2b6d0ce6bacf0e645b SHA512 e3b74558c05e5963ea87aa77baba0edc068634072ff97b8ea0880289e53213eed82b01784db2675263d6f47547bfef259b80353ed2843ce90a77a0252c551919
-EBUILD gap-4.13.1.ebuild 3945 BLAKE2B 675ec1034d0dc064accf558a9b293c2071f611e3de5ad6d00199daf9359036d616c4e34dab4404ab51952c78ebb7dc10ef25d0b18cefeeebf55c83cd19b8f533 SHA512 8ebe89f824502916d1a0f15446fcd9d272b224ba8fca5371b22e4a43ca425ff7bb367ea1b76cabfa63d8f5b8f1b2195df11b1466cd2a9fdc8ad08d8b4dd6a8fd
+EBUILD gap-4.13.1.ebuild 3952 BLAKE2B 7799ab87b5facb7cbe4934c53108a85b96725add2e61dbe0cea6fa4f5d4ef013f3d2d496da86e0d2fda2b13f1e6601fd2755d5a0671306b7d80fe14c6d599389 SHA512 53a7f462e3f7c4601a96a95a199cddc0800b187100ada6a3046aa3f502bb65f881dfc524b07676817e83ab51923c90c16ae6b7fc74f6d06a57e18cdbb5d4b0b6
MISC metadata.xml 1582 BLAKE2B 9151244f139b0d675e327731c336c41d5d69c25856286c182944d57255fbb6d7b1f023195b3a01c829ff6f3ea1d5e6eb6edbcc796a30120deacde82b90b5f39c SHA512 f4490e9b13cee6604f14df39ea048d7578e080a8faa97b0bb22191a7dce56904416870ed64c289f91526087009f7488e8baed4e531c78f50a5b917e9e1684ce2
diff --git a/sci-mathematics/gap/gap-4.13.1.ebuild b/sci-mathematics/gap/gap-4.13.1.ebuild
index 7927d5feec2a..083b69e86f54 100644
--- a/sci-mathematics/gap/gap-4.13.1.ebuild
+++ b/sci-mathematics/gap/gap-4.13.1.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${P/_/-}"
LICENSE="GPL-2+"
SLOT="0/9" # soname
-KEYWORDS="amd64"
+KEYWORDS="amd64 ~riscv"
IUSE="cpu_flags_x86_popcnt debug memcheck minimal readline test valgrind"
REQUIRED_USE="?? ( memcheck valgrind )"
diff --git a/sci-mathematics/gfan/Manifest b/sci-mathematics/gfan/Manifest
index c97d5be4f7e3..eb4c57d1c9bf 100644
--- a/sci-mathematics/gfan/Manifest
+++ b/sci-mathematics/gfan/Manifest
@@ -1,6 +1,10 @@
AUX gfan-0.6.2-Makefile.patch 6603 BLAKE2B 48f9b4280418aef41d502d770c070ec1dcef947a39c6263d991be0f6f41147d06b78a4b07ca76e0fb4bc9780cb9469c98c637473789d857925df8d546ad35e92 SHA512 e1eef6f01c9942b38780f19b774fa3e99df4dbdba738cc2c6c69e2f1858e5e6294db72d7b679c5ff1313a76143bd611077731d360479f9375d6506e33a4a620a
+AUX gfan-0.6.2-find-name.patch 433 BLAKE2B 452e286223f4607f42e0895bba443c1534e491dc5e182f6f14c1d5d0d63c5992684b36ad0d028b68c286644e7ccc84786b0e49c311fcbe0fa6151a60ee3001d9 SHA512 f561189e887af930fa09ffa8870e9fbc4e5d5ed1b1a1b81c2001ea3d2a404b025a640eb7a4d504e448a60be4c58af3a3d00421abb48762bb2b32357e862252fc
+AUX gfan-0.6.2-fix-0602ResultantFanProjection.patch 689 BLAKE2B 4531bd59dc7a356b2907b043dc71a5e34e647dd15822d3e3846785bb27162ba607eea8492b972574c1f64a227d428b1db0b385a7a54624f5d33b3f4522bd7fe6 SHA512 0de03e0f40f7cde6ae8709a8c6f26cd39458752d1480c49635e58ce57c0b0ff1c03382bd41097af7609ee6320f98d83f600e7dde842fe545b758982e704e52eb
+AUX gfan-0.6.2-fix-spelling-errors.patch 2826 BLAKE2B 1a5b662dafd42834c9254d79cad84717d5b407c0fd14bf3f58320203b847953284597aa2add8dcb7eaa40700fa2a5c6e1c0ba99c2715d7fb0c6deedc45c44c8e SHA512 a30947bda62723f0d5a916d1a05de52fd67a2a3d4303b5774e7517407f531df67eb2968be255aab91634d46fdb61243e8b38ac355eef02c01c4ee95576e10159
AUX gfan-0.6.2-testsuite.patch 3223 BLAKE2B ddb94775a13bd503df5c9563750a6b4b68c9e72e1a19aaa0415c5484e07765dfd28ba02b3a0fab65a0b9cd5c61afafbc6a3d862a1de68ece57ef9d8bb2835c16 SHA512 d62e765a39ee1a8cb149fcae8afb538b19a91206dd0b8cf0ac2b681b28569e44f492b770b9e61d7573f2d52f265ad4cf25671197c204238a89075709753a83e6
AUX gfan-0.6.2-xcode9.3_compat.patch 367 BLAKE2B fb7c685a4dd811fed83e2734a16507b1792e3a97c666d0e7de1d2ed53a7b9b43c5319517f9eef829f47147dc725f2c4ead38968fa3868baa1d16630a8b844636 SHA512 129d2c35777f82bf2a1581450ecb12dd6811fb72b583748b30665c0f9b20d39646233d9b40fb64a3c7790360514a51b30e49c53d83c34d259f664bf820ae1ce2
DIST gfan0.6.2.tar.gz 1321059 BLAKE2B 1ed61e1e084a1ceb65dd21848440bc3a90486c0ce4012b3b64c8029e89636696d2b0e5446ea156d2cf050b5db179c7c2f25c97e683cecf6e9616e8553d8513bf SHA512 5961820750af2522fdc1a86c0254742c3b003607a8707df5d6cd5f0bc6461e4d3db3b1d3cb537979d57eb9dff387974a58aeb91d0b5246d7c701cadc5a2cf4cf
EBUILD gfan-0.6.2-r4.ebuild 2007 BLAKE2B 21d014cbabb76f661135ffc1c1ce72b016448511e0ec7cb71cffc6f68fec9328c140f268ae3dce2a7ed58ee5559f56c274fb9ce1f7edcc000a9f0606f013bd3d SHA512 76b1e4b63458d5992b5036a7fff2f0e9be5ec0269fcd8a3d2854db21a89f8efd54b9d043049e9e9ac969852f975a8774735c6c426ac03068078c75c1517d0f2a
+EBUILD gfan-0.6.2-r5.ebuild 1971 BLAKE2B b50e2c1bbcbd4269850575bd4f36bb42dcad534d3a55e4257bf3281e907dfe0730deb81fbb66373356ec474e9273b4c9b40ae227842edce682e68530be0de2f6 SHA512 5eed708f34f910390a024e45b9a613ab424729122f58bae8573832f4f217c3f6424309c7f068f162d797a0c19f8d56926b97054c4ece1d9d62094a8848a913e3
MISC metadata.xml 1344 BLAKE2B 1a1d24099e2338877b068dee2b9e17feb4063de3a681a3b8d6a707c863708d6f380bb4864eb2fd5fef8ed49d6b1a770a8d1b4c12ce722b4f7fe113876de0b792 SHA512 8d5c93337a82b132c66c8d7e64c97deedcfdc724e9874bf308e6d817f71e663bc2b281ea133ae15e30096f5c801f88116b11e4d36dd8dd8eec526b5bc16d5f54
diff --git a/sci-mathematics/gfan/files/gfan-0.6.2-find-name.patch b/sci-mathematics/gfan/files/gfan-0.6.2-find-name.patch
new file mode 100644
index 000000000000..5e6718e70ed2
--- /dev/null
+++ b/sci-mathematics/gfan/files/gfan-0.6.2-find-name.patch
@@ -0,0 +1,18 @@
+Description: Properly terminate while loop when finding application name.
+Author: Anders Nedergaard Jensen <jensen@math.au.dk>
+Origin: https://bugs.debian.org/950008#17
+Bug-Debian: https://bugs.debian.org/950008
+Forwarded: yes
+Last-Update: 2021-11-21
+
+--- a/src/application.cpp
++++ b/src/application.cpp
+@@ -26,7 +26,7 @@
+ {
+ l--;
+ }
+- while(p[l]!=0 && p[l]!='/');
++ while(l >= 0 && p[l]!='/');
+
+ return p+l+1;
+ }
diff --git a/sci-mathematics/gfan/files/gfan-0.6.2-fix-0602ResultantFanProjection.patch b/sci-mathematics/gfan/files/gfan-0.6.2-fix-0602ResultantFanProjection.patch
new file mode 100644
index 000000000000..99fe8167398e
--- /dev/null
+++ b/sci-mathematics/gfan/files/gfan-0.6.2-fix-0602ResultantFanProjection.patch
@@ -0,0 +1,27 @@
+Description: Use int64_t instead of signed long int for 64-bit integer typedef
+ On 32-bit architectures, longs are only 32 bits. The resulting overflow
+ was causing an infinite loop in the 0602ResultantFanProjection test.
+Bug-Debian: https://bugs.debian.org/905300
+Bug-Debian: https://bugs.debian.org/974558
+Author: Doug Torrance <dtorrance@piedmont.edu>
+Last-Update: 2020-11-12
+
+(mjo: added missing include)
+
+--- a/src/vektor.h
++++ b/src/vektor.h
+@@ -6,11 +6,12 @@
+ #include <assert.h>
+ #include <algorithm>
+ #include <complex>
++#include <cstdint>
+ #include <stdio.h>
+
+ using namespace std;
+
+-typedef signed long int int64;
++typedef int64_t int64;
+
+ void outOfRange(int i, int n);
+
+
diff --git a/sci-mathematics/gfan/files/gfan-0.6.2-fix-spelling-errors.patch b/sci-mathematics/gfan/files/gfan-0.6.2-fix-spelling-errors.patch
new file mode 100644
index 000000000000..08b78c6efcaa
--- /dev/null
+++ b/sci-mathematics/gfan/files/gfan-0.6.2-fix-spelling-errors.patch
@@ -0,0 +1,50 @@
+Descriptions: Fix some spelling errors in output text of the programs
+Author: Cédric Boutillier <boutil@debian.org>
+Author: Doug Torrance <dtorrance@piedmont.edu>
+Forwarded: yes
+Last-Update: 2020-11-13
+
+--- a/src/app_scarfisgeneric.cpp
++++ b/src/app_scarfisgeneric.cpp
+@@ -24,7 +24,7 @@
+ }
+ const char *helpText()
+ {
+- return "This program takes a matrix as input and checks if it satisfies Scarf's generality conditions. The rows of the matrix are listed on the input. The A1 condition is that there exists a strictly poistive vector in the co-kernel of the matrix. The A2 condition is that te maximal minors of the matrix are non-zero. A3\n";
++ return "This program takes a matrix as input and checks if it satisfies Scarf's generality conditions. The rows of the matrix are listed on the input. The A1 condition is that there exists a strictly poistive vector in the co-kernel of the matrix. The A2 condition is that the maximal minors of the matrix are non-zero. A3\n";
+ }
+ ScarfIsGenericApplication()
+ {
+--- a/src/app_symmetries.cpp
++++ b/src/app_symmetries.cpp
+@@ -35,7 +35,7 @@
+ }
+ SymmetriesApplication():
+ optionSymmetry("--symmetry","Specify subgroup to be searched for permutations keeping the ideal fixed."),
+- optionTorusSymmetry("--symsigns","Specify for each generator of the group specified wiht --symmetry an element of ${-1,+1}^n$ which by its multiplication on the variables together with the permutation is expected to keep the ideal fixed.")
++ optionTorusSymmetry("--symsigns","Specify for each generator of the group specified with --symmetry an element of ${-1,+1}^n$ which by its multiplication on the variables together with the permutation is expected to keep the ideal fixed.")
+ {
+ registerOptions();
+ }
+--- a/src/app_representatives.cpp
++++ b/src/app_representatives.cpp
+@@ -24,7 +24,7 @@
+ }
+ const char *helpText()
+ {
+- return "This program computes takes generaters for a subgroup of S_n and a list of n-dimensional integer vectors. The output is a list of vectors, one from each orbit of elements of the list. \n";
++ return "This program computes takes generators for a subgroup of S_n and a list of n-dimensional integer vectors. The output is a list of vectors, one from each orbit of elements of the list. \n";
+ }
+ RepresentativesApplication()
+ {
+--- a/src/tropical2.cpp
++++ b/src/tropical2.cpp
+@@ -271,7 +271,7 @@
+ PolynomialSet r(theRing);
+ if(theRing.getNumberOfVariables()!=weight.size())
+ {
+- cerr << "Error: Number of varaibles in polynomial ring "<<theRing.getNumberOfVariables()<< " length of weight vector " << weight.size() <<endl;
++ cerr << "Error: Number of variables in polynomial ring "<<theRing.getNumberOfVariables()<< " length of weight vector " << weight.size() <<endl;
+ assert(0);
+ }
+
diff --git a/sci-mathematics/gfan/gfan-0.6.2-r5.ebuild b/sci-mathematics/gfan/gfan-0.6.2-r5.ebuild
new file mode 100644
index 000000000000..47fbcc3b8e1d
--- /dev/null
+++ b/sci-mathematics/gfan/gfan-0.6.2-r5.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Compute Groebner fans and tropical varieties"
+HOMEPAGE="https://users-math.au.dk/~jensen/software/gfan/gfan.html"
+SRC_URI="https://users-math.au.dk/~jensen/software/${PN}/${PN}${PV}.tar.gz"
+
+S="${WORKDIR}/${PN}${PV}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc"
+
+BDEPEND="doc? ( virtual/latex-base )"
+DEPEND="dev-libs/gmp:0=[cxx(+)]
+ sci-libs/cddlib:0="
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.6.2-testsuite.patch"
+ "${FILESDIR}/${PN}-0.6.2-Makefile.patch"
+ "${FILESDIR}/${PN}-0.6.2-fix-0602ResultantFanProjection.patch"
+ "${FILESDIR}/${PN}-0.6.2-fix-spelling-errors.patch"
+ "${FILESDIR}/${PN}-0.6.2-find-name.patch"
+)
+
+pkg_setup() {
+ tc-export CC CXX
+
+ # This should really go in cppflags, but that doesn't work with
+ # gfan's hand-written Makefile.
+ append-cxxflags -DNOCDDPREFIX -I"${EPREFIX}"/usr/include/cddlib
+}
+
+src_prepare() {
+ default
+
+ # And this one fails (harmlessly) on x86, bug 818397.
+ rm -r testsuite/0009RenderStairCase || \
+ die "unable to disable test 0009RenderStairCase"
+}
+
+src_configure() {
+ # -Werror=odr
+ # https://bugs.gentoo.org/863044
+ # Only contact method is email. I have sent one detailing the issue.
+ filter-lto
+
+ # The upstream Makefile says that GCC produces bad code with -O3.
+ replace-flags "-O3" "-O2"
+ default
+}
+
+src_compile() {
+ default
+ if use doc; then
+ pushd doc > /dev/null || die
+ # The LaTeX build commands need to be repeated until the
+ # document "stops changing," which is not as easy as it
+ # sounds to detect. Running it twice seems to work here.
+ for iteration in 1 2; do
+ latex manual.tex && \
+ bibtex manual && \
+ dvipdf manual.dvi manual.pdf || die
+ done
+ popd > /dev/null || die
+ fi
+}
+
+src_install() {
+ emake PREFIX="${ED}/usr" install
+ use doc && dodoc doc/manual.pdf
+}
diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest
index a5ffebc54290..90688cabaa1d 100644
--- a/sci-mathematics/octave/Manifest
+++ b/sci-mathematics/octave/Manifest
@@ -3,5 +3,5 @@ AUX octave-6.4.0-omit-qtchooser-qtver.patch 765 BLAKE2B 2f889e8278e48489f2eab1c3
DIST octave-8.3.0.tar.xz 26970776 BLAKE2B 8c7241ff6bd5b23244edb47e74753ddf867139280b899b16ae2cab91c30a73ebdcf471d032ee47bddb67f8c7f5c772a23f4a832cadcca7ada01468b84e451ad4 SHA512 b7c8724ca8376783e8563c2050c2d9219309e559116e5cba0fdc9f50780782ff4cc98d382bdbe26055aebffb6be99b110033c682f661a3966ea1b1ddb12d4ac3
DIST octave-9.2.0.tar.xz 27425184 BLAKE2B 55480201037871d878090972bf89d5ff43508276f41e77accdd16b752758775e883fe3875d19ea4fc2b33cf8a9a9f39684f05c85e027ca53ee2cdfda6c6bae72 SHA512 cb1667cd6557d48ecd7ae191bc44c9b9fd4f79e7cf4bf6c917093d120c4312e9594e6dddc5287661627ac053e9f23faaec40a1286d792d859f1fefbfdb3eeb8c
EBUILD octave-8.3.0-r2.ebuild 6663 BLAKE2B 5f6f2910ba98c2c42d7c34000e847ff91724f4ee80b9114d0943a2bb4b9cbd9a6dd10a42a3c62e337da3e4ab46db9a406477df696dcf9ad0916d383e604637ac SHA512 41743cce406d7b1721265daf7741ca93160e6ddf349f6bf1c3fdca19f5f97eb20b9419ffca00149f5b1907a95ea4432449d6dd8df1dd56cd448d1d4edf052d36
-EBUILD octave-9.2.0.ebuild 5830 BLAKE2B 8025f3a90e4acd6ebf5e84e9b0f8bdd633c8992540dc2ce917fca5557c35bbd21af209f78d1bae4e28453145b517110b529256eecb6bbfd33340237343ba8cd9 SHA512 6b91b4888babb6d6b97ed8af8c736c2accfe848ceef1c5352d1c978122ba384642b31c1fc191b92331bd1c6785ddb910b8e7139bfb0c826160910dd18951107e
+EBUILD octave-9.2.0-r1.ebuild 5890 BLAKE2B 403311ace4b06ca2e591f9bddcb2695e274915450ac1b9b6c962f187e4762897dda3394e4bbaf47141e843de5f51548d70ea358e5b68791425fed1439c45e4f8 SHA512 6fbe23c21c4097958b9323d3eeb2c06ecff0be9fdb0e80ced27ef10285d918f70ea7be85d10e3250b6d477d530e89cf589d3b3896ee60b942bbe85ea5042f864
MISC metadata.xml 1854 BLAKE2B ee33484f1699643fb9f4ec26f6114872790348c60cee59c0c8aea31e46c12bb3bc4a42957e1fd68892490aff7054a7a3554f7c6ebfc24c3cc035da58e4a05d55 SHA512 f5f057a9922c9eb36808bbb7226a36a2748268f1d4d44aad413cea2976101e728abf18c17eb5e53f9a734e40d1e26b19ec192635925f93831b13e641a5544a4a
diff --git a/sci-mathematics/octave/octave-9.2.0.ebuild b/sci-mathematics/octave/octave-9.2.0-r1.ebuild
index 24c4f2d9dc7b..c0305336a4ae 100644
--- a/sci-mathematics/octave/octave-9.2.0.ebuild
+++ b/sci-mathematics/octave/octave-9.2.0-r1.ebuild
@@ -52,6 +52,7 @@ COMMON_DEPS="
>=media-gfx/fig2dev-3.2.9-r1
)
gui? (
+ dev-qt/qt5compat:6
dev-qt/qtbase:6[gui,opengl,network,widgets]
media-libs/fontconfig:=
media-libs/freetype:=
@@ -74,9 +75,7 @@ COMMON_DEPS="
sci-libs/umfpack:=
)
spqr? ( sci-libs/spqr:= )
- ssl? (
- dev-libs/openssl:=
- )
+ ssl? ( dev-libs/openssl:= )
sundials? (
klu? ( >=sci-libs/sundials-4:=[sparse] )
!klu? ( >=sci-libs/sundials-4:= )
@@ -95,7 +94,10 @@ BDEPEND="
dev-texlive/texlive-metapost
virtual/latex-base
)
- gui? ( dev-qt/qttools:6[linguist] )
+ gui? (
+ dev-qt/qttools:6[linguist]
+ doc? ( dev-qt/qttools:6[assistant] )
+ )
qrupdate? ( app-misc/pax-utils )
sparse? ( app-misc/pax-utils )
"
diff --git a/sci-mathematics/polymake/Manifest b/sci-mathematics/polymake/Manifest
index f1a27d767ee7..eb118ae46f78 100644
--- a/sci-mathematics/polymake/Manifest
+++ b/sci-mathematics/polymake/Manifest
@@ -1,5 +1,8 @@
AUX polymake-4.11-barycentric-subdiv.patch 807 BLAKE2B e2e632146e6d96e5966444283a0226caf26dfd7dab482a35289e2b6f9acaa791db015787b4b91f5c2f3abc47323227377dd296dfc21b777315979e58d2e36af8 SHA512 f5332d3a558a0b3dc1b0cc0846131210857d2a6ad11647fd64cd5366c04c349752d06e30da3f93568ff5d2f04f8419b8c9ef6e71460e997c295cb6959a8964e1
AUX polymake-4.11-singular-sat.patch 2212 BLAKE2B 659d07040141617f7ac6cb8572c44bf4d9ba332f1f4ddb5434987ea900009ef2b3ebefa27ead63a60c6048b58c3a853c797d82af1f3c8793f2c506f09dfd43f0 SHA512 fc46ec6753ddf14d389b9e03421a909bf572e4e7d6acf3dec7319d3bf704ba7710ba1c4719bf6b9153599f523e36cf83ac8b8218141f72a43343c94373fc5b57
+AUX polymake-4.12-no-perl-constraints.patch 1937 BLAKE2B 333d796269fdc4b733a2801b2a4dd4bb3bc88fe84570f508d8dea7288602fe6dc9f0490b48c0ee5b0478927d5ad23c8414aab7a7b4a10473a59ef8f255d79672 SHA512 40e09bfaf75bcee2087bd3660b9703a82714dc8f51ce5796098d4a4677b9eb46e252e12317b691f0aea0190c69496870351d658e52331d757caaf5ee4012fd09
DIST polymake-4.11-minimal.tar.bz2 7325783 BLAKE2B 87e62741e4e44c5fea7454d5cc8cb205cf13f8ee743c1d72100f937d0677505ce0c5c8f5b37c118f89079ca88f313991eaefb2ea02c49b6c7b45c438c6f9e13b SHA512 94adf3fcec21de50451091a04ca17010f5e71b44e3dcd4e2d52b9f952b94ee0cf3f6df15657b761b0bda20eb47cbdc0cb2481bb440c7243442be34f913292246
+DIST polymake-4.12-minimal.tar.bz2 7337552 BLAKE2B 4893be1f04ace2c4eb95ed01bc55e62e2187e10b5b10c1d274b2d4e771e1d863b2eb7adeb9a05b2f4c14466cdce1c0d223cfcf35c125d9989ab3825a88e46464 SHA512 127d4058148fdac05fb83a3ab893edfe5c0ab6865f9745d1e709396c23af9762574616f0466adcee59d35646d807621a090a41e8cc693b1fca1f5f6cd5d01054
EBUILD polymake-4.11.ebuild 3937 BLAKE2B 4ee7a122367ae511e509d6b0427627de9fadfa3de983381790d01ae8fc1921ebba2447a76dbc1e32394cc1cd40887d9e77ff4cfb787ccc3eb0d27b169525fe33 SHA512 0a1e98506899ef16d949e841e417f4b548d346d76093592a9dfbb57bfef8af4e8a675765a1daa91edcb89b092ad8c0f969b6af8934b3782076f43e66592d656f
+EBUILD polymake-4.12.ebuild 3899 BLAKE2B 8e1a103beaa199345c26fdb72ccfe2a65d28102b9cfb14e29a32accf6d3c5207d8c7a1e7cd3dc7d638db4da86fbfff2ffa2a09bd5721d6a966a9d2e3a3125b35 SHA512 e56a94680fc3650d4b6990e526c20c392259e77dc93d10f2d29d373169da60fdf4453da2817e416946487ab104bd0816215f41690312ceb6f1442df6a79e1131
MISC metadata.xml 1765 BLAKE2B 4e13dfb267c8100df81d8be89e7915ba850f55fea4256882264b13a0307c60cd8346ff46bf972018b334bf2d0dc387761244c1e0c3b8c7a1f4613a2a87458538 SHA512 7fd8af42bccc7710bd7c4159759b42ace43f638365a83defee96568e6ab4d6c186f49e71cbf68291fcd3b8b30fd7f883e8096c001c6bbf233d6f7336fa266f7c
diff --git a/sci-mathematics/polymake/files/polymake-4.12-no-perl-constraints.patch b/sci-mathematics/polymake/files/polymake-4.12-no-perl-constraints.patch
new file mode 100644
index 000000000000..54cbb1ee0324
--- /dev/null
+++ b/sci-mathematics/polymake/files/polymake-4.12-no-perl-constraints.patch
@@ -0,0 +1,62 @@
+From b0639eca089256c1d816b62c0e2b901cc14a5f7c Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Wed, 28 Aug 2024 10:57:17 -0400
+Subject: [PATCH] support/configure.pl: disable perl version check
+
+The test suite apparently passes with perl-5.40, and that's what
+we have in ~arch on Gentoo, so let's accept it.
+---
+ support/configure.pl | 37 -------------------------------------
+ 1 file changed, 37 deletions(-)
+
+diff --git a/support/configure.pl b/support/configure.pl
+index 5615c65..95f66de 100644
+--- a/support/configure.pl
++++ b/support/configure.pl
+@@ -14,43 +14,6 @@
+ # GNU General Public License for more details.
+ #-------------------------------------------------------------------------------
+
+-BEGIN {
+- if ($] < 5.016) {
+- print STDERR <<".";
+-polymake requires perl version not lower than 5.16;
+-your perl interpreter says it is $].
+-
+-Please upgrade your perl installation;
+-if you already have an up-to-date perl interpreter somewhere else,
+-you can specify its location on the command line:
+-
+-./configure PERL=/path/to/my/new/perl [other options ...]
+-.
+- exit(1);
+- } elsif ($] >= 5.040) {
+- print STDERR <<".";
+-*************
+-*** ERROR ***
+-*************
+-
+-polymake has not been checkced for compatibility with perl 5.40 or newer;
+-your perl interpreter says it is $].
+-
+-If you already have another (older) perl interpreter somewhere else, you can
+-specify its location on the command line:
+-
+-./configure PERL=/path/to/my/new/perl [other options ...]
+-
+-You can install a custom perl version in your home directory using perlbrew
+-(https://perlbrew.pl). Make sure to append '-Duseshrplib' to the install
+-command if you want to use libpolymake (e.g. for the jupyter interface) and to
+-install all required perl modules which are listed after running configure
+-again with the new perl.
+-.
+- exit(1);
+- }
+-}
+-
+ use Config;
+ use Cwd;
+ use File::Path;
+--
+2.46.0
+
diff --git a/sci-mathematics/polymake/polymake-4.12.ebuild b/sci-mathematics/polymake/polymake-4.12.ebuild
new file mode 100644
index 000000000000..a4232f80fa1b
--- /dev/null
+++ b/sci-mathematics/polymake/polymake-4.12.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic ninja-utils toolchain-funcs
+
+DESCRIPTION="Tool for polyhedral geometry and combinatorics"
+HOMEPAGE="https://polymake.org/"
+SRC_URI="https://polymake.org/lib/exe/fetch.php/download/${P}-minimal.tar.bz2"
+
+# polymake itself is GPL-2, but even the minimal tarball bundles a lot
+# of other code. I've included everything that turns up with a
+#
+# find ./ -name 'LICENSE' -o -name 'COPYING'
+#
+# in the list below. If any of these bother you, you may want to take a
+# closer look at how (or even if) the corresponding code is being used.
+LICENSE="BSD GPL-2 GPL-2+ MIT WTFPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="bliss +cdd +flint +normaliz libpolymake lrs nauty ppl singular"
+
+REQUIRED_USE="^^ ( bliss nauty )"
+
+# The "configure" script isn't autotools; it basically exists just to
+# exec some other perl script but using the familiar name.
+BDEPEND="dev-lang/perl
+ ${NINJA_DEPEND}"
+
+DEPEND="
+ libpolymake? ( dev-lang/perl )
+ dev-libs/boost:=
+ dev-libs/gmp:=
+ dev-libs/libxml2:2=
+ dev-libs/libxslt:=
+ dev-libs/mpfr:=
+ sys-libs/readline:=
+ bliss? ( sci-libs/bliss:=[gmp] )
+ cdd? ( sci-libs/cddlib:= )
+ flint? ( sci-mathematics/flint:= )
+ lrs? ( >=sci-libs/lrslib-051:=[gmp] )
+ nauty? ( sci-mathematics/nauty:= )
+ normaliz? ( >=sci-mathematics/normaliz-3.8:= )
+ ppl? ( dev-libs/ppl:= )
+ singular? ( sci-mathematics/singular:= )"
+
+RDEPEND="${DEPEND}
+ dev-lang/perl
+ dev-perl/JSON
+ dev-perl/Term-ReadLine-Gnu
+ dev-perl/TermReadKey
+ dev-perl/XML-SAX
+ dev-perl/XML-Writer"
+
+PATCHES=( "${FILESDIR}/${P}-no-perl-constraints.patch" )
+
+src_configure() {
+ # Without this, the build system tries to use "the highest possible"
+ # optimization level and will override what's in your CXXFLAGS.
+ export CXXOPT=""
+
+ tc-export CC CXX
+
+ # We need to define BLISS_USE_GMP if bliss was built with gmp support.
+ # Therefore we require gmp support on bliss, so that the package
+ # manager can prevent rebuilds with changed gmp flag. Yes, this should
+ # be append-cppflags; but the build system doesn't respect CPPFLAGS.
+ use bliss && append-cxxflags -DBLISS_USE_GMP
+
+ # This isn't an autotools ./configure script, so a lot of things
+ # don't work the way you'd expect. We disable openmp unconditionally
+ # because it's only supposedly only used for building the bundled
+ # libnormaliz (we unbundle it) and for something called to_simplex
+ # that I can't find anywhere in the polymake source.
+ ./configure --prefix="${EPREFIX}/usr" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --libexecdir="${EPREFIX}/usr/$(get_libdir)/polymake" \
+ $(usev !libpolymake "--without-callable") \
+ --without-java \
+ --without-javaview \
+ --without-native \
+ --without-scip \
+ --without-soplex \
+ --without-openmp \
+ $(use_with bliss bliss "${EPREFIX}/usr") \
+ $(use_with cdd cdd "${EPREFIX}/usr") \
+ $(use_with flint flint "${EPREFIX}/usr") \
+ $(use_with lrs lrs "${EPREFIX}/usr") \
+ $(use_with nauty nauty "${EPREFIX}/usr") \
+ $(use_with normaliz libnormaliz "${EPREFIX}/usr") \
+ $(use_with ppl ppl "${EPREFIX}/usr") \
+ $(use_with singular singular "${EPREFIX}/usr") \
+ || die
+}
+
+# There is a backwards-compatible Makefile that would call ninja for us
+# in src_compile/src_install, but it doesn't handle MAKEOPTS correctly.
+src_compile() {
+ eninja -C build/Opt
+}
+
+src_install() {
+ # DESTDIR needs to find its way into the real install script,
+ # support/install.pl.
+ export DESTDIR="${D}"
+ eninja -C build/Opt install
+}
+
+src_test() {
+ perl/polymake --script run_testcases --emacs-style \
+ || die "test suite failed"
+}
+
+pkg_postinst() {
+ elog "Additional features for polymake are available through external"
+ elog "software such as sci-mathematics/4ti2 and sci-mathematics/topcom."
+ elog "After installing new external software run 'polymake --reconfigure'."
+}