1 |
commit: a3ecb54a88984f4549cffe7d5ba039ef2eebd928 |
2 |
Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Dec 23 16:49:50 2020 +0000 |
4 |
Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Dec 27 01:55:25 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a3ecb54a |
7 |
|
8 |
sys-devel/llvm-roc: add support for Prefix. |
9 |
|
10 |
The logic is modeled after |
11 |
profiles/features/prefix/standalone/profile.bashrc. |
12 |
|
13 |
With the location of hip changed to /usr/lib/hip, let clang of |
14 |
llvm-roc look for EPREFIX/usr/lib/hip instead of vendor /opt/rocm. |
15 |
|
16 |
Suggested-by: Yiyang Wu <xgreenlandforwyy <AT> gmail.com> |
17 |
Package-Manager: Portage-3.0.12, Repoman-3.0.1 |
18 |
Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org> |
19 |
|
20 |
sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild | 21 +++++++++++++++++++++ |
21 |
1 file changed, 21 insertions(+) |
22 |
|
23 |
diff --git a/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild b/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild |
24 |
index 2d3f3939411..64b2abf582b 100644 |
25 |
--- a/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild |
26 |
+++ b/sys-devel/llvm-roc/llvm-roc-4.0.0.ebuild |
27 |
@@ -33,6 +33,27 @@ CMAKE_BUILD_TYPE=RelWithDebInfo |
28 |
src_prepare() { |
29 |
cd "${WORKDIR}/llvm-project-rocm-${PV}" || die |
30 |
eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch" |
31 |
+ |
32 |
+ if [[ -n ${EPREFIX} ]]; then |
33 |
+ pushd "${S}"/../clang >/dev/null || die |
34 |
+ sed -i -e "s@DEFAULT_SYSROOT \"\"@DEFAULT_SYSROOT \"${EPREFIX}\"@" CMakeLists.txt |
35 |
+ eend $? |
36 |
+ |
37 |
+ ebegin "Use ${EPREFIX} as default sysroot" |
38 |
+ cd lib/Driver/ToolChains >/dev/null || die |
39 |
+ ebegin "Use dynamic linker from ${EPREFIX}" |
40 |
+ sed -i -e "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX%/}/\"@" Linux.cpp |
41 |
+ eend $? |
42 |
+ |
43 |
+ ebegin "Remove --sysroot call on ld for native toolchain" |
44 |
+ sed -i -e "$(grep -n -B1 sysroot= Gnu.cpp | sed -ne '{1s/-.*//;1p}'),+1 d" Gnu.cpp |
45 |
+ eend $? |
46 |
+ popd >/dev/null || die |
47 |
+ fi |
48 |
+ |
49 |
+ sed -e 's:/opt/rocm:/usr/lib/hip:' \ |
50 |
+ -i "${S}"/../clang/lib/Driver/ToolChains/AMDGPU.cpp |
51 |
+ |
52 |
eapply_user |
53 |
cmake_src_prepare |
54 |
} |