commit:     69d2e9c1efa10a04560362d2f079ce366841588c
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 10 17:12:47 2024 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Sat Feb 10 22:36:29 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69d2e9c1

sci-libs/fflas-ffpack: add 2.5.0

Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>

 sci-libs/fflas-ffpack/Manifest                     |  1 +
 sci-libs/fflas-ffpack/fflas-ffpack-2.5.0.ebuild    | 55 ++++++++++++++++
 .../files/fflas-ffpack-2.5.0-blaslapack.patch      | 75 ++++++++++++++++++++++
 3 files changed, 131 insertions(+)

diff --git a/sci-libs/fflas-ffpack/Manifest b/sci-libs/fflas-ffpack/Manifest
index d10a12abc35b..da511b79674d 100644
--- a/sci-libs/fflas-ffpack/Manifest
+++ b/sci-libs/fflas-ffpack/Manifest
@@ -1 +1,2 @@
 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

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 <[email protected]>
+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
+

Reply via email to