summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Tensile/Manifest1
-rw-r--r--dev-util/Tensile/Tensile-6.4.1.ebuild140
-rw-r--r--dev-util/diffoscope/diffoscope-295.ebuild2
-rw-r--r--dev-util/gdbus-codegen/Manifest1
-rw-r--r--dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild78
-rw-r--r--dev-util/glib-utils/Manifest1
-rw-r--r--dev-util/glib-utils/glib-utils-2.84.3.ebuild53
-rw-r--r--dev-util/hip/Manifest3
-rw-r--r--dev-util/hip/files/hip-6.4.1-no-glibcxx-assert.patch26
-rw-r--r--dev-util/hip/hip-6.3.3-r2.ebuild (renamed from dev-util/hip/hip-6.3.3-r1.ebuild)4
-rw-r--r--dev-util/hip/hip-6.4.1.ebuild248
-rw-r--r--dev-util/hipcc/Manifest1
-rw-r--r--dev-util/hipcc/hipcc-6.4.1.ebuild72
-rw-r--r--dev-util/hipify-clang/Manifest1
-rw-r--r--dev-util/hipify-clang/hipify-clang-6.4.1.ebuild58
-rw-r--r--dev-util/lttng-modules/Manifest1
-rw-r--r--dev-util/lttng-modules/lttng-modules-2.13.19.ebuild42
-rw-r--r--dev-util/lttng-tools/Manifest1
-rw-r--r--dev-util/lttng-tools/lttng-tools-2.13.15.ebuild58
-rw-r--r--dev-util/lttng-ust/Manifest1
-rw-r--r--dev-util/lttng-ust/lttng-ust-2.13.9.ebuild57
-rw-r--r--dev-util/rocm-smi/Manifest1
-rw-r--r--dev-util/rocm-smi/files/rocm-smi-6.4.1-log-exceptions.patch16
-rw-r--r--dev-util/rocm-smi/files/rocm-smi-6.4.1-set-soversion.patch106
-rw-r--r--dev-util/rocm-smi/rocm-smi-6.4.1.ebuild61
-rw-r--r--dev-util/rocm_bandwidth_test/Manifest1
-rw-r--r--dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.1.ebuild18
-rw-r--r--dev-util/rocminfo/Manifest1
-rw-r--r--dev-util/rocminfo/rocminfo-6.4.1.ebuild44
-rw-r--r--dev-util/roctracer/Manifest1
-rw-r--r--dev-util/roctracer/roctracer-6.4.1.ebuild110
-rw-r--r--dev-util/spirv-llvm-translator/Manifest7
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-15.0.13.ebuild60
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-16.0.13.ebuild64
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-17.0.13.ebuild60
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-18.1.13.ebuild60
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-19.1.8.ebuild60
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-20.1.3.ebuild61
-rw-r--r--dev-util/spirv-llvm-translator/spirv-llvm-translator-21.0.0_pre20250613.ebuild59
39 files changed, 1637 insertions, 2 deletions
diff --git a/dev-util/Tensile/Manifest b/dev-util/Tensile/Manifest
index fb3ece6affa2..d1b28f2f3397 100644
--- a/dev-util/Tensile/Manifest
+++ b/dev-util/Tensile/Manifest
@@ -2,3 +2,4 @@ DIST rocm-Tensile-5.7.1.tar.gz 12396002 BLAKE2B ec2c2bc3f07fe22abd800b642c998ea8
DIST rocm-Tensile-6.1.1.tar.gz 12675289 BLAKE2B dfe3698d7dda14d5b20a6fe1ef6535ac9737ac330b71678a3a94e939adc2350e2dcf33e58c711ee90dae543efba59fe210bfa39fc69b63910ec4537db3f209bf SHA512 cf8b014b1ff7cd5d45236b8a9a6f5604b02e34a9245a163c672847b535d565151bf7e3a5127601681e80e6fe26964a0e544594044efe2fe68e39b0f1128f96e2
DIST rocm-Tensile-6.3.2.tar.gz 12723907 BLAKE2B aaabae87664340f3e044ac5fdc68331084cd597466f294d60f8ed3d523c0f1ebc0c6e3e353585d4bb85f4fe30c644b1a70f2123b6f62d67a6b7a1904f3d820bb SHA512 df8888d7250f9e3dc6818590c82a3e1dc3ff787e0eac29e45969ef408db92261d39faca29f5ac7a6bae5e5b614365ff6e37d087956697c25c65d9d7e4c1ba74d
DIST rocm-Tensile-6.3.3.tar.gz 12723968 BLAKE2B e8c14f85dd44767b685595180974d683d759f84fc044e98974beae107f78ec97d43de30232ea0bd3578aa6cd40e17309d603ce583925ed4dd65cc146241e5b7d SHA512 836e17aab29ace976595c5b3fbc6b1742c774eb0420488a1449e04649c424e5a877168cf71de96fddcfbad337e295206ec456aea7649fe9e67a8802739ddbabe
+DIST rocm-Tensile-6.4.1.tar.gz 12731537 BLAKE2B cefa2d3fb5a0179e0373518141260a95746d539b06be9e10a6961db30c573bc4971fc40a32c450d4b75a3808e5eac54dd4568e97f814b73cb29b6dfa870c6f2e SHA512 6b72ecf4de41c0b01b1dceb3a135ed32d3fa73f9ae319de8ee09ada89b40a202838bedd62038e76668325213f36466b41e58fd9d948bdcf486a7a7566dd38aef
diff --git a/dev-util/Tensile/Tensile-6.4.1.ebuild b/dev-util/Tensile/Tensile-6.4.1.ebuild
new file mode 100644
index 000000000000..fee45a503304
--- /dev/null
+++ b/dev-util/Tensile/Tensile-6.4.1.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+DISTUTILS_USE_PEP517=setuptools
+ROCM_VERSION=${PV}
+LLVM_COMPAT=( 20 )
+
+inherit cmake distutils-r1 llvm-r1 prefix rocm
+
+DESCRIPTION="Stretching GPU performance for GEMMs and tensor contractions"
+HOMEPAGE="https://github.com/ROCm/Tensile"
+SRC_URI="https://github.com/ROCm/Tensile/archive/rocm-${PV}.tar.gz -> rocm-Tensile-${PV}.tar.gz"
+S="${WORKDIR}/${PN}-rocm-${PV}"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="client test"
+REQUIRED_USE="client? ( ${ROCM_REQUIRED_USE} )"
+
+# tests can freeze machine depending on gpu/kernel
+RESTRICT="test"
+
+RDEPEND="${PYTHON_DEPS}
+ client? ( dev-libs/boost )
+ >=dev-cpp/msgpack-cxx-6.0.0
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/joblib[${PYTHON_USEDEP}]
+ dev-util/hip:${SLOT}
+ dev-util/rocm-smi:${SLOT}
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ ')
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/joblib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.4.2-fix-arch-parse.patch
+ "${FILESDIR}"/${PN}-6.3.0-use-ninja.patch
+ "${FILESDIR}"/${PN}-6.1.1-fix-msgpack-dependency.patch
+ "${FILESDIR}"/${PN}-6.0.2-expand-isa-compatibility.patch
+)
+
+CMAKE_USE_DIR="${S}/${PN}/Source"
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -e "s,\@LLVM_PATH\@,$(get_llvm_prefix),g" \
+ "${FILESDIR}"/${PN}-5.7.1-gentoopath.patch > "${S}"/gentoopath.patch || die
+ eapply $(prefixify_ro "${S}"/gentoopath.patch)
+
+ pushd ${PN} || die
+
+ sed -e "/ROCM_SMI_ROOT/s,lib,$(get_libdir)," \
+ -i Source/cmake/FindROCmSMI.cmake || die
+ sed -r -e "/TENSILE_USE_LLVM/s/ON/OFF/" \
+ -i Source/CMakeLists.txt || die
+
+ # ${Tensile_ROOT}/bin does not exists; call command directly
+ sed -e "s,\${Tensile_ROOT}/bin/,,g" -i cmake/TensileConfig.cmake || die
+
+ local Tensile_share_dir="\"${EPREFIX}/usr/share/${PN}\""
+ sed -e "/HipClangVersion/s/0.0.0/$(hipconfig -v)/" -i Common.py || die
+
+ sed -e "s,os.path.dirname(os.path.realpath(__file__)),${Tensile_share_dir},g" \
+ -i ReplacementKernels.py Common.py ${PN}.py || die
+
+ sed -e "s|os\.path\.dirname.*$|\"${EPREFIX}/usr/share/Tensile/Source\", end='')|" -i __init__.py || die
+
+ popd || die
+
+ sed -e "/package_data/d" -e "/data_files/d" -i setup.py || die
+ use client && PATCHES= cmake_src_prepare # do not apply patches again in cmake_src_prepare
+}
+
+src_configure() {
+ rocm_use_hipcc
+
+ distutils-r1_src_configure
+ if use client; then
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DTENSILE_USE_MSGPACK=ON
+ -DTENSILE_USE_LLVM=ON
+ -DTensile_LIBRARY_FORMAT=msgpack
+ -DAMDGPU_TARGETS="$(get_amdgpu_flags)"
+ )
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ distutils-r1_src_compile
+ use client && cmake_src_compile
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ python_moduleinto Tensile
+ pushd Tensile || die
+ python_domodule Components
+ python_domodule Utilities
+ python_domodule TensileCreateLib
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ pushd ${PN} || die
+ insinto /usr/share/${PN}
+ doins -r Configs Perf Source CustomKernels
+ insinto /usr/$(get_libdir)/cmake/${PN}
+ doins cmake/*.cmake
+
+ if use client; then
+ pushd "${BUILD_DIR}" || die
+ dobin client/tensile_client
+ fi
+}
+
+# Test suite fails to start without this
+python_test() {
+ export ROCM_PATH="${EPREFIX}/usr"
+ epytest
+}
diff --git a/dev-util/diffoscope/diffoscope-295.ebuild b/dev-util/diffoscope/diffoscope-295.ebuild
index 663839c599cf..4b7a22e95993 100644
--- a/dev-util/diffoscope/diffoscope-295.ebuild
+++ b/dev-util/diffoscope/diffoscope-295.ebuild
@@ -16,7 +16,7 @@ SRC_URI="https://diffoscope.org/archive/${P}.tar.bz2"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="~amd64 ~arm arm64 ~ppc64 ~x86"
IUSE="acl binutils bzip2 libcaca colord cpio +diff docx dtc e2fsprogs file
find gettext gif gpg haskell hdf5 hex imagemagick iso java llvm lzma
mono opendocument pascal pdf postscript R rpm sqlite squashfs
diff --git a/dev-util/gdbus-codegen/Manifest b/dev-util/gdbus-codegen/Manifest
index df1535bef917..b6d0c2e7658f 100644
--- a/dev-util/gdbus-codegen/Manifest
+++ b/dev-util/gdbus-codegen/Manifest
@@ -4,3 +4,4 @@ DIST glib-2.82.5.tar.xz 5554704 BLAKE2B e7853034be1137f8b793483df9e9ce1465dd10a9
DIST glib-2.84.0.tar.xz 5613328 BLAKE2B a482076d6b0c82824179094974110dbd10d47fce93f84f4626d0d3dbea528602c41ac4a7ab8feedc3d7cc5e404ef8bef30c6c744b6f0f4f3a764644e28210e28 SHA512 72b85e30c535c5da7d8598d1cec02b1b481c467e612dbb396a0a64ad1d37cf2f1802c6fa576885c99cf8a22f4f0fc7dfdf42a3f32f7f40394f72db588fdbebb7
DIST glib-2.84.1.tar.xz 5615396 BLAKE2B d20ade482eb95873adaefc656e22c57e6712a6263a4812e448220040e30144919331cb279566a89a2ab46495b46d6a79e3821e491317587325fa3a64b40d62cc SHA512 ee7f38a4726fd72e41ddb75c4933c7b1bb30935bb2fddc84902d0627a836af512534195132cc02e3d15f168fefc816576181a8d6e436472b582191437b79a456
DIST glib-2.84.2.tar.xz 5617588 BLAKE2B 31592cbeca58f03c138a02b0cd953b6bd2cdcbfa39283241affd1bff439d6376f0420b4b715856963c64903f3646cf89890f709f514a85d93fb3bbe26b99d516 SHA512 430928d7d7a442fc3927ca943f2569035fe8768768a0ebc6720ae1ef152b56fc5f8d4215d21b4828cc2f39a8632c907ed2c52a0c8566da1c533a2e049a1a121f
+DIST glib-2.84.3.tar.xz 5615704 BLAKE2B 48444b91be68530de05667e2e009dcdc63af2f95cc978a461d930b943772e52b6c9d0e797aea3a9a5713758f22ee60a190c7d601b170c6c853fce624e5c327d7 SHA512 73f2d67d2ef5b4dc8cd2f6df9ce7903853ec619924e2927adbc73d706974a7d660afea55be18e12ccb0dee1145cf4149b743278d2b128fd466e3df2bbf90ef57
diff --git a/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild b/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild
new file mode 100644
index 000000000000..bb3d561f1bd1
--- /dev/null
+++ b/dev-util/gdbus-codegen/gdbus-codegen-2.84.3.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+GNOME_ORG_MODULE="glib"
+PYTHON_COMPAT=( python3_{11..14} )
+PYTHON_REQ_USE="xml(+)"
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_SINGLE_IMPL=1
+
+inherit gnome.org distutils-r1
+
+DESCRIPTION="GDBus code and documentation generator"
+HOMEPAGE="https://www.gtk.org/"
+
+S="${WORKDIR}/glib-${PV}/gio/gdbus-2.0/codegen"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-libs/glib-${PV}
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ >=dev-python/docutils-0.21.1
+"
+
+python_prepare_all() {
+ PATCHES=(
+ "${FILESDIR}/${PN}-2.56.1-sitedir.patch"
+ )
+ distutils-r1_python_prepare_all
+
+ local MAJOR_VERSION=$(ver_cut 1)
+ local MINOR_VERSION=$(ver_cut 2)
+ sed -e 's:@PYTHON@:python:' gdbus-codegen.in > gdbus-codegen || die
+ sed -e "s:@VERSION@:${PV}:" \
+ -e "s:@MAJOR_VERSION@:${MAJOR_VERSION}:" \
+ -e "s:@MINOR_VERSION@:${MINOR_VERSION}:" config.py.in > config.py || die
+ cp "${FILESDIR}/setup.py-2.32.4" setup.py || die "cp failed"
+ sed -e "s/@PV@/${PV}/" -i setup.py || die "sed setup.py failed"
+}
+
+do_xsltproc_command() {
+ # Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/glib-utils)
+ xsltproc \
+ --nonet \
+ --stringparam man.output.quietly 1 \
+ --stringparam funcsynopsis.style ansi \
+ --stringparam man.th.extra1.suppress 1 \
+ --stringparam man.authors.section.enabled 0 \
+ --stringparam man.copyright.section.enabled 0 \
+ -o "${2}" \
+ http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
+ "${1}" || die "manpage generation failed"
+}
+
+src_compile() {
+ distutils-r1_src_compile
+ rst2man \
+ "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.rst" \
+ "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
+}
+
+src_test() {
+ einfo "Skipping tests. This package is tested by dev-libs/glib"
+ einfo "when merged with FEATURES=test"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all # no-op, but prevents QA warning
+ doman "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
+}
diff --git a/dev-util/glib-utils/Manifest b/dev-util/glib-utils/Manifest
index df1535bef917..b6d0c2e7658f 100644
--- a/dev-util/glib-utils/Manifest
+++ b/dev-util/glib-utils/Manifest
@@ -4,3 +4,4 @@ DIST glib-2.82.5.tar.xz 5554704 BLAKE2B e7853034be1137f8b793483df9e9ce1465dd10a9
DIST glib-2.84.0.tar.xz 5613328 BLAKE2B a482076d6b0c82824179094974110dbd10d47fce93f84f4626d0d3dbea528602c41ac4a7ab8feedc3d7cc5e404ef8bef30c6c744b6f0f4f3a764644e28210e28 SHA512 72b85e30c535c5da7d8598d1cec02b1b481c467e612dbb396a0a64ad1d37cf2f1802c6fa576885c99cf8a22f4f0fc7dfdf42a3f32f7f40394f72db588fdbebb7
DIST glib-2.84.1.tar.xz 5615396 BLAKE2B d20ade482eb95873adaefc656e22c57e6712a6263a4812e448220040e30144919331cb279566a89a2ab46495b46d6a79e3821e491317587325fa3a64b40d62cc SHA512 ee7f38a4726fd72e41ddb75c4933c7b1bb30935bb2fddc84902d0627a836af512534195132cc02e3d15f168fefc816576181a8d6e436472b582191437b79a456
DIST glib-2.84.2.tar.xz 5617588 BLAKE2B 31592cbeca58f03c138a02b0cd953b6bd2cdcbfa39283241affd1bff439d6376f0420b4b715856963c64903f3646cf89890f709f514a85d93fb3bbe26b99d516 SHA512 430928d7d7a442fc3927ca943f2569035fe8768768a0ebc6720ae1ef152b56fc5f8d4215d21b4828cc2f39a8632c907ed2c52a0c8566da1c533a2e049a1a121f
+DIST glib-2.84.3.tar.xz 5615704 BLAKE2B 48444b91be68530de05667e2e009dcdc63af2f95cc978a461d930b943772e52b6c9d0e797aea3a9a5713758f22ee60a190c7d601b170c6c853fce624e5c327d7 SHA512 73f2d67d2ef5b4dc8cd2f6df9ce7903853ec619924e2927adbc73d706974a7d660afea55be18e12ccb0dee1145cf4149b743278d2b128fd466e3df2bbf90ef57
diff --git a/dev-util/glib-utils/glib-utils-2.84.3.ebuild b/dev-util/glib-utils/glib-utils-2.84.3.ebuild
new file mode 100644
index 000000000000..a8beae9e1483
--- /dev/null
+++ b/dev-util/glib-utils/glib-utils-2.84.3.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{11..14} )
+GNOME_ORG_MODULE="glib"
+
+inherit gnome.org python-single-r1
+
+DESCRIPTION="Build utilities for GLib using projects"
+HOMEPAGE="https://www.gtk.org/"
+
+LICENSE="LGPL-2.1+"
+SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-python/docutils-0.21.1
+"
+
+src_configure() { :; }
+
+do_rst2man_command() {
+ rst2man \
+ --syntax-highlight=none \
+ "${1}" "${2}" || die "manpage generation failed"
+}
+
+src_compile() {
+ sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-genmarshal.in > gobject/glib-genmarshal || die
+ sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-mkenums.in > gobject/glib-mkenums || die
+ sed -e "s:@GLIB_VERSION@:${PV}:g;s:@PYTHON@:python:g" glib/gtester-report.in > glib/gtester-report || die
+ do_rst2man_command docs/reference/gobject/glib-genmarshal.rst docs/reference/gobject/glib-genmarshal.1
+ do_rst2man_command docs/reference/gobject/glib-mkenums.rst docs/reference/gobject/glib-mkenums.1
+ do_rst2man_command docs/reference/glib/gtester-report.rst docs/reference/glib/gtester-report.1
+}
+
+src_install() {
+ python_fix_shebang gobject/glib-genmarshal
+ python_fix_shebang gobject/glib-mkenums
+ python_fix_shebang glib/gtester-report
+ exeinto /usr/bin
+ doexe gobject/glib-genmarshal
+ doexe gobject/glib-mkenums
+ doexe glib/gtester-report
+ doman docs/reference/gobject/glib-genmarshal.1
+ doman docs/reference/gobject/glib-mkenums.1
+ doman docs/reference/glib/gtester-report.1
+}
diff --git a/dev-util/hip/Manifest b/dev-util/hip/Manifest
index 23ad1732e04a..2770912e28db 100644
--- a/dev-util/hip/Manifest
+++ b/dev-util/hip/Manifest
@@ -3,13 +3,16 @@ DIST hip-6.1.1.tar.gz 247192 BLAKE2B c40bb483fb61b3037693f456e546046598df7e0dd81
DIST hip-6.1.2.tar.gz 247193 BLAKE2B e343bdf233752e40cdefa0c2bbd56858bbb471155045ae1adcf651ddff2ed40dc7c7069998a35e9b26324fdf1c972e13e1222406bc52ae2591c23a45611864c5 SHA512 771f6494c7ff0ddb7d22193dfdbb3fb9461f6e4be347ecb879bb84c5a01a95fb4c4d3f7a0f039265d5369f6c6a5b66949af7bc91ed220f5e81a5b15ec98a68eb
DIST hip-6.3.2.tar.gz 1486601 BLAKE2B 033a02c9b4bdcfcd8d23281df74f061e557b0027e95a76431a5b7f56922306a317d36896619bfb5106103cb34ac2369b85fd603c7dfd9e4f2a6cc1537b168f81 SHA512 839d19d47326c56ae5f44b39a2f62c215692cf9ddbc292becb3ce5b5d1784d92c98ce8f73bc1a294a2cd7c875568b38c9e2053b3646513516b31a9ab1e91d688
DIST hip-6.3.3.tar.gz 1486598 BLAKE2B 998b28786c0b156cd1c23a01ce284206d1ad5cad1f207676b9d40994dc4f60d16a1f0804cfa287622826d78871ee19d2b5aa78dc29a69fe54ab50f08652bfd26 SHA512 70544467c5c262fab1e9415f5e77d0ec3b4635b6fa104de5d7ab2da0e2ca88fe40ce716068e50eaa17a807516cd41e2c0af22bcada3a1f7de50aa88283850e38
+DIST hip-6.4.1.tar.gz 1755184 BLAKE2B 473e719f48ebcc21452602db9b6deee21ed9c397ae769e92dc5d91b4d47c3cac4b31b3e132103f4c899bd1506785f7fc867a3ad7177d71164356ff7479046c9c SHA512 036bd31f3d76f981049fb0095308251f0b6795698634bcb2f94a05ffe5bd3a53b8a8ef89f1f3426e259a4d44e0c4fcdda57e3504b0afbc65e26e7f5047d0a1cd
DIST hip-test-6.1.1.tar.gz 1080605 BLAKE2B 7eddf648be31365479baa0cd4fd1c060a682a6b44d923cac1c4840c0768782db2fef4e5d97318ef0423be1e5c85b1a0cc6b9d324db789dad28be17f64ab38cae SHA512 0dd679c5b94a59e192bea5789f4448b53ac23c8a03b24a347758b1d70ff692483fd4aaea0b19345eb6ffb82a4492ed21958398b53ae6244a244a660dfa33412f
DIST hip-test-6.1.2.tar.gz 1080493 BLAKE2B ff501ab92c1d3207e330f5e9630e3300aa52f7c2acfae2173a964a2843952db90eea2b4ecf5db1ec6ba65d7764750b9eae3f2a9641d1a3fc71d5172e3a7264a8 SHA512 09fa4243c8b73ddbe163ff4c60f0f8f4182f1a37071e9747bf95ecdc219ba3a0407bdf1e2391481f537b223565a38f16e918667194666558a469d94f88a1e236
DIST hip-test-6.3.2.tar.gz 1446861 BLAKE2B c82f8b52807bdae7ea32bd85cccaaea8e01fda440c36ef68603c3cac5d31032b10a21e3828702fec556fa8c262797f08cc2395e042d5db8c6ae601968d47ed8a SHA512 aa162ab73e0ef2b739a8652cdd34eb4fbef130d75ac7aaece030263d820ef0abfb124a10692937da529ac523c386ba2b8241c9a205c820b41e6b7090770653e2
DIST hip-test-6.3.3.tar.gz 1446849 BLAKE2B 474194bd7cef54af85eab0bc8fdfbe2360a9a22ab27f9014ebbb22f03952bfc014d682e2a0cbf90fcd365b4295df266a64419deebbce38aa7b5b7af9c979cc20 SHA512 65bde402804e95a09142bc2a9866bbef14068b63d09236d70086e15c3927ef29fb75d0859a90aa4bc75ebe03f94da85284b233fb41b95246bb45d1d8fee172ed
+DIST hip-test-6.4.1.tar.gz 1570619 BLAKE2B a528ca4c3faf7a2830200d64745018af4856e5f15d398817f8d0603d266d7e15d1767223bb4e2682b8d0a545f965651f81d3e97f1127b695545a1df5f07e6dad SHA512 bdc7f92b999a244e9ab4186a9d5c2ca12af56fba0cc4160bd10bbf7c42f5ba4bc5a9d0cec443c60f62c65fa3096f895e6699c6556d5f95f5d1bf7d1964a15184
DIST rocm-5.7.0.tar.gz 845881 BLAKE2B 08255edc1407e5ef85895336b11496319695318fce265565728ad75175b5e1dfab98f696fee2d27e60c48e862f721fad4c53118cc70b807353fff5f97ed72ac2 SHA512 72420e16c7cfe9687e030331838666dabaa43d686bdad1d109431e44db99070a2cf6dd64b59e3275019abedd6612f6008c798a79275e7225b6b122fb9f644660
DIST rocm-clr-5.7.1.tar.gz 2008647 BLAKE2B 3db0760d6f83504e60caf88a2dd5e0bc02c7db9d6f263ad0eb2cfc79aa0f88a3699c412844a0158a796d9d02e79660287e791edad787d814eefffea4fd2298b4 SHA512 d79323481d82fc02c12a32cdcc0d14437d512af023e7737db0387b7eecb27fe6e4ae7c71d6adce57932a04bb24c880440d9dc10aeb5af11a4f2ca64d44330965
DIST rocm-clr-6.1.1.tar.gz 2031034 BLAKE2B b0485bb015d31986f4988d1db0c029c826856e50b5bb1b58fac2097c14b3966668f1b8d41ec198889e27ac860497a8b3c081ec31d52390d5c9ff5db092bf7cce SHA512 86925e8b9a9e77b06a57daefbc7279887b4ef7c6a79c3717bc2f2d3bf29926281c60063fd17e21c65d7def520d9f579bf88f69051d053a38750ba968f69ca3fc
DIST rocm-clr-6.1.2.tar.gz 2031283 BLAKE2B d51d32a77794ea97f1a3817786c9fd6b482106b665eea6e2c9b4c11e4dce19a3486386eb5ba111554c2d82c30e2a93add7502eed5768caf3fb709fb5fbb2e71b SHA512 e97224451864efe0084c4117f54893c9624a6a9f365a0b4abad08fd9635f008dea742dc589429fbb714e1b8177d06362c0f5a741f6c4a050d0fd4d48da72d54b
DIST rocm-clr-6.3.2.tar.gz 2095677 BLAKE2B 2f1122a2058f8ba358fe48a46473f23c46a5413fef16515f103c21a8ae13bb76522fbe587cb9c9e6e3dd06f968402b6a881391823c80381c0c41072597c845ac SHA512 5bade294dc6fc60bf459bfd7124c354f2b0079167d3c8776a9e3d6d8320bb9b1a2a0770a466987e164994293024bf47de158ba207f077968dfccb7bf20fb884b
DIST rocm-clr-6.3.3.tar.gz 2095704 BLAKE2B bdb315fc9f1f9c76aa2a345bd48a600c81f3b72eb68fee8862b5e155e7519bef6f6421698a43358c6fe0200bb0b6924ff819860d9a91a5c07fc3e9d44eeb1b16 SHA512 94d2959b981b324e0dae2d06e86c72cd01fa495de081666bcec2445c02bada22aa60e94ecac0ee63e70e52275f92caeefcb6dc96a3f0fba593896be7b0d8ab42
+DIST rocm-clr-6.4.1.tar.gz 2124791 BLAKE2B de500518740f472c2cc5d7f55a58793d37ca42f0cfe9d47b1f2de0258aa92591510f8cfcafcfc4ba2008c5d1b4301b29208bff57213fea028b0b7e9eb7b3cb4c SHA512 8d4c09cb8ccc633e214bbe646f8bbbcc1797bee71559ac0d3b09548ee271edc049db2ff8d9c8f849bb14c986770b06cd2238650b3fbb9799466aa5b5bdd7d7d6
diff --git a/dev-util/hip/files/hip-6.4.1-no-glibcxx-assert.patch b/dev-util/hip/files/hip-6.4.1-no-glibcxx-assert.patch
new file mode 100644
index 000000000000..b73c5cad8dbb
--- /dev/null
+++ b/dev-util/hip/files/hip-6.4.1-no-glibcxx-assert.patch
@@ -0,0 +1,26 @@
+stdlibc++ of GCC-15 adds __glibcxx_assert in std::clamp, std::array, etc,
+which breaks HIP code. However, `clang -x hip` autoloads few files,
+one of them is <hip/hip_version.h> (the only one from dev-util/hip),
+where we can undefine __glibcxx_assert until it is fixed in stdlibc++.
+
+Upstream bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115740
+Bug: https://bugs.gentoo.org/955623
+--- a/hipamd/CMakeLists.txt
++++ b/hipamd/CMakeLists.txt
+@@ -314,6 +314,16 @@ set(_versionInfoHeader
+ #define HIP_VERSION_BUILD_NAME \"${HIP_VERSION_BUILD_NAME}\"
+ #define HIP_VERSION (HIP_VERSION_MAJOR * 10000000 + HIP_VERSION_MINOR * 100000 + HIP_VERSION_PATCH)\n
+ #define __HIP_HAS_GET_PCH ${_pchStatus}\n
++
++// Workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115740
++#if defined(__has_include) && defined(__cplusplus) && defined(__HIP__)
++ #if __has_include(\"bits/c++config.h\")
++ #include <bits/c++config.h>
++ #undef __glibcxx_assert
++ #define __glibcxx_assert(cond)
++ #endif
++#endif
++
+ #endif\n
+ ")
+ file(WRITE "${PROJECT_BINARY_DIR}/include/hip/hip_version.h" ${_versionInfoHeader})
diff --git a/dev-util/hip/hip-6.3.3-r1.ebuild b/dev-util/hip/hip-6.3.3-r2.ebuild
index a1a628470fc0..fc755573a506 100644
--- a/dev-util/hip/hip-6.3.3-r1.ebuild
+++ b/dev-util/hip/hip-6.3.3-r2.ebuild
@@ -81,6 +81,7 @@ PATCHES=(
"${FILESDIR}/${PN}-6.2.4-libcxx.patch"
"${FILESDIR}/${PN}-6.3.0-no-isystem-usr-include.patch"
"${FILESDIR}/${PN}-6.3.0-clr-fix-libcxx.patch"
+ "${FILESDIR}/${PN}-6.4.1-no-glibcxx-assert.patch"
)
hip_test_wrapper() {
@@ -114,7 +115,8 @@ src_prepare() {
sed -e "s/ -Werror//g" -i "hipamd/src/CMakeLists.txt" || die
- sed -i -e 's/cmake_minimum_required(VERSION 3.3)/cmake_minimum_required(VERSION 3.5)/' hipamd/src/hiprtc/cmake/hiprtc-config.cmake.in || die
+ sed -e 's/cmake_minimum_required(VERSION 3.3)/cmake_minimum_required(VERSION 3.5)/' \
+ -i hipamd/src/hiprtc/cmake/hiprtc-config.cmake.in || die
cmake_src_prepare
diff --git a/dev-util/hip/hip-6.4.1.ebuild b/dev-util/hip/hip-6.4.1.ebuild
new file mode 100644
index 000000000000..b1a1a69d3995
--- /dev/null
+++ b/dev-util/hip/hip-6.4.1.ebuild
@@ -0,0 +1,248 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="doxygen"
+DOCS_DEPEND="media-gfx/graphviz"
+ROCM_SKIP_GLOBALS=1
+
+LLVM_COMPAT=( 20 )
+
+inherit cmake docs flag-o-matic llvm-r1 rocm
+
+TEST_PV=${PV}
+
+DESCRIPTION="C++ Heterogeneous-Compute Interface for Portability"
+HOMEPAGE="https://github.com/ROCm/clr"
+SRC_URI="
+ https://github.com/ROCm/clr/archive/refs/tags/rocm-${PV}.tar.gz -> rocm-clr-${PV}.tar.gz
+ https://github.com/ROCm/HIP/archive/refs/tags/rocm-${PV}.tar.gz -> hip-${PV}.tar.gz
+ test? (
+ https://github.com/ROCm/hip-tests/archive/refs/tags/rocm-${TEST_PV}.tar.gz -> hip-test-${TEST_PV}.tar.gz
+ )
+"
+S="${WORKDIR}/clr-rocm-${PV}/"
+TEST_S="${WORKDIR}/hip-tests-rocm-${TEST_PV}/catch"
+HIP_S="${WORKDIR}/hip-rocm-${PV}"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+IUSE="debug +hip opencl test video_cards_amdgpu video_cards_nvidia"
+
+# some tests are broken
+RESTRICT="test"
+
+REQUIRED_USE="
+ || ( hip opencl )
+ ^^ ( video_cards_amdgpu video_cards_nvidia )
+"
+
+DEPEND="
+ video_cards_amdgpu? (
+ dev-util/rocminfo:${SLOT}
+ dev-libs/rocm-comgr:${SLOT}
+ dev-libs/rocr-runtime:${SLOT}
+ )
+ video_cards_nvidia? (
+ dev-libs/hipother:${SLOT}
+ )
+ x11-base/xorg-proto
+ virtual/opengl
+"
+BDEPEND="
+ video_cards_amdgpu? (
+ dev-util/hipcc:${SLOT}[${LLVM_USEDEP}]
+ )
+ test? (
+ media-libs/freeglut
+ )
+"
+RDEPEND="${DEPEND}
+ opencl? (
+ !dev-libs/opencl-icd-loader
+ !dev-libs/rocm-opencl-runtime
+ !dev-util/clinfo
+ !dev-util/opencl-headers
+ )
+ video_cards_amdgpu? (
+ dev-util/hipcc:${SLOT}[${LLVM_USEDEP}]
+ dev-libs/rocm-device-libs:${SLOT}
+ dev-libs/roct-thunk-interface:${SLOT}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7.1-no_asan_doc.patch"
+ "${FILESDIR}/${PN}-6.3.0-install.patch"
+ "${FILESDIR}/${PN}-6.1.1-fix-musl.patch"
+ "${FILESDIR}/${PN}-6.2.4-libcxx.patch"
+ "${FILESDIR}/${PN}-6.3.0-no-isystem-usr-include.patch"
+ "${FILESDIR}/${PN}-6.3.0-clr-fix-libcxx.patch"
+ "${FILESDIR}/${PN}-6.4.1-no-glibcxx-assert.patch"
+)
+
+hip_test_wrapper() {
+ local CMAKE_USE_DIR="${TEST_S}"
+ local BUILD_DIR="${TEST_S}_build"
+ cd "${TEST_S}" || die
+ "${@}"
+}
+
+src_prepare() {
+ pushd "${HIP_S}" >/dev/null || die
+ eapply "${FILESDIR}/${PN}-6.3.0-hip-fix-libcxx.patch"
+
+ # hipamd is itself built by cmake, and should never provide a
+ # FindHIP.cmake module. But the reality is some package relies on it.
+ # Set HIP and HIP Clang paths directly, don't search using heuristics
+ sed -e "s:# Search for HIP installation:set(HIP_ROOT_DIR \"${EPREFIX}/usr\"):" \
+ -e "s:#Set HIP_CLANG_PATH:set(HIP_CLANG_PATH \"$(get_llvm_prefix -d)/bin\"):" \
+ -i "cmake/FindHIP.cmake" || die
+ popd >/dev/null || die
+
+ sed "s/ -Werror//g" -i "hipamd/src/CMakeLists.txt" || die
+
+ sed "/cmake_minimum_required/ s/3\.3/3.5/" -i "hipamd/src/hiprtc/cmake/hiprtc-config.cmake.in" || die
+
+ cmake_src_prepare
+
+ if use test; then
+ local PATCHES=(
+ "${FILESDIR}"/hip-test-6.3.0-hipcc-system-install.patch
+ "${FILESDIR}"/hip-test-5.7.1-remove-incompatible-flag.patch
+ "${FILESDIR}"/hip-test-6.1.1-fix-musl.patch
+ )
+ sed -e "s/-Werror //" -e "s/-Wall -Wextra //" -i "${TEST_S}/CMakeLists.txt" || die
+
+ hip_test_wrapper cmake_src_prepare
+ fi
+}
+
+src_configure() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/858383
+ # https://github.com/ROCm/clr/issues/64
+ #
+ # Do not trust it for LTO either
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ use debug && CMAKE_BUILD_TYPE="Debug"
+
+ # Fix ld.lld linker error: https://github.com/ROCm/HIP/issues/3382
+ # See also: https://github.com/gentoo/gentoo/pull/29097
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ local mycmakeargs=(
+ -DCMAKE_PREFIX_PATH="$(get_llvm_prefix)"
+ -DCMAKE_SKIP_RPATH=ON
+ -D__HIP_ENABLE_PCH=OFF
+
+ -DCLR_BUILD_HIP="$(usex hip)"
+ -DCLR_BUILD_OCL="$(usex opencl)"
+
+ -DHIP_COMMON_DIR="${HIP_S}"
+ -DHIP_ENABLE_ROCPROFILER_REGISTER=OFF
+ -DHIPCC_BIN_DIR="${EPREFIX}/usr/bin"
+ -DROCM_PATH="${EPREFIX}/usr"
+ -DUSE_PROF_API=OFF
+ -DFILE_REORG_BACKWARD_COMPATIBILITY=OFF
+
+ -DOpenGL_GL_PREFERENCE="GLVND"
+ -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
+ )
+
+ if use video_cards_amdgpu; then
+ mycmakeargs+=(
+ -DHIP_PLATFORM="amd"
+ )
+ elif use video_cards_nvidia; then
+ mycmakeargs+=(
+ -DHIPNV_DIR="${EPREFIX}/usr"
+ -DHIP_PLATFORM="nvidia"
+ )
+ fi
+
+ cmake_src_configure
+
+ if use test; then
+ local mycmakeargs=(
+ -DCMAKE_MODULE_PATH="${TEST_S}/external/Catch2/cmake/Catch2"
+ -DROCM_PATH="${EPREFIX}/usr"
+ -DCMAKE_NO_SYSTEM_FROM_IMPORTED=ON
+ -Wno-dev
+
+ # 1) Use custom build of hipamd instead of system one
+ # 2) Build fails with libc++: https://github.com/llvm/llvm-project/issues/119076
+ -DCMAKE_CXX_FLAGS="-I${BUILD_DIR}/hipamd/include -stdlib=libstdc++"
+ -DCMAKE_EXE_LINKER_FLAGS="-L${BUILD_DIR}/hipamd/lib"
+ )
+ if use video_cards_amdgpu; then
+ mycmakeargs+=(
+ -DHIP_PLATFORM="amd"
+ )
+ elif use video_cards_nvidia; then
+ mycmakeargs+=(
+ -DHIP_PLATFORM="nvidia"
+ )
+ fi
+ hip_test_wrapper cmake_src_configure
+ fi
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use test; then
+ hip_test_wrapper cmake_src_compile build_tests
+ fi
+}
+
+src_test() {
+ check_amdgpu
+ export LD_LIBRARY_PATH="${BUILD_DIR}/hipamd/lib"
+
+ # TODO: research how to test Vulkan-related features.
+ local CMAKE_SKIP_TESTS=(
+ Unit_hipExternalMemoryGetMappedBuffer_Vulkan_Positive_Read_Write
+ Unit_hipExternalMemoryGetMappedBuffer_Vulkan_Negative_Parameters
+ Unit_hipImportExternalMemory_Vulkan_Negative_Parameters
+ Unit_hipWaitExternalSemaphoresAsync_Vulkan_Positive_Binary_Semaphore
+ Unit_hipWaitExternalSemaphoresAsync_Vulkan_Positive_Multiple_Semaphores
+ Unit_hipWaitExternalSemaphoresAsync_Vulkan_Negative_Parameters
+ Unit_hipSignalExternalSemaphoresAsync_Vulkan_Positive_Binary_Semaphore
+ Unit_hipSignalExternalSemaphoresAsync_Vulkan_Positive_Multiple_Semaphores
+ Unit_hipSignalExternalSemaphoresAsync_Vulkan_Negative_Parameters
+ Unit_hipImportExternalSemaphore_Vulkan_Negative_Parameters
+ Unit_hipDestroyExternalSemaphore_Vulkan_Negative_Parameters
+ )
+
+ MAKEOPTS="-j1" hip_test_wrapper cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ # add version file that is required by some libraries
+ mkdir "${ED}"/usr/include/rocm-core || die
+ cat <<-EOF > "${ED}"/usr/include/rocm-core/rocm_version.h || die
+ #pragma once
+ #define ROCM_VERSION_MAJOR $(ver_cut 1)
+ #define ROCM_VERSION_MINOR $(ver_cut 2)
+ #define ROCM_VERSION_PATCH $(ver_cut 3)
+ #define ROCM_BUILD_INFO "$(ver_cut 1-3).0-9999-unknown"
+ EOF
+
+ dosym -r /usr/include/rocm-core/rocm_version.h /usr/include/rocm_version.h
+
+ if use video_cards_nvidia; then
+ newenvd - 99hipconfig <<-EOF
+ HIP_PLATFORM="nvidia"
+ HIP_RUNTIME="cuda"
+ CUDA_PATH="${EPREFIX}/opt/cuda"
+ EOF
+ fi
+}
diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest
index 17ea85ccf749..bcdf6bfd6e77 100644
--- a/dev-util/hipcc/Manifest
+++ b/dev-util/hipcc/Manifest
@@ -3,3 +3,4 @@ DIST llvm-project-rocm-6.1.1.tar.gz 196027084 BLAKE2B 3ef0b6e3c47c66fd80289373e6
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
diff --git a/dev-util/hipcc/hipcc-6.4.1.ebuild b/dev-util/hipcc/hipcc-6.4.1.ebuild
new file mode 100644
index 000000000000..4a6c644e5d72
--- /dev/null
+++ b/dev-util/hipcc/hipcc-6.4.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 20 )
+inherit cmake perl-functions llvm-r1
+
+DESCRIPTION="Radeon Open Compute hipcc"
+HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/hipcc"
+
+MY_P=llvm-project-rocm-${PV}
+components=( "amd/hipcc" )
+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
+
+LICENSE="Apache-2.0 MIT"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ $(llvm_gen_dep '
+ llvm-runtimes/compiler-rt:${LLVM_SLOT}=
+ llvm-core/llvm:${LLVM_SLOT}=
+ llvm-core/clang:${LLVM_SLOT}=
+ ')
+"
+RDEPEND="${DEPEND}"
+
+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() {
+ cmake_src_prepare
+
+ sed -e "s:lib/llvm/bin:lib/llvm/${LLVM_SLOT}/bin:" \
+ -e "s:/opt/rocm:/usr:g" \
+ -i bin/hipvars.pm \
+ -i src/hipBin_base.h \
+ -i src/hipBin_amd.h || die
+
+ sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:g" \
+ -i src/hipBin_amd.h || die
+}
+
+src_install() {
+ cmake_src_install
+ # rm unwanted copy
+ rm -rf "${ED}/usr/hip" || die
+ # Handle hipvars.pm
+ rm "${ED}/usr/bin/hipvars.pm" || die
+ perl_domodule "${S}"/bin/hipvars.pm
+}
diff --git a/dev-util/hipify-clang/Manifest b/dev-util/hipify-clang/Manifest
index a70988bc004f..236630b33daa 100644
--- a/dev-util/hipify-clang/Manifest
+++ b/dev-util/hipify-clang/Manifest
@@ -2,3 +2,4 @@ DIST HIPIFY-5.7.1.tar.gz 673452 BLAKE2B e0293c1b7f9ea028efc8d712ddedae4ec933c5bc
DIST HIPIFY-6.1.1.tar.gz 813425 BLAKE2B accc661431f11796d0c8bcf638537a6035020b2a36ebe66c1b8c10bb63b762418d5fd1f256f3a3e51d2ace224a6492abfe72838bef859b1da68c2126cc3521be SHA512 29c45e312c8e2f0d06916b57f24eba27ba7beae3bd860850b57cfe27c87df22aabe9fdcf3d12671b81e68b61c3974aaf0064e96ae68392d181148aaeef14f1c7
DIST HIPIFY-6.3.2.tar.gz 978994 BLAKE2B 7f35d462f69ab298485ef27b53624676071be551d671532383f246dbe6cd133ce1b30fb98d5457b82a0a9a01070cc6050e14f4f8fdecbf04a9b589309c3afd67 SHA512 26fc5db270e661d3ca380dfd570f2b46108c41b808f84413b27c4b6efaf6796ae625d4489c2278c253345d8a25408f636fde476be380b08d489254e20b8a12c0
DIST HIPIFY-6.3.3.tar.gz 978886 BLAKE2B 391afa3ca27651597264ada3f1ef8f2a3ed75d7f0bbd29b868e89d0ecd6a76986fb4b74e15d62c7a0990d5e8a6c5e92cf4e987ddbf3fb5e45eddd2f9d22c9b45 SHA512 5fe529db7ef9de56e127ced21c62b45b770aa383913bd9d373e7c4eb16e1028a6414ae25aa2f40c79b45f5a2dcb4318cd6773cf821c814bfd545431512cae490
+DIST HIPIFY-6.4.1.tar.gz 995674 BLAKE2B cf0e9709bd30b4f2df7144c642a2c287aa8c2e87bc34c279ed4380ccd297fa42e68e9c177f96f45ec7d0e0675f26a93bd4ceea294fe667809d287b3054b9d83b SHA512 b93c9698c2d253c6eb1daad6d6e3113168c5e2c02c2d847203208716ced61398983d50e9efe307557e6adc642101a2642bb5e43b4b9829217f02f11ab477de9b
diff --git a/dev-util/hipify-clang/hipify-clang-6.4.1.ebuild b/dev-util/hipify-clang/hipify-clang-6.4.1.ebuild
new file mode 100644
index 000000000000..34f16f8bd27a
--- /dev/null
+++ b/dev-util/hipify-clang/hipify-clang-6.4.1.ebuild
@@ -0,0 +1,58 @@
+# 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
+
+DESCRIPTION="A set of tools to translate CUDA source code into portable HIP C++"
+HOMEPAGE="https://github.com/ROCm/HIPIFY"
+SRC_URI="https://github.com/ROCm/HIPIFY/archive/rocm-${PV}.tar.gz -> HIPIFY-${PV}.tar.gz"
+S="${WORKDIR}/HIPIFY-rocm-${PV}"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+BDEPEND=">=dev-build/cmake-3.22"
+DEPEND="
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}=
+ llvm-core/llvm:${LLVM_SLOT}=
+ ')
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7.1-fix-clang-libs.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+ sed -i 's:/../libexec/hipify::' \
+ bin/hipconvertinplace.sh bin/hipconvertinplace-perl.sh \
+ bin/hipexamine-perl.sh bin/hipexamine.sh || die
+}
+
+src_configure() {
+ # 928906: CMakeLists.txt ignores CC/CXX, switches compiler to clang
+ # and fails if non-compatible CFLAGS/CXXFLAGS are used
+ strip-unsupported-flags
+
+ local mycmakeargs=(
+ -DCMAKE_PREFIX_PATH="$(get_llvm_prefix)/$(get_libdir)/cmake/llvm"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ fperms +x /usr/bin/hipconvertinplace-perl.sh
+ fperms +x /usr/bin/hipconvertinplace.sh
+ fperms +x /usr/bin/hipexamine-perl.sh
+ fperms +x /usr/bin/hipexamine.sh
+ fperms +x /usr/bin/hipify-perl
+}
diff --git a/dev-util/lttng-modules/Manifest b/dev-util/lttng-modules/Manifest
index 396849d84480..dc9b45df91c0 100644
--- a/dev-util/lttng-modules/Manifest
+++ b/dev-util/lttng-modules/Manifest
@@ -1,2 +1,3 @@
DIST lttng-modules-2.13.15.tar.bz2 355980 BLAKE2B 96ebeaac275151464cc8dea1de209f034dde1b26426bc23669f36f026f140c4b5613e10b91b0fc16dc18e26c05e7c0e67e7fc86af00d8f70b87bfaf49e5b7fdb SHA512 1c9091306d95339b5a09f0ef6141e9e6a96461aa9801f264c44780eb2130137fca6fe544ea0c18e84d3cb784d82107419286272b37f53d292ca8b664c06c242b
DIST lttng-modules-2.13.16.tar.bz2 356182 BLAKE2B aee4c7f602a403ac319ed07eeb2dd079a91707b64b8e7ff948027e05ba1db51416b8922e7a623dd32a81cbd16c68c8406b59a76cbc91421b623b19aeb8631a1b SHA512 98dddfc4aa739081b03c355f212f143a249b90b1a26c34c2af8e7502643f388990bc9b5a37bab02c1a562246219a9b7bd8a1daa0bacf6ec4afef9a3b93415d70
+DIST lttng-modules-2.13.19.tar.bz2 372741 BLAKE2B 9e0948250fd7aaa7187fe65329bcda3867fae27ca03b77c2b5387adff11bc2348b610142490195c8a253ada190db85830ea3c973283929b62aa08284bdcd2564 SHA512 adeb8c3815ac43f0b21b1a22c68d7a28e99c124018936abb3a511912f09a74c1963a735d3aedcb92c751086fc4f6cb725cd95682640aaff660cef102a0951693
diff --git a/dev-util/lttng-modules/lttng-modules-2.13.19.ebuild b/dev-util/lttng-modules/lttng-modules-2.13.19.ebuild
new file mode 100644
index 000000000000..296203d71428
--- /dev/null
+++ b/dev-util/lttng-modules/lttng-modules-2.13.19.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump the following packages together:
+# dev-util/lttng-modules
+# dev-util/lttng-tools
+# dev-util/lttng-ust
+
+inherit linux-mod-r1
+
+MY_P="${P/_rc/-rc}"
+MY_SLOT="$(ver_cut 1-2)"
+
+DESCRIPTION="LTTng Kernel Tracer Modules"
+HOMEPAGE="https://lttng.org"
+SRC_URI="https://lttng.org/files/${PN}/${MY_P}.tar.bz2"
+
+S="${WORKDIR}/${MY_P}"
+LICENSE="GPL-2"
+SLOT="0/${MY_SLOT}"
+
+KEYWORDS="~amd64 ~x86"
+
+CONFIG_CHECK="MODULES KALLSYMS HIGH_RES_TIMERS TRACEPOINTS
+ ~HAVE_SYSCALL_TRACEPOINTS ~PERF_EVENTS ~EVENT_TRACING ~KPROBES KRETPROBES"
+MODULES_KERNEL_MIN=3.0
+
+src_compile() {
+ MODULES_MAKEARGS+=(
+ KERNELDIR="${KV_OUT_DIR}"
+ )
+ emake "${MODULES_MAKEARGS[@]}"
+}
+
+src_install() {
+ emake "${MODULES_MAKEARGS[@]}" INSTALL_MOD_PATH="${ED}" modules_install
+ modules_post_process
+
+ dodoc ChangeLog README.md
+}
diff --git a/dev-util/lttng-tools/Manifest b/dev-util/lttng-tools/Manifest
index bc1ba823ec59..fa5ab47237c2 100644
--- a/dev-util/lttng-tools/Manifest
+++ b/dev-util/lttng-tools/Manifest
@@ -1,2 +1,3 @@
DIST lttng-tools-2.12.17.tar.bz2 1627001 BLAKE2B db080e433320e1b9129a40e3e12bbf7c7071d80486953a6c2b2da3cdf8568d6ab8ed69fd61a477c56b940a3e144327ec4f813821f5e2bd2097a91c13a7276b35 SHA512 25480505e7f12b0a9abdfbbdc96cf12223a143bf13f436f2a1fbf616940323bcf088d51e0abcc72dad24cae237fca07620ff187ab437088e4ec808e6b47d4bb3
DIST lttng-tools-2.13.14.tar.bz2 1932238 BLAKE2B f079051502d01ffc67c4f8f0bbcdf3a4428546c652dcc352918c4908a37aeb510dd66309306cec835297c8d2f276e5cbd22ea4efef6866d3c0c0cf8651d68ef8 SHA512 61bdebb539cfb4eb61c9806e98742f39dc032d849b03d90cdb98d1891bd5bfbd0cb1f54bbc7bf79a11505ce7fee558497312d650bb41f11f739884e7cb8a750f
+DIST lttng-tools-2.13.15.tar.bz2 1934955 BLAKE2B 3942ef4a48995329300ddf926a590b5eafbd75847f100e739b4a54be0ddeae41f7acfff0e24243fc41c876dc57be6a13157958ba1fa65111e272d4a7d50280ee SHA512 0aaef9e298e5ec6f4c60d337277ca83aa86af17a1ebdeb976f000a68a8a99a1e4e0d1b88dae3c09171ca903d1ae1118819d4e3981fc4f9aade23b8370db2c367
diff --git a/dev-util/lttng-tools/lttng-tools-2.13.15.ebuild b/dev-util/lttng-tools/lttng-tools-2.13.15.ebuild
new file mode 100644
index 000000000000..f3b312df1926
--- /dev/null
+++ b/dev-util/lttng-tools/lttng-tools-2.13.15.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic
+
+# Please bump the following packages together:
+# dev-util/lttng-modules
+# dev-util/lttng-tools
+# dev-util/lttng-ust
+
+MY_P="${P/_rc/-rc}"
+MY_SLOT="$(ver_cut 1-2)"
+
+DESCRIPTION="Linux Trace Toolkit - next generation"
+HOMEPAGE="https://lttng.org"
+SRC_URI="https://lttng.org/files/${PN}/${MY_P}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0/${MY_SLOT}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ust"
+# Lots of failures including hangs (bug #762475)
+RESTRICT="test"
+
+DEPEND="
+ >=dev-libs/userspace-rcu-0.11.0:=
+ dev-libs/popt
+ >=dev-libs/libxml2-2.7.6:=
+ ust? ( >=dev-util/lttng-ust-${MY_SLOT}.0:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ pthread_get_name_np # different from pthread_getname_*, not on linux
+ pthread_set_name_np # different from pthread_setname_*, not on linux
+)
+
+src_configure() {
+ # bug 906928
+ use elibc_musl && append-cppflags -D_LARGEFILE64_SOURCE
+
+ local myeconfargs=(
+ $(usex ust "" --without-lttng-ust)
+ --disable-test-sdt-uprobe
+ --disable-Werror
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-util/lttng-ust/Manifest b/dev-util/lttng-ust/Manifest
index a398c767a940..e4bc7629098b 100644
--- a/dev-util/lttng-ust/Manifest
+++ b/dev-util/lttng-ust/Manifest
@@ -2,3 +2,4 @@ DIST lttng-ust-2.12.10.tar.bz2 801458 BLAKE2B f9dd2242e0979334c3bfaf5146af1b4732
DIST lttng-ust-2.12.9.tar.bz2 800795 BLAKE2B 467500f7fd0f473a5cd7af6c23e8f0f83516d57ad573f92c48354bbe1ea1d2fea08bd20d7675e7698adf2284a5069fd23d3a929bc11df0ba157a99091b543777 SHA512 5edaa6c015bccd710e7bfea136398e8bc784946c22933a011f4b31b9c13fa772c4f03d0c42543bf0d08a810922498ff1fa56d4bccd9c5b8c4b14925c849c6c9b
DIST lttng-ust-2.13.6.tar.bz2 1351915 BLAKE2B c350a7302e38035ef7c6727ea942907ec606c88862ae875bed0a7c833f233b4159405bcb7a41549dccf3d79491151066d593c52d9f06b95b61c345ccbace62f5 SHA512 15458f8dd0ad6fa96a9cf7569ffabadfddcaa70b822b69b39d4d7dfba3701c9489706b06f12f9d7e376147299fb3cfc6fe1213d46d510bdb7b3dc834271da55f
DIST lttng-ust-2.13.8.tar.bz2 1358168 BLAKE2B f4f623c9c1a37395312270803c7e845ba76d6075c10cc6bdcfdd6f35d0cb6db9c303a9fb8c33a50e201c84fd772ed60611bfce9e962e27c4d5820b6ef0ac2d66 SHA512 f61f7e1633051a4d515ba28d4945b96a84eab8a8143ef698bbb6857cbaad1acbe238041e43f04d9818bac43f59023be3f3c2154ecf75f180d8233c9d7f65c555
+DIST lttng-ust-2.13.9.tar.bz2 1359608 BLAKE2B 2137a2cffa12d98b347f2afe249f9b50fcb0b74c2352d101a8ce076975da407d9a3451da3e559ae43d094c4c39fd3647e4cc8b6fdb19dc8f1a3abbc53ea5b36a SHA512 d2bf449e0d283ee80937aa1691c48ce1cc8beb4996a4ef79078bcc2c4584bc650746ef72e927679cd6e6e54546aced40943070d46008ac9c944b6c16e2347670
diff --git a/dev-util/lttng-ust/lttng-ust-2.13.9.ebuild b/dev-util/lttng-ust/lttng-ust-2.13.9.ebuild
new file mode 100644
index 000000000000..c8ed348b9813
--- /dev/null
+++ b/dev-util/lttng-ust/lttng-ust-2.13.9.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump the following packages together:
+# dev-util/lttng-modules
+# dev-util/lttng-tools
+# dev-util/lttng-ust
+
+inherit flag-o-matic
+
+MY_P="${P/_rc/-rc}"
+MY_SLOT="$(ver_cut 1-2)"
+
+DESCRIPTION="Linux Trace Toolkit - UST library"
+HOMEPAGE="https://lttng.org"
+SRC_URI="https://lttng.org/files/${PN}/${MY_P}.tar.bz2"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0/${MY_SLOT}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="examples numa test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=dev-libs/userspace-rcu-0.12:=
+ numa? ( sys-process/numactl )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ test? ( dev-lang/perl )
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ pthread_get_name_np # different from pthread_getname_*, not on linux
+ pthread_set_name_np # different from pthread_setname_*, not on linux
+)
+
+src_configure() {
+ # bug #880357
+ strip-flags
+
+ local myeconfargs=(
+ $(use_enable examples)
+ $(use_enable numa)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-util/rocm-smi/Manifest b/dev-util/rocm-smi/Manifest
index 162d85675b4d..1a2bcca3ed91 100644
--- a/dev-util/rocm-smi/Manifest
+++ b/dev-util/rocm-smi/Manifest
@@ -2,3 +2,4 @@ DIST rocm-smi-5.7.1.tar.gz 801646 BLAKE2B b4799bbdaeb7203c16117cd30511d589a2b96e
DIST rocm-smi-6.1.1.tar.gz 872628 BLAKE2B 35830fd0eb36688b3803bed2059f29ba4d8613112ae4cfff2e0a3b1d7afef9f0d77ec16771e2205ba351df0aa678c3b0d2436940b76d10d020f1a30d14d760e9 SHA512 3e31ff0d94e7f0ea650c985973b27107e3f7293b92857fbf2fe196b61632c530e95c3228ad7550d44f8ee9f5f1abfd17e5c2b19164759728fb6d4b0995455fa7
DIST rocm-smi-6.3.2.tar.gz 902982 BLAKE2B 8b9f544d7ab66a8728f8e8fa0e217e2177fc8666c5cce47cdd59246c2309feedb63f59894fa53d5433acd462e5274826d411d5b052f6f61291e76516d3bf4dd5 SHA512 bdd7825a1147452cc9927d446cfb1f10ffa34fb63bdbb842e8e0f6a2126c3a2855e5bca2e6663c103f4b13d46656190b14d13aee3cf1a2f967f72305f15ce338
DIST rocm-smi-6.3.3.tar.gz 902980 BLAKE2B 8a8f80c4fb5485dc65b340ba4da2bb73061b989757ca6147d7d401dcbdbba5edbd1f68de78f66adcc5a6611a8ce870dfea6cbc31863918d6da9e9a7cb812746b SHA512 0f722effb404f605bef08f22eb4c4ecfb076ee10d112daf6a82f81d78e5279a185f497919b2d9ea414236761d1fa52231a6168a156f33b7f47a93857e30d7449
+DIST rocm-smi-6.4.1.tar.gz 934699 BLAKE2B 418ea7680118cf78f4ab9c8eaa8897360815519bdb0877e095fa7c5abe0d2e6c7db1d63098b8f75613e4fae9107d5581bfe7afd7fecef76f56de9231ce5d59ce SHA512 e8701f8746a48ebd6a22e919f14219e02992840003183e85811b4c94c7330efb1c487e8767a6504f4240fbbdc397b3e4e6a9ce0527e9635eb1bb944f412a8345
diff --git a/dev-util/rocm-smi/files/rocm-smi-6.4.1-log-exceptions.patch b/dev-util/rocm-smi/files/rocm-smi-6.4.1-log-exceptions.patch
new file mode 100644
index 000000000000..0e09b98269f8
--- /dev/null
+++ b/dev-util/rocm-smi/files/rocm-smi-6.4.1-log-exceptions.patch
@@ -0,0 +1,16 @@
+Log some more information, not just Exception caught: rsmi_init.
+
+Upstream PR: https://github.com/ROCm/rocm_smi_lib/pull/213#issuecomment-2972588767
+Bug: https://bugs.gentoo.org/957064
+--- a/src/rocm_smi.cc
++++ b/src/rocm_smi.cc
+@@ -485,6 +485,9 @@ rsmi_init(uint64_t flags) {
+ if (smi.ref_count() == 1) {
+ try {
+ smi.Initialize(flags);
++ } catch(const amd::smi::rsmi_exception& e) {
++ smi.Cleanup();
++ throw;
+ } catch(...) {
+ smi.Cleanup();
+ throw amd::smi::rsmi_exception(RSMI_STATUS_INIT_ERROR, __FUNCTION__); \ No newline at end of file
diff --git a/dev-util/rocm-smi/files/rocm-smi-6.4.1-set-soversion.patch b/dev-util/rocm-smi/files/rocm-smi-6.4.1-set-soversion.patch
new file mode 100644
index 000000000000..1d07aca0b77a
--- /dev/null
+++ b/dev-util/rocm-smi/files/rocm-smi-6.4.1-set-soversion.patch
@@ -0,0 +1,106 @@
+Switch from extracting version with git to version from ebuild filename.
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,21 +38,17 @@ set(SHARE_INSTALL_PREFIX
+ "share/${ROCM_SMI}"
+ CACHE STRING "Tests and Example install directory")
+
+-# provide git to utilities
+-find_program (GIT NAMES git)
+-
+-
+-## Setup the package version based on git tags.
+-set(PKG_VERSION_GIT_TAG_PREFIX "rsmi_pkg_ver")
+-get_package_version_number("7.6.0" ${PKG_VERSION_GIT_TAG_PREFIX} GIT)
+-message("Package version: ${PKG_VERSION_STR}")
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_MAJOR "${CPACK_PACKAGE_VERSION_MAJOR}")
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_MINOR "${CPACK_PACKAGE_VERSION_MINOR}")
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_PATCH "${CPACK_PACKAGE_VERSION_PATCH}")
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_BUILD "0")
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_HASH "${PKG_VERSION_HASH}")
+-
+-set(${ROCM_SMI_LIBS_TARGET}_VERSION_STRING "${${ROCM_SMI_LIBS_TARGET}_VERSION_MAJOR}.${${ROCM_SMI_LIBS_TARGET}_VERSION_MINOR}.${${ROCM_SMI_LIBS_TARGET}_VERSION_PATCH}+${${ROCM_SMI_LIBS_TARGET}_VERSION_HASH}")
++set(VERSION_MAJOR "@VERSION_MAJOR@")
++set(VERSION_MINOR "@VERSION_MINOR@")
++set(VERSION_PATCH "@VERSION_PATCH@")
++set(PKG_VERSION_STR "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
++set(SO_VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}")
++set(CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}")
++set(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}")
++set(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}")
++set(rocm_smi_VERSION_MAJOR "${VERSION_MAJOR}")
++set(rocm_smi_VERSION_MINOR "${VERSION_MINOR}")
++set(rocm_smi_VERSION_PATCH "${VERSION_PATCH}")
+
+ # The following default version values should be updated as appropriate for
+ # ABI breaks (update MAJOR and MINOR), and ABI/API additions (update MINOR).
+--- a/oam/CMakeLists.txt
++++ b/oam/CMakeLists.txt
+@@ -29,17 +29,6 @@ set(OAM_NAME "oam")
+ set(OAM_COMPONENT "lib${OAM_NAME}")
+ set(OAM_TARGET "${OAM_NAME}")
+
+-################# Determine the library version #########################
+-set(SO_VERSION_GIT_TAG_PREFIX "oam_so_ver")
+-
+-# VERSION_* variables should be set by get_version_from_tag
+-message("Package version: ${PKG_VERSION_STR}")
+-
+-# Debian package specific variables
+-# Set a default value for the package version
+-get_version_from_tag("1.0.0.0" ${SO_VERSION_GIT_TAG_PREFIX} GIT)
+-
+-# VERSION_* variables should be set by get_version_from_tag
+ if ( ${ROCM_PATCH_VERSION} )
+ set ( VERSION_PATCH ${ROCM_PATCH_VERSION})
+ set(SO_VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
+--- a/python_smi_tools/rsmiBindingsInit.py.in
++++ b/python_smi_tools/rsmiBindingsInit.py.in
+@@ -26,17 +26,7 @@ def initRsmiBindings(silent=False):
+ if (rocm_smi_lib_path != None):
+ path_librocm = rocm_smi_lib_path
+ else:
+- path_librocm = os.path.dirname(os.path.realpath(__file__)) + '/../../@CMAKE_INSTALL_LIBDIR@/librocm_smi64.so.@VERSION_MAJOR@'
+-
+- if not os.path.isfile(path_librocm):
+- print_silent('Unable to find %s . Trying /opt/rocm*' % path_librocm)
+- for root, dirs, files in os.walk('/opt', followlinks=True):
+- if 'librocm_smi64.so.@VERSION_MAJOR@' in files:
+- path_librocm = os.path.join(os.path.realpath(root), 'librocm_smi64.so.@VERSION_MAJOR@')
+- if os.path.isfile(path_librocm):
+- print_silent('Using lib from %s' % path_librocm)
+- else:
+- print('Unable to find librocm_smi64.so.@VERSION_MAJOR@')
++ path_librocm = 'librocm_smi64.so'
+
+ # ----------> TODO: Support static libs as well as SO
+ try:
+@@ -44,7 +34,7 @@ def initRsmiBindings(silent=False):
+ return CDLL(path_librocm)
+ except OSError:
+ print('Unable to load the rocm_smi library.\n'\
+- 'Set LD_LIBRARY_PATH to the folder containing librocm_smi64.so.@VERSION_MAJOR@\n'\
++ 'Set LD_LIBRARY_PATH to the folder containing librocm_smi64.so\n'\
+ '{0}Please refer to https://github.com/'\
+ 'RadeonOpenCompute/rocm_smi_lib for the installation guide.{1}'\
+ .format('\33[33m', '\033[0m'))
+--- a/rocm_smi/CMakeLists.txt
++++ b/rocm_smi/CMakeLists.txt
+@@ -31,17 +31,6 @@ set(ROCM_SMI_TARGET "${ROCM_SMI}64")
+ ## Include common cmake modules
+ include(utils)
+
+-################# Determine the library version #########################
+-set(SO_VERSION_GIT_TAG_PREFIX "rsmi_so_ver")
+-
+-# VERSION_* variables should be set by get_version_from_tag
+-message("Package version: ${PKG_VERSION_STR}")
+-
+-# Debian package specific variables
+-# Set a default value for the package version
+-get_version_from_tag("1.0.0.0" ${SO_VERSION_GIT_TAG_PREFIX} GIT)
+-
+-# VERSION_* variables should be set by get_version_from_tag
+ if ( ${ROCM_PATCH_VERSION} )
+ set ( VERSION_PATCH ${ROCM_PATCH_VERSION})
+ set(SO_VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
diff --git a/dev-util/rocm-smi/rocm-smi-6.4.1.ebuild b/dev-util/rocm-smi/rocm-smi-6.4.1.ebuild
new file mode 100644
index 000000000000..c2bc046c9aee
--- /dev/null
+++ b/dev-util/rocm-smi/rocm-smi-6.4.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} python3_13t )
+
+inherit cmake python-r1
+
+DESCRIPTION="ROCm System Management Interface Library"
+HOMEPAGE="https://github.com/ROCm/rocm_smi_lib"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/ROCm/rocm_smi_lib"
+ EGIT_BRANCH="master"
+else
+ SRC_URI="https://github.com/ROCm/rocm_smi_lib/archive/rocm-${PV}.tar.gz -> rocm-smi-${PV}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/rocm_smi_lib-rocm-${PV}"
+fi
+
+LICENSE="MIT NCSA-AMD"
+SLOT="0/$(ver_cut 1-2)"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.7.1-no-strip.patch
+ "${FILESDIR}"/${PN}-5.7.1-remove-example.patch
+ "${FILESDIR}"/${PN}-6.4.1-set-soversion.patch
+ "${FILESDIR}"/${PN}-6.3.0-fix-flags.patch
+ "${FILESDIR}"/${PN}-6.4.1-log-exceptions.patch
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed -e "s/@VERSION_MAJOR@/$(ver_cut 1)/" \
+ -e "s/@VERSION_MINOR@/$(ver_cut 2)/" \
+ -e "s/@VERSION_PATCH@/$(ver_cut 3)/" \
+ -i CMakeLists.txt || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
+ -DFILE_REORG_BACKWARD_COMPATIBILITY=OFF
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ python_foreach_impl python_newscript python_smi_tools/rocm_smi.py rocm-smi
+ python_foreach_impl python_domodule python_smi_tools/rsmiBindings.py
+ python_foreach_impl python_domodule python_smi_tools/rsmiBindingsInit.py
+
+ mv "${ED}"/usr/share/doc/rocm_smi "${ED}/usr/share/doc/${PF}" || die
+}
diff --git a/dev-util/rocm_bandwidth_test/Manifest b/dev-util/rocm_bandwidth_test/Manifest
index 106ac7d648e0..026285e88bf5 100644
--- a/dev-util/rocm_bandwidth_test/Manifest
+++ b/dev-util/rocm_bandwidth_test/Manifest
@@ -1,3 +1,4 @@
DIST rocm_bandwidth_test-5.7.1.tar.gz 38769 BLAKE2B 5880c4bb50d4daf87581424c2fb208363d2d34f848d3ced163b3809e5dff4e56996abf3edc6f8c8ca75f55d95b92604de6ee0c333930d32c7c52c8bcdb6562e6 SHA512 7da08b7a9bbde34e3b2b799e47e490d34dc69225b9d5efe103fd23f3a417fc7a48dcc813d2669ee4506f6699c4576c549f982a4a76a92d83447d6fab709f5042
DIST rocm_bandwidth_test-6.3.2.tar.gz 45543 BLAKE2B e38e448241f4f5b601cd4bd58d2a22f692ee71a5799906d9b3747cf7337cf07d91d140fa19683ef6ce030a6c6c34df1cf47957c2c8c1c4b96cf713c841a91d3e SHA512 d01f35c2331c13fe8c56b110ca2a6d26a6f4ecaaafa13af8ff47a01001fd29605aa44855c0c7d024dde83eec4978e14032ff96b1200b2a95a0c82376755cf91b
DIST rocm_bandwidth_test-6.3.3.tar.gz 45541 BLAKE2B c00ecafdc7bea482047362da741e45ddf4c4f5a39e677defcde845c27629ab7e1e83ac15f36d59707cbad1225166051a558d659c0e71e08a4602682e2095d394 SHA512 05bee2828a9b0b2e4137b5ff38692509c112072348bea6c3ee21553bd38f79a876a470ee390d4d47fd0ba0b9d9847be6a82a0c2c8b871868b9abad55beea9b33
+DIST rocm_bandwidth_test-6.4.1.tar.gz 44905 BLAKE2B 9e10cb447c0317569ee29d899a546b0ab722b33118973ed68132b35ea351c9b84a2c04f69d83a3ffc84642f1735f2e1625178fc23bf4ee904f6bb909c6b379d1 SHA512 c8307d7eddbf78139d6a92a68c8cdee08edbbb9604490e34a1f71a11da7e7aecaa53fdbcdce871ef21a6e94663fad04b9d512957fce09723089026c9db1a3aca
diff --git a/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.1.ebuild b/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.1.ebuild
new file mode 100644
index 000000000000..849501fe94f1
--- /dev/null
+++ b/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Bandwidth test for ROCm"
+HOMEPAGE="https://github.com/ROCm/rocm_bandwidth_test"
+SRC_URI="https://github.com/ROCm/${PN}/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${PN}-rocm-${PV}"
+LICENSE="NCSA-AMD"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+DEPEND="dev-libs/rocr-runtime:="
+RDEPEND="${DEPEND}"
diff --git a/dev-util/rocminfo/Manifest b/dev-util/rocminfo/Manifest
index 9c88094afe8e..3f087b9ba971 100644
--- a/dev-util/rocminfo/Manifest
+++ b/dev-util/rocminfo/Manifest
@@ -3,3 +3,4 @@ DIST rocminfo-6.1.1.tar.gz 17740 BLAKE2B 6331054e1c8a59f2d4246c3fcb999afc28a8cab
DIST rocminfo-6.1.2.tar.gz 17734 BLAKE2B d92816dc0657a2ec0f04024311b5a7851a3cd487d73b496bfdb32ffe69cae957798f49622e477e5d0b47ac4ff86c2bba9a46e86228823f85da2d9f5376b6aef9 SHA512 fa1890797a89d67d18f29d73d213d68bcd31c7fd2b2cee89148b8dbd6fe7552e270af0582c7a50e80adc399197b3dc1cb5e858b1e983411079d088fc947c8c88
DIST rocminfo-6.3.2.tar.gz 27216 BLAKE2B cd991b7c4819d8b7330c7a096a7304010adc334d3ce212edd6f80527adcfd2478586efa851e3ea11a723c35b845567a50c184ea73fd8f47f99a5fada4011c298 SHA512 a23ed64399782f4078836c4c2a71e198463d53bd0526598e91e9eeed0c6690d01f1cad780cd9810b6528843e5eb78c1460997a5b2efab40e717979a4309f7a1b
DIST rocminfo-6.3.3.tar.gz 27221 BLAKE2B bcdb16a7087cdb321044bea6baca013b8592eb99a7a91ffdae3f7150d21c1ff804cb6620eadf6ec9ee2fd5d3d0c9205d731c36fc671f10582b79a0b7bca307e9 SHA512 29c05366833f93ca43b7bf661205c3c427c33425bfbea972648e011eca316fb8fb60c2fdc80e44959ef845a9ff04ed658225c88d83c1440c750f2967d79ca5c7
+DIST rocminfo-6.4.1.tar.gz 27949 BLAKE2B b065fe7e49653c6e31664dd2e038d181803aa480e7b2c3ff66d1392f3ebfa521ebe21984a3a0d5756d0a65e7323cb83ff9fc137e13b6c065a55e799c13bd7565 SHA512 76345d5e7105fbd549785087ec038591f3dbbc2c795008b74dfbb2f1ffcffbc21e77bfe10bc55dba3b5709a5453e2352c9e021dc23d1091d1ed201e945b97b2a
diff --git a/dev-util/rocminfo/rocminfo-6.4.1.ebuild b/dev-util/rocminfo/rocminfo-6.4.1.ebuild
new file mode 100644
index 000000000000..c53b36f0f97c
--- /dev/null
+++ b/dev-util/rocminfo/rocminfo-6.4.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..13} python3_13t )
+inherit cmake python-r1
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/ROCm/rocminfo/"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/ROCm/rocminfo/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/rocminfo-rocm-${PV}"
+fi
+
+DESCRIPTION="ROCm Application for Reporting System Info"
+HOMEPAGE="https://github.com/ROCm/rocminfo"
+LICENSE="UoI-NCSA"
+SLOT="0/$(ver_cut 1-2)"
+
+RDEPEND=">=dev-libs/rocr-runtime-${PV}
+ ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+src_prepare() {
+ sed -e "/CPACK_RESOURCE_FILE_LICENSE/d" -i CMakeLists.txt || die
+ sed -e "/num_change_since_prev_pkg(/cset(NUM_COMMITS 0)" \
+ -i cmake_modules/utils.cmake || die # Fix QA issue on "git not found"
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=( -DROCRTST_BLD_TYPE=Release )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ rm "${ED}/usr/bin/rocm_agent_enumerator" || die
+ python_foreach_impl python_doexe rocm_agent_enumerator "${BUILD_DIR}"/rocm_agent_enumerator
+}
diff --git a/dev-util/roctracer/Manifest b/dev-util/roctracer/Manifest
index 2786fb5ed7a2..7fad75ca10aa 100644
--- a/dev-util/roctracer/Manifest
+++ b/dev-util/roctracer/Manifest
@@ -2,3 +2,4 @@ DIST roctracer-5.7.1.tar.gz 354686 BLAKE2B 2e72d8df5cf53a913102a715dab55f7c6d33b
DIST roctracer-6.1.1.tar.gz 396688 BLAKE2B e332c3a6056d1678e3da511878fd2710a4eaa02526cd1e7353dd1dbcba776cb77e6e431d90daf5f238ec7793fc8e9f51afd7f09992f70b26c7e3aab28bb319a9 SHA512 d59c367953b1d5df0daae96746095e2e19f706f43b5ebed3d45c15d23697e9c99c1623bbb8dfa001648fdeda172a3c1d820d884b6da3946addec8f4b9a86e5dc
DIST roctracer-6.3.2.tar.gz 397366 BLAKE2B 0edc2e6483935dcbc8e905b1eac1d426c3e553491cbe119a8f6cba99cadad5c622ec7a0005e27e66d57f9baf4e3048033185cd38f32b4cfd17277d80673ac225 SHA512 d08657e8424cf2fbdee1caa46140dd90f45b5efe7c71a96c789b0bb350d7c36a9c725ae436bee00fb0948ab0de5fc5356f71082619edae1316922221c19eae1c
DIST roctracer-6.3.3.tar.gz 397370 BLAKE2B dff4c796b7284c2107ef0d308ee16d640aab6e9ce49c769a84352837f3e29e24e09e71d5a1d1fe19d22d218e607e85f7fbe6b43ff1a0a1f6e04aa859baefd054 SHA512 50ee107b7c8676dd5d41d2b9433fce701807b954b3d6624c25c32d057bd3a50ad2c7f853cb287c7bb5dd1f5fe2c3b0ec4a7cb082d5ef545c17f2ae2644c1df7c
+DIST roctracer-6.4.1.tar.gz 398019 BLAKE2B 01a280650bf0eb669c7b0eb2f0d61b05475f055ef93e1cae1e5b99ad3046392f9465026f216766d80ff47b5f387e679104f71ec7b957a15412985cf31e4ce79d SHA512 9d4e6fd3010d11c73fab7539538db56c26ebea1225082b5e9ee9bd260f087a373b0984414a8bb8174bf8b291384570255a5da9f4b5be95d5af54a6519ca8c59e
diff --git a/dev-util/roctracer/roctracer-6.4.1.ebuild b/dev-util/roctracer/roctracer-6.4.1.ebuild
new file mode 100644
index 000000000000..e99038363fc8
--- /dev/null
+++ b/dev-util/roctracer/roctracer-6.4.1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+ROCM_VERSION=${PV}
+
+inherit cmake flag-o-matic prefix python-any-r1 rocm toolchain-funcs
+
+DESCRIPTION="Callback/Activity Library for Performance tracing AMD GPU's"
+HOMEPAGE="https://github.com/ROCm/roctracer"
+SRC_URI="https://github.com/ROCm/roctracer/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/roctracer-rocm-${PV}"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/hip:${SLOT}
+ dev-libs/rocr-runtime
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ $(python_gen_any_dep '
+ dev-python/cppheaderparser[${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]
+ ')
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7.1-with-tests.patch"
+ "${FILESDIR}/${PN}-6.3.0-fix-prettyprinter.patch"
+)
+
+python_check_deps() {
+ python_has_version "dev-python/cppheaderparser[${PYTHON_USEDEP}]" \
+ "dev-python/ply[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ hprefixify script/*.py
+ eapply $(prefixify_ro "${FILESDIR}/${PN}"-5.3.3-rocm-path.patch)
+
+ # Install libs directly into /usr/lib64
+ sed -e "s:\${CMAKE_INSTALL_LIBDIR}/\${PROJECT_NAME}:\${CMAKE_INSTALL_LIBDIR}:g" \
+ -i src/CMakeLists.txt plugin/file/CMakeLists.txt || die
+
+ # Remove all install commands for tests
+ sed -E '/^ *install\(.+/d' -i test/CMakeLists.txt || die
+
+ # Test fails: https://github.com/ROCm/roctracer/issues/109
+ sed '/load_unload_reload_test/d' -i test/run.sh || die
+
+ # Fix search path for HIP cmake
+ sed -e "s,\${ROCM_PATH}/lib/cmake,/usr/$(get_libdir)/cmake,g" -i test/CMakeLists.txt || die
+
+ # bug #892732
+ sed -e 's/-Werror//' -i CMakeLists.txt || die
+
+ # libc++ may have no experimental/filesystem
+ sed -e 's|experimental/||' -e 's|experimental::||' \
+ -i plugin/file/file.cpp src/hip_stats/hip_stats.cpp \
+ src/roctracer/loader.h src/tracer_tool/tracer_tool.cpp || die
+}
+
+src_configure() {
+ rocm_use_hipcc
+
+ if [[ $(tc-get-cxx-stdlib) == "libc++" ]] ; then
+ # https://releases.llvm.org/9.0.0/projects/libcxx/docs/UsingLibcxx.html#using-filesystem
+ append-libs "-lc++fs"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_MODULE_PATH="${EPREFIX}/usr/$(get_libdir)/cmake/hip"
+ -DFILE_REORG_BACKWARD_COMPATIBILITY=OFF
+ -DWITH_TESTS=$(usex test)
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+ use test && mycmakeargs+=(
+ -DHIP_ROOT_DIR="${EPREFIX}/usr"
+ -DGPU_TARGETS="$(get_amdgpu_flags)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ check_amdgpu
+ cd "${BUILD_DIR}" || die
+ # if LD_LIBRARY_PATH not set, dlopen cannot find correct lib
+ LD_LIBRARY_PATH="${EPREFIX}/usr/$(get_libdir):${LD_LIBRARY_PATH}" bash run.sh || die
+}
+
+src_install() {
+ cmake_src_install
+
+ # remove unneeded copy
+ rm -r "${ED}/usr/share/doc/${PF}-asan" || die
+}
diff --git a/dev-util/spirv-llvm-translator/Manifest b/dev-util/spirv-llvm-translator/Manifest
index 590186eead54..9c55d136b174 100644
--- a/dev-util/spirv-llvm-translator/Manifest
+++ b/dev-util/spirv-llvm-translator/Manifest
@@ -1,12 +1,19 @@
+DIST SPIRV-LLVM-Translator-37a91c7eedcb46e7b022833a4b6ec68ac1bbd9c1.tar.gz 1816381 BLAKE2B f347df35744586d7743ef84becc94f8e0050de921e80d195d971e421832a7d272d39cde67d3ba240610d71f3bf0252485ee61d56f5078c70ce2e7781d18fbf7e SHA512 fe40e5b921a5fd299650f1fee1b882e15a2b2d075bf0376499ecde027bfc569e23af58fd3af5877fcf0b8bbf6632506e36c842eec3c6712ab90a4a07376bc725
DIST SPIRV-LLVM-Translator-cedb8ae2e22102ef85999e0732c3447a307141db.tar.gz 1810220 BLAKE2B 04fe26b7da6178e28016097d524bfb2530c85039d7e0457e25290f30d8ec08768d506794cf287f4a04f71a3dc9d6f11814f9153f2c66d90dd5ea3950270e0991 SHA512 cd2d9fcdc15124052c9cf648b1da307c51cef293b0f7397a7c55e4dd93c917979b3f8d6f1a13dfd66e1c619ee31d1a970fe4704e7e524a7cfb2ae020ef115226
DIST spirv-llvm-translator-15.0.10.tar.gz 1623782 BLAKE2B 53da8de0d57b1723e2fb879456ac18e6cc0c11ca931d7d4379cea9b130819b5297a80615ad5d06d780d5cd6ce1b24c5dcf96ba5e6e82e4bd1017b1f78b393842 SHA512 b22df95fbbeee569a8711807fe860839dad7127208a6ffffbe38b2973dc426046a16a7c600df75e9741d3b7296baa3458b5762c35333eedb80215252a1b69c8e
DIST spirv-llvm-translator-15.0.11.tar.gz 1632016 BLAKE2B 3ac06065e3043e37b6ac0b925ea4688edc6ed87d0eb91aff2bfa2c0a3a0fb2f457aa643ef7a125d58dc9af354c34d2ac96da0a457e19792d140c9a7c1ad67d90 SHA512 99c8633f0406788106141999e27380cd65172b255dfcf5b17572eee4f4e8e270656171702de95b8eb69c97ce7bc4bd56b1c4aec6bffe7708f60484b05ba38315
+DIST spirv-llvm-translator-15.0.13.tar.gz 1632215 BLAKE2B 44ea3d463cf84a69e86fa5243b302ca19f1734f0f037dba4c5bb945b2e4740dd003feb8f2dddee621021c3f1791d1bf70bb5ab9c505ca87d9bd957fe80a30de7 SHA512 1186f877ed6bee80a03c774e0ec26c0dc59cf80616a77e8634aa51a4f5f0d7b888afd23e7d80fc73f4cdbb94609ff0f5c64d5926e83e6ccd8f3d519a9fdda68b
DIST spirv-llvm-translator-16.0.10.tar.gz 1618494 BLAKE2B ea8432b6669c4985b024908ed17d672ce4e805f72a38a4a8ffceb1ca6682ee176698562b1156d2a0b6a7cc60440c1f7312e8d336d5a78acbfd35336d08677a0e SHA512 7949cf0bfc6d2f4d15261392149820aec69914e262f5e4e943462e379ad0595c0307cfd8a7242cce5763a2ecd2bc8113106d56204a27ac041f335b23726f59e5
DIST spirv-llvm-translator-16.0.11.tar.gz 1623357 BLAKE2B 2f109f8d17c70911f2aad47faea2a8872b951612744a9926a91372162c43812ff10add10fd26902591277e9d8360100cc5b074018174a3d180bb4cf109f960db SHA512 0b5434a435f75cac06b067da79b79085e626b67f488edd8360143e25a40cddfa7b8bff653d2f17187bc952dce72cc74f96ffc6209b0635ab8426f82ef40ed2f4
+DIST spirv-llvm-translator-16.0.13.tar.gz 1660568 BLAKE2B f7e2abc11e72ce954657f1f00ed2c297f2a28a8c445b797b7fab1fc05101a3f799f1547e5f4cd66d8218338cfe471fc7a03c084277c6876f34b84b4d7e82fe39 SHA512 12ea659dd7c2f8c8093ee3c30fcd3273cb8122785153b98231a8f0245630a0e647c05c09ea766c185b68a102f29141da2ccb6b4e19fd4ae48af1b6fa618a0788
DIST spirv-llvm-translator-17.0.10.tar.gz 1652859 BLAKE2B 87e0748d5461c983a314a479f5b63e973b8f2cf6ca01264ea66167166c23fb2f8ede3d4d25655cab635502820870a262de192da44cfe7521a2dc4c864bc13d02 SHA512 b7de75f8075b11ac3518571ab9d46d5bba3d18fbf379320832c95a682701f68920078bca6ff6085f264ba944393a10177d9ed1084d28c9abaf9faf64049cec03
DIST spirv-llvm-translator-17.0.11.tar.gz 1656784 BLAKE2B ffd2711ca4b05bf17153334e5cf7114e8e691a5ae62b15e72c459efbeaf3836321fd83212ee5af5499bb862ccc45f56fa7557420e86f44089982fb185ccb3940 SHA512 f6073da1be35fca0a1ca98bb933c25a7bccc4c227814055a781c62334b4aca684fa4ac014df317cd58cc2f37869c76d4ab7bea5b07424c0ad9003321a35d17f9
+DIST spirv-llvm-translator-17.0.13.tar.gz 1657697 BLAKE2B 3a71c165d0f4d737aad3632cd30023972be990604963ba323f0fe0785eb81c07c1a135e5dba0e061526f6877b87f7a19784fb9bbc9ae17f34aa07b8d9d725733 SHA512 1acd1dab79bcec7fed4a3902a858583e9ae91d3f585c2888918b301ca50816bb87016e191e8ecc4730ad0c2cc2438411a7669b05247cd95b6bb0a119d886cbc5
DIST spirv-llvm-translator-18.1.10.tar.gz 1720925 BLAKE2B e6b454bb20e2f05f3ccdaed8066da630b1da6f3a7b54e7d93b1fbbeda620da90d75897c90c0cfa354ea5cea57b97fe03bdf539c425439c2d7e4719a8a32e9314 SHA512 b722b161e480517bb7b5c9f13f6b1b314bd14b3c8c47ad2877fbaaf1d9288e537ff29f6e12a44b13f5f73563730020dcc60064c2b2ee222b73a952ae579397dc
DIST spirv-llvm-translator-18.1.11.tar.gz 1724756 BLAKE2B 039fca1689b26adb43053d4983a198694211b9c21502d665f0a66bf86b244618401ef1be12f24bf28aa1ec7e75710f8ce03b967e25acd7392e5649e2769d1cc1 SHA512 c631706f7b37134b858f619bd9aa739be639744ff5afa5c1e12e6086726b42c47ff3ce3bbc3cbe93ed3ed5a09bd81265a647e3cd126b3065d2608f2182722d5f
+DIST spirv-llvm-translator-18.1.13.tar.gz 1725819 BLAKE2B cbb78ca1117a902f044060c22b56e896836298ad53df02d40d0ec000233d97417f5f72304e04a8a787cc83c42d78157eea1daaf29339150f60e88e3333a1ed3c SHA512 af31bf8ed8f240eecb96dc408ecce3b757928cf078a6a881eb559ce5b6bbee8339b6e9258f5624c30b943e9fb15ee21e5ea2b7e2a157b791bf175981fc400b4f
DIST spirv-llvm-translator-19.1.5.tar.gz 1770088 BLAKE2B f74d4c0d9d7268e84c36e9087059707e73f22b1ccf23ea2f243068aa93446c710002b3cb0506e9c1ac649ecf74a6cb8703efe1fc3cd6b5cf3a58feec4af987c0 SHA512 28b2ace524830b943489cc973d364c0ecd8d9ee83c08c855f8364460d9287b23a82ab4f95891cf0b9a83a476b3e613a8f246195cd7c6e866177db47d591ca25f
DIST spirv-llvm-translator-19.1.6.tar.gz 1771001 BLAKE2B 63265f97c85883602604819a9cd017eab8c289ddf492f3a791842690b93981182cea056a56e83c4461ae0f55830fe28c36d42dca01b7169bc779cd347bffddb2 SHA512 8b6589741a964ecfaf0f4cc8cb5e3165e03e76dbf310d4f5b29968b1ceffd32081a2f7c94544f8772619cf5963b31e308f1067506c0b7e8b9e04b8c174fce9a5
+DIST spirv-llvm-translator-19.1.8.tar.gz 1778352 BLAKE2B 1207b75af1282d3207db2a07e90175575cc16a60959ab54d89c3965e577f5527eeb91b11b59fbe687b35703def1739c02338bed710ffce4882e83e54d425b661 SHA512 4372c5c155c0b84f86955469f72151e42b5e62b33e9b24b2b60b7ecd41d417cc43c2dda3e02f40e61c837045f3b65d6291bd995500572859ed047c11fe0377d6
DIST spirv-llvm-translator-20.1.1.tar.gz 1807510 BLAKE2B 5371655f4abe776f35ccc57ef88d0118f8fed71e22241b34beb7d8b8b93a4cfc286ba3c09dc24157d9d721a9259fc55281ff222270ecc02ba0483d4ad930d38f SHA512 7d527b4c0aef18790fb3ec81335df60ea970b9a0935fe7002423e93c36a9053456fdcabfd9954358c26a9d0b0ac4a2670fe2e05108c1d8de8d458027564a1eff
+DIST spirv-llvm-translator-20.1.3.tar.gz 1807825 BLAKE2B afe81f41642c8d20f7e9d8402fa9c225b8410687e965858f490123b75f6063178d363f4910283cf4d794a7e7373047393c12e48dc5be2b31f1f52511eddeb8cd SHA512 13758dc809302d7dd5228a7cc21ea9c27043427424626cd3de32a330407a9c308a7b3e10c20e96548e34b316dd59362cca91e56fafb8cb1e3490d3dccf8f1741
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-15.0.13.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-15.0.13.ebuild
new file mode 100644
index 000000000000..79a0585e6d7b
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-15.0.13.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 15 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake flag-o-matic llvm-r2
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools
+ llvm-core/llvm:${SLOT}=
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
+ sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ lit "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-16.0.13.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-16.0.13.ebuild
new file mode 100644
index 000000000000..b127adc9a45c
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-16.0.13.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 16 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake flag-o-matic llvm-r2 multiprocessing
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools
+ llvm-core/llvm:${SLOT}=
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-16.0.0-ld_library_path.patch"
+)
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
+ sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-17.0.13.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-17.0.13.ebuild
new file mode 100644
index 000000000000..b68bc9876d7b
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-17.0.13.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 17 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake flag-o-matic llvm-r2 multiprocessing
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools
+ llvm-core/llvm:${SLOT}=
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
+ sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-18.1.13.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-18.1.13.ebuild
new file mode 100644
index 000000000000..f973a01d8d5a
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-18.1.13.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 18 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake-multilib flag-o-matic llvm-r2 multiprocessing
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools[${MULTILIB_USEDEP}]
+ llvm-core/llvm:${SLOT}=[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
+ sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-19.1.8.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-19.1.8.ebuild
new file mode 100644
index 000000000000..78b4140fa7da
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-19.1.8.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 19 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake-multilib flag-o-matic llvm-r2 multiprocessing
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools[${MULTILIB_USEDEP}]
+ llvm-core/llvm:${SLOT}=[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2555
+ sed -i -e 's/%triple/x86_64-unknown-linux-gnu/' test/DebugInfo/X86/*.ll || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-20.1.3.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-20.1.3.ebuild
new file mode 100644
index 000000000000..d0e6f083b07e
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-20.1.3.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 20 )
+MY_PN="SPIRV-LLVM-Translator"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake-multilib flag-o-matic llvm-r2 multiprocessing
+
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools[${MULTILIB_USEDEP}]
+ llvm-core/llvm:${SLOT}=[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.309.0
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+
+ # do not force a specific LLVM version to find_package(), this only
+ # causes issues and we force a specific path anyway
+ sed -i -e '/find_package/s:${BASE_LLVM_VERSION}::' CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}
diff --git a/dev-util/spirv-llvm-translator/spirv-llvm-translator-21.0.0_pre20250613.ebuild b/dev-util/spirv-llvm-translator/spirv-llvm-translator-21.0.0_pre20250613.ebuild
new file mode 100644
index 000000000000..0e195991a20d
--- /dev/null
+++ b/dev-util/spirv-llvm-translator/spirv-llvm-translator-21.0.0_pre20250613.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 21 )
+
+inherit cmake-multilib flag-o-matic llvm-r2 multiprocessing
+
+EGIT_COMMIT=37a91c7eedcb46e7b022833a4b6ec68ac1bbd9c1
+MY_P=SPIRV-LLVM-Translator-${EGIT_COMMIT}
+DESCRIPTION="Bi-directional translator between SPIR-V and LLVM IR"
+HOMEPAGE="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
+SRC_URI="
+ https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/${EGIT_COMMIT}.tar.gz
+ -> ${MY_P}.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/spirv-tools[${MULTILIB_USEDEP}]
+ llvm-core/llvm:${SLOT}=[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ >=dev-util/spirv-headers-1.4.305
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lit
+ llvm-core/clang:${SLOT}
+ )
+"
+
+src_prepare() {
+ append-flags -fPIC
+ cmake_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)"
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr/include/spirv"
+ -DLLVM_SPIRV_INCLUDE_TESTS=$(usex test "ON" "OFF")
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ lit -vv "-j${LIT_JOBS:-$(makeopts_jobs)}" "${BUILD_DIR}/test" || die
+}