dev-libs/rccl: add 6.1.1

Changes since 5.7.1:
* remove-chrpath patch is not needed now
* bad percent escape fix is not needed now
* addpredict in src_configure is not needed (compilation should not access device anyways)
* removing extra copy of headers is not needed
* new patch for missing ${ROCM_PATH}/.info/version is needed now
* rename ROCmSoftwarePlatform to ROCm in urls
* fix tests directory (in 5.7.1 too)

Signed-off-by: Sv. Lockal <lockalsash@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sv. Lockal
2024-03-17 17:06:54 +00:00
committed by Sam James
parent 22cc875cef
commit 3456ce4e5f
5 changed files with 92 additions and 2 deletions

View File

@@ -1,2 +1,3 @@
DIST rccl-5.1.3.tar.gz 908274 BLAKE2B 46bff7b6e3d60d5884ccd7e19c54b2f47f90a337a8fdc6dca1a3cfee147e3652e1f912642cc134d4a82bf8daabd9f1391edff139d0517ab1078bd3d9650481d7 SHA512 20deb27c7ef3e6b6b73409950ac0d51286b4634f7002ce36a9a02cdd1d5b1f2db51f6decf773af83364c94f58cc96837da25299f5f5494fc15d8559a1b3c7fcc
DIST rccl-5.7.1.tar.gz 1425561 BLAKE2B 852c111ad806d5c99f48b3c65c8cf37315c68b969f9544bfa14c1faf1d5557edcc57cdc21705ced6ded4a0288d42b1076e65fb67b3f89b4fa78cfba9d317b23e SHA512 5913b8ff67fa787714713b7d5b571374898be740d56c77db9f04fe7a3e6ca74023fa930a3494d8a6f984ac9e68ee318343835e110049d08700fe773376618af4
DIST rccl-6.1.1.tar.gz 1679144 BLAKE2B 371d64691dc74f875c49e14df8f3f2d8b9c607376e6c5a889bd2bdb50607e88715d6d75ffed4ba3184a5b9b241cb37b8501e927a5f495632212909e410102490 SHA512 6c6376dd822182bcf28f573c0f3b5c7e52f94f4b670ee7c88519232f51b443d52cd37cbe6c41b5b6e9cb0b93c1124246a989f6e6a2ae74935134135585118002

View File

@@ -0,0 +1,15 @@
There is no /usr/.info/version file in Gentoo
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -120,10 +120,7 @@ execute_process(
message(STATUS "hipcc version: ${hipcc_version_string}")
## Check for ROCm version
-execute_process(
- COMMAND bash "-c" "cat ${ROCM_PATH}/.info/version"
- OUTPUT_VARIABLE rocm_version_string
-)
+set(rocm_version_string "@rocm_version@")
string(REGEX MATCH "([0-9]+)\\.([0-9]+)\\.([0-9]+)" rocm_version_matches ${rocm_version_string})
if (rocm_version_matches)
set(ROCM_MAJOR_VERSION ${CMAKE_MATCH_1})

View File

@@ -13,7 +13,11 @@
<email>gentoo@holzke.net</email>
<name>Wilfried Holzke</name>
</maintainer>
<maintainer type="person">
<email>lockalsash@gmail.com</email>
<name>Sv. Lockal</name>
</maintainer>
<upstream>
<remote-id type="github">ROCm-Developer-Tools/rccl</remote-id>
<remote-id type="github">ROCm/rccl</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -66,7 +66,8 @@ src_configure() {
}
src_test() {
CHECK_AMDGPU
check_amdgpu
cd "${BUILD_DIR}" || die
LD_LIBRARY_PATH="${BUILD_DIR}" edob test/rccl-UnitTests
}

View File

@@ -0,0 +1,69 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ROCM_VERSION=${PV}
inherit cmake edo rocm flag-o-matic
DESCRIPTION="ROCm Communication Collectives Library (RCCL)"
HOMEPAGE="https://github.com/ROCm/rccl"
SRC_URI="https://github.com/ROCm/rccl/archive/rocm-${PV}.tar.gz -> rccl-${PV}.tar.gz"
S="${WORKDIR}/rccl-rocm-${PV}"
LICENSE="BSD"
SLOT="0/$(ver_cut 1-2)"
KEYWORDS="~amd64"
IUSE="test"
RDEPEND="
=dev-util/hip-6*
dev-util/rocm-smi:${SLOT}"
DEPEND="${RDEPEND}
sys-libs/binutils-libs"
BDEPEND="
>=dev-build/cmake-3.22
>=dev-build/rocm-cmake-5.7.1
dev-util/hipify-clang:${SLOT}
test? ( dev-cpp/gtest )"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/${PN}-6.0.2-fix-version-check.patch"
)
src_prepare() {
cmake_src_prepare
# https://reviews.llvm.org/D69582 - clang does not support parallel jobs
sed 's/-parallel-jobs=[0-9][0-9]//g' -i CMakeLists.txt || die
# https://github.com/ROCm/rccl/issues/958 - fix AMDGPU_TARGETS
sed '/set(AMDGPU_TARGETS/s/ FORCE//' -i CMakeLists.txt || die
# complete fix-version-check patch
sed "s/@rocm_version@/${PV}/" -i CMakeLists.txt || die
}
src_configure() {
# https://github.com/llvm/llvm-project/issues/71711 - fix issue of clang
append-ldflags -Wl,-z,noexecstack
local mycmakeargs=(
-DCMAKE_SKIP_RPATH=ON
-DAMDGPU_TARGETS="$(get_amdgpu_flags)"
-DBUILD_TESTS=$(usex test ON OFF)
-DROCM_SYMLINK_LIBS=OFF
-Wno-dev
)
CXX=hipcc cmake_src_configure
}
src_test() {
check_amdgpu
cd "${BUILD_DIR}" || die
LD_LIBRARY_PATH="${BUILD_DIR}" edob test/rccl-UnitTests
}