diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-05-12 16:42:50 +0300 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-05-12 16:42:50 +0300 |
commit | 752d6256e5204b958b0ef7905675a940b5e9172f (patch) | |
tree | 330d16e6362a49cbed8875a777fe641a43376cd3 /sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild | |
parent | 0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff) |
gentoo resync : 12.05.2022
Diffstat (limited to 'sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild')
-rw-r--r-- | sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild b/sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild new file mode 100644 index 000000000000..ff4a85ba172d --- /dev/null +++ b/sci-libs/rocThrust/rocThrust-4.3.0-r2.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="HIP back-end for the parallel algorithm library Thrust" +HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocThrust" +SRC_URI="https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-${PV}.tar.gz -> rocThrust-${PV}.tar.gz" + +LICENSE="Apache-2.0" +KEYWORDS="~amd64" +SLOT="0/$(ver_cut 1-2)" +IUSE="benchmark test" + +RESTRICT="!test? ( test )" + +RDEPEND="dev-util/hip + sci-libs/rocPRIM:${SLOT}" +DEPEND="${RDEPEND} + test? ( dev-cpp/gtest )" +BDEPEND=">=dev-util/cmake-3.22" + +S="${WORKDIR}/rocThrust-rocm-${PV}" + +PATCHES=( "${FILESDIR}/${PN}-4.0-operator_new.patch" + "${FILESDIR}/${P}-deprecate-hcc_detail.patch" ) + +src_prepare() { + sed -e "/PREFIX rocthrust/d" \ + -e "/DESTINATION/s:rocthrust/include/thrust:include/thrust:" \ + -e "/rocm_install_symlink_subdir(rocthrust)/d" \ + -e "/<INSTALL_INTERFACE/s:rocthrust/include/:include/:" -i thrust/CMakeLists.txt || die + + sed -e "s:\${CMAKE_INSTALL_INCLUDEDIR}:&/rocthrust:" \ + -e "s:\${ROCM_INSTALL_LIBDIR}:\${CMAKE_INSTALL_LIBDIR}:" -i cmake/ROCMExportTargetsHeaderOnly.cmake || die + + # disable downloading googletest and googlebenchmark + sed -r -e '/Downloading/{:a;N;/\n *\)$/!ba; d}' -i cmake/Dependencies.cmake || die + + # remove GIT dependency + sed -r -e '/find_package\(Git/{:a;N;/\nendif/!ba; d}' -i cmake/Dependencies.cmake || die + + eapply_user + cmake_src_prepare +} + +src_configure() { + # Grant access to the device + addwrite /dev/kfd + addpredict /dev/dri/ + + # Compiler to use + export CXX=hipcc + + local mycmakeargs=( + -DBUILD_TEST=$(usex test ON OFF) + -DBUILD_BENCHMARKS=$(usex benchmark ON OFF) + ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"} + ) + + cmake_src_configure +} + +src_test() { + # Grant access to the device + addwrite /dev/kfd + addwrite /dev/dri/ + cmake_src_test +} + +src_install() { + cmake_src_install + + use benchmark && dobin "${BUILD_DIR}"/benchmarks/benchmark_thrust_bench +} |