sci-libs/superlu_dist: add 8.1.0

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2022-07-07 09:45:44 +02:00
parent dd31309049
commit 5faa5c2f63
2 changed files with 87 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST superlu_dist-8.0.0_p20220526.tar.gz 2293062 BLAKE2B 34c2d1d4bc8c6ac0b2285457b81d3d6fff449c31689130eb8a4844ff8ceee9f1d7c21a19632a2dd01a13fc07e6614c02934a2c6f4f3d3808352c82d44aa2bc6c SHA512 e8724b05156fcad2b347643dcbdb6a4183b6b36c4d54f4a9f14e4527f0a62fc5eb76f649909773d770f729fe1a33879bef54581fc0faee54224a67f2e1b8b9c5
DIST superlu_dist-8.1.0.tar.gz 2297109 BLAKE2B 49439150b5b5b90c7dcf731dd3ba8b079302f101fb5f6c38f41546febbecbb8e2902a1362740f8790227997138ed8423b284c73f43bbf0c7a32eec9876dfe403 SHA512 4c7fc7e4649282755cff018fa37413161224e9a35a471c4e64c09e439f4397d196fb4e7976edc6ca030867c1b61d88d91cb1505be522a1588c7b4de4a813a625

View File

@@ -0,0 +1,86 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DOCS_BUILDER="doxygen"
DOCS_CONFIG_NAME="DoxyConfig"
FORTRAN_NEEDED="fortran"
inherit cmake docs fortran-2
DESCRIPTION="MPI distributed sparse LU factorization library"
HOMEPAGE="
https://portal.nersc.gov/project/sparse/superlu/
https://github.com/xiaoyeli/superlu_dist
"
SRC_URI="https://github.com/xiaoyeli/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
IUSE="combblas +complex-precision +double-precision examples hip lapack fortran metis single-precision test"
# TODO: cuda
RDEPEND="
sci-libs/colamd
virtual/blas
virtual/mpi
combblas? ( sci-libs/CombBLAS )
hip? (
sci-libs/hipBLAS
sci-libs/rocBLAS
sci-libs/rocSOLVER
)
lapack? ( virtual/lapack )
metis? ( sci-libs/parmetis )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}/${PN}-8.0.0_p20220526-system-colamd.patch"
"${FILESDIR}/${PN}-8.0.0_p20220526-fortran.patch"
)
RESTRICT="test" # tests require an MPI setup
src_prepare() {
rm -r CBLAS || die
rm SRC/colamd.{c,h} || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-Denable_openmp=ON
-DBUILD_SHARED_LIBS=ON
-DBUILD_STATIC_LIBS=OFF
-DTPL_ENABLE_CUDALIB=OFF
-DTPL_ENABLE_INTERNAL_BLASLIB=OFF
-Denable_complex16=$(usex complex-precision)
-Denable_double=$(usex double-precision)
-Denable_examples=$(usex examples ON OFF)
-Denable_single=$(usex single-precision)
-Denable_tests=$(usex test ON OFF)
-DTPL_ENABLE_COMBBLASLIB=$(usex combblas)
-DTPL_ENABLE_HIPLIB=$(usex hip)
-DTPL_ENABLE_LAPACKLIB=$(usex lapack)
-DTPL_ENABLE_PARMETISLIB=$(usex metis)
-DXSDK_ENABLE_Fortran=$(usex fortran)
)
if use combblas; then
mycmakeargs+=(
-DTPL_COMBBLAS_LIBRARIES="${EPREFIX}/usr/$(get_libdir)/libCombBLAS.so"
-DTPL_COMBBLAS_INCLUDE_DIRS="${EPREFIX}/usr/include/CombBLAS/"
)
fi
if use metis; then
mycmakeargs+=(
-DTPL_PARMETIS_LIBRARIES="${EPREFIX}/usr/$(get_libdir)/libparmetis.so"
-DTPL_PARMETIS_INCLUDE_DIRS="${EPREFIX}/usr/include"
)
fi
cmake_src_configure
}