sci-libs/rocSOLVER: add 7.1.0

Signed-off-by: Patrick Lauer <patrick@gentoo.org>
This commit is contained in:
Patrick Lauer
2025-11-09 06:58:49 +00:00
parent c5966ec402
commit 2484809623
2 changed files with 93 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
DIST rocSOLVER-6.3.3.tar.gz 3077208 BLAKE2B b3c5a8377b503b2639f81ae7457d233dd225f8422a9134148826d875cacac2cb03429734915c25ca8971c651c31071daccfad9ad4fcb66a034f38b5b991380aa SHA512 5effc07c9ed5a22bfbb114fc9777e61e9b524c439ea98e0802e63490a27d4e17747de5eee74df59138bf8dcb8700b00a9074079ee3666bba630af2bab800a541
DIST rocSOLVER-6.4.3.tar.gz 3151118 BLAKE2B 84e533a9af91a6b12c1b7f967c7879c5a3d59a46e12aacb6814905f99f7de7c2cd1b429dd41e5b33b0eb63a5fae1ef6fb7d20a0508466b960a2d5c59b81c7a9a SHA512 84a37d94ca55edfc5038425f1dc6f6658e34fbbfdd3e32be3f3668307e5590895c09c4e0769e4cd89af74a2a651c6311df7124b1bedf1a7375fa519560d95e9f
DIST rocSOLVER-7.0.2.tar.gz 3195696 BLAKE2B 65dae68611804184f82e6828dfd54905f7da0ad4cd56d1aa72f24e35b546e827884965d7acc94d8aba875db84726cb5da92ca8c5676777bfbd9250ccb8c37687 SHA512 8b4f9aa74dbb744daa33536872ae8c78098875533779ea7f5439a3422a0d1fdbb5d8158d3705946e6f19640ace847258b48fe0b612582f4037786dd845d7dae0
DIST rocSOLVER-7.1.0.tar.gz 3169373 BLAKE2B 3e2fc86a22be6d6c51fed69a16de1d79c404da0e09647b28428bd0da0bc8a0e810a75e74dfed953f9af37607dc7ec383082807f83239fe8ec1480144d069e527 SHA512 d9fb990c3bbfa00da14d77b130993391268b96764bff167179333563e84ccb2f49187e2601da8ca5fff01fdba9d5974c4e4ee1b133ce9bad565fa0d3b176b1b3

View File

@@ -0,0 +1,92 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ROCM_VERSION=${PV}
inherit cmake edo flag-o-matic rocm
DESCRIPTION="Implementation of a subset of LAPACK functionality on the ROCm platform"
HOMEPAGE="https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocsolver"
SRC_URI="https://github.com/ROCm/rocSOLVER/archive/rocm-${PV}.tar.gz -> rocSOLVER-${PV}.tar.gz"
S=${WORKDIR}/${PN}-rocm-${PV}
LICENSE="BSD"
SLOT="0/$(ver_cut 1-2)"
KEYWORDS="~amd64"
IUSE="benchmark sparse test"
REQUIRED_USE="${ROCM_REQUIRED_USE}"
RDEPEND="
dev-libs/libfmt:=
dev-util/hip:${SLOT}
sci-libs/rocBLAS:${SLOT}
benchmark? ( sci-libs/flexiblas )
sparse? ( sci-libs/rocSPARSE:${SLOT} )
"
DEPEND="
${RDEPEND}
sci-libs/rocPRIM:${SLOT}
"
BDEPEND="
test? (
dev-cpp/gtest
sci-libs/flexiblas
)
"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}"/${PN}-7.0.1-fix-includes.patch
)
src_configure() {
rocm_use_clang
# too many warnings
append-cxxflags -Wno-explicit-specialization-storage-class
local mycmakeargs=(
-DCMAKE_SKIP_RPATH=ON
-DAMDGPU_TARGETS="$(get_amdgpu_flags)"
-Wno-dev
-DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF
-DROCM_SYMLINK_LIBS=OFF
-DBUILD_CLIENTS_SAMPLES=OFF
-DBUILD_CLIENTS_TESTS=$(usex test ON OFF)
-DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF)
-DBUILD_WITH_SPARSE=$(usex sparse ON OFF)
)
if use benchmark || use test; then
mycmakeargs+=(
-DROCSOLVER_FIND_PACKAGE_LAPACK_CONFIG=OFF
-DBLA_PKGCONFIG_BLAS=ON
-DBLA_VENDOR=FlexiBLAS
)
fi
cmake_src_configure
}
src_test() {
check_amdgpu
cd "${BUILD_DIR}"/clients/staging || die
# No filters: 64m28s on gfx1100
# 'checkin*-*known_bug*': 1m35s
HIP_VISIBLE_DEVICES=0 LD_LIBRARY_PATH="${BUILD_DIR}/library/src" \
edob ./rocsolver-test \
--gtest_filter='checkin*-*known_bug*:*GVD*batched*:*STEDCX*/74:*BDSVDX*:*SYGVDX_INPLACE.__float*'
}
src_install() {
cmake_src_install
if use benchmark; then
cd "${BUILD_DIR}" || die
dobin clients/staging/rocsolver-bench
fi
}