From 0771aa27d30f102abe2c5733a138ffe570da4d15 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 10 Feb 2024 23:34:33 +0000 Subject: gentoo auto-resync : 10:02:2024 - 23:34:33 --- sci-libs/Manifest.gz | Bin 45095 -> 45089 bytes sci-libs/fflas-ffpack/Manifest | 3 + sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild | 55 ++++++++++ .../files/fflas-ffpack-2.5.0-blaslapack.patch | 75 ++++++++++++++ sci-libs/givaro/Manifest | 4 + .../givaro-4.2.0-configure.ac-fix-a-bashism.patch | 32 ++++++ sci-libs/givaro/files/givaro-4.2.0-cstdint.patch | 46 +++++++++ sci-libs/givaro/givaro-4.2.0.ebuild | 53 ++++++++++ sci-libs/linbox/Manifest | 3 + .../files/linbox-1.7.0-hardened-testfails.patch | 22 ++++ sci-libs/linbox/linbox-1.7.0.ebuild | 111 +++++++++++++++++++++ 11 files changed, 404 insertions(+) create mode 100644 sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild create mode 100644 sci-libs/fflas-ffpack/files/fflas-ffpack-2.5.0-blaslapack.patch create mode 100644 sci-libs/givaro/files/givaro-4.2.0-configure.ac-fix-a-bashism.patch create mode 100644 sci-libs/givaro/files/givaro-4.2.0-cstdint.patch create mode 100644 sci-libs/givaro/givaro-4.2.0.ebuild create mode 100644 sci-libs/linbox/files/linbox-1.7.0-hardened-testfails.patch create mode 100644 sci-libs/linbox/linbox-1.7.0.ebuild (limited to 'sci-libs') diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz index 3909fe45e44a..03d6a28c0cbe 100644 Binary files a/sci-libs/Manifest.gz and b/sci-libs/Manifest.gz 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 +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 +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 +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 ++ + namespace Givaro { + + // ------------------------------------------------------------- + +From c7744bb133496cd7ac04688f345646d505e1bf52 Mon Sep 17 00:00:00 2001 +From: "Benjamin A. Beasley" +Date: Thu, 19 Jan 2023 09:12:22 -0500 +Subject: [PATCH] Add missing #include 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 ++ + #include + + 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 +} -- cgit v1.2.3