diff options
Diffstat (limited to 'sci-libs/rocRAND')
-rw-r--r-- | sci-libs/rocRAND/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/rocRAND/metadata.xml | 3 | ||||
-rw-r--r-- | sci-libs/rocRAND/rocRAND-4.3.0.ebuild | 72 |
3 files changed, 76 insertions, 0 deletions
diff --git a/sci-libs/rocRAND/Manifest b/sci-libs/rocRAND/Manifest index 7059aa650348..b6eb6f2bfe43 100644 --- a/sci-libs/rocRAND/Manifest +++ b/sci-libs/rocRAND/Manifest @@ -1 +1,2 @@ DIST rocRAND-4.0.0.tar.gz 3105585 BLAKE2B 0466d88c286290a9cd179fac61209051f7db5323457ccad9c5f0b579439662e1fe2b8951f85101c7c31bd058bc1448e839a19dc9a3a2d4ca42eb4e0b2baf4eb4 SHA512 c02bc32a9cf7660739ecf7ef99262fb14efa2c76afb3476105eedc4264dec987351ebd461c13c9e0aef9e640b42960b2a63295479664b83924cf0d5c34a157e8 +DIST rocRAND-4.3.0.tar.gz 3107367 BLAKE2B 23cfac271c1cd4e4edcfd315aa775d4d62e6a50ffa3b9a3372d4ae427a02def52486e88b3f4f89daaa539f2653cf76c8d44afec70d8d916268bc9f27534bda4c SHA512 3eefeb55014a8ee681e1cee73e0e092bd29a81767e772e712f8f871e94380a772a433e93a59276b0cd5a364fc4e482186771809d67ebdab24b2e3020173f5e18 diff --git a/sci-libs/rocRAND/metadata.xml b/sci-libs/rocRAND/metadata.xml index d9a40bdc1ec3..dfea5b6e3584 100644 --- a/sci-libs/rocRAND/metadata.xml +++ b/sci-libs/rocRAND/metadata.xml @@ -16,4 +16,7 @@ <upstream> <remote-id type="github">ROCmSoftwarePlatform/rocRAND</remote-id> </upstream> + <use> + <flag name="benchmark">Build and install benchmark programs.</flag> + </use> </pkgmetadata> diff --git a/sci-libs/rocRAND/rocRAND-4.3.0.ebuild b/sci-libs/rocRAND/rocRAND-4.3.0.ebuild new file mode 100644 index 000000000000..926f784a0249 --- /dev/null +++ b/sci-libs/rocRAND/rocRAND-4.3.0.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="Generate pseudo-random and quasi-random numbers" +HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocRAND" +SRC_URI="https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-${PV}.tar.gz -> rocRAND-${PV}.tar.gz" + +LICENSE="MIT" +KEYWORDS="~amd64" +SLOT="0/$(ver_cut 1-2)" +IUSE="benchmark test" +RESTRICT="!test? ( test )" + +RDEPEND="dev-util/hip:${SLOT}" +DEPEND="${RDEPEND} +>=dev-util/rocm-cmake-${PV}" +BDEPEND="test? ( dev-cpp/gtest )" + +S="${WORKDIR}/rocRAND-rocm-${PV}" + +src_prepare() { + sed -r -e "s:(hip|roc)rand/lib:\${CMAKE_INSTALL_LIBDIR}:" \ + -e "s:(hip|roc)rand/include:include/\1rand:" \ + -e "/INSTALL_RPATH/d" -i library/CMakeLists.txt || die + + # remove GIT dependency + sed -e "/find_package(Git/,+4d" -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_BENCHMARK=$(usex benchmark ON OFF) + -DCMAKE_SKIP_RPATH=TRUE + ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"} + -D__skip_rocmclang="ON" ## fix cmake-3.21 configuration issue caused by officialy support programming language "HIP" + ) + + cmake_src_configure + # do not rerun cmake and the build process in src_install + sed '/RERUN/,+1d' -i "${BUILD_DIR}"/build.ninja || die +} + +src_test() { + # Grant access to the device + addwrite /dev/kfd + addwrite /dev/dri/ + cmake_src_test +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}"/benchmark + dobin benchmark_rocrand_* + fi +} |