From 284e771bd39b4709afddcc3dd666f5f8665c3754 Mon Sep 17 00:00:00 2001 From: Benda Xu Date: Mon, 2 May 2022 15:58:23 +0800 Subject: sci-libs/hipCUB: loosen the dependency on dev-util/hip sci-libs/hipSPARSE: sci-libs/rocPRIM: sci-libs/rocRAND: sci-libs/rocSOLVER: sci-libs/rocSPARSE: same The possibility is pointed out by Cory Bloor: You can probably build the versions of rocBLAS and rocSOLVER tagged at rocm-5.1.1 with the HIP stack from ROCm 4.3.1. Just be sure to rebuild all the {roc,hip}{BLAS,SOLVER} libraries at the new tag, since they all use private (unstable) APIs provided by rocBLAS. The sci-libs/* ROCm packages should be aligned with sci-libs/rocBLAS, while the other dev-*/* ROCm packages should be aligned with dev-util/hip. Credit: Cory Bloor Suggested-by: Yiyang Wu Closes: https://bugs.gentoo.org/838394 Closes: https://bugs.gentoo.org/841982 Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Benda Xu --- sci-libs/hipCUB/hipCUB-4.3.0-r1.ebuild | 74 ++++++++++++++ sci-libs/hipCUB/hipCUB-4.3.0.ebuild | 74 -------------- sci-libs/hipSPARSE/hipSPARSE-4.3.0-r1.ebuild | 105 -------------------- sci-libs/hipSPARSE/hipSPARSE-4.3.0-r2.ebuild | 105 ++++++++++++++++++++ sci-libs/rocPRIM/rocPRIM-4.3.0-r1.ebuild | 77 --------------- sci-libs/rocPRIM/rocPRIM-4.3.0-r2.ebuild | 77 +++++++++++++++ sci-libs/rocRAND/rocRAND-4.3.0-r1.ebuild | 72 ++++++++++++++ sci-libs/rocRAND/rocRAND-4.3.0.ebuild | 72 -------------- sci-libs/rocSOLVER/rocSOLVER-4.3.0-r1.ebuild | 75 +++++++++++++++ sci-libs/rocSOLVER/rocSOLVER-4.3.0.ebuild | 75 --------------- sci-libs/rocSPARSE/rocSPARSE-4.3.0-r2.ebuild | 138 --------------------------- sci-libs/rocSPARSE/rocSPARSE-4.3.0-r3.ebuild | 138 +++++++++++++++++++++++++++ 12 files changed, 541 insertions(+), 541 deletions(-) create mode 100644 sci-libs/hipCUB/hipCUB-4.3.0-r1.ebuild delete mode 100644 sci-libs/hipCUB/hipCUB-4.3.0.ebuild delete mode 100644 sci-libs/hipSPARSE/hipSPARSE-4.3.0-r1.ebuild create mode 100644 sci-libs/hipSPARSE/hipSPARSE-4.3.0-r2.ebuild delete mode 100644 sci-libs/rocPRIM/rocPRIM-4.3.0-r1.ebuild create mode 100644 sci-libs/rocPRIM/rocPRIM-4.3.0-r2.ebuild create mode 100644 sci-libs/rocRAND/rocRAND-4.3.0-r1.ebuild delete mode 100644 sci-libs/rocRAND/rocRAND-4.3.0.ebuild create mode 100644 sci-libs/rocSOLVER/rocSOLVER-4.3.0-r1.ebuild delete mode 100644 sci-libs/rocSOLVER/rocSOLVER-4.3.0.ebuild delete mode 100644 sci-libs/rocSPARSE/rocSPARSE-4.3.0-r2.ebuild create mode 100644 sci-libs/rocSPARSE/rocSPARSE-4.3.0-r3.ebuild diff --git a/sci-libs/hipCUB/hipCUB-4.3.0-r1.ebuild b/sci-libs/hipCUB/hipCUB-4.3.0-r1.ebuild new file mode 100644 index 000000000000..65b61c2352cc --- /dev/null +++ b/sci-libs/hipCUB/hipCUB-4.3.0-r1.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="Wrapper of rocPRIM or CUB for GPU parallel primitives" +HOMEPAGE="https://github.com/ROCmSoftwarePlatform/hipCUB" +SRC_URI="https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-${PV}.tar.gz -> hipCUB-${PV}.tar.gz" + +LICENSE="BSD" +KEYWORDS="~amd64" +SLOT="0/$(ver_cut 1-2)" +IUSE="benchmark test" +RESTRICT="!test? ( test )" + +RDEPEND="dev-util/hip + sci-libs/rocPRIM:${SLOT} + benchmark? ( dev-cpp/benchmark )" +DEPEND="${RDEPEND}" +BDEPEND="test? ( dev-cpp/gtest )" + +S="${WORKDIR}/hipCUB-rocm-${PV}" + +PATCHES="${FILESDIR}/${PN}-4.3.0-add-memory-header.patch" + +src_prepare() { + sed -e "/PREFIX hipcub/d" \ + -e "/DESTINATION/s:hipcub/include/:include/:" \ + -e "/rocm_install_symlink_subdir(hipcub)/d" \ + -e "/:\$:" -i library/src/CMakeLists.txt + sed -e "s:rocm_install_symlink_subdir( rocsolver ):#rocm_install_symlink_subdir( rocsolver ):" -i library/src/CMakeLists.txt + + cmake_src_prepare +} + +src_configure() { + # Grant access to the device + addwrite /dev/kfd + addpredict /dev/dri/ + + local mycmakeargs=( + -Wno-dev + -DCMAKE_SKIP_RPATH=ON + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/" + -DCMAKE_INSTALL_INCLUDEDIR="${EPREFIX}/usr/include/rocsolver" + -DBUILD_CLIENTS_SAMPLES=NO + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) + ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"} + ) + + CXX="hipcc" cmake_src_configure +} + +src_test() { + addwrite /dev/kfd + addwrite /dev/dri/ + cd "${BUILD_DIR}/clients/staging" || die + LD_LIBRARY_PATH="${BUILD_DIR}/library/src" ./rocsolver-test || die +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}" || die + dobin clients/staging/rocsolver-bench + fi +} diff --git a/sci-libs/rocSOLVER/rocSOLVER-4.3.0.ebuild b/sci-libs/rocSOLVER/rocSOLVER-4.3.0.ebuild deleted file mode 100644 index c017b7ad31a0..000000000000 --- a/sci-libs/rocSOLVER/rocSOLVER-4.3.0.ebuild +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit cmake - -DESCRIPTION="Implementation of a subset of LAPACK functionality on the ROCm platform" -HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocSOLVER" -SRC_URI="https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-${PV}.tar.gz -> rocSOLVER-${PV}.tar.gz" - -LICENSE="BSD" -KEYWORDS="~amd64" -SLOT="0/$(ver_cut 1-2)" - -IUSE="test benchmark" - -RDEPEND="dev-util/hip:${SLOT} - sci-libs/rocBLAS:${SLOT} - benchmark? ( virtual/blas )" -DEPEND="${RDEPEND}" -BDEPEND="test? ( dev-cpp/gtest - virtual/blas )" - -PATCHES=( - "${FILESDIR}/rocSOLVER-4.2.0-add-stdint-header.patch" - "${FILESDIR}/rocSOLVER-4.3.0-link-blas.patch" -) - -RESTRICT="!test? ( test )" - -S=${WORKDIR}/${PN}-rocm-${PV} - -src_prepare() { - sed -e "s: PREFIX rocsolver:# PREFIX rocsolver:" -i library/src/CMakeLists.txt - sed -e "s:\$:\$:" -i library/src/CMakeLists.txt - sed -e "s:rocm_install_symlink_subdir( rocsolver ):#rocm_install_symlink_subdir( rocsolver ):" -i library/src/CMakeLists.txt - - cmake_src_prepare -} - -src_configure() { - # Grant access to the device - addwrite /dev/kfd - addpredict /dev/dri/ - - local mycmakeargs=( - -Wno-dev - -DCMAKE_SKIP_RPATH=ON - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/" - -DCMAKE_INSTALL_INCLUDEDIR="${EPREFIX}/usr/include/rocsolver" - -DBUILD_CLIENTS_SAMPLES=NO - -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) - -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) - ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"} - ) - - CXX="hipcc" cmake_src_configure -} - -src_test() { - addwrite /dev/kfd - addwrite /dev/dri/ - cd "${BUILD_DIR}/clients/staging" || die - LD_LIBRARY_PATH="${BUILD_DIR}/library/src" ./rocsolver-test || die -} - -src_install() { - cmake_src_install - - if use benchmark; then - cd "${BUILD_DIR}" || die - dobin clients/staging/rocsolver-bench - fi -} diff --git a/sci-libs/rocSPARSE/rocSPARSE-4.3.0-r2.ebuild b/sci-libs/rocSPARSE/rocSPARSE-4.3.0-r2.ebuild deleted file mode 100644 index 208d02f6cc3d..000000000000 --- a/sci-libs/rocSPARSE/rocSPARSE-4.3.0-r2.ebuild +++ /dev/null @@ -1,138 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit cmake python-any-r1 toolchain-funcs - -DESCRIPTION="Basic Linear Algebra Subroutines for sparse computation" -HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocSPARSE" - -SRC_URI="https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-${PV}.tar.gz -> rocSPARSE-${PV}.tar.gz -test? ( -https://sparse.tamu.edu/MM/SNAP/amazon0312.tar.gz -> ${PN}_amazon0312.tar.gz -https://sparse.tamu.edu/MM/Muite/Chebyshev4.tar.gz -> ${PN}_Chebyshev4.tar.gz -https://sparse.tamu.edu/MM/FEMLAB/sme3Dc.tar.gz -> ${PN}_sme3Dc.tar.gz -https://sparse.tamu.edu/MM/Williams/webbase-1M.tar.gz -> ${PN}_webbase-1M.tar.gz -https://sparse.tamu.edu/MM/Bova/rma10.tar.gz -> ${PN}_rma10.tar.gz -https://sparse.tamu.edu/MM/JGD_BIBD/bibd_22_8.tar.gz -> ${PN}_bibd_22_8.tar.gz -https://sparse.tamu.edu/MM/Williams/mac_econ_fwd500.tar.gz -> ${PN}_mac_econ_fwd500.tar.gz -https://sparse.tamu.edu/MM/Williams/mc2depi.tar.gz -> ${PN}_mc2depi.tar.gz -https://sparse.tamu.edu/MM/Hamm/scircuit.tar.gz -> ${PN}_scircuit.tar.gz -https://sparse.tamu.edu/MM/Sandia/ASIC_320k.tar.gz -> ${PN}_ASIC_320k.tar.gz -https://sparse.tamu.edu/MM/GHS_psdef/bmwcra_1.tar.gz -> ${PN}_bmwcra_1.tar.gz -https://sparse.tamu.edu/MM/HB/nos1.tar.gz -> ${PN}_nos1.tar.gz -https://sparse.tamu.edu/MM/HB/nos2.tar.gz -> ${PN}_nos2.tar.gz -https://sparse.tamu.edu/MM/HB/nos3.tar.gz -> ${PN}_nos3.tar.gz -https://sparse.tamu.edu/MM/HB/nos4.tar.gz -> ${PN}_nos4.tar.gz -https://sparse.tamu.edu/MM/HB/nos5.tar.gz -> ${PN}_nos5.tar.gz -https://sparse.tamu.edu/MM/HB/nos6.tar.gz -> ${PN}_nos6.tar.gz -https://sparse.tamu.edu/MM/HB/nos7.tar.gz -> ${PN}_nos7.tar.gz -https://sparse.tamu.edu/MM/DNVS/shipsec1.tar.gz -> ${PN}_shipsec1.tar.gz -https://sparse.tamu.edu/MM/Cote/mplate.tar.gz -> ${PN}_mplate.tar.gz -https://sparse.tamu.edu/MM/Bai/qc2534.tar.gz -> ${PN}_qc2534.tar.gz -https://sparse.tamu.edu/MM/Chevron/Chevron2.tar.gz -> ${PN}_Chevron2.tar.gz -https://sparse.tamu.edu/MM/Chevron/Chevron3.tar.gz -> ${PN}_Chevron3.tar.gz -https://sparse.tamu.edu/MM/Chevron/Chevron4.tar.gz -> ${PN}_Chevron4.tar.gz -)" - -LICENSE="MIT" -KEYWORDS="~amd64" -IUSE="benchmark test" -SLOT="0/$(ver_cut 1-2)" - -RDEPEND="dev-util/hip:${SLOT} - sci-libs/rocPRIM:${SLOT}" -DEPEND="${RDEPEND}" -BDEPEND="test? ( - dev-cpp/gtest - >=dev-util/cmake-3.22 - $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') -) -benchmark? ( app-admin/chrpath ) -" - -RESTRICT="!test? ( test )" - -S="${WORKDIR}/rocSPARSE-rocm-${PV}" - -PATCHES=( "${FILESDIR}/${PN}-4.3.0-remove-matrices-unpacking.patch" ) - -python_check_deps() { - if use test; then - has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" - fi -} - -src_prepare() { - eapply_user - sed -e "s/PREFIX rocsparse//" \ - -e "/