diff options
author | Yiyang Wu <xgreenlandforwyy@gmail.com> | 2024-05-03 12:14:18 +0800 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-06-26 10:18:59 +0100 |
commit | 46c1f7dd59e10e5f9d318f6c3f82a9946b12819f (patch) | |
tree | 115a79dd44f898b139ca20cae6d7de67237883fc /dev-util | |
parent | dev-util/hipcc: use more precise dependencies (diff) | |
download | gentoo-46c1f7dd59e10e5f9d318f6c3f82a9946b12819f.tar.gz gentoo-46c1f7dd59e10e5f9d318f6c3f82a9946b12819f.tar.bz2 gentoo-46c1f7dd59e10e5f9d318f6c3f82a9946b12819f.zip |
dev-util/hipcc: add 6.1.1
Clang can auto detects the new rocm-device-lib paths, so specifying
DEVICE_LIB_PATH is not needed
Clang-18 can compile GPU kernel ignoring stack-protector-strong, so
-fno-stack-protector is not needed
Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/hipcc/Manifest | 1 | ||||
-rw-r--r-- | dev-util/hipcc/hipcc-6.1.1.ebuild | 73 |
2 files changed, 74 insertions, 0 deletions
diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest index c923482a6346..0ad138441d19 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 hipcc-6.0.0.tar.gz 36648 BLAKE2B d4b67a962e61da5e96423191dad13e90c6aaec890a2b0dccb83ec4b3a9551ed9e2050bdc747fe7c79627d51b62408918157114f954aa579097163af2fc0b06e8 SHA512 e5307c880c96906d216b44b7bb269756e713cf45f5c72fc5dfc31f1e69d8e5e2cc8022bca289dc2b0a1bd72f86ddbdbb29dfda45010d4e4a4fb77096c9c93621 +DIST llvm-project-rocm-6.1.1.tar.gz 196027084 BLAKE2B 3ef0b6e3c47c66fd80289373e6ff8aaff44751f9b380addfae73a18dc388093c0535f230b0cc7528724bc43f6992e2ae6decd3d0d3c700893ca95a6166b7b8dc SHA512 e320d4eeaa6f61ed1cdbf653d67fe887d3ce9dc0d6743b4713502e1cb5318ab8afbe1ee71f8cba07635c54ce532df6683de40ade0e5be4a52e50ce25a9b70818 diff --git a/dev-util/hipcc/hipcc-6.1.1.ebuild b/dev-util/hipcc/hipcc-6.1.1.ebuild new file mode 100644 index 000000000000..1a978f2151be --- /dev/null +++ b/dev-util/hipcc/hipcc-6.1.1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake perl-functions llvm + +LLVM_MAX_SLOT=18 + +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="<sys-devel/llvm-19:= + <sys-devel/clang-19:= + " +RDEPEND="${DEPEND} + >=dev-libs/rocm-device-libs-6.1.1 + !<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 ${LLVM_MAX_SLOT})/bin:" \ + -i bin/hipvars.pm || die + + sed -e "s:\$ENV{'HIP_LIB_PATH'}:'${EPREFIX}/usr/$(get_libdir)':" \ + -e "/HIP.*FLAGS.*isystem.*HIP_INCLUDE_PATH/d" \ + -i bin/hipcc.pl || 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 +} |