summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/hipcc')
-rw-r--r--dev-util/hipcc/Manifest1
-rw-r--r--dev-util/hipcc/hipcc-6.3.2.ebuild85
2 files changed, 86 insertions, 0 deletions
diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest
index 5ca0ea5e9189..d69f7f40c33f 100644
--- a/dev-util/hipcc/Manifest
+++ b/dev-util/hipcc/Manifest
@@ -2,3 +2,4 @@ DIST hipcc-5.7.1.tar.gz 36589 BLAKE2B a8ae6bd9f0f985d78119223b67b5b35b8d1ee38edb
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
DIST llvm-project-rocm-6.3.0.tar.gz 206677330 BLAKE2B f3e68a8c94599e3a938d3e761af163b9f010a06421680ee70aaaaf8073fb18da9151729c311fc4bd12b281b3afdd15e61cea31c970f0e4d36bb97838fa17ca5f SHA512 674fc3242c6dbb6962f1002dc34ccbd618da6adeb640bac15265d22fdcedf9de16ea3d79899891734ccc1099cb5b5ed9110b1162f4515c4cbc0d847810682b59
+DIST llvm-project-rocm-6.3.2.tar.gz 206671202 BLAKE2B a280e2be22b8eb9fd51814074447baed3637231d4bfbe391047a1fb2409197c8d8ba58cebb3aeaec15aa4daee9371311274b30ede48e0039d7c84e432b15de1a SHA512 314e27577af76268635f3c96ee3516829e4622913c3d0c4c68eccbaee0c9f7f5fc031cbd35827deb4bc29712592c424e296c15ce8c500c897bfb3eb19455899c
diff --git a/dev-util/hipcc/hipcc-6.3.2.ebuild b/dev-util/hipcc/hipcc-6.3.2.ebuild
new file mode 100644
index 000000000000..ef7b18819f1c
--- /dev/null
+++ b/dev-util/hipcc/hipcc-6.3.2.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 19 )
+inherit cmake perl-functions llvm-r1
+
+DESCRIPTION="Radeon Open Compute hipcc"
+HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/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 '
+ llvm-runtimes/compiler-rt:${LLVM_SLOT}=
+ llvm-core/llvm:${LLVM_SLOT}=
+ llvm-core/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:lib/llvm/bin:lib/llvm/${LLVM_SLOT}/bin:" \
+ -e "s:/opt/rocm:/usr:g" \
+ -i bin/hipvars.pm \
+ -i src/hipBin_base.h \
+ -i src/hipBin_amd.h || die
+
+ sed -e "s:\$ENV{'DEVICE_LIB_PATH'}:'${EPREFIX}/usr/lib/amdgcn/bitcode':" \
+ -e "s:\$ENV{'HIP_LIB_PATH'}:'${EPREFIX}/usr/$(get_libdir)':" \
+ -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
+ sed -e "s/-mllvm -amdgpu-early-inline-all=true //g" \
+ -i bin/hipcc.pl \
+ -i src/hipBin_amd.h || die
+}
+
+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
+}