commit:     dc83eeab0c37b9cc7addf4406f35a952a72b8f12
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 28 08:03:18 2024 +0000
Commit:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
CommitDate: Sun Jul 28 08:03:18 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc83eeab

dev-util/hipcc: add 6.1.2

Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>

 dev-util/hipcc/Manifest           |  1 +
 dev-util/hipcc/hipcc-6.1.2.ebuild | 83 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 84 insertions(+)

diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest
index b1cc4eb922ff..86afc23fe843 100644
--- a/dev-util/hipcc/Manifest
+++ b/dev-util/hipcc/Manifest
@@ -1,2 +1,3 @@
 DIST hipcc-5.7.1.tar.gz 36589 BLAKE2B 
a8ae6bd9f0f985d78119223b67b5b35b8d1ee38edb7e43c1e77752d203fe2c8b669b3bcff0cec661054d8cb24f799e7784a49eb0664bdd1dc2bf024ce026c175
 SHA512 
2d232c8dd4a47de6e0cff9d37b4e63a26cb1809ef2ff3a119c15e992cae96ffc2f4d8c1ddffd8732dea3a3d589a93e177f424a6174f982908aa50904e265432a
 DIST llvm-project-rocm-6.1.1.tar.gz 196027084 BLAKE2B 
3ef0b6e3c47c66fd80289373e6ff8aaff44751f9b380addfae73a18dc388093c0535f230b0cc7528724bc43f6992e2ae6decd3d0d3c700893ca95a6166b7b8dc
 SHA512 
e320d4eeaa6f61ed1cdbf653d67fe887d3ce9dc0d6743b4713502e1cb5318ab8afbe1ee71f8cba07635c54ce532df6683de40ade0e5be4a52e50ce25a9b70818
+DIST llvm-project-rocm-6.1.2.tar.gz 195992927 BLAKE2B 
d821f29f2f1f7c1ff414c63a710281f16d2a394b21f3365d01b86710cc09ed27e514b49fb744bf6a36b38815afa56cc26d44f0238f38479a0c2db9bf9989f389
 SHA512 
5f7e5dbe5976141de35e96e603624bd9d5a2c08b0690ba9fcd81d1b32f540f94bb9f4b74539e2838fd60ae1312dbe5e0b429ba80a03871782cdf3bd834940ce0

diff --git a/dev-util/hipcc/hipcc-6.1.2.ebuild 
b/dev-util/hipcc/hipcc-6.1.2.ebuild
new file mode 100644
index 000000000000..87a19b598953
--- /dev/null
+++ b/dev-util/hipcc/hipcc-6.1.2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 18 )
+inherit cmake perl-functions llvm-r1
+
+DESCRIPTION="Radeon Open Compute hipcc"
+HOMEPAGE="https://github.com/ROCm/hipcc";
+
+MY_P=llvm-project-rocm-${PV}
+components=( "amd/hipcc" )
+if [[ ${PV} == *9999 ]] ; then
+       EGIT_REPO_URI="https://github.com/ROCm/llvm-project";
+       inherit git-r3
+       S="${WORKDIR}/${P}/${components[0]}"
+else
+       SRC_URI="https://github.com/ROCm/llvm-project/archive/rocm-${PV}.tar.gz 
-> ${MY_P}.tar.gz"
+       S="${WORKDIR}/${MY_P}/${components[0]}"
+       KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0 MIT"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       $(llvm_gen_dep '
+               sys-libs/compiler-rt:${LLVM_SLOT}=
+               sys-devel/llvm:${LLVM_SLOT}=
+               sys-devel/clang:${LLVM_SLOT}=
+       ')
+"
+RDEPEND="${DEPEND}
+       !<dev-util/hip-5.7"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-5.7.1-hipcc-hip-version.patch"
+)
+
+src_unpack() {
+       if [[ ${PV} == *9999 ]] ; then
+               git-r3_fetch
+               git-r3_checkout '' . '' "${components[@]}"
+       else
+               archive="${MY_P}.tar.gz"
+               ebegin "Unpacking from ${archive}"
+               tar -x -z -o \
+                       -f "${DISTDIR}/${archive}" \
+                       "${components[@]/#/${MY_P}/}" || die
+               eend ${?}
+       fi
+}
+
+src_prepare() {
+       cmake_src_prepare
+
+       sed -e "s:\$ROCM_PATH/llvm/bin:$(get_llvm_prefix)/bin:" \
+               -e "s:/opt/rocm:/usr:" \
+               -i bin/hipvars.pm || die
+
+       sed -e 
"s:\$ENV{'DEVICE_LIB_PATH'}:'${EPREFIX}/usr/lib/amdgcn/bitcode':" \
+               -e "s:\$ENV{'HIP_LIB_PATH'}:'${EPREFIX}/usr/$(get_libdir)':" \
+               -e "/HIP.*FLAGS.*isystem.*HIP_INCLUDE_PATH/d" \
+               -i bin/hipcc.pl || die
+
+       # With Clang>17 -amdgpu-early-inline-all=true causes OOMs in 
dependencies
+       # https://github.com/llvm/llvm-project/issues/86332
+       if [ "$LLVM_SLOT" != "17" ]; then
+               sed -e "s/-mllvm -amdgpu-early-inline-all=true //g" -i 
bin/hipcc.pl || die
+       fi
+}
+
+src_install() {
+       cmake_src_install
+       # rm unwanted copy
+       rm -rf "${ED}/usr/hip" || die
+       # Handle hipvars.pm
+       rm "${ED}/usr/bin/hipvars.pm" || die
+       perl_domodule "${S}"/bin/hipvars.pm
+}

Reply via email to