diff --git a/sci-libs/rocSOLVER/Manifest b/sci-libs/rocSOLVER/Manifest index c2e29447bd93f..0f29d5d3042a4 100644 --- a/sci-libs/rocSOLVER/Manifest +++ b/sci-libs/rocSOLVER/Manifest @@ -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 diff --git a/sci-libs/rocSOLVER/rocSOLVER-7.1.0.ebuild b/sci-libs/rocSOLVER/rocSOLVER-7.1.0.ebuild new file mode 100644 index 0000000000000..04812f5361ed5 --- /dev/null +++ b/sci-libs/rocSOLVER/rocSOLVER-7.1.0.ebuild @@ -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 +}