mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-01 23:28:08 -07:00
dev-libs/rocm-device-libs: drop 5.7.1, 6.1.1, 6.1.2, 6.3.2, 6.4.1
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -1,7 +1,2 @@
|
||||
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.2.tar.gz 206671202 BLAKE2B a280e2be22b8eb9fd51814074447baed3637231d4bfbe391047a1fb2409197c8d8ba58cebb3aeaec15aa4daee9371311274b30ede48e0039d7c84e432b15de1a SHA512 314e27577af76268635f3c96ee3516829e4622913c3d0c4c68eccbaee0c9f7f5fc031cbd35827deb4bc29712592c424e296c15ce8c500c897bfb3eb19455899c
|
||||
DIST llvm-project-rocm-6.3.3.tar.gz 206663912 BLAKE2B 939527dbbcd0c4b4785e5cdbd7144149f169120506c2b5b00e84e8208e3877109e24cf58501a1317d1f9dcce0614cf47a0290cb2e0e10aa7b164bcb064c2ffbc SHA512 380d6ca72dd215b1996b14fe9b54f4981bd1d275aae22ed89f4f3efc46ec2988054cc98dcc45e1c678812c2bd3488ed6cf375ca193af4ad272a6cff7f2388872
|
||||
DIST llvm-project-rocm-6.4.1.tar.gz 218905831 BLAKE2B 188ec436e5ab6e50fee66ebc3a30c5e5703ca8770f309cca580c919567090bbdb23a5de51d36dabf9cb54f1142ab00d9756bec379670029c57d0f7a49fab2f13 SHA512 e0fd29953cfe7ae4b3f60aa25c1ec0f6071715afc8e275d62901dbd575b96afc673d61996300d3f7672005274fe84c7f934070614ac3deafcfa103d9514b3e41
|
||||
DIST llvm-project-rocm-6.4.3.tar.gz 218920681 BLAKE2B 85c29c1f66f9d23fa7fb6d98baf60cb08a8507a7b3a4c0a5054d9d4d3bc1fb7de56ddae583e37a36c7a3f17f9e57bd49777deca7560ca8b4882c1eea1db5b421 SHA512 b6b4149c6426793f4497dfd1200079b0caef4d5a6f49c1f3a301d70f5f7b322b850085ff2f89d55df1dfab6d6a97948fe4084d4ec14654ee97cdab26e71a45c0
|
||||
DIST rocm-device-libs-5.7.1.tar.gz 248357 BLAKE2B 829704382e9420ad79724a250ccfd65278eb697498805297d1a52b8ea35dbff46e11514b681243d61bfac05b8a9734f0cf22d721603e48fe2f9864368222b0bc SHA512 8755d0584fa3b8239f5642b4fb8f5e8dea20bbaca2ff8883894d3583913e9a1fd1552492b36e8ceff092f795783b734e68b002ee0c93711dccdf8e72c528c27c
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
`--rocm-device-lib-path` is needed to execute the tests because they are not
|
||||
installed to system yet
|
||||
===================================================================
|
||||
--- ROCm-Device-Libs-rocm-6.0.0.orig/test/compile/CMakeLists.txt
|
||||
+++ ROCm-Device-Libs-rocm-6.0.0/test/compile/CMakeLists.txt
|
||||
@@ -30,6 +30,7 @@ function(add_compile_test test_name func
|
||||
-DFILECHECK_BIN=${FILECHECK_BIN}
|
||||
-DOUTPUT_FILE=output.${name}.${test_cpu}.s
|
||||
-DINPUT_FILE=${CMAKE_CURRENT_SOURCE_DIR}/${func_name}.cl
|
||||
+ -DAMDGCN_BITCODES=${PROJECT_BINARY_DIR}/lib/amdgcn/bitcode
|
||||
-DTEST_CPU=${test_cpu}
|
||||
-DEXTRA_CHECK_PREFIX=${extra_check_prefixes}
|
||||
-P ${script})
|
||||
Index: ROCm-Device-Libs-rocm-6.0.0/test/compile/RunConstantFoldTest.cmake
|
||||
===================================================================
|
||||
--- ROCm-Device-Libs-rocm-6.0.0.orig/test/compile/RunConstantFoldTest.cmake
|
||||
+++ ROCm-Device-Libs-rocm-6.0.0/test/compile/RunConstantFoldTest.cmake
|
||||
@@ -16,6 +16,7 @@ execute_process(COMMAND
|
||||
-target amdgcn-amd-amdhsa -mcpu=${TEST_CPU}
|
||||
-Xclang -finclude-default-header
|
||||
--rocm-path=${BINARY_DIR}
|
||||
+ --rocm-device-lib-path=${AMDGCN_BITCODES}
|
||||
-mllvm -amdgpu-simplify-libcall=0
|
||||
-o ${OUTPUT_FILE} ${INPUT_FILE}
|
||||
RESULT_VARIABLE CLANG_RESULT
|
||||
Index: ROCm-Device-Libs-rocm-6.0.0/test/compile/RunCompileTest.cmake
|
||||
===================================================================
|
||||
--- ROCm-Device-Libs-rocm-6.0.0.orig/test/compile/RunCompileTest.cmake
|
||||
+++ ROCm-Device-Libs-rocm-6.0.0/test/compile/RunCompileTest.cmake
|
||||
@@ -16,6 +16,7 @@ execute_process(COMMAND
|
||||
-target amdgcn-amd-amdhsa -mcpu=${TEST_CPU}
|
||||
-Xclang -finclude-default-header
|
||||
--rocm-path=${BINARY_DIR}
|
||||
+ --rocm-device-lib-path=${AMDGCN_BITCODES}
|
||||
-mllvm -amdgpu-simplify-libcall=0
|
||||
-o ${OUTPUT_FILE} ${INPUT_FILE}
|
||||
RESULT_VARIABLE CLANG_RESULT
|
||||
@@ -1,13 +0,0 @@
|
||||
https://bugs.gentoo.org/851702#c4
|
||||
Adapt to libLLVM.so instead of the seperated libs
|
||||
===================================================================
|
||||
--- ROCm-Device-Libs-rocm-5.0.2.orig/utils/prepare-builtins/CMakeLists.txt
|
||||
+++ ROCm-Device-Libs-rocm-5.0.2/utils/prepare-builtins/CMakeLists.txt
|
||||
@@ -26,5 +26,5 @@ set_target_properties(prepare-builtins P
|
||||
CXX_STANDARD_REQUIRED Yes
|
||||
CXX_EXTENSIONS No)
|
||||
llvm_update_compile_flags(prepare-builtins)
|
||||
-llvm_map_components_to_libnames(llvm_libs support core bitreader bitwriter)
|
||||
-target_link_libraries(prepare-builtins ${llvm_libs})
|
||||
+llvm_map_components_to_libnames(llvm_libs support)
|
||||
+target_link_libraries(prepare-builtins LLVM)
|
||||
@@ -1,22 +0,0 @@
|
||||
Fix compatilibity with Clang-18
|
||||
https://github.com/ROCm/ROCm-Device-Libs/issues/96
|
||||
|
||||
Backports https://github.com/ROCm/llvm-project/commit/688c78d85caf499957db175811f8b00c7c818f83
|
||||
--- a/ockl/src/cg.cl
|
||||
+++ b/ockl/src/cg.cl
|
||||
@@ -84,13 +84,13 @@ multi_grid_sync(__global struct mg_sync *s, uint members)
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
+__attribute__((target("gws"))) void
|
||||
__ockl_gws_init(uint nwm1, uint rid)
|
||||
{
|
||||
__builtin_amdgcn_ds_gws_init(nwm1, rid);
|
||||
}
|
||||
|
||||
-void
|
||||
+__attribute__((target("gws"))) void
|
||||
__ockl_gws_barrier(uint nwm1, uint rid)
|
||||
{
|
||||
__builtin_amdgcn_ds_gws_barrier(nwm1, rid);
|
||||
@@ -1,64 +0,0 @@
|
||||
Modified from https://github.com/ROCm/llvm-project/commit/7c2188cbc193f2b4dd5394f17404b44340001f30.patch
|
||||
From 7c2188cbc193f2b4dd5394f17404b44340001f30 Mon Sep 17 00:00:00 2001
|
||||
From: Matt Arsenault <Matthew.Arsenault@amd.com>
|
||||
Date: Thu, 4 Jan 2024 19:34:47 +0700
|
||||
Subject: [PATCH] device-libs: Fix input file path test failures
|
||||
|
||||
The test file input paths broke with the move to the mono-repo. Some of
|
||||
the constant folding values are host dependent, so update the values to
|
||||
what works for me now. Not really sure what else I can do about these.
|
||||
|
||||
Change-Id: Ic764f637bb9532fcede9bfb9ce3886a2b7d467d8
|
||||
---
|
||||
amd/device-libs/test/compile/frexp.cl | 10 ++++++----
|
||||
amd/device-libs/test/compile/lgamma_r.cl | 2 +-
|
||||
3 files changed, 8 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/test/compile/frexp.cl b/test/compile/frexp.cl
|
||||
index 780c541500021b..b3181ce87db711 100644
|
||||
--- a/test/compile/frexp.cl
|
||||
+++ b/test/compile/frexp.cl
|
||||
@@ -5,11 +5,11 @@
|
||||
// later.
|
||||
|
||||
// GCN-LABEL: {{^}}test_frexp_f32:
|
||||
-// GFX600-DAG: s_movk_i32 [[CLASS_MASK:s[0-9]+]], 0x1f8
|
||||
+// GFX600-DAG: s_mov_b32 [[INF:s[0-9]+]], 0x7f80000
|
||||
// GFX600-DAG: v_frexp_mant_f32{{(_e32)?}} [[MANT:v[0-9]+]], [[SRC:v[0-9]+]]
|
||||
// GFX600-DAG: v_frexp_exp_i32_f32{{(_e32)?}} [[EXP:v[0-9]+]], [[SRC:v[0-9]+]]
|
||||
|
||||
-// GFX600-DAG: v_cmp_class_f32{{(_e64)?}} [[CMP:(vcc|s{{\[[0-9]+:[0-9]+\]}})]], [[SRC]], [[CLASS_MASK]]
|
||||
+// GFX600-DAG: v_cmp_lt_f32{{(_e64)?}} [[CMP:(vcc|s{{\[[0-9]+:[0-9]+\]}})]], |[[SRC]]|, [[INF]]
|
||||
|
||||
// GFX600-DAG: v_cndmask_b32{{(_e32)?|(e64)?}} v{{[0-9]+}}, [[SRC]], [[MANT]], [[CMP]]
|
||||
// GFX600-DAG: v_cndmask_b32{{(_e32)?|(e64)?}} v{{[0-9]+}}, 0, [[EXP]], [[CMP]]
|
||||
@@ -30,12 +30,14 @@ kernel void test_frexp_f32(global float* restrict out0,
|
||||
}
|
||||
|
||||
// GCN-LABEL: {{^}}test_frexp_f64:
|
||||
+// GFX600: s_mov_b32 s{{[0-9]+}}, 0{{$}}
|
||||
|
||||
-// GFX600-DAG: s_movk_i32 [[CLASS_MASK:s[0-9]+]], 0x1f8
|
||||
+// GFX600-DAG: s_mov_b32 s[[INF_LO:[0-9]+]], 0{{$}}
|
||||
+// GFX600-DAG: s_mov_b32 s[[INF_HI:[0-9]+]], 0x7ff00000{{$}}
|
||||
// GFX600-DAG: v_frexp_mant_f64{{(_e32)?}} v{{\[}}[[MANT_LO:[0-9]+]]:[[MANT_HI:[0-9]+]]{{\]}}, [[SRC:v\[[0-9]+:[0-9]+\]]]
|
||||
// GFX600-DAG: v_frexp_exp_i32_f64{{(_e32)?}} [[EXP:v[0-9]+]], [[SRC:v\[[0-9]+:[0-9]+\]]]
|
||||
|
||||
-// GFX600-DAG: v_cmp_class_f64{{(_e64)?}} [[CMP:(vcc|s{{\[[0-9]+:[0-9]+\]}})]], [[SRC]], [[CLASS_MASK]]
|
||||
+// GFX600-DAG: v_cmp_lt_f64{{(_e64)?}} [[CMP:(vcc|s{{\[[0-9]+:[0-9]+\]}})]], |[[SRC]]|, s{{\[}}[[INF_LO]]:[[INF_HI]]{{\]}}
|
||||
|
||||
// GFX600-DAG: v_cndmask_b32{{(_e32)?|(e64)?}} v{{[0-9]+}}, v{{[0-9]+}}, v[[MANT_LO]], [[CMP]]
|
||||
// GFX600-DAG: v_cndmask_b32{{(_e32)?|(e64)?}} v{{[0-9]+}}, v{{[0-9]+}}, v[[MANT_HI]], [[CMP]]
|
||||
diff --git a/test/compile/lgamma_r.cl b/test/compile/lgamma_r.cl
|
||||
index 1e1984226cd55c..56d1ba15f761f2 100644
|
||||
--- a/test/compile/lgamma_r.cl
|
||||
+++ b/test/compile/lgamma_r.cl
|
||||
@@ -66,7 +66,7 @@ kernel void constant_fold_lgamma_r_f32(volatile global float* out,
|
||||
out[0] = test_lgamma_r(0x1.0p-127f, sign_out);
|
||||
|
||||
// CONSTANTFOLD-NEXT: store volatile i32 1,
|
||||
- // CONSTANTFOLD-NEXT: store volatile float 0x419DE28040000000,
|
||||
+ // CONSTANTFOLD-NEXT: store volatile float 0x419DE28060000000,
|
||||
out[0] = test_lgamma_r(nextafter(0x1.0p+23f, __builtin_inff()), sign_out);
|
||||
|
||||
// CONSTANTFOLD-NEXT: store volatile i32 1,
|
||||
@@ -1,44 +0,0 @@
|
||||
Modified from https://github.com/ROCm/llvm-project/commit/794ebeffcafbf6f4d86cb1bfd7a5a0d1d30f1fc7
|
||||
From 794ebeffcafbf6f4d86cb1bfd7a5a0d1d30f1fc7 Mon Sep 17 00:00:00 2001
|
||||
From: Matt Arsenault <Matthew.Arsenault@amd.com>
|
||||
Date: Thu, 4 Jan 2024 20:40:30 +0700
|
||||
Subject: [PATCH] device-libs: Fix native_rsqrt test failures for f16-as-f32
|
||||
case
|
||||
|
||||
At some point the code quality regressed for these.
|
||||
|
||||
Change-Id: Ib5c4c1d093a6056dd6213ed6eaf157ad806101fb
|
||||
---
|
||||
amd/device-libs/test/compile/native_rsqrt.cl | 13 +++++++++----
|
||||
1 file changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/test/compile/native_rsqrt.cl b/test/compile/native_rsqrt.cl
|
||||
index 94ef375e4d522f..291cc6f32c3351 100644
|
||||
--- a/test/compile/native_rsqrt.cl
|
||||
+++ b/test/compile/native_rsqrt.cl
|
||||
@@ -6,16 +6,21 @@
|
||||
|
||||
half __ocml_native_rsqrt_f16(half);
|
||||
|
||||
-// GCN: {{^}}test_native_rsqrt_f16:
|
||||
-// GFX600: v_rsq_f32
|
||||
-// GFX700: v_rsq_f32
|
||||
+// FIXME: Promoted case using full expansion
|
||||
+// GCN-LABEL: {{^}}test_native_rsqrt_f16:
|
||||
+// GFX600: v_sqrt_f32
|
||||
+// GFX600: v_rcp_f32
|
||||
+
|
||||
+// GFX700: v_sqrt_f32
|
||||
+// GFX700: v_rcp_f32
|
||||
+
|
||||
// GFX803: v_rsq_f16
|
||||
kernel void test_native_rsqrt_f16(global half* restrict out, global half* restrict in) {
|
||||
int id = get_local_id(0);
|
||||
out[id] = __ocml_native_rsqrt_f16(in[id]);
|
||||
}
|
||||
|
||||
-// GCN: {{^}}test_native_rsqrt_f32:
|
||||
+// GCN-LABEL: {{^}}test_native_rsqrt_f32:
|
||||
// GCN: v_rsq_f32
|
||||
kernel void test_native_rsqrt_f32(global float* restrict out, global float* restrict in) {
|
||||
int id = get_local_id(0);
|
||||
@@ -1,56 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake llvm
|
||||
|
||||
LLVM_MAX_SLOT=17
|
||||
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCm-Device-Libs/"
|
||||
inherit git-r3
|
||||
S="${WORKDIR}/${P}/src"
|
||||
else
|
||||
SRC_URI="https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/ROCm-Device-Libs-rocm-${PV}"
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Radeon Open Compute Device Libraries"
|
||||
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm-Device-Libs"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="llvm-core/clang:${LLVM_MAX_SLOT}"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
CMAKE_BUILD_TYPE=Release
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-5.5.1-fix-llvm-link.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/OCL.cmake" || die
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/Packages.cmake" || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
# -DLLVM_DIR="${EPREFIX}/usr/lib/llvm/roc/lib/cmake/llvm"
|
||||
-DLLVM_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
local CLANG_EXE="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/clang"
|
||||
local bitcodedir="$("${CLANG_EXE}" -print-resource-dir)/$(get_libdir)/amdgcn/bitcode"
|
||||
dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}"
|
||||
}
|
||||
@@ -1,88 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LLVM_COMPAT=( 18 )
|
||||
inherit cmake flag-o-matic llvm-r1
|
||||
|
||||
MY_P=llvm-project-rocm-${PV}
|
||||
components=( "amd/device-libs" )
|
||||
|
||||
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
|
||||
|
||||
DESCRIPTION="Radeon Open Compute Device Libraries"
|
||||
HOMEPAGE="https://github.com/ROCm/ROCm-Device-Libs"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
dev-build/rocm-cmake
|
||||
$(llvm_gen_dep '
|
||||
llvm-core/clang:${LLVM_SLOT}
|
||||
llvm-core/lld:${LLVM_SLOT}
|
||||
')
|
||||
"
|
||||
|
||||
CMAKE_BUILD_TYPE=Release
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-5.5.0-test-bitcode-dir.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-llvm-link.patch"
|
||||
"${FILESDIR}/${PN}-6.0.0-add-gws-attribute.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-test-failures.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-test-failures2.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() {
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/OCL.cmake" || die
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/Packages.cmake" || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Do not trust CMake with autoselecting Clang, as it autoselects the latest one
|
||||
# producing too modern LLVM bitcode and causing linker errors in other packages.
|
||||
# Clean up unsupported flags for the switched compiler, see #936099
|
||||
local -x CC="$(get_llvm_prefix)/bin/clang"
|
||||
local -x CXX="$(get_llvm_prefix)/bin/clang++"
|
||||
strip-unsupported-flags
|
||||
|
||||
local mycmakeargs=(
|
||||
-DLLVM_DIR="$(get_llvm_prefix)"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
local CLANG_EXE="$(get_llvm_prefix)/bin/clang"
|
||||
# install symlink, so that clang won't ask for "--rocm-device-lib-path" flag anymore
|
||||
local bitcodedir="$("${CLANG_EXE}" -print-resource-dir)/$(get_libdir)/amdgcn/bitcode"
|
||||
dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}"
|
||||
}
|
||||
@@ -1,89 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LLVM_COMPAT=( 18 )
|
||||
inherit cmake flag-o-matic llvm-r1
|
||||
|
||||
MY_P=llvm-project-rocm-${PV}
|
||||
components=( "amd/device-libs" )
|
||||
|
||||
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
|
||||
|
||||
DESCRIPTION="Radeon Open Compute Device Libraries"
|
||||
HOMEPAGE="https://github.com/ROCm/ROCm-Device-Libs"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
dev-build/rocm-cmake
|
||||
$(llvm_gen_dep '
|
||||
llvm-core/clang:${LLVM_SLOT}
|
||||
llvm-core/lld:${LLVM_SLOT}
|
||||
')
|
||||
"
|
||||
|
||||
CMAKE_BUILD_TYPE=Release
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-5.5.0-test-bitcode-dir.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-llvm-link.patch"
|
||||
"${FILESDIR}/${PN}-6.0.0-add-gws-attribute.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-test-failures.patch"
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-test-failures2.patch"
|
||||
"${FILESDIR}/${PN}-6.1.2-fix-build.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() {
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/OCL.cmake" || die
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/Packages.cmake" || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Do not trust CMake with autoselecting Clang, as it autoselects the latest one
|
||||
# producing too modern LLVM bitcode and causing linker errors in other packages.
|
||||
# Clean up unsupported flags for the switched compiler, see #936099
|
||||
local -x CC="$(get_llvm_prefix)/bin/clang"
|
||||
local -x CXX="$(get_llvm_prefix)/bin/clang++"
|
||||
strip-unsupported-flags
|
||||
|
||||
local mycmakeargs=(
|
||||
-DLLVM_DIR="$(get_llvm_prefix)"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
local CLANG_EXE="$(get_llvm_prefix)/bin/clang"
|
||||
# install symlink, so that clang won't ask for "--rocm-device-lib-path" flag anymore
|
||||
local bitcodedir="$("${CLANG_EXE}" -print-resource-dir)/$(get_libdir)/amdgcn/bitcode"
|
||||
dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}"
|
||||
}
|
||||
@@ -1,99 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LLVM_COMPAT=( 19 )
|
||||
inherit cmake flag-o-matic llvm-r1
|
||||
|
||||
MY_P=llvm-project-rocm-${PV}
|
||||
components=( "amd/device-libs" )
|
||||
|
||||
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
|
||||
|
||||
DESCRIPTION="Radeon Open Compute Device Libraries"
|
||||
HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
dev-build/rocm-cmake
|
||||
$(llvm_gen_dep '
|
||||
llvm-core/clang:${LLVM_SLOT}
|
||||
llvm-core/lld:${LLVM_SLOT}
|
||||
')
|
||||
"
|
||||
|
||||
CMAKE_BUILD_TYPE=Release
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-llvm-link.patch"
|
||||
"${FILESDIR}/${PN}-6.1.2-fix-build.patch"
|
||||
"${FILESDIR}/${PN}-6.2.0-test-bitcode-dir.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() {
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" \
|
||||
-i "${S}/cmake/OCL.cmake" \
|
||||
-i "${S}/cmake/Packages.cmake" || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Do not trust CMake with autoselecting Clang, as it autoselects the latest one
|
||||
# producing too modern LLVM bitcode and causing linker errors in other packages.
|
||||
# Clean up unsupported flags for the switched compiler, see #936099
|
||||
local -x CC="$(get_llvm_prefix)/bin/clang"
|
||||
local -x CXX="$(get_llvm_prefix)/bin/clang++"
|
||||
strip-unsupported-flags
|
||||
|
||||
local mycmakeargs=(
|
||||
-DLLVM_DIR="$(get_llvm_prefix)"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
local CLANG_EXE="$(get_llvm_prefix)/bin/clang"
|
||||
# install symlink, so that clang won't ask for "--rocm-device-lib-path" flag anymore
|
||||
local bitcodedir="$("${CLANG_EXE}" -print-resource-dir)/$(get_libdir)/amdgcn/bitcode"
|
||||
dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# https://github.com/ROCm/llvm-project/issues/76
|
||||
# "Failing tests are on gfx that are not supported"
|
||||
local CMAKE_SKIP_TESTS=(
|
||||
compile_frexp__gfx600
|
||||
compile_fract__gfx600
|
||||
compile_fract__gfx700
|
||||
)
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
@@ -1,95 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LLVM_COMPAT=( 20 )
|
||||
inherit cmake flag-o-matic llvm-r1
|
||||
|
||||
MY_P=llvm-project-rocm-${PV}
|
||||
components=( "amd/device-libs" )
|
||||
|
||||
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
|
||||
|
||||
DESCRIPTION="Radeon Open Compute Device Libraries"
|
||||
HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
dev-build/rocm-cmake
|
||||
$(llvm_gen_dep '
|
||||
llvm-core/clang:${LLVM_SLOT}
|
||||
llvm-core/lld:${LLVM_SLOT}
|
||||
')
|
||||
"
|
||||
|
||||
CMAKE_BUILD_TYPE=Release
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-6.1.0-fix-llvm-link.patch"
|
||||
"${FILESDIR}/${PN}-6.2.0-test-bitcode-dir.patch"
|
||||
"${FILESDIR}/${PN}-6.4.2-cmake-4-compat.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() {
|
||||
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" \
|
||||
-i "${S}/cmake/OCL.cmake" \
|
||||
-i "${S}/cmake/Packages.cmake" || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Do not trust CMake with autoselecting Clang, as it autoselects the latest one
|
||||
# producing too modern LLVM bitcode and causing linker errors in other packages.
|
||||
llvm_prepend_path "${LLVM_SLOT}"
|
||||
local -x CC=${CHOST}-clang
|
||||
local -x CXX=${CHOST}-clang++
|
||||
# Clean up unsupported flags for the switched compiler, see #936099
|
||||
strip-unsupported-flags
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
# install symlink, so that clang won't ask for "--rocm-device-lib-path" flag anymore
|
||||
local bitcodedir="$(clang -print-resource-dir)/$(get_libdir)/amdgcn/bitcode"
|
||||
dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# https://github.com/ROCm/llvm-project/issues/76
|
||||
# "Failing tests are on gfx that are not supported"
|
||||
local CMAKE_SKIP_TESTS=(
|
||||
compile_fract__gfx600
|
||||
compile_fract__gfx700
|
||||
)
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
Reference in New Issue
Block a user