commit: 7ba814827abbf0d4aeb4a4de91ce717ae858633c
Author: Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Fri Feb 26 21:50:54 2021 +0000
Commit: Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Fri Feb 26 21:50:54 2021 +0000
URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=7ba81482
sci-libs/flexiblas: add alternate BLAS/LAPACK switch
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>
sci-libs/flexiblas/flexiblas-3.0.4.ebuild | 45 +++++++++++++++++++++++++++++++
sci-libs/flexiblas/flexiblas-9999.ebuild | 45 +++++++++++++++++++++++++++++++
sci-libs/flexiblas/metadata.xml | 27 +++++++++++++++++++
3 files changed, 117 insertions(+)
diff --git a/sci-libs/flexiblas/flexiblas-3.0.4.ebuild
b/sci-libs/flexiblas/flexiblas-3.0.4.ebuild
new file mode 100644
index 000000000..7a7e253d0
--- /dev/null
+++ b/sci-libs/flexiblas/flexiblas-3.0.4.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+inherit cmake python-any-r1
+
+DESCRIPTION="BLAS/LAPACK wrapper library for runtime switching of backends"
+HOMEPAGE="https://www.mpi-magdeburg.mpg.de/projects/flexiblas"
+
+if [[ "${PV}" == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mpimd-csc/flexiblas"
+else
+ SRC_URI="https://github.com/mpimd-csc/flexiblas/archive/v${PV}.tar.gz
-> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3 MIT"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? ( ${PYTHON_DEPS} )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DTESTS=$(usex test)
+ -DEXAMPLES=OFF
+ -DCBLAS=ON
+ -DLAPACK=ON
+ -DBLAS_AUTO_DETECT=OFF
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ dosym libflexiblas.so "/usr/$(get_libdir)/libblas.so"
+ dosym libflexiblas.so "/usr/$(get_libdir)/libcblas.so"
+ dosym libflexiblas.so "/usr/$(get_libdir)/liblapack.so"
+}
diff --git a/sci-libs/flexiblas/flexiblas-9999.ebuild
b/sci-libs/flexiblas/flexiblas-9999.ebuild
new file mode 100644
index 000000000..7a7e253d0
--- /dev/null
+++ b/sci-libs/flexiblas/flexiblas-9999.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+inherit cmake python-any-r1
+
+DESCRIPTION="BLAS/LAPACK wrapper library for runtime switching of backends"
+HOMEPAGE="https://www.mpi-magdeburg.mpg.de/projects/flexiblas"
+
+if [[ "${PV}" == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mpimd-csc/flexiblas"
+else
+ SRC_URI="https://github.com/mpimd-csc/flexiblas/archive/v${PV}.tar.gz
-> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3 MIT"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? ( ${PYTHON_DEPS} )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DTESTS=$(usex test)
+ -DEXAMPLES=OFF
+ -DCBLAS=ON
+ -DLAPACK=ON
+ -DBLAS_AUTO_DETECT=OFF
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ dosym libflexiblas.so "/usr/$(get_libdir)/libblas.so"
+ dosym libflexiblas.so "/usr/$(get_libdir)/libcblas.so"
+ dosym libflexiblas.so "/usr/$(get_libdir)/liblapack.so"
+}
diff --git a/sci-libs/flexiblas/metadata.xml b/sci-libs/flexiblas/metadata.xml
new file mode 100644
index 000000000..c37e14ea4
--- /dev/null
+++ b/sci-libs/flexiblas/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>[email protected]</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>[email protected]</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription>
+ FlexiBLAS is a wrapper library that enables the
+ exchange of the BLAS, CBLAS and LAPACK implementations
+ used in an executable without recompiling or re-linking it.
+ FlexiBLAS provides a GNU Fortran compatible interface
+ to all functions and subroutines provided by the Netlib
+ reference implementations. As backends FlexiBLAS can employ
+ all BLAS and LAPACK implementations which consist of a
+ single shared library directly. Other variants like the
+ Intel MKL or ATLAS that use multiple files are integrated
+ by FlexiBLAS by wrapping all files into a single surrogate
library.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">mpimd-csc/flexiblas</remote-id>
+ </upstream>
+</pkgmetadata>