commit: 67149ac377ca415364fa6beb789e034b3b590386 Author: Sv. Lockal <lockalsash <AT> gmail <DOT> com> AuthorDate: Wed Oct 29 16:42:11 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Wed Oct 29 19:23:26 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67149ac3
sci-libs/rocBLAS: switch to sci-libs/flexiblas and fix dependencies sci-libs/flexiblas seems to be a decent solution given that it cblas is only used for validation. Flag video_cards_amdgpu was dropped, because it was non-switchable; we require to select AMD GPU with REQUIRED_USE; attempt to disable video_cards_amdgpu after that leads to compilation error. Yes, technically it is possible to build rocBLAS for CUDA, but there is no request for this at this moment. Closes: https://bugs.gentoo.org/965167 Signed-off-by: Sv. Lockal <lockalsash <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/44373 Signed-off-by: Sam James <sam <AT> gentoo.org> ...ocBLAS-7.0.2.ebuild => rocBLAS-7.0.2-r1.ebuild} | 24 ++++++------- sci-libs/rocBLAS/rocBLAS-9999.ebuild | 39 +++++++++++----------- 2 files changed, 30 insertions(+), 33 deletions(-) diff --git a/sci-libs/rocBLAS/rocBLAS-7.0.2.ebuild b/sci-libs/rocBLAS/rocBLAS-7.0.2-r1.ebuild similarity index 87% rename from sci-libs/rocBLAS/rocBLAS-7.0.2.ebuild rename to sci-libs/rocBLAS/rocBLAS-7.0.2-r1.ebuild index 2e2813dc28cd..36098ed623e0 100644 --- a/sci-libs/rocBLAS/rocBLAS-7.0.2.ebuild +++ b/sci-libs/rocBLAS/rocBLAS-7.0.2-r1.ebuild @@ -28,7 +28,7 @@ else fi LICENSE="MIT BSD" -IUSE="benchmark hipblaslt roctracer test video_cards_amdgpu" +IUSE="benchmark hipblaslt roctracer test" RESTRICT="!test? ( test )" REQUIRED_USE="${ROCM_REQUIRED_USE}" @@ -41,9 +41,9 @@ RDEPEND=" roctracer? ( dev-util/roctracer:${SLOT} ) hipblaslt? ( sci-libs/hipBLASLt:${SLOT} ) benchmark? ( - virtual/blas dev-cpp/gtest llvm-runtimes/openmp + sci-libs/flexiblas ) " @@ -51,13 +51,11 @@ DEPEND=" ${RDEPEND} >=dev-cpp/msgpack-cxx-6.0.0 test? ( - virtual/blas dev-cpp/gtest llvm-runtimes/openmp + sci-libs/flexiblas ) - video_cards_amdgpu? ( - dev-util/Tensile:${SLOT} - ) + dev-util/Tensile:${SLOT} " QA_FLAGS_IGNORED="/usr/lib64/rocblas/library/.*" @@ -66,7 +64,6 @@ PATCHES=( "${FILESDIR}"/${PN}-5.4.2-add-missing-header.patch "${FILESDIR}"/${PN}-7.0.2-expand-isa-compatibility.patch "${FILESDIR}"/${PN}-6.3.0-no-git.patch - "${FILESDIR}"/${PN}-7.0.1-find-cblas.patch ) src_prepare() { @@ -91,7 +88,7 @@ src_configure() { -DCMAKE_SKIP_RPATH=ON -DROCM_SYMLINK_LIBS=OFF -DAMDGPU_TARGETS="$(get_amdgpu_flags)" - -DBUILD_WITH_TENSILE="$(usex video_cards_amdgpu)" + -DBUILD_WITH_TENSILE=ON -DCMAKE_INSTALL_INCLUDEDIR="include/rocblas" -DBUILD_CLIENTS_SAMPLES=OFF -DBUILD_CLIENTS_TESTS="$(usex test ON OFF)" @@ -100,15 +97,16 @@ src_configure() { -DBUILD_WITH_HIPBLASLT="$(usex hipblaslt ON OFF)" -DROCBLAS_ENABLE_MARKER="$(usex roctracer ON OFF)" -DLINK_BLIS=OFF - -DTensile_CPU_THREADS=$(makeopts_jobs) + -DTensile_COMPILER="${CXX}" + -DTensile_ROOT="${EPREFIX}/usr/share/Tensile" + -DTensile_CPU_THREADS="$(makeopts_jobs)" -Wno-dev ) - if usex video_cards_amdgpu; then + if use benchmark || use test; then mycmakeargs+=( - -DTensile_COMPILER="hipcc" - -DTensile_ROOT="${EPREFIX}/usr/share/Tensile" - -DTensile_CPU_THREADS="$(makeopts_jobs)" + -DBLA_PKGCONFIG_BLAS=ON + -DBLA_VENDOR=FlexiBLAS ) fi diff --git a/sci-libs/rocBLAS/rocBLAS-9999.ebuild b/sci-libs/rocBLAS/rocBLAS-9999.ebuild index 36fcbbb79d32..604dc6976a0d 100644 --- a/sci-libs/rocBLAS/rocBLAS-9999.ebuild +++ b/sci-libs/rocBLAS/rocBLAS-9999.ebuild @@ -19,31 +19,33 @@ if [[ "${PV}" == 9999 ]] ; then EGIT_REPO_URI="https://github.com/ROCm/rocm-libraries.git" EGIT_BRANCH="develop" S="${WORKDIR}/${P}/projects/rocblas" - SLOT="0/7.0" + SLOT="0/9999" + SLOT_NOLIVE="0/7.0" else SRC_URI="https://github.com/ROCm/rocBLAS/archive/rocm-${PV}.tar.gz -> rocm-${P}.tar.gz" S="${WORKDIR}/${PN}-rocm-${PV}" SLOT="0/$(ver_cut 1-2)" + SLOT_NOLIVE=${SLOT} KEYWORDS="~amd64" fi LICENSE="MIT BSD" -IUSE="benchmark hipblaslt roctracer test video_cards_amdgpu" +IUSE="benchmark hipblaslt roctracer test" RESTRICT="!test? ( test )" REQUIRED_USE="${ROCM_REQUIRED_USE}" BDEPEND=" - dev-build/rocm-cmake:${SLOT} + dev-build/rocm-cmake:${SLOT_NOLIVE} " RDEPEND=" - dev-util/hip:${SLOT} - roctracer? ( dev-util/roctracer:${SLOT} ) - hipblaslt? ( sci-libs/hipBLASLt:${SLOT} ) + dev-util/hip:${SLOT_NOLIVE} + roctracer? ( dev-util/roctracer:${SLOT_NOLIVE} ) + hipblaslt? ( sci-libs/hipBLASLt:${SLOT_NOLIVE} ) benchmark? ( - virtual/blas dev-cpp/gtest llvm-runtimes/openmp + sci-libs/flexiblas ) " @@ -51,22 +53,18 @@ DEPEND=" ${RDEPEND} >=dev-cpp/msgpack-cxx-6.0.0 test? ( - virtual/blas dev-cpp/gtest llvm-runtimes/openmp + sci-libs/flexiblas ) - video_cards_amdgpu? ( - dev-util/Tensile:${SLOT} - ) + dev-util/Tensile:${SLOT} " QA_FLAGS_IGNORED="/usr/lib64/rocblas/library/.*" PATCHES=( "${FILESDIR}"/${PN}-5.4.2-add-missing-header.patch - "${FILESDIR}"/${PN}-6.0.2-expand-isa-compatibility.patch - "${FILESDIR}"/${PN}-6.3.0-no-git.patch - "${FILESDIR}"/${PN}-7.0.1-find-cblas.patch + "${FILESDIR}"/${PN}-7.0.2-expand-isa-compatibility.patch ) src_prepare() { @@ -91,7 +89,7 @@ src_configure() { -DCMAKE_SKIP_RPATH=ON -DROCM_SYMLINK_LIBS=OFF -DAMDGPU_TARGETS="$(get_amdgpu_flags)" - -DBUILD_WITH_TENSILE="$(usex video_cards_amdgpu)" + -DBUILD_WITH_TENSILE=ON -DCMAKE_INSTALL_INCLUDEDIR="include/rocblas" -DBUILD_CLIENTS_SAMPLES=OFF -DBUILD_CLIENTS_TESTS="$(usex test ON OFF)" @@ -100,15 +98,16 @@ src_configure() { -DBUILD_WITH_HIPBLASLT="$(usex hipblaslt ON OFF)" -DROCBLAS_ENABLE_MARKER="$(usex roctracer ON OFF)" -DLINK_BLIS=OFF - -DTensile_CPU_THREADS=$(makeopts_jobs) + -DTensile_COMPILER="${CXX}" + -DTensile_ROOT="${EPREFIX}/usr/share/Tensile" + -DTensile_CPU_THREADS="$(makeopts_jobs)" -Wno-dev ) - if usex video_cards_amdgpu; then + if use benchmark || use test; then mycmakeargs+=( - -DTensile_COMPILER="hipcc" - -DTensile_ROOT="${EPREFIX}/usr/share/Tensile" - -DTensile_CPU_THREADS="$(makeopts_jobs)" + -DBLA_PKGCONFIG_BLAS=ON + -DBLA_VENDOR=FlexiBLAS ) fi
