diff options
| author | Sv. Lockal <lockalsash@gmail.com> | 2025-11-12 02:39:18 +0800 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-11-16 09:16:21 +0000 |
| commit | 35e60920aafab9533536676ac63d43441406fbf4 (patch) | |
| tree | 821c09c3f54d9c4ad7e41bce71a2d92bdaae65df | |
| parent | 2e75b4dd03e756ae15367b47e618b03d74fc2347 (diff) | |
| download | gentoo-35e60920aafab9533536676ac63d43441406fbf4.tar.gz gentoo-35e60920aafab9533536676ac63d43441406fbf4.tar.bz2 gentoo-35e60920aafab9533536676ac63d43441406fbf4.zip | |
sci-libs/aotriton-bin: support rocm 6.3-7.1 range and drop gfx1103
All host (shim) libraries are downloaded unconditionally for each
ROCm version.
It looks like a Gentoo way to solve this would be introduction of some
USE expand like rocm_release_X_X. But at this moment this package is
one of its kind; also binary for each release is only 3-4 mb, so for
now let's download all of them.
Another simple alternative would be to compile host (shim) part and use
prebuilt device kernels, but host part consists of 20000 autogenerated
C++ files, which barely can be named as "aotriton-bin".
Regarding gfx1103: it is not supported now, but will be supported in the
next release, see https://github.com/ROCm/aotriton/pull/138.
Closes: https://bugs.gentoo.org/965907
Signed-off-by: Sv. Lockal <lockalsash@gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/44595
Closes: https://github.com/gentoo/gentoo/pull/44595
Signed-off-by: Sam James <sam@gentoo.org>
| -rw-r--r-- | sci-libs/aotriton-bin/Manifest | 3 | ||||
| -rw-r--r-- | sci-libs/aotriton-bin/aotriton-bin-0.11b-r1.ebuild | 91 | ||||
| -rw-r--r-- | sci-libs/aotriton-bin/aotriton-bin-0.11b.ebuild | 57 |
3 files changed, 94 insertions, 57 deletions
diff --git a/sci-libs/aotriton-bin/Manifest b/sci-libs/aotriton-bin/Manifest index cbde7b173593..88d7ce480f52 100644 --- a/sci-libs/aotriton-bin/Manifest +++ b/sci-libs/aotriton-bin/Manifest @@ -3,5 +3,8 @@ DIST aotriton-0.11b-images-amd-gfx120x.tar.gz 113219528 BLAKE2B 138e88677e967e8e DIST aotriton-0.11b-images-amd-gfx90a.tar.gz 98251729 BLAKE2B b5b62845a17e8e5975698a1d2779ff0b1b7547d2b6fb0258e98d3d110d8995caf8837bfa2051ba2f3e91f1006871658ea0f5f04f8a570f35a02b2daa6642e6b2 SHA512 ef8415216fcc5c4d0d0b8ed44ffd73c5a4710384e04640aad7abfba091fb2150f17570bddab453ef7a0a8c7529dada8651f317b10cc749da3f4bef9cfc76b5eb DIST aotriton-0.11b-images-amd-gfx942.tar.gz 110229134 BLAKE2B 2b3ff118ed511b72722b9b8c86668d3513b3a0e53d7ddbd15a1de1462d63f91e726fd46611a455893d55d28de289772e12e13de4dce1df76f49f88d6a052ad81 SHA512 d968d845522a281fa0210e43a02e787bbef495d2a2e58396ecbb0dae7d96e0bb51fc9d9c9e263eeefb50c064ed5f2c6300e5bab0a101d1eb32f76462852b1168 DIST aotriton-0.11b-images-amd-gfx950.tar.gz 118174108 BLAKE2B 3058d9d45630a21ad7275bd36d98b0f802890ac64b8393a2e86500e088e6f4a41ba1602519e1583f8a9edd0ef62295de20949e5a33df11728c1155f9dc2b0e4f SHA512 6a8f24f94b144a2a5e9f81a4bdec1cdc1a829d18f4240c23d33445af843d9c8d36d115ec0362b4c78b60e43ac014302b1439bc6cff1c48a0981bd7834e37fe9a +DIST aotriton-0.11b-manylinux_2_28_x86_64-rocm6.3-shared.tar.gz 3820239 BLAKE2B c9c98f51999c5b9a4c03496e60d599ad7832e15547cfe53ac6e63613257e2d738cac915be6d279cae99de112442ab2697b416a0e30bc9d2e39f8a04145ef9aa8 SHA512 4b900b6991bbf84961d7a2f25cc56b84f2738472daa26f863123271ce9f1d0af0bcd30c01b1595428a8d93c543d497f46b4ab54326eb37c2300f6ea425e6a1a5 +DIST aotriton-0.11b-manylinux_2_28_x86_64-rocm6.4-shared.tar.gz 3820222 BLAKE2B d7ae6d7aacb72b8e54ed35810214a42cbe29fcb876c338767455180fcde48639f8150a48a6301fd0f1bfb0d250c5272299c3a7839ed62b2f1cf919794190e935 SHA512 9c9f163be9db26aa3221c54eff63f72d6d66bb658b9416ed4ba383194e40579dc0484b78aca93147a165fae1cd09d6f72301e2e5a9ff77f2b56ef763952af98f DIST aotriton-0.11b-manylinux_2_28_x86_64-rocm7.0-shared.tar.gz 3826186 BLAKE2B 7ea9f191f9a7217551f3eca2acee6e04f059e4544d44452c904481f1845e432b6f7de0ca7019344fd6cd348edde18672eb4f2a25d4dd3d1f36c4fe2df97f34b4 SHA512 bbe88a0d65f0dc145db95fc3eb6ee35ec72bec7f194993f93e46bb52331212be18187b5eab3d364863d66e53836ba55e805602e6464fba396a77ab927d45c799 +DIST aotriton-0.11b-manylinux_2_28_x86_64-rocm7.1-shared.tar.gz 3867807 BLAKE2B b0e8e3c6d2b1f09969d50306c4e27cc879f866f8a4012082e0da320a2f6acd34651ecf17d94fc10d6611b11d252095c89b4d3a660923a9842c6817a0255e7cc8 SHA512 1f34156f5c8f396e76a2dff4270a8a953962c602048fa3890cac7887be7d316515995643139396bc5e318dc0ec8802b29a7256082ab870927ee7d663d4a1a8fc DIST aotriton-0.9.2b-manylinux_2_28_x86_64-rocm6.4-shared.tar.gz 444787060 BLAKE2B 26cc079073919266c635e4ee3e7f69fa275fd1351b90cf472c639cd514be09187932868103e4c958f94cfb66e9cf74f6d8f9aac536868ec32272546d80180872 SHA512 b7e14e45e584795470a729a8fcfd6130886bbe772bb201b0afcb1786dc09c58bfae1d8e6e9024919dce93b90d2208271da5716b36a01bfaf1633c177fa1853e5 diff --git a/sci-libs/aotriton-bin/aotriton-bin-0.11b-r1.ebuild b/sci-libs/aotriton-bin/aotriton-bin-0.11b-r1.ebuild new file mode 100644 index 000000000000..fdd8b10b75f1 --- /dev/null +++ b/sci-libs/aotriton-bin/aotriton-bin-0.11b-r1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=${PN%*-bin} +MY_P=${MY_PN}-${PV} + +DESCRIPTION="Ahead of Time (AOT) Triton Math Library (binary package)" +HOMEPAGE="https://github.com/ROCm/aotriton" + +URI_PREFIX="https://github.com/ROCm/${MY_PN}/releases/download/${PV}" +SHIM_URI_PREFIX="${URI_PREFIX}/${MY_P}-manylinux_2_28_x86_64" +IMAGES_URI_PREFIX="${URI_PREFIX}/${MY_P}-images-amd" + +# Download libs for all rocm releases (3mb each), but unpack only one. +SRC_URI=" + ${SHIM_URI_PREFIX}-rocm6.3-shared.tar.gz + ${SHIM_URI_PREFIX}-rocm6.4-shared.tar.gz + ${SHIM_URI_PREFIX}-rocm7.0-shared.tar.gz + ${SHIM_URI_PREFIX}-rocm7.1-shared.tar.gz + + amdgpu_targets_gfx90a? ( ${IMAGES_URI_PREFIX}-gfx90a.tar.gz ) + amdgpu_targets_gfx942? ( ${IMAGES_URI_PREFIX}-gfx942.tar.gz ) + amdgpu_targets_gfx950? ( ${IMAGES_URI_PREFIX}-gfx950.tar.gz ) + + amdgpu_targets_gfx1100? ( ${IMAGES_URI_PREFIX}-gfx11xx.tar.gz ) + amdgpu_targets_gfx1101? ( ${IMAGES_URI_PREFIX}-gfx11xx.tar.gz ) + amdgpu_targets_gfx1102? ( ${IMAGES_URI_PREFIX}-gfx11xx.tar.gz ) + amdgpu_targets_gfx1150? ( ${IMAGES_URI_PREFIX}-gfx11xx.tar.gz ) + amdgpu_targets_gfx1151? ( ${IMAGES_URI_PREFIX}-gfx11xx.tar.gz ) + + amdgpu_targets_gfx1200? ( ${IMAGES_URI_PREFIX}-gfx120x.tar.gz ) + amdgpu_targets_gfx1201? ( ${IMAGES_URI_PREFIX}-gfx120x.tar.gz ) +" +S="${WORKDIR}/${MY_PN}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" + +KEYWORDS="-* ~amd64" + +IUSE_TARGETS=( + gfx90a + gfx942 + gfx950 + gfx1100 + gfx1101 + gfx1102 + gfx1150 + gfx1151 + gfx1200 + gfx1201 +) +IUSE_TARGETS=( "${IUSE_TARGETS[@]/#/amdgpu_targets_}" ) +IUSE="${IUSE_TARGETS[*]/#/+}" + +RESTRICT="strip" +QA_PREBUILT="usr/lib*/libaotriton_v2.so.*" + +# glibc & gcc: linked with manylinux version, no rebuild required +# xz-utils: used to decompress lzma blobs with kernels in runtime +# dev-util/hip: must be in sync with SRC_URI +# and trigger reinstall on sub-slot change. +RDEPEND=" + sys-libs/glibc + sys-devel/gcc + app-arch/xz-utils + >=dev-util/hip-6.3:= + <dev-util/hip-7.2:= +" + +src_unpack() { + # *-rocmX.X-shared.tar.gz archives with host code have the same structure, + # so decompression of all of them would overwrite files of each other. + # Instead we decompress only one version for current dev-util/hip. + local hippkg=$(best_version dev-util/hip) + local rocmver="$(ver_cut 1-2 "${hippkg#*hip-}")" + local file + for file in ${A}; do + [[ $file == *-rocm${rocmver}-*.tar.gz || $file == *-gfx*.tar.gz ]] && + unpack "${file}" + done +} + +src_install() { + doheader -r include/* + + insinto /usr/$(get_libdir) + doins -r lib/* +} diff --git a/sci-libs/aotriton-bin/aotriton-bin-0.11b.ebuild b/sci-libs/aotriton-bin/aotriton-bin-0.11b.ebuild deleted file mode 100644 index 844708035685..000000000000 --- a/sci-libs/aotriton-bin/aotriton-bin-0.11b.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ROCM_VERSION=7.0 -MY_PN=${PN%*-bin} -MY_P=${MY_PN}-${PV} -MY_tar=${MY_P}-manylinux_2_28_x86_64-rocm${ROCM_VERSION}-shared.tar.gz - -DESCRIPTION="Ahead of Time (AOT) Triton Math Library (binary package)" -HOMEPAGE="https://github.com/ROCm/aotriton" - -IMAGES_URI_BASE="https://github.com/ROCm/aotriton/releases/download/${PV}/aotriton-${PV}-images-amd" -SRC_URI=" - https://github.com/ROCm/${MY_PN}/releases/download/${PV}/${MY_tar} - amdgpu_targets_gfx90a? ( ${IMAGES_URI_BASE}-gfx90a.tar.gz ) - amdgpu_targets_gfx942? ( ${IMAGES_URI_BASE}-gfx942.tar.gz ) - amdgpu_targets_gfx950? ( ${IMAGES_URI_BASE}-gfx950.tar.gz ) - - amdgpu_targets_gfx1100? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - amdgpu_targets_gfx1101? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - amdgpu_targets_gfx1102? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - amdgpu_targets_gfx1103? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - amdgpu_targets_gfx1150? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - amdgpu_targets_gfx1151? ( ${IMAGES_URI_BASE}-gfx11xx.tar.gz ) - - amdgpu_targets_gfx1200? ( ${IMAGES_URI_BASE}-gfx120x.tar.gz ) - amdgpu_targets_gfx1201? ( ${IMAGES_URI_BASE}-gfx120x.tar.gz ) -" -S="${WORKDIR}/${MY_PN}" - -LICENSE="MIT" -SLOT="0/$(ver_cut 1-2)" - -KEYWORDS="-* ~amd64" - -IUSE_TARGETS=( gfx90a gfx942 gfx950 gfx1100 gfx1101 gfx1102 gfx1103 gfx1150 gfx1151 gfx1200 gfx1201 ) -IUSE_TARGETS=( "${IUSE_TARGETS[@]/#/amdgpu_targets_}" ) -IUSE="${IUSE_TARGETS[*]/#/+}" - -RESTRICT="strip" -QA_PREBUILT="*" - -RDEPEND=" - sys-libs/glibc - sys-devel/gcc - app-arch/xz-utils - dev-util/hip:0/${ROCM_VERSION} -" - -src_install() { - doheader -r include/* - - insinto /usr/$(get_libdir) - doins -r lib/* -} |
