summaryrefslogtreecommitdiff
path: root/sci-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-02-10 23:34:33 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-02-10 23:34:33 +0000
commit0771aa27d30f102abe2c5733a138ffe570da4d15 (patch)
tree1ce3f24ab882caa90bf65381e4f0794872fc7d93 /sci-libs
parent0bb42730e8fc9c8e571f12e3189c6c6f8d532c24 (diff)
gentoo auto-resync : 10:02:2024 - 23:34:33
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/Manifest.gzbin45095 -> 45089 bytes
-rw-r--r--sci-libs/fflas-ffpack/Manifest3
-rw-r--r--sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild55
-rw-r--r--sci-libs/fflas-ffpack/files/fflas-ffpack-2.5.0-blaslapack.patch75
-rw-r--r--sci-libs/givaro/Manifest4
-rw-r--r--sci-libs/givaro/files/givaro-4.2.0-configure.ac-fix-a-bashism.patch32
-rw-r--r--sci-libs/givaro/files/givaro-4.2.0-cstdint.patch46
-rw-r--r--sci-libs/givaro/givaro-4.2.0.ebuild53
-rw-r--r--sci-libs/linbox/Manifest3
-rw-r--r--sci-libs/linbox/files/linbox-1.7.0-hardened-testfails.patch22
-rw-r--r--sci-libs/linbox/linbox-1.7.0.ebuild111
11 files changed, 404 insertions, 0 deletions
diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz
index 3909fe45e44a..03d6a28c0cbe 100644
--- a/sci-libs/Manifest.gz
+++ b/sci-libs/Manifest.gz
Binary files differ
diff --git a/sci-libs/fflas-ffpack/Manifest b/sci-libs/fflas-ffpack/Manifest
index 96d2ddb28804..ccc7fbc7b04c 100644
--- a/sci-libs/fflas-ffpack/Manifest
+++ b/sci-libs/fflas-ffpack/Manifest
@@ -4,6 +4,9 @@ AUX fflas-ffpack-2.4.3-fix-pc-libdir.patch 586 BLAKE2B 030fab1e53b4584816ccd8961
AUX fflas-ffpack-2.4.3-no-fabi-version.patch 1170 BLAKE2B 90e9c080291251d4a5231c3857385791a5c24c00ee2327192fd1c5dcb1a169ad97fa50d21124f054737dd6a1dd1c5c10377865b5b144b31eed728dedc89ea001 SHA512 8d6b3c9bd6637f1c3bf43ce722e96bd9e48b0e271cec1fb4ae72ab2e99ac7b436626385dd2e39781959248506c19474ac062c8ced2c63db80553150f8e7a0287
AUX fflas-ffpack-2.4.3-no-test-echelon.patch 1374 BLAKE2B f62631e7e4e358584a826fb5ec3e9f36b892b5f0636c965677c55a97901ffefe3ad47dea79c46d65bb3090668e335d4f7cfc04cd12bc2b72f1c3c7db45833108 SHA512 9c9ee6e7df7d04fcc5ffc84cd3a2dae08e960540371671cc79c4eb99606bc1fd150a6e0ad96f16a51904ff83fabe69bdc9bfc6e9603855fe21acea535fc31dc1
AUX fflas-ffpack-2.4.3-no-test-fgesv.patch 1268 BLAKE2B 51c0cf74dac9b296a944e918475807e97a2cf71f066cda9c067b63b344e260b9fbb9ea2851db7ac2170e2b239c0778be0c9a99e0efbbbb9215df921197208784 SHA512 9a57cba58a6bab69092c4d335d92994651bb51d2f4e867d4f0396813e14f492d720232779615299b5203603bb76553ec8a4881ffb9677c349f22c0ef3975df0d
+AUX fflas-ffpack-2.5.0-blaslapack.patch 2009 BLAKE2B d6a6e8cbc3b57578efae7638f3a3bd62b233047f83f1c40ea5b5aab08b7f0f372cec1c7f769ca03c21270c9d7380622131d166d6fcef921941fc320c88cbb81f SHA512 cb584bd58a712bd28b95a99ee489fd0fcd1e349559d96498372674e6b86f6e699bcbc7a1db806a53bd6aff4358899754f0fead8b8b9d1414256f9dce15c6e81d
DIST fflas-ffpack-2.4.3.tar.gz 1059033 BLAKE2B e416429bb426a81cf9c25d54c83380ff9a9d658c711da06e6359d968843d4d9d26cf8389379f9ad4a5cbcee93e0afc9fe0497bb7a8f190e0c72c0b1f7b67de18 SHA512 c7620ba5a92e4114a581a6bea32267f9d5a9f0eb7e23fc0a7a97ce4b8124bb7b29f89ff2ad6ad270d97c76489625b57a354e581905b74ee57b35f4ca3e196a44
+DIST fflas-ffpack-2.5.0.tar.gz 1098354 BLAKE2B 34b0cd218e83a71c6540b1768c8231246a0dc360eb7e2353a923b5870d228e702291de14b0dc3e7c5055727fbd62e2bc1bd1d2ac432dd99df978a1edb513bfc0 SHA512 6753022f27d354160f5eb436c713002f61d24e9a942f2463e36bf324b19ec096f34dd9cacb8529ba566f245f88fa303dcfb448a40d0c39d340f7c337cd1788a4
EBUILD fflas-ffpack-2.4.3-r3.ebuild 2228 BLAKE2B fbb0b1ad23f85a77ed93175a1c8d8d9426a2c931e6fe935a33117291a77d0d20c2773e7d286f944796f222c5234ddb60be21d6aa61c20f9d97995e18fe05fd09 SHA512 6a0eb0437c2cdbcc064c71487edf8d7a8ea3c79e8eca641c428b2412d9480300ab736414b9cb2d870239d17b4edfaaa17d60afabadb412b255995c658e9115f5
+EBUILD fflas-ffpack-2.5.0.ebuild 1172 BLAKE2B eb93081fce63399c2f477b8232d5c2a7620de993b870f85d2e889f8e603e4e1a8fcdba86f4d8df9df5d1e9673621e7722b5284c20c34ed3b1d32e9d50b99d158 SHA512 d39232686a5dd71b6b19e5f8706bba8f6cf0e18342d0ef98431739fc1744801511a58d2a3f6bfaf72b7517bf7e3da626920f37f96c12b6f7fe69770c562a00c6
MISC metadata.xml 1492 BLAKE2B 46a6b13fb1bae6f2aa43a9d7a96c7882d4d7de4b885a4ac92f320f72ce3076ad820c4c5f75c0f2d60334801d2764c20524ea26c1cc6c9975be13e00906708927 SHA512 fc6d90e2945f67a32594f601df69952baec0821d1e529a03c8dc332723848ca531f747efe7c30ea00885c4c4a081cdb81c0ea05085e7ca3acd7db304bb4f468b
diff --git a/sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild b/sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild
new file mode 100644
index 000000000000..dda1212a776f
--- /dev/null
+++ b/sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Library for dense linear algebra over word-size finite fields"
+HOMEPAGE="https://linbox-team.github.io/fflas-ffpack/"
+SRC_URI="https://github.com/linbox-team/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="openmp"
+
+# Our autotools patch hacks in PKG_CHECK_MODULES calls.
+BDEPEND="virtual/pkgconfig"
+DEPEND="virtual/cblas
+ virtual/blas
+ virtual/lapack
+ dev-libs/gmp[cxx(+)]
+ =sci-libs/givaro-4.2*"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.5.0-blaslapack.patch"
+ "${FILESDIR}/${PN}-2.4.3-no-test-echelon.patch"
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ tc-export PKG_CONFIG
+
+ econf \
+ --enable-precompilation \
+ $(use_enable openmp)
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/sci-libs/fflas-ffpack/files/fflas-ffpack-2.5.0-blaslapack.patch b/sci-libs/fflas-ffpack/files/fflas-ffpack-2.5.0-blaslapack.patch
new file mode 100644
index 000000000000..609aa034438d
--- /dev/null
+++ b/sci-libs/fflas-ffpack/files/fflas-ffpack-2.5.0-blaslapack.patch
@@ -0,0 +1,75 @@
+From 8e350d3f47a1785eb4eea83dee43c596d6399459 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Sat, 10 Feb 2024 07:30:37 -0500
+Subject: [PATCH] configure.ac,fflas-ffpack-config.in: use pkg-config to check
+ for blas
+
+Patching configure.ac for this is ugly, but in this case it is
+actually the simplest way to get sane behavior out of the blas/lapack
+check.
+---
+ configure.ac | 29 ++++++++++++++++++-----------
+ fflas-ffpack-config.in | 4 ++--
+ 2 files changed, 20 insertions(+), 13 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5390bcf..2f5fc46 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -133,17 +133,24 @@ FF_CHECK_GIVARO_USABILITY()
+
+ AS_ECHO([---------------------------------------])
+
+-BLAS_FOUND=false
+-
+-FF_CHECK_BLAS_CFLAGS
+-FF_CHECK_BLAS_LIBS
+-FF_CHECK_MKL
+-FF_CHECK_USER_BLAS
+-FF_CHECK_USER_LAPACK
+-
+-FF_OPENBLAS_NUM_THREADS
+-
+-# FF_CHECK_CUDA
++PKG_PROG_PKG_CONFIG
++
++PKG_CHECK_MODULES([BLAS], [cblas blas],[
++ AC_DEFINE(HAVE_BLAS,1,[Define if BLAS is installed])
++ AC_DEFINE(HAVE_CBLAS,1,[Define if C interface to BLAS is installed])
++ HAVE_BLAS=yes
++ BLAS_PATH=""
++ CBLAS_LIBS="${BLAS_LIBS}"
++ AC_SUBST(BLAS_LIBS)
++ AC_SUBST(CBLAS_LIBS)
++ AC_SUBST(BLAS_CFLAGS)
++ AC_SUBST(BLAS_PATH)])
++
++PKG_CHECK_MODULES([LAPACK], [lapack],[
++ AC_DEFINE(HAVE_LAPACK,1,[Define if LAPACK is installed])
++ AC_SUBST(LAPACK_LIBS)])
++
++AM_CONDITIONAL(FFLASFFPACK_HAVE_LAPACK, test "x$HAVE_LAPACK" == "x1")
+
+ AS_ECHO([---------------------------------------])
+
+diff --git a/fflas-ffpack-config.in b/fflas-ffpack-config.in
+index 3e2f53f..e227ce0 100644
+--- a/fflas-ffpack-config.in
++++ b/fflas-ffpack-config.in
+@@ -106,11 +106,11 @@ while test $# -gt 0; do
+ ;;
+
+ --libs)
+- echo @PARLIBS@ @PRECOMPILE_LIBS@ @BLAS_LIBS@ @GIVARO_LIBS@
++ echo @PARLIBS@ @PRECOMPILE_LIBS@ @LAPACK_LIBS@ @BLAS_LIBS@ @GIVARO_LIBS@
+ ;;
+
+ --blas-libs)
+- echo @BLAS_LIBS@
++ echo @LAPACK_LIBS@ @BLAS_LIBS@
+ ;;
+
+ *)
+--
+2.43.0
+
diff --git a/sci-libs/givaro/Manifest b/sci-libs/givaro/Manifest
index d23ff19951dc..9038117166dd 100644
--- a/sci-libs/givaro/Manifest
+++ b/sci-libs/givaro/Manifest
@@ -1,6 +1,10 @@
AUX givaro-4.1.1-fix-pc-libdir.patch 549 BLAKE2B f564256b81f1e2ef42bca171fce581e603887905dcf7fe8c881e59aae82d062767efdb096598f92bca09e9127c98fe023e9c034b5b38ef4ca575da9e877ca334 SHA512 927b1a15c834ba2c1cab37e1fdac1ab1c347cba7aba98be652e2ed4468d2a0627cc7f4820561655d1a223c02f8eaba7cc2911acb9998fc853dc20590fb1c74ef
AUX givaro-4.1.1-gcc-10.patch 1035 BLAKE2B 460371ff8e628e1945a29d9c6d2b718c7d98b07b023540bc49a439cd941a19191db44536a1514495014084a85028debfb4e714d6d9efd9ae7c7c12687d5f8400 SHA512 3e154b3cf6c11a106f78778eeaaf0c2cfe81e25d18f623b5b071b306f1221c8513f27f87ab3e3684a8b3f18138dfbb516c33691dbb854072a35a0be21ac0bc48
AUX givaro-4.1.1-gcc-13.patch 667 BLAKE2B d51ce9ce832d6d3e31410207bd77d3efa56e87a3a3c0cebb4dd16387a41647f59f5e6cd768b763909c54e2de06ed73ed0cc3dd8be0eb4809d6a77ecf201eafdf SHA512 e414c98aea642b705cf692c06371512713d1a8210cebfbfe80d26d48a18d6fb42726a6d9cf161390b66c7b424965fc3280ca2811b13a20b1fd986f346e3ae6df
+AUX givaro-4.2.0-configure.ac-fix-a-bashism.patch 916 BLAKE2B 00681f62b334b248ef783980c18ddc7d72c24e5a3c0f3fa4d4889bfe874b88085a6b8caf38220d9b078b90bf69bd620cceacf6a0e422eccdb0a76a32d38f71c5 SHA512 af63e7cd74e920436e3e96029d6f4981a6019bffa5ebf146da763688d41c210ac9fcdc29805a6e52b5977d81fda5e6b377d1dc137c71da4e2c84fa66d93756e2
+AUX givaro-4.2.0-cstdint.patch 1319 BLAKE2B f8e742aadb65c075b419921431c21ffe06964aa6c9685da901022c4d36a71e785ca91c76fbef2eaaee35daedd49679e289af898d44c68760721a4a9d696e60ff SHA512 bbf9e473f853f72f8863cf271eec39e102ce917abf7d5eae256b62781616dbc927caa373224d4bb0f0cc014335c6219a6aea782072af9089edd1a5ef22e17c31
DIST givaro-4.1.1.tar.gz 1008358 BLAKE2B 246fd1a263174f58d96dd66fa79e6113368b6c318c33d68858a339bd9cb778dfda84636c683ee9d02f2ac72ccff8ac22d395b92741448a8ed2ce08c041ac8ba9 SHA512 7ad15ac24f55ad65c9c5d0d48ff4388d0494e75dc7b66d1e139195cd086ff2371259bdb5df940fead1db2fd378bb76289f2327a8d6f41575d99d424a74cf644c
+DIST givaro-4.2.0.tar.gz 969595 BLAKE2B 07c9f08269ee60c06b1589e56ccf61870df6c7cab93fb8ebf27791d9231b153a2da9aed296105fd6dcd52aaa7d27ea03eacd6f2066d29de267455c9ca3747995 SHA512 1a3280563181710d364b77e1efe8c8f52ce3119a08b35f329cfd98136a742431b7e9d102289448d337797f815439682d0cfce1567a5a88d5851b244673a84486
EBUILD givaro-4.1.1-r3.ebuild 1942 BLAKE2B 4de01c80280c1f35dd9ef8e48290cf7589ec342454a13d954150330dee4eb061a0f86ef1b8349138984256eaa5c982eb19c0fce499cfb549b8b97a47a69872e7 SHA512 caab6a64842b31f3286152d2ed59457088955e67ae7156d207cc05ca731d7a67440e4cc4bcce889fb35376fdeaf7d918987c62126352c539d3c293f85ab80eae
+EBUILD givaro-4.2.0.ebuild 1173 BLAKE2B 7eb762fdff8f52bfead0ee59f2d491421781d7d7cdabd075ae47db40698a4a7b09b3dfd8cc069ca77829f0861c70fbce38a07e970085bcf2fdcc9e597749626f SHA512 08226717470e3f0b7ca368f8a56fa8b809bf220228129c0f31915d1aea8c46584ecd1e6f88cb32b128daf59d7bb3ac6ebda8b05233017965a0ecc1159ef3c52b
MISC metadata.xml 769 BLAKE2B b407b31de2f554fdf554b2d77c2dd0b1bbf39f36b29fdf565f50362153798c60bcfecf0411247eec556ff6ddc92af0c49e11a9b242b5e3e7b7dcc1066527d08c SHA512 063ccc3fcd55f3d7033fd23efe5095d83784d0e60cca2e1092e534fe06d0e69d5d340a0a25547bddc2962d2906c14a2c996852e2c198124ed007ecdfde4fff2e
diff --git a/sci-libs/givaro/files/givaro-4.2.0-configure.ac-fix-a-bashism.patch b/sci-libs/givaro/files/givaro-4.2.0-configure.ac-fix-a-bashism.patch
new file mode 100644
index 000000000000..f8d942191040
--- /dev/null
+++ b/sci-libs/givaro/files/givaro-4.2.0-configure.ac-fix-a-bashism.patch
@@ -0,0 +1,32 @@
+From 1132161483e756902c86c190855e260164c025fd Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Fri, 9 Feb 2024 16:41:03 -0500
+Subject: [PATCH] configure.ac: fix a bashism
+
+There's one instance of VAR+=" value" in the configure script, but
+that only works in bash. With dash, for example, it results in
+
+ checking whether gmp version is at least 40000... yes
+ ./configure: 17953: REQUIRED_FLAGS+= : not found
+
+We change it to a VAR="${VAR} value" instead.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index b03e5e4d..a94286ac 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -121,7 +121,7 @@ AS_ECHO([---------------------------------------])
+
+ # Look for GMP and add flags if necessary
+ GIV_CHECK_GMP(40000)
+-REQUIRED_FLAGS+=" ${GMP_CFLAGS}"
++REQUIRED_FLAGS="${REQUIRED_FLAGS} ${GMP_CFLAGS}"
+
+ GIV_DOC
+
+--
+2.43.0
+
diff --git a/sci-libs/givaro/files/givaro-4.2.0-cstdint.patch b/sci-libs/givaro/files/givaro-4.2.0-cstdint.patch
new file mode 100644
index 000000000000..0fc532220da7
--- /dev/null
+++ b/sci-libs/givaro/files/givaro-4.2.0-cstdint.patch
@@ -0,0 +1,46 @@
+From a6b370873e406f9921a50359ed8ebf4714776411 Mon Sep 17 00:00:00 2001
+From: Jean-Guillaume Dumas <Jean-Guillaume.Dumas@imag.fr>
+Date: Wed, 11 Oct 2023 14:19:52 +0200
+Subject: [PATCH] cstdint required for uint64_t
+
+---
+ src/kernel/system/givpower.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/kernel/system/givpower.h b/src/kernel/system/givpower.h
+index 5644264d..080e114d 100644
+--- a/src/kernel/system/givpower.h
++++ b/src/kernel/system/givpower.h
+@@ -16,6 +16,8 @@
+ #ifndef __GIVARO_power_H
+ #define __GIVARO_power_H
+
++#include <cstdint>
++
+ namespace Givaro {
+
+ // -------------------------------------------------------------
+
+From c7744bb133496cd7ac04688f345646d505e1bf52 Mon Sep 17 00:00:00 2001
+From: "Benjamin A. Beasley" <code@musicinmybrain.net>
+Date: Thu, 19 Jan 2023 09:12:22 -0500
+Subject: [PATCH] Add missing #include <cstdint> for (u)int64_t
+
+Fixes failure to compile on GCC 13.
+---
+ src/library/poly1/givdegree.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/library/poly1/givdegree.h b/src/library/poly1/givdegree.h
+index 3753a425..eb85a0dd 100644
+--- a/src/library/poly1/givdegree.h
++++ b/src/library/poly1/givdegree.h
+@@ -19,6 +19,8 @@
+ #ifndef __GIVARO_poly1degree_H
+ #define __GIVARO_poly1degree_H
+
++#include <cstdint>
++
+ #include <iostream>
+
+ namespace Givaro {
diff --git a/sci-libs/givaro/givaro-4.2.0.ebuild b/sci-libs/givaro/givaro-4.2.0.ebuild
new file mode 100644
index 000000000000..327d439ec727
--- /dev/null
+++ b/sci-libs/givaro/givaro-4.2.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="C++ library for arithmetic and algebraic computations"
+HOMEPAGE="https://casys.gricad-pages.univ-grenoble-alpes.fr/givaro/"
+SRC_URI="https://github.com/linbox-team/givaro/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="CeCILL-B"
+SLOT="0/9" # soname major
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ doc? (
+ app-text/doxygen[dot]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ )
+"
+DEPEND="dev-libs/gmp:0[cxx(+)]"
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS ChangeLog README.md )
+
+PATCHES=(
+ "${FILESDIR}/givaro-4.1.1-fix-pc-libdir.patch"
+ "${FILESDIR}/${P}-configure.ac-fix-a-bashism.patch"
+ "${FILESDIR}/${P}-cstdint.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-docdir="/usr/share/doc/${PF}/html" \
+ $(use_enable doc)
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/sci-libs/linbox/Manifest b/sci-libs/linbox/Manifest
index 95fa12ff498c..126b2b7831eb 100644
--- a/sci-libs/linbox/Manifest
+++ b/sci-libs/linbox/Manifest
@@ -1,4 +1,7 @@
AUX linbox-1.6.3-pc.patch 1082 BLAKE2B 7d5b055c0622b61245f193eb39d7e52951262c56456dceba5b3e72f54add82b2fc1660c4590eba2c4a97009bd78119893bfccb0909ed5374752f4bf563e75655 SHA512 5739738de34c28fb9970a869ee97a6ab528fd48e3f8b3d82f39966959fa97d6076a44263678d25c06bea3c46e06c8869ba4ea94484d5b57aee3a302df49fd06b
+AUX linbox-1.7.0-hardened-testfails.patch 702 BLAKE2B df20b35fc72d67079fbd76da90b4ea4d0bf23da401929dc7b8e6c64acb380a3a8ca1d88728be568a3c72413351d013022c42c6e2b78e737f106160e607097160 SHA512 3b60caa03d2254b8d6ceadd92498bfddef1ac6ecc37d520ee2ed3f417c5f6b6982008455a03ec2a894f63fc4ec1ca3b3f189babf1d26e48ecae2bd3d5d8fb0d8
DIST linbox-1.6.3.tar.gz 1968034 BLAKE2B 55fb83db7da375d8d97f2567c6a120ac48fefc41eb02db68152cc32f1f16009b8c8108a07bbc68087ad2ef3279108db61b48b805c9ce39f4c5f0072ab6e96304 SHA512 ccef3b4c7b9d8f999e5e4ce4e544f22cd869154513827501ecb7e1abf132ff585dfb3315cced963abe842feecda9331dda9081efb3948987365d338223a8305c
+DIST linbox-1.7.0.tar.gz 2258420 BLAKE2B a416e7ab138c6f3f4778a00c0c1eb46aa0a5b26d84f19a2df93e9f8959d3237e5f298f8013f9414f66605c08eebd7d632f71dcdef7080c8df814afcd2de34456 SHA512 cb4e848186d1f6357f498d1e3bda6484b4c789c02440f9614a227a2ae206a31fb20b32be40bda74da3f2f8f981bbd58d80fc97c95499b5151bb06eafb867ef9e
EBUILD linbox-1.6.3-r2.ebuild 3960 BLAKE2B 1f730cba36d545e7971fe77bdf1e5a6237b5902390dc42cd387f16f5749a5a4d08fbead53d266105cf29bb5dcb5c5dc67783c51a603cb3454345f194276693f4 SHA512 308ff8895f27fc62d7c8fa84fa39850045c2d6443f2c1d2b46b52faaac89f6acd3876ed573ebc36c7f21e2b483bd71af085b3579c6f717136025e20596afcd51
+EBUILD linbox-1.7.0.ebuild 3495 BLAKE2B dbff2b303f077325ff710a6e47c1f80125432c2d5ab3bb941eb4b7f520c8925ea5213494999b4568b8bd26484ce64260424d5eb01691a899e5655c658ed2d828 SHA512 985806a05ec6f3b41dcb59dbb3c121f0da67e974ab0f421e8770bb38346ab009ea8ff2c9239a175eee7cc74c5bc1355bc3650b9ffe71a1a5135988cfea0748fb
MISC metadata.xml 1177 BLAKE2B 57f2c859e73b86a679ba4e1ce568f006761799de57786b9fc60ac5d6a96641d39a6e51b04a86d802d3551ce38da8ff1c7eeb28f8831b605de3e5c786b0e7614e SHA512 78897bcff7d41ebcf9a0e521149cd90cb42234419b295738cf1881acf3f157cf935ad8b0de9e464fc99961831e8f0c0a31561b1bb42a2283f16ce646203f4774
diff --git a/sci-libs/linbox/files/linbox-1.7.0-hardened-testfails.patch b/sci-libs/linbox/files/linbox-1.7.0-hardened-testfails.patch
new file mode 100644
index 000000000000..9e46faa69dc4
--- /dev/null
+++ b/sci-libs/linbox/files/linbox-1.7.0-hardened-testfails.patch
@@ -0,0 +1,22 @@
+https://github.com/linbox-team/linbox/issues/304
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index d870aa9..f7234ea 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -57,7 +57,6 @@ EXTRA_DIST = \
+ BASIC_TESTS = \
+ test-solve \
+ test-solve-full \
+- test-smith-form-valence \
+ test-local-smith-form-sparseelim\
+ test-smith-form \
+ test-smith-form-adaptive \
+@@ -66,7 +65,6 @@ BASIC_TESTS = \
+ test-last-invariant-factor \
+ test-qlup \
+ test-det \
+- test-regression \
+ test-regression2 \
+ test-rank-ex \
+ test-rank-u32 \
diff --git a/sci-libs/linbox/linbox-1.7.0.ebuild b/sci-libs/linbox/linbox-1.7.0.ebuild
new file mode 100644
index 000000000000..0745edcc409b
--- /dev/null
+++ b/sci-libs/linbox/linbox-1.7.0.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="C++ template library for integer and finite-field linear algebra"
+HOMEPAGE="https://linalg.org/"
+SRC_URI="https://github.com/linbox-team/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+# I think only macros/libtool.m4 (and COPYING) is GPL-2+; the source
+# headers all say LGPL-2.1
+LICENSE="GPL-2+ LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="doc opencl openmp"
+
+BDEPEND="doc? ( app-text/doxygen )"
+
+# The project README says that gmp, givaro, and blas/lapack are required
+# transitively via fflas-ffpack, but that's not true. The build system
+# checks for them, and `git grep` shows that they're used directly.
+DEPEND="dev-libs/gmp[cxx(+)]
+ =sci-libs/givaro-4.2*
+ =sci-libs/fflas-ffpack-2.5*
+ virtual/cblas
+ virtual/lapack
+ opencl? ( virtual/opencl )
+ dev-libs/ntl:=
+ sci-libs/iml
+ dev-libs/mpfr:=
+ sci-mathematics/flint"
+
+# Use mathjax to render inline latex rather than requiring a working latex
+# installation to generate bitmaps.
+RDEPEND="${DEPEND}
+ doc? ( >=dev-libs/mathjax-3 )
+"
+
+PATCHES=( "${FILESDIR}/${P}-hardened-testfails.patch" )
+
+# The --enable-openmp flag has been removed upstream, but we don't want
+# openmp support to disappear after the package has been compiled with
+# it, so we retain the USE flag and the toolchain check.
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ default
+
+ if use doc; then
+ # Avoid the need for a working LaTeX installation. MathJax does
+ # slow down the browser a bit but it also renders much more
+ # nicely than the latex-generated bitmaps would.
+ echo "
+ USE_MATHJAX = YES
+ MATHJAX_VERSION = MathJax_3
+ MATHJAX_RELPATH = \"${EPREFIX}/usr/share/mathjax\"
+ MATHJAX_EXTENSIONS = ams
+ " >> doc/Doxyfile.mod || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ #
+ # The --with-all flag includes,
+ #
+ # --with-givaro: used for finite fields, integer, etc. (required)
+ # --with-fflas-ffpack: small field dense linear algebra (required)
+ # --with-ntl: used for finite field, polynomial arithmetic (optional)
+ # --with-iml: used for fast integer/rational linear algebra (optional)
+ # --with-mpfr: not sure, doesn't seem to be used? (optional)
+ # --with-flint: used in algorithms/matrix-blas3 once (optional)
+ # --with-fplll: an fplll interface not directly used (optional)
+ # --with-doxygen: needed with --enable-doc to build them (optional)
+ #
+ # Some of these could be behind USE flags, but the ./configure output
+ # says that they're "not yet mandatory," which makes me think we might
+ # be overcomplicating things to make them optional right now.
+ #
+ econf \
+ --with-docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --with-all="${EPREFIX}"/usr \
+ --without-fplll \
+ --without-archnative \
+ $(use_enable doc) \
+ $(use_with opencl ocl)
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+ if use doc; then
+ # These files are used for incremental doxygen builds but aren't
+ # part of the final output. Check on
+ #
+ # https://github.com/linbox-team/linbox/issues/252
+ #
+ # periodically to see if this is pointless.
+ find "${ED}/usr/share/doc/${PF}" -type f -name '*.md5' -delete || die
+ find "${ED}/usr/share/doc/${PF}" -type f -name '*.map' -delete || die
+ fi
+}