| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
USE_RUBY="ruby32 ruby33 ruby34"
|
|
6 |
ROCM_VERSION=${PV}
|
| 7 |
7 |
|
| 8 |
|
RUBY_FAKEGEM_RECIPE_DOC="yard"
|
| 9 |
|
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
|
8 |
inherit cmake edo rocm flag-o-matic
|
| 10 |
9 |
|
| 11 |
|
inherit ruby-fakegem
|
| 12 |
|
|
| 13 |
|
DESCRIPTION="Provides support for tables in Prawn"
|
| 14 |
|
HOMEPAGE="http://prawn.majesticseacreature.com/"
|
| 15 |
|
LICENSE="|| ( GPL-2+ Ruby )"
|
| 16 |
|
SLOT="0"
|
| 17 |
|
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
|
|
10 |
DESCRIPTION="ROCm Communication Collectives Library (RCCL)"
|
|
11 |
HOMEPAGE="https://github.com/ROCm/rccl"
|
|
12 |
SRC_URI="https://github.com/ROCm/rccl/archive/rocm-${PV}.tar.gz -> rccl-${PV}.tar.gz"
|
|
13 |
S="${WORKDIR}/rccl-rocm-${PV}"
|
|
14 |
|
|
15 |
LICENSE="BSD"
|
|
16 |
SLOT="0/$(ver_cut 1-2)"
|
|
17 |
KEYWORDS="~amd64"
|
| 18 |
18 |
IUSE="test"
|
| 19 |
19 |
|
| 20 |
|
ruby_add_bdepend "test? ( dev-ruby/mocha
|
| 21 |
|
>=dev-ruby/pdf-inspector-1.1.0
|
| 22 |
|
>=dev-ruby/pdf-reader-1.2
|
| 23 |
|
>=dev-ruby/prawn-1.3.0
|
| 24 |
|
)"
|
| 25 |
|
|
| 26 |
|
all_ruby_prepare() {
|
| 27 |
|
sed -i -e "/[Bb]undler/s/^/#/" spec/spec_helper.rb || die
|
| 28 |
|
# Remove failing test
|
| 29 |
|
# See https://github.com/prawnpdf/prawn-table/issues/10
|
| 30 |
|
sed -i -e "/Prints table on one page when using subtable with colspan > 1/,+24 s/^/#/" spec/table_spec.rb || die
|
|
20 |
RDEPEND="
|
|
21 |
=dev-util/hip-6*
|
|
22 |
dev-util/rocm-smi:${SLOT}"
|
|
23 |
DEPEND="${RDEPEND}
|
|
24 |
sys-libs/binutils-libs"
|
|
25 |
BDEPEND="
|
|
26 |
>=dev-build/cmake-3.22
|
|
27 |
>=dev-build/rocm-cmake-5.7.1
|
|
28 |
dev-util/hipify-clang:${SLOT}
|
|
29 |
test? ( dev-cpp/gtest )"
|
|
30 |
|
|
31 |
RESTRICT="!test? ( test )"
|
|
32 |
|
|
33 |
PATCHES=(
|
|
34 |
"${FILESDIR}/${PN}-6.0.2-fix-version-check.patch"
|
|
35 |
"${FILESDIR}/${PN}-6.1.1-headers-fix.patch"
|
|
36 |
)
|
|
37 |
|
|
38 |
src_prepare() {
|
|
39 |
cmake_src_prepare
|
|
40 |
|
|
41 |
# https://reviews.llvm.org/D69582 - clang does not support parallel jobs
|
|
42 |
sed 's/-parallel-jobs=[0-9][0-9]//g' -i CMakeLists.txt || die
|
|
43 |
|
|
44 |
# https://github.com/ROCm/rccl/issues/958 - fix AMDGPU_TARGETS
|
|
45 |
sed '/set(AMDGPU_TARGETS/s/ FORCE//' -i CMakeLists.txt || die
|
|
46 |
|
|
47 |
# complete fix-version-check patch
|
|
48 |
sed "s/@rocm_version@/${PV}/" -i CMakeLists.txt || die
|
|
49 |
}
|
|
50 |
|
|
51 |
src_configure() {
|
|
52 |
rocm_use_hipcc
|
|
53 |
|
|
54 |
# https://github.com/llvm/llvm-project/issues/71711 - fix issue of clang
|
|
55 |
append-ldflags -Wl,-z,noexecstack
|
|
56 |
|
|
57 |
local mycmakeargs=(
|
|
58 |
-DCMAKE_SKIP_RPATH=ON
|
|
59 |
-DAMDGPU_TARGETS="$(get_amdgpu_flags)"
|
|
60 |
-DBUILD_TESTS=$(usex test ON OFF)
|
|
61 |
-DROCM_SYMLINK_LIBS=OFF
|
|
62 |
-Wno-dev
|
|
63 |
)
|
|
64 |
|
|
65 |
cmake_src_configure
|
|
66 |
}
|
|
67 |
|
|
68 |
src_test() {
|
|
69 |
check_amdgpu
|
|
70 |
cd "${BUILD_DIR}" || die
|
|
71 |
# APU (as second device, if any) expectedly breaks tests
|
|
72 |
HIP_VISIBLE_DEVICES=0 LD_LIBRARY_PATH="${BUILD_DIR}" edob test/rccl-UnitTests
|
| 31 |
73 |
}
|