| 1 |
|
# Copyright 1999-2025 Gentoo Authors
|
|
1 |
# Copyright 1999-2026 Gentoo Authors
|
| 2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
LLVM_COMPAT=( 20 )
|
|
6 |
LLVM_COMPAT=( 22 )
|
| 7 |
7 |
|
| 8 |
|
inherit cmake llvm-r1
|
|
8 |
inherit cmake llvm-r2
|
| 9 |
9 |
|
| 10 |
10 |
MY_P=llvm-project-rocm-${PV}
|
| 11 |
11 |
components=( "amd/comgr" )
|
| ... | ... | |
| 23 |
23 |
RESTRICT="!test? ( test )"
|
| 24 |
24 |
|
| 25 |
25 |
PATCHES=(
|
| 26 |
|
"${FILESDIR}/0001-Find-CLANG_RESOURCE_DIR-using-clang-print-resource-d.patch"
|
| 27 |
26 |
"${FILESDIR}/${PN}-6.4.1-extend-isa-compatibility-check.patch"
|
| 28 |
|
"${FILESDIR}/${PN}-6.4.1-fix-comgr-default-flags.patch"
|
| 29 |
27 |
"${FILESDIR}/${PN}-6.1.0-dont-add-nogpulib.patch"
|
| 30 |
|
"${FILESDIR}/${PN}-7.0.1-llvm-20-compat.patch"
|
|
28 |
"${FILESDIR}/${PN}-7.2.0-llvm-22-compat.patch"
|
| 31 |
29 |
)
|
| 32 |
30 |
|
| 33 |
31 |
RDEPEND="
|
| ... | ... | |
| 36 |
34 |
$(llvm_gen_dep "
|
| 37 |
35 |
llvm-core/clang:\${LLVM_SLOT}=
|
| 38 |
36 |
llvm-core/lld:\${LLVM_SLOT}=
|
|
37 |
llvm-core/llvm:\${LLVM_SLOT}=
|
| 39 |
38 |
")
|
| 40 |
39 |
dev-util/hipcc:${SLOT}
|
| 41 |
40 |
"
|
| ... | ... | |
| 61 |
60 |
}
|
| 62 |
61 |
|
| 63 |
62 |
src_prepare() {
|
| 64 |
|
sed '/sys::path::append(HIPPath/s,"hip","",' -i src/comgr-env.cpp || die
|
| 65 |
|
sed "/return LLVMPath;/s,LLVMPath,llvm::SmallString<128>(\"$(get_llvm_prefix)\")," -i src/comgr-env.cpp || die
|
|
63 |
sed -e "s:\${CLANG_CMAKE_DIR}/../../../\*:${EPREFIX}/usr/lib/clang/${LLVM_SLOT}/include:" \
|
|
64 |
-i cmake/opencl_header.cmake || die
|
| 66 |
65 |
|
| 67 |
|
cmake_src_prepare
|
| 68 |
|
|
| 69 |
|
# Replace @CLANG_RESOURCE_DIR@ in patches
|
| 70 |
|
local CLANG_RESOURCE_DIR="$("$(get_llvm_prefix)"/bin/clang -print-resource-dir)"
|
| 71 |
|
sed -e "s,@CLANG_RESOURCE_DIR@,\"${CLANG_RESOURCE_DIR}\"," \
|
| 72 |
|
-e "s/\"lib\"/\"$(get_libdir)\"/" \
|
|
66 |
# Backports for llvm-22 from amd-staging:
|
|
67 |
# https://github.com/ROCm/llvm-project/commit/ebcaa3d9226921c8761a5291526291e54611e4a4
|
|
68 |
# https://github.com/ROCm/llvm-project/commit/ccb14ba83fd6bdc01423f71944b4676f740b97cc
|
|
69 |
sed -e "s:Driver/Options.h:Options/Options.h:" \
|
|
70 |
-e "s/clang::driver::options/clang::options/" \
|
|
71 |
-e "s/Driver::GetResourcesPath/GetResourcesPath/" \
|
| 73 |
72 |
-i src/comgr-compiler.cpp || die
|
|
73 |
|
|
74 |
cmake_src_prepare
|
| 74 |
75 |
}
|
| 75 |
76 |
|
| 76 |
77 |
src_configure() {
|
| ... | ... | |
| 87 |
88 |
}
|
| 88 |
89 |
|
| 89 |
90 |
src_test() {
|
| 90 |
|
local CMAKE_SKIP_TESTS=(
|
| 91 |
|
comgr_nested_kernel_test # See https://github.com/ROCm/llvm-project/issues/35
|
| 92 |
|
)
|
| 93 |
|
cmake_src_tesRt
|
|
91 |
cmake_src_test
|
| 94 |
92 |
}
|