From 541f08cae6594751fdaf7117c49ac9d277d0246d Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:56:59 +0000 Subject: [PATCH 01/36] dev-build/rocm-cmake: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-build/rocm-cmake/Manifest | 1 + dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild | 35 ++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild diff --git a/dev-build/rocm-cmake/Manifest b/dev-build/rocm-cmake/Manifest index 1422fb134e90c..8c76c60659350 100644 --- a/dev-build/rocm-cmake/Manifest +++ b/dev-build/rocm-cmake/Manifest @@ -2,3 +2,4 @@ DIST rocm-cmake-6.1.2.tar.gz 86889 BLAKE2B 66e31b629171a5746eefd83e1ff14826a02f5 DIST rocm-cmake-6.3.2.tar.gz 88821 BLAKE2B 0d052dbeef7763a222a6304325e02895147b6433fd1b778bae9fabb5ea4287e912d80b7c54bf8b04f02beb5ec4394e9926ab46dd2f612780571453837e9051e3 SHA512 d365c496ef5f631c27a3ef0895540497dc069c5d3bf8ff27646b76964e09c7bc658f3bc7288b7703dbe21889d3beec2ffdb5983fe8af66026dfc19b99747ab47 DIST rocm-cmake-6.3.3.tar.gz 88828 BLAKE2B a6c1b8eed57c3bbc641e617cfa3189c98d55c9468d232fd0fa5d3f19d8930f994ddd8af27ba818776078075340d514ce83899a3799224a06a59fd0d1ba40d89f SHA512 1ffac8fc4d8ecff781e214684b0e892d9d886d839282ff59dc458194850479453e059f63959a0042e26a2a623a50b421ca4ddddd604da0404c760e7649006c31 DIST rocm-cmake-6.4.1.tar.gz 89082 BLAKE2B a00cbd71706d25b46a82414d5fe903406c758674d30aeef42195580e20d8765f5a86cec4c124714598bdf8fe96075d518800ae9286e8fbb6bde157c3ed5626b0 SHA512 0810d1ea2597285880ceb672e002e29177928bcc0c0c9a6e8651f8f8c20824a1b11bb45b9bc606a72a2f52eafc4540f9ea12d51e332cd34ed3ee4d97259ef884 +DIST rocm-cmake-6.4.3.tar.gz 89082 BLAKE2B 0368fa4baf32e725d734a9861fe89be050b4219fb1300f1f5a748f6927a1b8fd25e79e068d8dd31a8516d790a5cef1430992c5e9e11c9c1dd6463ed7d3a0db70 SHA512 356aa272d20deed8c0da8ed088079dd8530f23362ff22a563e91380bc543a0d68d2058ba6ec8f7355d1ad0d03578afeff474845ab1f78f23ee553cfccb1791bc diff --git a/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild b/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild new file mode 100644 index 0000000000000..9044ffb3a1251 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} From dd5e82a7009ecf75a47cae9d9b8e77895bbd246e Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:07 +0000 Subject: [PATCH 02/36] dev-libs/hipother: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/hipother/Manifest | 1 + dev-libs/hipother/hipother-6.4.3.ebuild | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 dev-libs/hipother/hipother-6.4.3.ebuild diff --git a/dev-libs/hipother/Manifest b/dev-libs/hipother/Manifest index 5e34ce8486340..c07864b235f9a 100644 --- a/dev-libs/hipother/Manifest +++ b/dev-libs/hipother/Manifest @@ -2,3 +2,4 @@ DIST hipother-6.1.1.tar.gz 33496 BLAKE2B 026967cb298a888df441d543d70478836036b81 DIST hipother-6.3.2.tar.gz 37656 BLAKE2B 23a29c674cec1dd6f99b24f901cd27883356c67c925156b34757c186a3105377a2d6c207338b8593de5af16b9f7a7b6ee8a528ab0cbfe93a3a57f5843a9b0a60 SHA512 d783a5356d71bc5dcf333d878c0cb44e306c29a7752a4d891300243682b04cfb6807c410e8b63d4fd5e1cb045554266477535fbd352bcbb65a242f5ee1f9d3db DIST hipother-6.3.3.tar.gz 37656 BLAKE2B f09a7e6623cff70af89e114b461ce5859a4912ecf41e8601cdd928b926f5a75d7e8ff55186bc3b2077b9115b8f37e1cfaad9e8c316e5e9bf6dbd0b4adebe25db SHA512 9ed7c0b301405f5daf7a8b87f085b6c9a2c8d33a790c06a14e8aefd41690db69a0ca81e9e50df380ccf2ffd0c244624de431ba82b826bf2ec529d81e3a6445ad DIST hipother-6.4.1.tar.gz 41114 BLAKE2B f1507021353363144ed641c4072f98f01095ad1fd83a4fa73733040c7f59684906950789be06b1837014fb04066b9a804c3c86c6d46259d48b92fa70f137cc31 SHA512 bace6d4cbca3c98d5e46d079e4f7e64fa8ff86fb0b8865f2b0fedfe60bc5443b6cfd2cfee7832662ac3a5ecf59ab5994b5d0c53ce5e4a68b133a773b2ef2d129 +DIST hipother-6.4.3.tar.gz 41133 BLAKE2B 9353922aee32e8740c97dec0a927c933ab0f66a8a2d90c669d03434d9afbc21d68fbd6700b2354bf915d74ce61399c860b6f98e072323d2be31730592882bad2 SHA512 32239e2a896303865065e009d1de71ac6b6cd193346a1daa99e44751d9dab5c08f7e2b668603692c5c2986047d3f3d97c518cdea9365204b8fa91478d0751548 diff --git a/dev-libs/hipother/hipother-6.4.3.ebuild b/dev-libs/hipother/hipother-6.4.3.ebuild new file mode 100644 index 0000000000000..b580389fc3327 --- /dev/null +++ b/dev-libs/hipother/hipother-6.4.3.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="ROCclr runtime implementation for non-AMD HIP platforms, like NVIDIA" +HOMEPAGE="https://github.com/ROCm/hipother" +SRC_URI="https://github.com/ROCm/hipother/archive/refs/tags/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/hipother-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +RDEPEND=" + ! Date: Sun, 10 Aug 2025 05:57:13 +0000 Subject: [PATCH 03/36] dev-libs/rccl: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rccl/Manifest | 1 + dev-libs/rccl/rccl-6.4.3.ebuild | 76 +++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 dev-libs/rccl/rccl-6.4.3.ebuild diff --git a/dev-libs/rccl/Manifest b/dev-libs/rccl/Manifest index 67250a101893a..2b8ae2b2b3662 100644 --- a/dev-libs/rccl/Manifest +++ b/dev-libs/rccl/Manifest @@ -2,3 +2,4 @@ DIST rccl-5.7.1.tar.gz 1425561 BLAKE2B 852c111ad806d5c99f48b3c65c8cf37315c68b969 DIST rccl-6.1.1.tar.gz 1679144 BLAKE2B 371d64691dc74f875c49e14df8f3f2d8b9c607376e6c5a889bd2bdb50607e88715d6d75ffed4ba3184a5b9b241cb37b8501e927a5f495632212909e410102490 SHA512 6c6376dd822182bcf28f573c0f3b5c7e52f94f4b670ee7c88519232f51b443d52cd37cbe6c41b5b6e9cb0b93c1124246a989f6e6a2ae74935134135585118002 DIST rccl-6.3.0.tar.gz 1828647 BLAKE2B 8c312fc51e7d600bb62fa059e1af53e153955b79b2ba2e8a6b6b52228b9217b7df6dc815c3a48c0800aaa9387f645070e079d04e99c0e8ebdfe41d5ebe0bda06 SHA512 a068b4a21786176638d108c8c85d5e5a8b0413335b555c2602f2a2e0b9f291f6872dbf68fbb5a17a6a0af9d9b5a90b1b37cce63b655a867b68fc9e20d49931ea DIST rccl-6.4.1.tar.gz 1892734 BLAKE2B 363d6fd4507bee0c9c76af7c456486f50ccba3c2302979d0012f43d2869fc999bfbe7880a8b9e565a2306fbcb844356cf7cdd138404ebc94fb0000eb3b63eba1 SHA512 15fee65dfec6ba12527e47ab9ed024f87fd267995686dbee1651a44f1cd7bec97dfb5aaa7af2c7549e67286b56acb914e923306519a8d05d6ec9d3624cc977f8 +DIST rccl-6.4.3.tar.gz 1895969 BLAKE2B 1cd43e983aa28b0d8ecd0d6c5e2f4d631f58599845230ef81408f185e9a9d8466b3d3850f95cb5bed8679e23d6528d77c7f8d0d6676885b5560b33603a8657c6 SHA512 56e925015bfb9454a5a7a1655c7e9a2a91d960b35bbf853ca852388c47276c1fe17b219f27d8a9fe1289878b3980f5bfacaa84f66279ab2d7df15f4915ab8648 diff --git a/dev-libs/rccl/rccl-6.4.3.ebuild b/dev-libs/rccl/rccl-6.4.3.ebuild new file mode 100644 index 0000000000000..b242eb803239b --- /dev/null +++ b/dev-libs/rccl/rccl-6.4.3.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake edo rocm flag-o-matic + +DESCRIPTION="ROCm Communication Collectives Library (RCCL)" +HOMEPAGE="https://github.com/ROCm/rccl" +SRC_URI="https://github.com/ROCm/rccl/archive/rocm-${PV}.tar.gz -> rccl-${PV}.tar.gz" +S="${WORKDIR}/rccl-rocm-${PV}" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="roctracer test" + +RDEPEND=" + dev-util/hip:${SLOT} + dev-util/rocm-smi:${SLOT} + roctracer? ( dev-util/roctracer:${SLOT} ) +" +DEPEND="${RDEPEND} + sys-libs/binutils-libs" +BDEPEND=" + >=dev-build/cmake-3.22 + >=dev-build/rocm-cmake-5.7.1 + dev-util/hipify-clang:${SLOT} + test? ( dev-cpp/gtest )" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${PN}-6.0.2-fix-version-check.patch" + "${FILESDIR}/${PN}-6.1.1-headers-fix.patch" +) + +src_prepare() { + cmake_src_prepare + + # complete fix-version-check patch + sed "s/@rocm_version@/${PV}/" -i CMakeLists.txt || die + + # don't install tests + sed "/rocm_install(TARGETS rccl-UnitTests/d" -i test/CMakeLists.txt || die +} + +src_configure() { + rocm_use_hipcc + + # lto flags make compilation fail with "undefined hidden symbol" + filter-lto + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_TESTS=$(usex test ON OFF) + -DROCM_SYMLINK_LIBS=OFF + -DROCM_PATH="${EPREFIX}/usr" + -DRCCL_ROCPROFILER_REGISTER=OFF + -DENABLE_MSCCLPP=OFF + -DROCTX=$(usex roctracer ON OFF) + -Wno-dev + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}" || die + # APU (as second device, if any) expectedly breaks tests + HIP_VISIBLE_DEVICES=0 LD_LIBRARY_PATH="${BUILD_DIR}" edob test/rccl-UnitTests +} From 86d6a284f188e4276df15a3a4bdb2153e6b569d4 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:18 +0000 Subject: [PATCH 04/36] dev-libs/rocdbgapi: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rocdbgapi/Manifest | 1 + dev-libs/rocdbgapi/rocdbgapi-6.4.3.ebuild | 59 +++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 dev-libs/rocdbgapi/rocdbgapi-6.4.3.ebuild diff --git a/dev-libs/rocdbgapi/Manifest b/dev-libs/rocdbgapi/Manifest index ccf7ee9b53727..ac436615ff6f4 100644 --- a/dev-libs/rocdbgapi/Manifest +++ b/dev-libs/rocdbgapi/Manifest @@ -3,3 +3,4 @@ DIST rocdbgapi-6.1.1.tar.gz 254274 BLAKE2B 1621dc715e2540578126ff2fa6dc30dc9db71 DIST rocdbgapi-6.3.2.tar.gz 275359 BLAKE2B 085ab87b04fbe165bb689a61016cd7e4e1133c4f9a2504267d30a07dd2922eeeb11fb7507416e426b3a24a8ec3090c7a4b64ccd32f578ccb7bc420fcc52f7fec SHA512 b60312cc29830f1a481f67ab3419c3e9915e07f6a13557e06a1fa4da6022ae7388421264843aea095c49330c984d943771cba7b77f31d3f511a545af5db68c00 DIST rocdbgapi-6.3.3.tar.gz 275372 BLAKE2B a0b9eea6c6c31bdde3a60ffeb08751c6c2fbb73cd1d8eac722d2ae1b1313f8f70810fff51457763a8ec647aba0f0203c1120cd755549c3f21677055ef7e8f3ac SHA512 92bd9aa371264138318107884d9b7a17c613855def3a110b1c575d682abd2e04a99604621cb71669a3f59cd72bf20f62d214428c0d2f9b7a686dfa2c6b83be94 DIST rocdbgapi-6.4.1.tar.gz 277189 BLAKE2B 2fe64546d23b9ccdd3b886188a963c651801534ff86856ff6646a3c23dcacfc5a66edbdd8b2faabba5f145c450ac0e6173d3dadd57dc3dcc3e90e1899a7828bc SHA512 4eaff7543f730fdee28d955fe2c9ee90244ba0ebee1fca343a876048091a0a334625b7c95dce7b01e885725a5c8b99c335db29b871c4bd44954aba3ae25a4288 +DIST rocdbgapi-6.4.3.tar.gz 277175 BLAKE2B 411017c881edb0a82e8bf0d0a8a208dff8f4edd18699c7def6d59e587f4dfa33b6548410392cfeafce9170319d50478379ac01985a09efabd57ee88f4927059a SHA512 e187800307c8475850a9c5ea70fd6501a5b671e3c1af1bed4b28ad486463a4414033ca5a36c85573cc84b14aacb9b04562aca150ccfd2c1ff9bc96683053c6d8 diff --git a/dev-libs/rocdbgapi/rocdbgapi-6.4.3.ebuild b/dev-libs/rocdbgapi/rocdbgapi-6.4.3.ebuild new file mode 100644 index 0000000000000..428c72b1a8a72 --- /dev/null +++ b/dev-libs/rocdbgapi/rocdbgapi-6.4.3.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="AMD Debugger API" +HOMEPAGE="https://github.com/ROCm/ROCdbgapi" +SRC_URI="https://github.com/ROCm/ROCdbgapi/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/ROCdbgapi-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +IUSE="doc" + +BDEPEND=" + doc? ( + app-text/doxygen[dot] + virtual/latex-base + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) +" +RDEPEND=" + dev-libs/rocm-comgr:${SLOT} + dev-libs/rocr-runtime:${SLOT} +" +DEPEND="${RDEPEND}" + +src_prepare() { + sed -e "s/-Werror//" \ + -e "s/if(DOXYGEN_FOUND)/if(WITH_DOCS AND DOXYGEN_FOUND)/" \ + -e "s:\${CMAKE_INSTALL_DATADIR}/html/amd-dbgapi:\${CMAKE_INSTALL_DOCDIR}/html:" \ + -i CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DWITH_DOCS=$(usex doc ON OFF) + -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_src_compile doc +} + +src_install() { + cmake_src_install + + # remove unneeded copy + rm -r "${ED}/usr/share/doc/${PF}-asan" || die +} From 846ab394a01c087bd10c335c57a6a204d501f2e7 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:26 +0000 Subject: [PATCH 05/36] dev-libs/rocm-comgr: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rocm-comgr/Manifest | 1 + dev-libs/rocm-comgr/rocm-comgr-6.4.3.ebuild | 95 +++++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 dev-libs/rocm-comgr/rocm-comgr-6.4.3.ebuild diff --git a/dev-libs/rocm-comgr/Manifest b/dev-libs/rocm-comgr/Manifest index aa7026ef56f41..d3511da76f23c 100644 --- a/dev-libs/rocm-comgr/Manifest +++ b/dev-libs/rocm-comgr/Manifest @@ -3,4 +3,5 @@ DIST llvm-project-rocm-6.1.2.tar.gz 195992927 BLAKE2B d821f29f2f1f7c1ff414c63a71 DIST llvm-project-rocm-6.3.2.tar.gz 206671202 BLAKE2B a280e2be22b8eb9fd51814074447baed3637231d4bfbe391047a1fb2409197c8d8ba58cebb3aeaec15aa4daee9371311274b30ede48e0039d7c84e432b15de1a SHA512 314e27577af76268635f3c96ee3516829e4622913c3d0c4c68eccbaee0c9f7f5fc031cbd35827deb4bc29712592c424e296c15ce8c500c897bfb3eb19455899c DIST llvm-project-rocm-6.3.3.tar.gz 206663912 BLAKE2B 939527dbbcd0c4b4785e5cdbd7144149f169120506c2b5b00e84e8208e3877109e24cf58501a1317d1f9dcce0614cf47a0290cb2e0e10aa7b164bcb064c2ffbc SHA512 380d6ca72dd215b1996b14fe9b54f4981bd1d275aae22ed89f4f3efc46ec2988054cc98dcc45e1c678812c2bd3488ed6cf375ca193af4ad272a6cff7f2388872 DIST llvm-project-rocm-6.4.1.tar.gz 218905831 BLAKE2B 188ec436e5ab6e50fee66ebc3a30c5e5703ca8770f309cca580c919567090bbdb23a5de51d36dabf9cb54f1142ab00d9756bec379670029c57d0f7a49fab2f13 SHA512 e0fd29953cfe7ae4b3f60aa25c1ec0f6071715afc8e275d62901dbd575b96afc673d61996300d3f7672005274fe84c7f934070614ac3deafcfa103d9514b3e41 +DIST llvm-project-rocm-6.4.3.tar.gz 218920681 BLAKE2B 85c29c1f66f9d23fa7fb6d98baf60cb08a8507a7b3a4c0a5054d9d4d3bc1fb7de56ddae583e37a36c7a3f17f9e57bd49777deca7560ca8b4882c1eea1db5b421 SHA512 b6b4149c6426793f4497dfd1200079b0caef4d5a6f49c1f3a301d70f5f7b322b850085ff2f89d55df1dfab6d6a97948fe4084d4ec14654ee97cdab26e71a45c0 DIST rocm-comgr-5.7.1.tar.gz 137923 BLAKE2B e215f51137fd0c4b67e85496bf289dc0afde6ebc9efb9416f5fc4cf312b2be9be26da35cb70965bf4857a0f1434d750bcc03ce83095173098487ef7805948735 SHA512 cdd2609b858d9503c30122a2d328d36baa8a930a05bcb6c38e30723909c492b4d47eaaf4884dbb7aa82053e7cda6c22ee1aa16fc5ba266e272d98ff772c5079d diff --git a/dev-libs/rocm-comgr/rocm-comgr-6.4.3.ebuild b/dev-libs/rocm-comgr/rocm-comgr-6.4.3.ebuild new file mode 100644 index 0000000000000..cb671924c25f6 --- /dev/null +++ b/dev-libs/rocm-comgr/rocm-comgr-6.4.3.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 20 ) + +inherit cmake llvm-r1 prefix + +MY_P=llvm-project-rocm-${PV} +components=( "amd/comgr" ) + +DESCRIPTION="Radeon Open Compute Code Object Manager" +HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/comgr" +SRC_URI="https://github.com/ROCm/llvm-project/archive/rocm-${PV}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}/${components[0]}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +IUSE="test" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${PN}-5.1.3-rocm-path.patch" + "${FILESDIR}/0001-Find-CLANG_RESOURCE_DIR-using-clang-print-resource-d.patch" + "${FILESDIR}/${PN}-6.4.1-extend-isa-compatibility-check.patch" + "${FILESDIR}/${PN}-6.4.1-fix-comgr-default-flags.patch" + "${FILESDIR}/${PN}-6.1.0-dont-add-nogpulib.patch" + "${FILESDIR}/${PN}-6.4.1-bypass-device-libs-copy.patch" + "${FILESDIR}/${PN}-6.4.1-llvm-20-compat.patch" +) + +RDEPEND=" + dev-libs/rocm-device-libs:${SLOT} + llvm-core/clang-runtime:= + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/lld:${LLVM_SLOT}= + ') + dev-util/hipcc:${SLOT} +" +DEPEND="${RDEPEND}" + +# Circular dependency: to build tests, hip compiler must be functional +BDEPEND="test? ( dev-util/hip:${SLOT} )" + +CMAKE_BUILD_TYPE=Release + +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + git-r3_fetch + git-r3_checkout '' . '' "${components[@]}" + else + archive="${MY_P}.tar.gz" + ebegin "Unpacking from ${archive}" + tar -x -z -o \ + -f "${DISTDIR}/${archive}" \ + "${components[@]/#/${MY_P}/}" || die + eend ${?} + fi +} + +src_prepare() { + sed '/sys::path::append(HIPPath/s,"hip","",' -i src/comgr-env.cpp || die + sed "/return LLVMPath;/s,LLVMPath,llvm::SmallString<128>(\"$(get_llvm_prefix)\")," -i src/comgr-env.cpp || die + eapply $(prefixify_ro "${FILESDIR}"/${PN}-6.3.2-rocm_path.patch) + + cmake_src_prepare + + # Replace @CLANG_RESOURCE_DIR@ in patches + local CLANG_RESOURCE_DIR="$("$(get_llvm_prefix)"/bin/clang -print-resource-dir)" + sed "s,@CLANG_RESOURCE_DIR@,\"${CLANG_RESOURCE_DIR}\"," -i src/comgr-compiler.cpp || die +} + +src_configure() { + llvm_prepend_path "${LLVM_SLOT}" + + local mycmakeargs=( + -DCMAKE_STRIP="" # disable stripping defined at lib/comgr/CMakeLists.txt:58 + -DBUILD_TESTING=$(usex test ON OFF) + -DCOMGR_DISABLE_SPIRV=ON # requires ROCm/SPIRV-LLVM-Translator (fork of dev-util/spirv-llvm-translator) + ) + # Prevent CMake from finding systemwide hip, which breaks tests + use test && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_hip=ON ) + cmake_src_configure +} + +src_test() { + local CMAKE_SKIP_TESTS=( + comgr_nested_kernel_test # See https://github.com/ROCm/llvm-project/issues/35 + ) + cmake_src_test +} From f43dfa480b2eb514519971304854aba550f4abac Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:33 +0000 Subject: [PATCH 06/36] dev-libs/rocm-device-libs: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rocm-device-libs/Manifest | 1 + .../rocm-device-libs-6.4.3.ebuild | 95 +++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 dev-libs/rocm-device-libs/rocm-device-libs-6.4.3.ebuild diff --git a/dev-libs/rocm-device-libs/Manifest b/dev-libs/rocm-device-libs/Manifest index 7c17ef7e7f4ec..c1228782a2acd 100644 --- a/dev-libs/rocm-device-libs/Manifest +++ b/dev-libs/rocm-device-libs/Manifest @@ -3,4 +3,5 @@ DIST llvm-project-rocm-6.1.2.tar.gz 195992927 BLAKE2B d821f29f2f1f7c1ff414c63a71 DIST llvm-project-rocm-6.3.2.tar.gz 206671202 BLAKE2B a280e2be22b8eb9fd51814074447baed3637231d4bfbe391047a1fb2409197c8d8ba58cebb3aeaec15aa4daee9371311274b30ede48e0039d7c84e432b15de1a SHA512 314e27577af76268635f3c96ee3516829e4622913c3d0c4c68eccbaee0c9f7f5fc031cbd35827deb4bc29712592c424e296c15ce8c500c897bfb3eb19455899c DIST llvm-project-rocm-6.3.3.tar.gz 206663912 BLAKE2B 939527dbbcd0c4b4785e5cdbd7144149f169120506c2b5b00e84e8208e3877109e24cf58501a1317d1f9dcce0614cf47a0290cb2e0e10aa7b164bcb064c2ffbc SHA512 380d6ca72dd215b1996b14fe9b54f4981bd1d275aae22ed89f4f3efc46ec2988054cc98dcc45e1c678812c2bd3488ed6cf375ca193af4ad272a6cff7f2388872 DIST llvm-project-rocm-6.4.1.tar.gz 218905831 BLAKE2B 188ec436e5ab6e50fee66ebc3a30c5e5703ca8770f309cca580c919567090bbdb23a5de51d36dabf9cb54f1142ab00d9756bec379670029c57d0f7a49fab2f13 SHA512 e0fd29953cfe7ae4b3f60aa25c1ec0f6071715afc8e275d62901dbd575b96afc673d61996300d3f7672005274fe84c7f934070614ac3deafcfa103d9514b3e41 +DIST llvm-project-rocm-6.4.3.tar.gz 218920681 BLAKE2B 85c29c1f66f9d23fa7fb6d98baf60cb08a8507a7b3a4c0a5054d9d4d3bc1fb7de56ddae583e37a36c7a3f17f9e57bd49777deca7560ca8b4882c1eea1db5b421 SHA512 b6b4149c6426793f4497dfd1200079b0caef4d5a6f49c1f3a301d70f5f7b322b850085ff2f89d55df1dfab6d6a97948fe4084d4ec14654ee97cdab26e71a45c0 DIST rocm-device-libs-5.7.1.tar.gz 248357 BLAKE2B 829704382e9420ad79724a250ccfd65278eb697498805297d1a52b8ea35dbff46e11514b681243d61bfac05b8a9734f0cf22d721603e48fe2f9864368222b0bc SHA512 8755d0584fa3b8239f5642b4fb8f5e8dea20bbaca2ff8883894d3583913e9a1fd1552492b36e8ceff092f795783b734e68b002ee0c93711dccdf8e72c528c27c diff --git a/dev-libs/rocm-device-libs/rocm-device-libs-6.4.3.ebuild b/dev-libs/rocm-device-libs/rocm-device-libs-6.4.3.ebuild new file mode 100644 index 0000000000000..b321fffc03ae8 --- /dev/null +++ b/dev-libs/rocm-device-libs/rocm-device-libs-6.4.3.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 20 ) +inherit cmake flag-o-matic llvm-r1 + +MY_P=llvm-project-rocm-${PV} +components=( "amd/device-libs" ) + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/llvm-project" + inherit git-r3 + S="${WORKDIR}/${P}/${components[0]}" +else + SRC_URI="https://github.com/ROCm/llvm-project/archive/rocm-${PV}.tar.gz -> ${MY_P}.tar.gz" + S="${WORKDIR}/${MY_P}/${components[0]}" + KEYWORDS="~amd64" +fi + +DESCRIPTION="Radeon Open Compute Device Libraries" +HOMEPAGE="https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-build/rocm-cmake + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT} + llvm-core/lld:${LLVM_SLOT} + ') +" + +CMAKE_BUILD_TYPE=Release + +PATCHES=( + "${FILESDIR}/${PN}-6.1.0-fix-llvm-link.patch" + "${FILESDIR}/${PN}-6.2.0-test-bitcode-dir.patch" + "${FILESDIR}/${PN}-6.4.2-cmake-4-compat.patch" +) + +src_unpack() { + if [[ ${PV} == *9999 ]] ; then + git-r3_fetch + git-r3_checkout '' . '' "${components[@]}" + else + archive="${MY_P}.tar.gz" + ebegin "Unpacking from ${archive}" + tar -x -z -o \ + -f "${DISTDIR}/${archive}" \ + "${components[@]/#/${MY_P}/}" || die + eend ${?} + fi +} + +src_prepare() { + sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" \ + -i "${S}/cmake/OCL.cmake" \ + -i "${S}/cmake/Packages.cmake" || die + cmake_src_prepare +} + +src_configure() { + # Do not trust CMake with autoselecting Clang, as it autoselects the latest one + # producing too modern LLVM bitcode and causing linker errors in other packages. + llvm_prepend_path "${LLVM_SLOT}" + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + # Clean up unsupported flags for the switched compiler, see #936099 + strip-unsupported-flags + + cmake_src_configure +} + +src_install() { + cmake_src_install + # install symlink, so that clang won't ask for "--rocm-device-lib-path" flag anymore + local bitcodedir="$(clang -print-resource-dir)/$(get_libdir)/amdgcn/bitcode" + dosym -r "/usr/lib/amdgcn/bitcode" "${bitcodedir#${EPREFIX}}" +} + +src_test() { + # https://github.com/ROCm/llvm-project/issues/76 + # "Failing tests are on gfx that are not supported" + local CMAKE_SKIP_TESTS=( + compile_fract__gfx600 + compile_fract__gfx700 + ) + + cmake_src_test +} From d1ec9ea6b6f537685f3ef0c552a9d82ce0ff54d8 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:41 +0000 Subject: [PATCH 07/36] dev-libs/rocm-opencl-runtime: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rocm-opencl-runtime/Manifest | 1 + .../rocm-opencl-runtime-6.4.3.ebuild | 101 ++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.4.3.ebuild diff --git a/dev-libs/rocm-opencl-runtime/Manifest b/dev-libs/rocm-opencl-runtime/Manifest index d380e5e1a7fbc..f46e121a59ef9 100644 --- a/dev-libs/rocm-opencl-runtime/Manifest +++ b/dev-libs/rocm-opencl-runtime/Manifest @@ -4,3 +4,4 @@ DIST rocm-clr-6.1.2.tar.gz 2031283 BLAKE2B d51d32a77794ea97f1a3817786c9fd6b48210 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 +DIST rocm-clr-6.4.3.tar.gz 2126045 BLAKE2B eadeaa050e684373883faadfbf42d6b4152979154587afb1a2583bf9ddfb3ff9ab9787a433c8f380ac52012732ff2f68892ab256ec76f32557c164e9551745af SHA512 38daec86ea9c8e60f420b4eec5e96d88a4e51585dcbb7352bec27f0c712f4b856f413c42e2585c031a81e8046065d76763c624500ba786ae0e9133278f00418c diff --git a/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.4.3.ebuild b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.4.3.ebuild new file mode 100644 index 0000000000000..32e9d9fa8199c --- /dev/null +++ b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.4.3.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_SKIP_GLOBALS=1 +inherit cmake edo flag-o-matic rocm + +DESCRIPTION="Radeon Open Compute OpenCL Compatible Runtime" +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" +S="${WORKDIR}/clr-rocm-${PV}/" + +LICENSE="Apache-2.0 MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="debug test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/rocr-runtime:${SLOT} + dev-libs/rocm-comgr:${SLOT} + dev-libs/rocm-device-libs:${SLOT} + >=virtual/opencl-3 + media-libs/mesa[-opencl] +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-build/rocm-cmake-6.0 + media-libs/glew + test? ( >=x11-apps/mesa-progs-8.5.0[X] ) +" + +PATCHES=( + "${FILESDIR}/${PN}-6.2.4-fix-lib-version.patch" + "${FILESDIR}/${PN}-6.1.2-musl.patch" +) + +src_configure() { + # -Werror=strict-aliasing + # https://bugs.gentoo.org/856088 + # https://github.com/ROCm/clr/issues/64 + # + # Do not trust it for LTO either + append-flags -fno-strict-aliasing + filter-lto + + # Fix ld.lld linker error: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/issues/155 + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + # Reported upstream: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/issues/120 + append-cflags -fcommon + + local mycmakeargs=( + -Wno-dev + -DROCM_PATH="${EPREFIX}/usr" + -DBUILD_TESTS=$(usex test ON OFF) + -DEMU_ENV=ON + -DBUILD_ICD=ON + -DFILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DCLR_BUILD_OCL=on + ) + cmake_src_configure +} + +src_install() { + insinto /etc/OpenCL/vendors + doins opencl/config/amdocl64.icd + + cd "${BUILD_DIR}"/opencl || die + insinto /usr/lib64 + doins amdocl/libamdocl64.so* + doins tools/cltrace/libcltrace.so +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}"/tests/ocltst || die + export OCL_ICD_FILENAMES="${BUILD_DIR}"/amdocl/libamdocl64.so + local instruction1="Please start an X server using amdgpu driver (not Xvfb!)," + local instruction2="and export OCLGL_DISPLAY=\${DISPLAY} OCLGL_XAUTHORITY=\${XAUTHORITY} before reruning the test." + if [[ -n ${OCLGL_DISPLAY+x} ]]; then + export DISPLAY=${OCLGL_DISPLAY} + export XAUTHORITY=${OCLGL_XAUTHORITY} + ebegin "Running oclgl test under DISPLAY ${OCLGL_DISPLAY}" + if ! glxinfo | grep "OpenGL vendor string: AMD"; then + ewarn "${instruction1}" + ewarn "${instruction2}" + die "This display does not have AMD OpenGL vendor!" + fi + ./ocltst -m $(realpath liboclgl.so) -A ogl.exclude + eend $? || die "oclgl test failed" + else + ewarn "${instruction1}" + ewarn "${instruction2}" + die "\${OCLGL_DISPLAY} not set." + fi + edob ./ocltst -m $(realpath liboclruntime.so) -A oclruntime.exclude + edob ./ocltst -m $(realpath liboclperf.so) -A oclperf.exclude +} From ea3d217207c2a7ad185fac8dc4931af6c0f5a46c Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:49 +0000 Subject: [PATCH 08/36] dev-libs/rocr-runtime: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/rocr-runtime/Manifest | 1 + .../rocr-runtime/rocr-runtime-6.4.3.ebuild | 73 +++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 dev-libs/rocr-runtime/rocr-runtime-6.4.3.ebuild diff --git a/dev-libs/rocr-runtime/Manifest b/dev-libs/rocr-runtime/Manifest index ede964bf9f797..99573aefdb2f9 100644 --- a/dev-libs/rocr-runtime/Manifest +++ b/dev-libs/rocr-runtime/Manifest @@ -4,3 +4,4 @@ DIST rocr-runtime-6.1.2.tar.gz 903633 BLAKE2B 058492c6c37bb80e8cdb29752f3f1404ac DIST rocr-runtime-6.3.2.tar.gz 2260102 BLAKE2B 706cd4cc61c3007aec2b7822c02a7c98399454b366f2a2c221ae53ea3ee4c288c47c7fcfbe8f1cbd38d071ab5c90a2d79c054a0b0d2a2f6892a051b843794d32 SHA512 0326242deae601275d71fb268781735b117e713e73b1bcac2fd732828d993dee5840dec011fdc4350be2afdbc8266b6d1b65d5dff0d465a5b9c9cc091a5c645c DIST rocr-runtime-6.3.3.tar.gz 2260073 BLAKE2B bca4a1809a90a4009b7f1f6e97764ab2f6d235b1c8d16d0417309c6484b2449ff807d248fe05e97867a10e660a86345c442a055081faefa17bbdf6a55b981867 SHA512 5b59d817f0fe5c87cb6eb639c8d1b8e5814b7b236eb961c9b7e2ade81163710b4cebb63f45cdf508a9ae6eb5dc380a63c09b9aa44cb082fe2b85c727efed8061 DIST rocr-runtime-6.4.1.tar.gz 2291908 BLAKE2B be905dc864e4488e35c37480f889c29179523a1d95441d3b6bd7c531f273beaa3048c65d16570aa223db02692098408abd9bf310a3e5b8b9ce59f9fae1b5ebad SHA512 f12b5bb6437629264bbc6699bbde974857fba50059d515dec42257729d9e57a2d2dcfb68237082b4d7506e0d37278828f9e5693c45698aeb84fbb54a1f332646 +DIST rocr-runtime-6.4.3.tar.gz 2292387 BLAKE2B 4299e49cf0ead06d1736fe7f5f39b499749f38b7432d0ab1d870310bf087463636696651b12291be14fb56b28099da605887dcb4662e02dfa81bd0801a9d3aa2 SHA512 424af4015d7fe50c97ec27314bfbb21a768617afc29a7ce2fb61edb1fc3933e9451e285ce94a6177c33aed26f7e8c223343c0ec3936e0fe918a85361e6873ba2 diff --git a/dev-libs/rocr-runtime/rocr-runtime-6.4.3.ebuild b/dev-libs/rocr-runtime/rocr-runtime-6.4.3.ebuild new file mode 100644 index 0000000000000..525dcc5b1fdcc --- /dev/null +++ b/dev-libs/rocr-runtime/rocr-runtime-6.4.3.ebuild @@ -0,0 +1,73 @@ +# 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 + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/ROCR-Runtime/" + inherit git-r3 + S="${WORKDIR}/${P}" +else + SRC_URI="https://github.com/ROCm/ROCR-Runtime/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/ROCR-Runtime-rocm-${PV}" + KEYWORDS="~amd64" +fi + +DESCRIPTION="Radeon Open Compute Runtime" +HOMEPAGE="https://github.com/ROCm/ROCR-Runtime" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +IUSE="debug" + +COMMON_DEPEND="dev-libs/elfutils + x11-libs/libdrm" +DEPEND="${COMMON_DEPEND} + dev-libs/roct-thunk-interface:${SLOT} + dev-libs/rocm-device-libs:${SLOT} + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/lld:${LLVM_SLOT}= + ') +" +RDEPEND="${DEPEND}" +BDEPEND="app-editors/vim-core" + # vim-core is needed for "xxd" + +PATCHES=( + "${FILESDIR}/${PN}-6.3.0-use-system-hsakmt.patch" +) + +# skip false positive detection in samples, bug #958188 +CMAKE_QA_COMPAT_SKIP=1 + +src_prepare() { + cd "${S}/runtime/hsa-runtime" || die + eapply "${FILESDIR}/${PN}-4.3.0_no-aqlprofiler.patch" + eapply "${FILESDIR}/${PN}-6.1.2-gcc15-stdint.patch" + + # Gentoo installs "*.bc" to "/usr/lib" instead of a "[path]/bitcode" directory ... + sed -e "s:-O2:--rocm-path=${EPREFIX}/usr/lib/ -O2:" -i image/blit_src/CMakeLists.txt || die + + cd "${S}" || die + cmake_src_prepare +} + +src_configure() { + # -Werror=odr + # https://bugs.gentoo.org/856091 + # https://github.com/ROCm/ROCR-Runtime/issues/182 + filter-lto + + use debug || append-cxxflags "-DNDEBUG" + + local mycmakeargs=( + -DCMAKE_DISABLE_FIND_PACKAGE_rocprofiler-register=ON + ) + + cmake_src_configure +} From b07153bd7eefe41f7320335c8c5c7b12815646f1 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:57:56 +0000 Subject: [PATCH 09/36] dev-libs/roct-thunk-interface: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-libs/roct-thunk-interface/Manifest | 1 + .../roct-thunk-interface-6.4.3.ebuild | 93 +++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 dev-libs/roct-thunk-interface/roct-thunk-interface-6.4.3.ebuild diff --git a/dev-libs/roct-thunk-interface/Manifest b/dev-libs/roct-thunk-interface/Manifest index a241c7c505146..45107310a9e4d 100644 --- a/dev-libs/roct-thunk-interface/Manifest +++ b/dev-libs/roct-thunk-interface/Manifest @@ -4,3 +4,4 @@ DIST roct-thunk-interface-6.1.2.tar.gz 666380 BLAKE2B ffff2405bbb95a6908670a23cf DIST roct-thunk-interface-6.3.2.tar.gz 2260102 BLAKE2B 706cd4cc61c3007aec2b7822c02a7c98399454b366f2a2c221ae53ea3ee4c288c47c7fcfbe8f1cbd38d071ab5c90a2d79c054a0b0d2a2f6892a051b843794d32 SHA512 0326242deae601275d71fb268781735b117e713e73b1bcac2fd732828d993dee5840dec011fdc4350be2afdbc8266b6d1b65d5dff0d465a5b9c9cc091a5c645c DIST roct-thunk-interface-6.3.3.tar.gz 2260073 BLAKE2B bca4a1809a90a4009b7f1f6e97764ab2f6d235b1c8d16d0417309c6484b2449ff807d248fe05e97867a10e660a86345c442a055081faefa17bbdf6a55b981867 SHA512 5b59d817f0fe5c87cb6eb639c8d1b8e5814b7b236eb961c9b7e2ade81163710b4cebb63f45cdf508a9ae6eb5dc380a63c09b9aa44cb082fe2b85c727efed8061 DIST roct-thunk-interface-6.4.1.tar.gz 2291908 BLAKE2B be905dc864e4488e35c37480f889c29179523a1d95441d3b6bd7c531f273beaa3048c65d16570aa223db02692098408abd9bf310a3e5b8b9ce59f9fae1b5ebad SHA512 f12b5bb6437629264bbc6699bbde974857fba50059d515dec42257729d9e57a2d2dcfb68237082b4d7506e0d37278828f9e5693c45698aeb84fbb54a1f332646 +DIST roct-thunk-interface-6.4.3.tar.gz 2292387 BLAKE2B 4299e49cf0ead06d1736fe7f5f39b499749f38b7432d0ab1d870310bf087463636696651b12291be14fb56b28099da605887dcb4662e02dfa81bd0801a9d3aa2 SHA512 424af4015d7fe50c97ec27314bfbb21a768617afc29a7ce2fb61edb1fc3933e9451e285ce94a6177c33aed26f7e8c223343c0ec3936e0fe918a85361e6873ba2 diff --git a/dev-libs/roct-thunk-interface/roct-thunk-interface-6.4.3.ebuild b/dev-libs/roct-thunk-interface/roct-thunk-interface-6.4.3.ebuild new file mode 100644 index 0000000000000..2d16066e27244 --- /dev/null +++ b/dev-libs/roct-thunk-interface/roct-thunk-interface-6.4.3.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 20 ) +ROCM_SKIP_GLOBALS=1 +inherit cmake flag-o-matic linux-info llvm-r1 rocm + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/ROCR-Runtime/" + inherit git-r3 + S="${WORKDIR}/${P}/libhsakmt" +else + SRC_URI="https://github.com/ROCm/ROCR-Runtime/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/ROCR-Runtime-rocm-${PV}/libhsakmt" + KEYWORDS="~amd64" +fi + +DESCRIPTION="Radeon Open Compute Thunk Interface" +HOMEPAGE="https://github.com/ROCm/ROCR-Runtime/tree/amd-staging/libhsakmt" +CONFIG_CHECK="~HSA_AMD ~HMM_MIRROR ~ZONE_DEVICE ~DRM_AMDGPU ~DRM_AMDGPU_USERPTR" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" + +RDEPEND="sys-process/numactl + x11-libs/libdrm[video_cards_amdgpu]" +DEPEND="${RDEPEND} + test? ( + $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}') + dev-cpp/gtest + )" + +IUSE="test" +RESTRICT="!test? ( test )" + +CMAKE_BUILD_TYPE=Release + +PATCHES=( + "${FILESDIR}/${PN}-6.3.0-functions.patch" + "${FILESDIR}/kfdtest-6.1.0-skipIPCtest.patch" + "${FILESDIR}/kfdtest-6.2.4-fix-llvm-header.patch" +) + +test_wrapper() { + local S="$1" + shift 1 + local CMAKE_USE_DIR="${S}" + local BUILD_DIR="${S}_build" + cd "${S}" || die + "$@" +} + +src_prepare() { + sed -e "s/get_version ( \"1.0.0\" )/get_version ( \"${PV}\" )/" -i CMakeLists.txt || die + + # https://github.com/ROCm/ROCR-Runtime/issues/263 + sed -e "s/\${HSAKMT_TARGET} STATIC/\${HSAKMT_TARGET}/" -i CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + llvm_prepend_path "${LLVM_SLOT}" + + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" + -DBUILD_SHARED_LIBS=ON + ) + cmake_src_configure + + if use test; then + # ODR violations (bug #956958) + filter-lto + + export LIBHSAKMT_PATH="${BUILD_DIR}" + test_wrapper "${S}/tests/kfdtest" cmake_src_configure + fi +} + +src_compile() { + cmake_src_compile + if use test; then + LIBRARY_PATH="${BUILD_DIR}" test_wrapper "${S}/tests/kfdtest" cmake_src_compile + fi +} + +src_test() { + check_amdgpu + TESTDIR="${S}/tests/kfdtest_build/" + cd "${TESTDIR}" || die + PATH="${PATH}:${TESTDIR}" ./run_kfdtest.sh +} From 95b535c0b89900ad30d753144c476ce9fed56658 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:05 +0000 Subject: [PATCH 10/36] dev-util/hip: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/hip/Manifest | 3 + dev-util/hip/hip-6.4.3.ebuild | 249 ++++++++++++++++++++++++++++++++++ 2 files changed, 252 insertions(+) create mode 100644 dev-util/hip/hip-6.4.3.ebuild diff --git a/dev-util/hip/Manifest b/dev-util/hip/Manifest index 2770912e28db9..930ed8e37fcee 100644 --- a/dev-util/hip/Manifest +++ b/dev-util/hip/Manifest @@ -4,11 +4,13 @@ DIST hip-6.1.2.tar.gz 247193 BLAKE2B e343bdf233752e40cdefa0c2bbd56858bbb47115504 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-6.4.3.tar.gz 1755257 BLAKE2B 3db2d35a71ca2802e95043c5ef6d50db56b3e1412dcdb08ba7083675cccb898d2b06c2afdfc0e0f53648d09d2aa84f91cca00ecf297caa2784d07aae4b3573b6 SHA512 1fa32ca7f9f2024e66cbe0bd8faaeeaf5240ce2f962f5bfa29815ff7bdcf5c4c4dac2d0d0354c3a5215df6ebec1e1b32bc10e560d9292a0bd019da1773724e54 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 hip-test-6.4.3.tar.gz 1570417 BLAKE2B 5b6bd3d1fcaaf724061ed686b6edc08b7ba308557ae0cb22785a04bc17b48aace50225a5e3c756a28bc741bb8fcaac8bff18b17f99a4458427b3489fef7dcd44 SHA512 5eed7da562f3807bb6ea8d737115dd45b775c2588c4131f2a19206d125b2b53d8adccbe189953219dd1091f18f08badec81cba524951b8a69626df9075db7a1c 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 @@ -16,3 +18,4 @@ DIST rocm-clr-6.1.2.tar.gz 2031283 BLAKE2B d51d32a77794ea97f1a3817786c9fd6b48210 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 +DIST rocm-clr-6.4.3.tar.gz 2126045 BLAKE2B eadeaa050e684373883faadfbf42d6b4152979154587afb1a2583bf9ddfb3ff9ab9787a433c8f380ac52012732ff2f68892ab256ec76f32557c164e9551745af SHA512 38daec86ea9c8e60f420b4eec5e96d88a4e51585dcbb7352bec27f0c712f4b856f413c42e2585c031a81e8046065d76763c624500ba786ae0e9133278f00418c diff --git a/dev-util/hip/hip-6.4.3.ebuild b/dev-util/hip/hip-6.4.3.ebuild new file mode 100644 index 0000000000000..e15f8c3737944 --- /dev/null +++ b/dev-util/hip/hip-6.4.3.ebuild @@ -0,0 +1,249 @@ +# 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" + "${FILESDIR}/${PN}-6.4.1-bad-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 +} From 40c76137dbf2e02473a8e132d46169563ab0485f Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:13 +0000 Subject: [PATCH 11/36] dev-util/hipcc: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/hipcc/Manifest | 1 + dev-util/hipcc/hipcc-6.4.3.ebuild | 72 +++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 dev-util/hipcc/hipcc-6.4.3.ebuild diff --git a/dev-util/hipcc/Manifest b/dev-util/hipcc/Manifest index bcdf6bfd6e779..09d04397ac213 100644 --- a/dev-util/hipcc/Manifest +++ b/dev-util/hipcc/Manifest @@ -4,3 +4,4 @@ DIST llvm-project-rocm-6.1.2.tar.gz 195992927 BLAKE2B d821f29f2f1f7c1ff414c63a71 DIST llvm-project-rocm-6.3.2.tar.gz 206671202 BLAKE2B a280e2be22b8eb9fd51814074447baed3637231d4bfbe391047a1fb2409197c8d8ba58cebb3aeaec15aa4daee9371311274b30ede48e0039d7c84e432b15de1a SHA512 314e27577af76268635f3c96ee3516829e4622913c3d0c4c68eccbaee0c9f7f5fc031cbd35827deb4bc29712592c424e296c15ce8c500c897bfb3eb19455899c DIST llvm-project-rocm-6.3.3.tar.gz 206663912 BLAKE2B 939527dbbcd0c4b4785e5cdbd7144149f169120506c2b5b00e84e8208e3877109e24cf58501a1317d1f9dcce0614cf47a0290cb2e0e10aa7b164bcb064c2ffbc SHA512 380d6ca72dd215b1996b14fe9b54f4981bd1d275aae22ed89f4f3efc46ec2988054cc98dcc45e1c678812c2bd3488ed6cf375ca193af4ad272a6cff7f2388872 DIST llvm-project-rocm-6.4.1.tar.gz 218905831 BLAKE2B 188ec436e5ab6e50fee66ebc3a30c5e5703ca8770f309cca580c919567090bbdb23a5de51d36dabf9cb54f1142ab00d9756bec379670029c57d0f7a49fab2f13 SHA512 e0fd29953cfe7ae4b3f60aa25c1ec0f6071715afc8e275d62901dbd575b96afc673d61996300d3f7672005274fe84c7f934070614ac3deafcfa103d9514b3e41 +DIST llvm-project-rocm-6.4.3.tar.gz 218920681 BLAKE2B 85c29c1f66f9d23fa7fb6d98baf60cb08a8507a7b3a4c0a5054d9d4d3bc1fb7de56ddae583e37a36c7a3f17f9e57bd49777deca7560ca8b4882c1eea1db5b421 SHA512 b6b4149c6426793f4497dfd1200079b0caef4d5a6f49c1f3a301d70f5f7b322b850085ff2f89d55df1dfab6d6a97948fe4084d4ec14654ee97cdab26e71a45c0 diff --git a/dev-util/hipcc/hipcc-6.4.3.ebuild b/dev-util/hipcc/hipcc-6.4.3.ebuild new file mode 100644 index 0000000000000..4a6c644e5d728 --- /dev/null +++ b/dev-util/hipcc/hipcc-6.4.3.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 +} From 47f048268317a1198ad7c66ddb8e9ea20cde48bc Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:20 +0000 Subject: [PATCH 12/36] dev-util/hipify-clang: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/hipify-clang/Manifest | 1 + .../hipify-clang/hipify-clang-6.4.3.ebuild | 58 +++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 dev-util/hipify-clang/hipify-clang-6.4.3.ebuild diff --git a/dev-util/hipify-clang/Manifest b/dev-util/hipify-clang/Manifest index 236630b33daa2..fa3708eba8ecb 100644 --- a/dev-util/hipify-clang/Manifest +++ b/dev-util/hipify-clang/Manifest @@ -3,3 +3,4 @@ DIST HIPIFY-6.1.1.tar.gz 813425 BLAKE2B accc661431f11796d0c8bcf638537a6035020b2a 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 +DIST HIPIFY-6.4.3.tar.gz 995683 BLAKE2B ec6bb3a11a4ea5a48b8762788bfefdcc1a4fcd9a20b6dd4e72de2de920057305a9dd79d955ad696bc233faec458d30f7776320d073562bef2b861306ba11709a SHA512 c408da868ac446f81d380816c3ea1a2e39a4dcd3a7b705d93babd75a0d12e1df21e5ab394fbc8d4bd8e33dbaaaadffb05582bb4ed45b8561e2cbcc989c21a9ec diff --git a/dev-util/hipify-clang/hipify-clang-6.4.3.ebuild b/dev-util/hipify-clang/hipify-clang-6.4.3.ebuild new file mode 100644 index 0000000000000..34f16f8bd27af --- /dev/null +++ b/dev-util/hipify-clang/hipify-clang-6.4.3.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 +} From ee1b16fb7102f49fec8cdf1ecbe268c7b7e26c4c Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:24 +0000 Subject: [PATCH 13/36] dev-util/rocm_bandwidth_test: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/rocm_bandwidth_test/Manifest | 1 + .../rocm_bandwidth_test-6.4.3.ebuild | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.3.ebuild diff --git a/dev-util/rocm_bandwidth_test/Manifest b/dev-util/rocm_bandwidth_test/Manifest index 026285e88bf5c..6a7d8e5a2c304 100644 --- a/dev-util/rocm_bandwidth_test/Manifest +++ b/dev-util/rocm_bandwidth_test/Manifest @@ -2,3 +2,4 @@ DIST rocm_bandwidth_test-5.7.1.tar.gz 38769 BLAKE2B 5880c4bb50d4daf87581424c2fb2 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 +DIST rocm_bandwidth_test-6.4.3.tar.gz 44901 BLAKE2B 6d5c1c716b93727094df991dafd590af14459d2350fe7b31ba5ca190f71cc15e2c26f5fe12738fbb53513d02c33b3075e99fa135eab2411dcc2811a6fd60993b SHA512 31fe4988145e9756f64c7e8d0731a1e1cbf4140e13d3da51fabfdf10e9803a8c32a65d78776ffb13bf9ad718c65a8b91bb30c3d66c069c00446ff51d6bfd040a diff --git a/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.3.ebuild b/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.3.ebuild new file mode 100644 index 0000000000000..8aa76e87ac32d --- /dev/null +++ b/dev-util/rocm_bandwidth_test/rocm_bandwidth_test-6.4.3.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="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +DEPEND="dev-libs/rocr-runtime:=" +RDEPEND="${DEPEND}" From a578f098c5e68de04c7b4196ce8aede6637347ac Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:30 +0000 Subject: [PATCH 14/36] dev-util/rocm-smi: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/rocm-smi/Manifest | 1 + dev-util/rocm-smi/rocm-smi-6.4.3.ebuild | 70 +++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 dev-util/rocm-smi/rocm-smi-6.4.3.ebuild diff --git a/dev-util/rocm-smi/Manifest b/dev-util/rocm-smi/Manifest index 1a2bcca3ed91a..99874b295f81d 100644 --- a/dev-util/rocm-smi/Manifest +++ b/dev-util/rocm-smi/Manifest @@ -3,3 +3,4 @@ DIST rocm-smi-6.1.1.tar.gz 872628 BLAKE2B 35830fd0eb36688b3803bed2059f29ba4d8613 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 +DIST rocm-smi-6.4.3.tar.gz 934885 BLAKE2B b7e5ee132cd9f3b9f36791df7feec77186fdb170ee62acfb2c494b8960caef8815a6c220cc517e567e7045ad0353e7ff773185808e963b597854199a23c96450 SHA512 034a5e6d672d88e9a138d862fbafa5552c80638795c791f955258d0fc917a02e4aabd954154ad457eb2ba1a59c4e54f5702635ceb757165c212856068580a72d diff --git a/dev-util/rocm-smi/rocm-smi-6.4.3.ebuild b/dev-util/rocm-smi/rocm-smi-6.4.3.ebuild new file mode 100644 index 0000000000000..b1ff8510f2460 --- /dev/null +++ b/dev-util/rocm-smi/rocm-smi-6.4.3.ebuild @@ -0,0 +1,70 @@ +# 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 linux-info optfeature 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" +SLOT="0/$(ver_cut 1-2)" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS}" +DEPEND="${RDEPEND} + sys-kernel/linux-headers + x11-libs/libdrm +" + +PATCHES=( + "${FILESDIR}"/${PN}-5.7.1-no-strip.patch + "${FILESDIR}"/${PN}-5.7.1-remove-example.patch + "${FILESDIR}"/${PN}-6.3.0-fix-flags.patch + "${FILESDIR}"/${PN}-6.4.1-log-exceptions.patch +) + +CONFIG_CHECK="~HSA_AMD ~DRM_AMDGPU" + +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 +} + +pkg_postinst() { + optfeature "vendor and device names instead of hex device IDs" sys-apps/hwdata +} From 539de9f1da0f3b4eef027d2c75268f5b7c681f66 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:36 +0000 Subject: [PATCH 15/36] dev-util/rocminfo: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/rocminfo/Manifest | 1 + dev-util/rocminfo/rocminfo-6.4.3.ebuild | 44 +++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 dev-util/rocminfo/rocminfo-6.4.3.ebuild diff --git a/dev-util/rocminfo/Manifest b/dev-util/rocminfo/Manifest index 3f087b9ba971a..f170bbf5adf45 100644 --- a/dev-util/rocminfo/Manifest +++ b/dev-util/rocminfo/Manifest @@ -4,3 +4,4 @@ DIST rocminfo-6.1.2.tar.gz 17734 BLAKE2B d92816dc0657a2ec0f04024311b5a7851a3cd48 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 +DIST rocminfo-6.4.3.tar.gz 27947 BLAKE2B 8010179996b3b625dcdbb7441eeb85253ae3f72eaefb3ec507704ed8b131a7dc2ddcff5d162da0c73d23ba062fa9c776695ebf3cada880df5a287a69de2b5415 SHA512 2e7a7a4499614feeb0aaa3833662b6c391b7ea694db8887669408136d4dab66e546758b8ccdc8e8df6c4afc2fed0688716414d207208562ddac1731883304067 diff --git a/dev-util/rocminfo/rocminfo-6.4.3.ebuild b/dev-util/rocminfo/rocminfo-6.4.3.ebuild new file mode 100644 index 0000000000000..c53b36f0f97c4 --- /dev/null +++ b/dev-util/rocminfo/rocminfo-6.4.3.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 +} From 44d965d2c781019167b4feb19a65080d1d4b04ec Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:44 +0000 Subject: [PATCH 16/36] dev-util/roctracer: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/roctracer/Manifest | 1 + dev-util/roctracer/roctracer-6.4.3.ebuild | 110 ++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 dev-util/roctracer/roctracer-6.4.3.ebuild diff --git a/dev-util/roctracer/Manifest b/dev-util/roctracer/Manifest index 7fad75ca10aa8..d6f881d68138f 100644 --- a/dev-util/roctracer/Manifest +++ b/dev-util/roctracer/Manifest @@ -3,3 +3,4 @@ DIST roctracer-6.1.1.tar.gz 396688 BLAKE2B e332c3a6056d1678e3da511878fd2710a4eaa 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 +DIST roctracer-6.4.3.tar.gz 398024 BLAKE2B bde34efb9640af84ae044a6fd507cdb1722e2f2f0610a7c1db176184c431af29f371a5d049eaa7cff5bb80e2f5db85430257d83527c11f5fde86f5f6b9442251 SHA512 c929786e2fbc34082d6d99c1f68e2ffd0eef1f9be31a6ccb385e50ec5059069b9d364f7a90301f184c966c01f9dfbd6cc6c1a4e8f5065c25d5f4d7673e42aad0 diff --git a/dev-util/roctracer/roctracer-6.4.3.ebuild b/dev-util/roctracer/roctracer-6.4.3.ebuild new file mode 100644 index 0000000000000..e99038363fc86 --- /dev/null +++ b/dev-util/roctracer/roctracer-6.4.3.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 +} From a949c219d857bdf2f1804f1c3cf743591f8e4ad0 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:58:55 +0000 Subject: [PATCH 17/36] dev-util/Tensile: add 6.4.3 Signed-off-by: Patrick Lauer --- dev-util/Tensile/Manifest | 1 + dev-util/Tensile/Tensile-6.4.3.ebuild | 143 ++++++++++++++++++++++++++ 2 files changed, 144 insertions(+) create mode 100644 dev-util/Tensile/Tensile-6.4.3.ebuild diff --git a/dev-util/Tensile/Manifest b/dev-util/Tensile/Manifest index d1b28f2f33970..6cfbab05746ad 100644 --- a/dev-util/Tensile/Manifest +++ b/dev-util/Tensile/Manifest @@ -3,3 +3,4 @@ DIST rocm-Tensile-6.1.1.tar.gz 12675289 BLAKE2B dfe3698d7dda14d5b20a6fe1ef6535ac 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 +DIST rocm-Tensile-6.4.3.tar.gz 12731564 BLAKE2B b679ecf84cd023eecec8cef58729709f60b77615a76bc3215607c4e605b6057fa1c00e230d8c0ec9b24ca7f31c8e2e99dbffdfc732c3268958ea33d60962e256 SHA512 3d358d212ad52216520d391968578e3d6d7040f23c469e42b9fe6eea0a33034074df45d4a39a8978cc13f822f75a4cdfa850aa85c772ff4443276f9c4b9397a8 diff --git a/dev-util/Tensile/Tensile-6.4.3.ebuild b/dev-util/Tensile/Tensile-6.4.3.ebuild new file mode 100644 index 0000000000000..76e374f937b91 --- /dev/null +++ b/dev-util/Tensile/Tensile-6.4.3.ebuild @@ -0,0 +1,143 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..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 + + # bug 949817: fix v_dot4_i32_i8 syntax for clang-20 + sed 's/ op_sel:\[0,0\] op_sel_hi:\[1,1\]//' -i Components/MAC_I8X4.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 +} From 2e4dd2167abc54d8c87cbc6a595b252d98346d0e Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:59:10 +0000 Subject: [PATCH 18/36] sci-libs/composable-kernel: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/composable-kernel/Manifest | 1 + .../composable-kernel-6.4.3.ebuild | 150 ++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 sci-libs/composable-kernel/composable-kernel-6.4.3.ebuild diff --git a/sci-libs/composable-kernel/Manifest b/sci-libs/composable-kernel/Manifest index 4cab3c392dcaa..52a65d7f74c3d 100644 --- a/sci-libs/composable-kernel/Manifest +++ b/sci-libs/composable-kernel/Manifest @@ -2,4 +2,5 @@ DIST composable-kernel-5.7.1.tar.gz 2158402 BLAKE2B 660c205c2a99cd17f29a9077e9e7 DIST composable-kernel-6.1.1.tar.gz 2520967 BLAKE2B 549d76c5c36b0a273a4c51159abd162403ad035520f97c43dd4b66560ad30021199d2f4cf7e2c12ffe33beee2fb49604db6d7c40b3b33fdcbfde111b9d4833aa SHA512 3f7667cea91760447c3f6ac0bfc261c0bca95abafbfce209d1c889e04f01ec29849e8d7f0e1cb1d77a4309ac06b3c2557721a773e4a67be383de91668cb279b2 DIST composable-kernel-6.3.0.tar.gz 3376552 BLAKE2B ad3dde27d0134fa8bf6b5935603f7cac17c959ab7b123e8d69cfe82bee188ade0fe9d3666d46d9819de479e875e46c0fdad2574f68a3bcf0e9acbb871f163b24 SHA512 4fa7be3f54d06d894dca7ef9fa8e3db24971fb857fee96e7ccff89844fa466789756d5f140d2791a984311d59a044b5351d0358e676c218ea0b0aadf60954d8e DIST composable-kernel-6.4.1.tar.gz 4373219 BLAKE2B d00b795a85c36f4199fcbcef7716699865fbbbde72e987dc378e19abb3866d6ccb2fd89095beab3de39009bfa036dda652d9ddf291d0734921c37c410b6c0bae SHA512 a36854e2f884d458847d053f8d1e4254f1f3227690e447d5d75f574df4d604b2a4b7a1b9d0d0c8048b2596ab6633b5a435a2e38352cc6c35117558a60d73a6f4 +DIST composable-kernel-6.4.3.tar.gz 4373178 BLAKE2B 1128f5de53e31365ff44d2c0b540ab662cd5c1659018d15f35e4c7036c8cf613ba5b95f910b7b3af94673a08ee36917fc38f9f19140140f2779252abda976fa4 SHA512 7073889f9af312a366eae9924771336e40b378255150a48308ce3975e254378da07bb49d615fbda7cc89dab35a14269df776ca88f483b803663cce325e463bb9 DIST gtest-1.14.0_p20220421.tar.gz 849107 BLAKE2B e9c32d9c1d98959583b696430a6be411f5d69e3db96669b16cffc0f1dcad42512391c0a4733f6e829c82953ff33fa243ee782f3cf6e86436f0d290f45d1a3db7 SHA512 967aac7d85da0e216fe13b17d10f894a31d763d9b88201bac7d3dfc37600552b5472d30a166a6ef27f2778677e73fd3e43d082695a48f47824262eb9cd4fcd2f diff --git a/sci-libs/composable-kernel/composable-kernel-6.4.3.ebuild b/sci-libs/composable-kernel/composable-kernel-6.4.3.ebuild new file mode 100644 index 0000000000000..a05ecce8c100d --- /dev/null +++ b/sci-libs/composable-kernel/composable-kernel-6.4.3.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# shellcheck disable=SC2317 +EAPI=8 + +ROCM_VERSION=${PV} +PYTHON_COMPAT=( python3_{10..14} python3_13t ) + +inherit check-reqs cmake flag-o-matic multiprocessing python-r1 rocm + +GTEST_COMMIT="b85864c64758dec007208e56af933fc3f52044ee" +GTEST_FILE="gtest-1.14.0_p20220421.tar.gz" + +DESCRIPTION="High Performance Composable Kernel for AMD GPUs" +HOMEPAGE="https://github.com/ROCm/composable_kernel" +SRC_URI="https://github.com/ROCm/composable_kernel/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz + test? ( https://github.com/google/googletest/archive/${GTEST_COMMIT}.tar.gz -> ${GTEST_FILE} )" +S="${WORKDIR}/composable_kernel-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +IUSE="debug profiler test" +REQUIRED_USE="${ROCM_REQUIRED_USE} ${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-util/hip:${SLOT} + ${PYTHON_DEPS} +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + dev-build/rocm-cmake +" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-enable-examples.patch + "${FILESDIR}"/${PN}-6.1.1-no-git-no-hash.patch + "${FILESDIR}"/${PN}-6.3.0-no-inline-all.patch + "${FILESDIR}"/${PN}-6.3.0-conditional-kernels.patch + "${FILESDIR}"/${PN}-6.3.0-conditional-ckprofiler.patch + "${FILESDIR}"/${PN}-6.4.1-expand-isa.patch +) + +ck_check-reqs() { + [[ ${MERGE_TYPE} == binary ]] && return + + targets=($AMDGPU_TARGETS) + if [[ ${#targets[@]} -gt 1 ]]; then + ewarn "composable-kernel will be compiled for multiple GPU architectures," + ewarn "which will take a significant amount of time." + ewarn "Please consider setting AMDGPU_TARGETS USE_EXPAND variable to a single architecture." + fi + + # It takes ~2Gb of RAM per build thread + local user_jobs=$(makeopts_jobs) + local free_memory_mb=$(free -m | awk '/Mem:/ {print $4}') + local max_jobs=$(( free_memory_mb / 2048 )) + max_jobs=$(( max_jobs < 1 ? 1 : max_jobs )) + local limited_jobs=$(( user_jobs < max_jobs ? user_jobs : max_jobs )) + if [[ "${max_jobs}" -lt "${user_jobs}" ]]; then + ewarn "${free_memory_mb} MB of free RAM is not enough for ${user_jobs} parallel build jobs (~2Gb per job)." + ewarn "Please consider setting MAKEOPTS=\"-j${limited_jobs}\" for this package." + fi + + local CHECKREQS_MEMORY=$((user_jobs*2048))M + check-reqs_${EBUILD_PHASE_FUNC} +} + +pkg_pretend() { + ck_check-reqs +} + +pkg_setup() { + ck_check-reqs +} + +src_prepare() { + sed -e '/-Werror/d' -i cmake/EnableCompilerWarnings.cmake || die + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + if ! use debug; then + append-cflags "-DNDEBUG" + append-cxxflags "-DNDEBUG" + CMAKE_BUILD_TYPE="Release" + else + CMAKE_BUILD_TYPE="Debug" + fi + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DBUILD_DEV=OFF + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" + -DBUILD_TESTING=$(usex test ON OFF) + -DCK_USE_PROFILER=$(usex profiler ON OFF) + -Wno-dev + ) + + # Since 6.4.1 "fallback" DL kernels should be enabled manually... + if use amdgpu_targets_gfx1010 || use amdgpu_targets_gfx1011 || use amdgpu_targets_gfx1012 \ + || use amdgpu_targets_gfx1030 || use amdgpu_targets_gfx1031 ; then + mycmakeargs+=(-DDL_KERNELS=ON) + fi + + if use test; then + mycmakeargs+=( + -DFETCHCONTENT_SOURCE_DIR_GTEST="${WORKDIR}/googletest-${GTEST_COMMIT}" + ) + fi + + cmake_src_configure +} + +src_install() { + cmake_src_install + + installation() { + python_domodule python/ck4inductor + + # install package-data manually, as there is no PEP517 compliance + shopt -s globstar + package_data=( + include/ck/**/*.hpp + library/src/tensor_operation_instance/gpu/gemm_universal/**/*.hpp + ) + shopt -u globstar + + inst_path="${D}$(python_get_sitedir)/ck4inductor" + for file in "${package_data[@]}"; do + location="${inst_path}/$(dirname "$file")" + mkdir -p "${location}" + cp "${file}" "${location}" + done + } + python_foreach_impl installation +} + +src_test() { + check_amdgpu + LD_LIBRARY_PATH="${BUILD_DIR}"/lib cmake_src_test -j1 +} From 575c936892845b8a55e93865291c6ec568d4778c Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:59:14 +0000 Subject: [PATCH 19/36] sci-libs/hipBLAS-common: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipBLAS-common/Manifest | 1 + .../hipBLAS-common/hipBLAS-common-6.4.3.ebuild | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 sci-libs/hipBLAS-common/hipBLAS-common-6.4.3.ebuild diff --git a/sci-libs/hipBLAS-common/Manifest b/sci-libs/hipBLAS-common/Manifest index e5ca829a2442b..dcd58d4c292cb 100644 --- a/sci-libs/hipBLAS-common/Manifest +++ b/sci-libs/hipBLAS-common/Manifest @@ -1,3 +1,4 @@ DIST hipBLAS-common-6.3.2.tar.gz 7507 BLAKE2B f8a59ba428d48f2999e4b6b16b11f392cb8b3f9c04603b212b721c8f87d0779343abc721a39910100f253d633f6a037f61cb6558a40899a3eabafe8bbef55dc5 SHA512 a6d8fabbaa9db8fe61e5788c1ee27ae2c36da75dbb2e7fa17437c610641fbd141aea1f5c20f30e19420c108343ba05452d7dedde0e88c6ecc1486d0085ab7c6c DIST hipBLAS-common-6.3.3.tar.gz 7508 BLAKE2B fbb5d17085daf0edb13c15f2a50098802ee616246d5d1fcf26067333932998c3c8d75b4d8123dca8fbae0ab69281bc07ba8c2a69d1ff177cd549ee0aacd3b88d SHA512 52d526e91df3a3dae9720ca4f1b3b5ec5a4daa684b770270e268762cd8683bd65b5908ede29425a0d14ca884b2cf9c4da4b55aedffc994c3527738716106d50d DIST hipBLAS-common-6.4.1.tar.gz 7517 BLAKE2B a67d34e04b250df6301f544ea667823ec0aa3b22b74f494297b32d9c27896849ce454c7deafdc16950432db9521f2e2e3485158a5ae1c02e5dcb31e04f2a8b6c SHA512 bdbae895f798d86c61cca0339056f53a6c3c08c1fdf82e0daf660ca4c85d8052abb1b84288289173cc828338d9f23013d50dc5051f20840b2f66cef97cbc2445 +DIST hipBLAS-common-6.4.3.tar.gz 7520 BLAKE2B 2499393ad164eb3f8d9527853d73754b3a20679361749abf03b73a6dfcf46d010a17b15d3e7342d5b10fff4f4bd53754d22f0330d8d8bddc97b643ef765f08f6 SHA512 4b0afa32d9424362358aca69e36e2f0a5e9331ed64372590ce4262fccb394a41d4c613505d87f238e0975bab6b35d862d0efb3a5de0981759f0073b3cb364e59 diff --git a/sci-libs/hipBLAS-common/hipBLAS-common-6.4.3.ebuild b/sci-libs/hipBLAS-common/hipBLAS-common-6.4.3.ebuild new file mode 100644 index 0000000000000..867f3cde47205 --- /dev/null +++ b/sci-libs/hipBLAS-common/hipBLAS-common-6.4.3.ebuild @@ -0,0 +1,16 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake +DESCRIPTION="Common files shared by hipBLAS and hipBLASLt" +HOMEPAGE="https://github.com/ROCm/hipBLAS-common" +SRC_URI="https://github.com/ROCm/hipBLAS-common/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/hipBLAS-common-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +BDEPEND="dev-build/rocm-cmake" From 205269d4f334f2c1aeeab96a55a8e08c1db4572a Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 05:59:59 +0000 Subject: [PATCH 20/36] sci-libs/hipBLAS: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipBLAS/Manifest | 1 + sci-libs/hipBLAS/hipBLAS-6.4.3.ebuild | 46 +++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 sci-libs/hipBLAS/hipBLAS-6.4.3.ebuild diff --git a/sci-libs/hipBLAS/Manifest b/sci-libs/hipBLAS/Manifest index b072b8b866c18..fb7327a5aa828 100644 --- a/sci-libs/hipBLAS/Manifest +++ b/sci-libs/hipBLAS/Manifest @@ -3,3 +3,4 @@ DIST hipBLAS-6.1.1.tar.gz 835570 BLAKE2B dc8a54f3b6c780f63e57f208d67b15e965d3a7c DIST hipBLAS-6.3.2.tar.gz 993139 BLAKE2B a053f8b54318a169518f084e0bca3c9272cb51fab564c8d874b19483232cfeacb92707ad5224f4d0c3848b52d82973c36f0d4fdb429c9f5d995b3c56b1194075 SHA512 8581905a923484662471da786b795d7f960b45cc5eed991b101a88a4e3d4ea5217582c813192dde8eb35eafba9867c3ac448aeb4d7ef470e6da544f09397d902 DIST hipBLAS-6.3.3.tar.gz 993121 BLAKE2B 7cfe71112a8083a0f5fd1f2629bde12a79b13f2d289dd82405978f7713fb30b132d002d01566b077650265e8ee6746b51e4e3defb92bd1416ec83ce7c490407c SHA512 a14ba19557236ef8affa557d5139c6c380120a68eac5d6b7172b279380a52be4d451a3c2a7ee2a7e4d169c16081ea4639dc058b5231d2a33429fb0f065db5b18 DIST hipBLAS-6.4.1.tar.gz 993764 BLAKE2B 568872d3d7b4a38881a278966b320186d90065ffa657b54e1704c0ca7458f9b29e50412e45e5cefc1a209d3049aa1c809705e563e9ed5959c1fd066fb64a494f SHA512 192b24e53e4e0c3d4495e5444024022495bb35f3a60275d638541026deaa3ce37e4611c9355bd10cb1825354f5a411331475a34f8cc15a1fb10619591dee5e9c +DIST hipBLAS-6.4.3.tar.gz 993780 BLAKE2B 6c2e88a1d4d313a39abbaaf663b0d83aaf5dbf4f7e625d97189cd98302a544f4c7d617fcc1ec2a2918edaff08f34329be0b6657c1aba3fa35a26ac919c31b85c SHA512 5ce1825624a267a1af25b1eafb6f3bd2bbbb9c9a6ce2d7788a2cf3213174e59d0b04599a89f4ba8b796cba1c8fc5cf5d2f9820fd948b735da781fe6d04c2826e diff --git a/sci-libs/hipBLAS/hipBLAS-6.4.3.ebuild b/sci-libs/hipBLAS/hipBLAS-6.4.3.ebuild new file mode 100644 index 0000000000000..608abc3be9192 --- /dev/null +++ b/sci-libs/hipBLAS/hipBLAS-6.4.3.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm +DESCRIPTION="ROCm BLAS marshalling library" +HOMEPAGE="https://github.com/ROCm/hipBLAS" +SRC_URI="https://github.com/ROCm/hipBLAS/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/hipBLAS-rocm-${PV}" + +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +RDEPEND=" + dev-util/hip:${SLOT} + sci-libs/hipBLAS-common:${SLOT} + sci-libs/rocBLAS:${SLOT} + sci-libs/rocSOLVER:${SLOT} +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-6.3.0-no-git.patch +) + +src_configure() { + # Note: hipcc is enforced; clang fails when libc++ is enabled + # with an error similar to https://github.com/boostorg/config/issues/392 + rocm_use_hipcc + + local mycmakeargs=( + # currently hipBLAS is a wrapper of rocBLAS which has tests, so no need to perform test here + -DBUILD_CLIENTS_TESTS=OFF + -DBUILD_CLIENTS_BENCHMARKS=OFF + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + ) + + cmake_src_configure +} From 34a45f47f42ee4ce0997bfea22948aad293b606a Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:00:06 +0000 Subject: [PATCH 21/36] sci-libs/hipBLASLt: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipBLASLt/Manifest | 1 + sci-libs/hipBLASLt/hipBLASLt-6.4.3.ebuild | 153 ++++++++++++++++++++++ 2 files changed, 154 insertions(+) create mode 100644 sci-libs/hipBLASLt/hipBLASLt-6.4.3.ebuild diff --git a/sci-libs/hipBLASLt/Manifest b/sci-libs/hipBLASLt/Manifest index 7ceec3b61c706..511fa7e35a225 100644 --- a/sci-libs/hipBLASLt/Manifest +++ b/sci-libs/hipBLASLt/Manifest @@ -3,3 +3,4 @@ DIST hipBLASLt-6.3.1.tar.gz 89385330 BLAKE2B 4bcf083e41ad6f22f61321bd066d79a6a38 DIST hipBLASLt-6.3.2.tar.gz 89385514 BLAKE2B 785ee2951b76100f29eed4891cdc3fc58abbee866a9eac7109bc49e56854007d57d15bc6d605a7527ecc685e59500567581d194ede67cff566fba3b582d7b3c4 SHA512 2f4f497a5228162f4fffda9f549f943d26c86d7160a50c0aadc403340cee4466e9f16bd5cfcd386535b7f05cc8d1839a4d146c52761b6eb29e2e53962437e781 DIST hipBLASLt-6.3.3.tar.gz 89385318 BLAKE2B b307e4c418bda7583efdf5dc646f05368c195f6df0077823ae179efb52a56ba4f13b5fce6a10ff38e0ad593bf5b415fc6e5b4132488b2dbf9da58198af15d230 SHA512 9fb523e614dd790aa3c01337f3d93f9df0a135d25e9efda2375e88818f6097d661e5159336258631cc0a25d923efcddb4b39378bf54c33d0e5a01bba387f1368 DIST hipBLASLt-6.4.1.tar.gz 186266266 BLAKE2B 5bc583ea3798e16e55fc1d7eaf8b13376191a72e1eb64ee7dc17cd4ba4550e17be6e66947ace5054942296e2548dd31633a961061cf7027ef3278858d84f8366 SHA512 efa60a3625c87686905641d9a90d1403f6e9be510cc538c99864c910db8ec3ab10571778ca81b43ebba5de8ad0f2e6bcec69421ede1bc39239a8d6b5ab3139b2 +DIST hipBLASLt-6.4.3.tar.gz 188053924 BLAKE2B 5a249c2ff856fe858422a2a99e3e072afb29c5ff5ca08f4e57c3574baf85ce40611822a7b72aa7a40329e1c328bdb06cbc47f7278506a57e8e241f695b0cc940 SHA512 0edf1ef227e7c8de767a2fd3da639351d55d70921f2cc1fb4c09163cd32f3fc0b7d5ee7ba50bb62c619b7d9fdb5dc23c65a5e29cfc78937868153ad234c3966f diff --git a/sci-libs/hipBLASLt/hipBLASLt-6.4.3.ebuild b/sci-libs/hipBLASLt/hipBLASLt-6.4.3.ebuild new file mode 100644 index 0000000000000..a2ce9ce18ae01 --- /dev/null +++ b/sci-libs/hipBLASLt/hipBLASLt-6.4.3.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_SKIP_GLOBALS=1 +PYTHON_COMPAT=( python3_{10..14} ) + +LLVM_COMPAT=( 20 ) + +inherit cmake flag-o-matic llvm-r1 python-any-r1 rocm +DESCRIPTION="General matrix-matrix operations library for AMD Instinct accelerators" +HOMEPAGE="https://github.com/ROCm/hipBLASLt" +SRC_URI="https://github.com/ROCm/hipBLASLt/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/hipBLASLt-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +SUPPORTED_GPUS=( gfx908 gfx90a gfx940 gfx941 gfx942 gfx1100 gfx1101 gfx1200 gfx1201 ) +IUSE_TARGETS=( "${SUPPORTED_GPUS[@]/#/amdgpu_targets_}" ) +IUSE="${IUSE_TARGETS[@]/#/+} benchmark roctracer test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-util/hip:${SLOT} + dev-cpp/msgpack-cxx + roctracer? ( dev-util/roctracer:${SLOT} ) +" + +DEPEND="${RDEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + dev-build/rocm-cmake + dev-util/hipcc + sci-libs/hipBLAS-common:${SLOT} + $(python_gen_any_dep ' + dev-python/msgpack[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/joblib[${PYTHON_USEDEP}] + ') + $(llvm_gen_dep 'llvm-core/clang:${LLVM_SLOT}') + test? ( + dev-cpp/gtest + virtual/blas + dev-util/rocm-smi:${SLOT} + ) + benchmark? ( + virtual/blas + llvm-runtimes/openmp + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-fix-msgpack-dependency.patch + "${FILESDIR}"/${PN}-6.1.1-no-arch.patch + "${FILESDIR}"/${PN}-6.1.1-no-git.patch + "${FILESDIR}"/${PN}-6.1.1-clang-19.patch + "${FILESDIR}"/${PN}-6.1.1-fix-libcxx.patch + "${FILESDIR}"/${PN}-6.3.0-no-arch-extra.patch + "${FILESDIR}"/${PN}-6.4.1-min-pip-install.patch + "${FILESDIR}"/${PN}-6.4.1-headers.patch + "${FILESDIR}"/${PN}-6.4.1-libcxx-integrals.patch + "${FILESDIR}"/${PN}-6.4.1-gentoopath.patch + "${FILESDIR}"/${PN}-6.4.1-upstream-clang.patch +) + +python_check_deps() { + python_has_version "dev-python/msgpack[${PYTHON_USEDEP}]" && + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" && + python_has_version "dev-python/joblib[${PYTHON_USEDEP}]" +} + +pkg_setup() { + python-any-r1_pkg_setup +} + +pkg_pretend() { + if [[ "${AMDGPU_TARGETS[@]}" = "" ]]; then + ewarn "hipBLASLt supports only few GPUs: ${SUPPORTED_GPUS[@]}," + ewarn "but none of them were defined in AMDGPU_TARGETS USE_EXPAND variable." + ewarn + ewarn "Library will continue to be built in \"dummy\" mode," + ewarn "serving as a non-functional placeholder for end-user applications." + fi +} + +src_prepare() { + local shebangs=($(grep -rl "#!/usr/bin/env python3" tensilelite/Tensile || die)) + python_fix_shebang -q ${shebangs[*]} + + rocm_use_clang + sed -e "s:\${rocm_path}/bin/amdclang++:${CXX}:" \ + -i library/src/amd_detail/rocblaslt/src/kernels/compile_code_object.sh \ + -i tensilelite/Tensile/Ops/gen_assembly.sh || die + + # Fix compiler validation (just a validation) + sed "s/amdclang/$(basename "$CC")/g" \ + -i tensilelite/Tensile/Utilities/Toolchain.py || die + + cmake_src_prepare +} + +src_configure() { + rocm_use_clang + + # too many warnings + append-cxxflags -Wno-explicit-specialization-storage-class + + local targets="$(get_amdgpu_flags)" + local build_with_tensile=$([ "${AMDGPU_TARGETS[@]}" = "" ] && echo OFF || echo ON ) + + local mycmakeargs=( + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_WITH_TENSILE="${build_with_tensile}" + -DTensile_COMPILER=${CXX} + -DAMDGPU_TARGETS="${targets}" + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCHMARKS="$(usex benchmark ON OFF)" + -DPython_EXECUTABLE="${PYTHON}" + -DHIPBLASLT_ENABLE_MARKER="$(usex roctracer ON OFF)" + -Wno-dev + ) + + cmake_src_configure +} + +src_compile() { + local -x ROCM_PATH="${EPREFIX}/usr" + # set PYTHONPATH to load Tensile from virtualenv, not the system-wide one + local -x PYTHONPATH="${S}_build/virtualenv/lib/${EPYTHON}/site-packages" + local -x TENSILE_ROCM_ASSEMBLER_PATH="$(get_llvm_prefix)/bin/clang++" + # TensileCreateLibrary reads CMAKE_CXX_COMPILER again + local -x CMAKE_CXX_COMPILER="$(get_llvm_prefix)/bin/clang++" + cmake_src_compile +} + +src_install() { + cmake_src_install + + # Stop llvm-strip from removing .strtab section from *.hsaco files, + # otherwise rocclr/elf/elf.cpp complains with "failed: null sections(STRTAB)" and crashes + dostrip -x /usr/$(get_libdir)/hipblaslt/library/ +} + +src_test() { + check_amdgpu + + # Expected time for 7900 XTX: 340s (full) or 5s with GTEST_FILTER='*quick*' + # Fails in `MatrixTransformTest.MultipleDevices` in dGPU+iGPU combination + HIP_VISIBLE_DEVICES=0 cmake_src_test +} From e122652c45c4189cd9e70cc09b215bae9b416cfc Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:00:30 +0000 Subject: [PATCH 22/36] sci-libs/hipCUB: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipCUB/Manifest | 1 + sci-libs/hipCUB/hipCUB-6.4.3.ebuild | 62 +++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 sci-libs/hipCUB/hipCUB-6.4.3.ebuild diff --git a/sci-libs/hipCUB/Manifest b/sci-libs/hipCUB/Manifest index 49cc0060ff7cf..6c8dae2aacb21 100644 --- a/sci-libs/hipCUB/Manifest +++ b/sci-libs/hipCUB/Manifest @@ -3,3 +3,4 @@ DIST hipCUB-6.1.1.tar.gz 343181 BLAKE2B 3943278597c5e9d41c225ad86c3cdcc113f35cf1 DIST hipCUB-6.3.2.tar.gz 387546 BLAKE2B b0d4d487fc1f799e10cd684255fe4bb31ed7329d0ea628c818df560d506aa2b4e5bdb08b007aab9ee95492a3fecf6f559c5c9724df15fe7da86d9aed84951c6b SHA512 735610735e4584ded05b30d99ae9042d3ccd4590689fc2c415eb45fb2fd0d7ab431704709bdd066341ec10284ca0f4c1ad108c188f95949ce962b6a75eb57e19 DIST hipCUB-6.3.3.tar.gz 387580 BLAKE2B e0b605835be2b685c1cfa099a807e30fa061af8b14bafa1167c8249383230761a0d08532c831d3cb015e8e1b58119899d3cb7330990ca046045ea40058ee03e5 SHA512 2ec96088d34edeff48f8ee103a619f2ca7c741dcb020a3d1833a00e2072510790a563e98662aef7aa2a348034f3c8169ee39dcc61ab95202c734901ba53dfa4b DIST hipCUB-6.4.1.tar.gz 420053 BLAKE2B c5fde544499b8ebb16ed4a1c51621255120e1d672a9ddab3eab5019f759fc5345b2e2f363486c6956bd57a502215afa45208d849e2c4424366d28cdfac6548dd SHA512 2cbbf74e060dde3b6e354f38611079407c0cb6d9954af5402be7ee8b77667f7ccb08be676f9f50b5ce1a480e77da6302d852e8c4af8885ee924d79da39179c47 +DIST hipCUB-6.4.3.tar.gz 419173 BLAKE2B 7e1e707210191eee00aab01f8768a272f1fb5c35bb9e0635fe32ad50f4a8b56634d5f097f5eb2d1d5625f30f62450368a25a95ac2ba8fe85da2effd8efd669c9 SHA512 fb8018cf6200a468601149b6508b50944a27c3f7562012fef39e3a0ca13ed5ff597b1a3ad9e02273b70020ebd19ed10322e46d324f09fcf32a4f363e0ba72036 diff --git a/sci-libs/hipCUB/hipCUB-6.4.3.ebuild b/sci-libs/hipCUB/hipCUB-6.4.3.ebuild new file mode 100644 index 0000000000000..92d497cbda10e --- /dev/null +++ b/sci-libs/hipCUB/hipCUB-6.4.3.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="Wrapper of rocPRIM or CUB for GPU parallel primitives" +HOMEPAGE="https://github.com/ROCm/hipCUB" +SRC_URI="https://github.com/ROCm/hipCUB/archive/rocm-${PV}.tar.gz -> hipCUB-${PV}.tar.gz" +S="${WORKDIR}/hipCUB-rocm-${PV}" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE=" + benchmark? ( ${ROCM_REQUIRED_USE} ) + test? ( ${ROCM_REQUIRED_USE} ) +" +RESTRICT="!test? ( test )" + +RDEPEND="dev-util/hip:${SLOT} + sci-libs/rocPRIM:${SLOT} + benchmark? ( dev-cpp/benchmark ) + test? ( dev-cpp/gtest ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-6.4.1-no-tests-install.patch +) + +src_prepare() { + sed -e "s:set(ROCM_INSTALL_LIBDIR lib):set(ROCM_INSTALL_LIBDIR $(get_libdir)):" \ + -i cmake/ROCMExportTargetsHeaderOnly.cmake || die + + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_TEST=$(usex test ON OFF) + -DBUILD_BENCHMARK=$(usex benchmark ON OFF) + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + # Expected time on gfx1100 (-j32) is 85s + # HipcubDeviceHistogramMultiEven/0.MultiEven in 6.4.1 has bad array access (probably fixed in the future release) + local CMAKE_SKIP_TESTS=(hipcub.DeviceHistogram) + cmake_src_test +} From 868b9b34bb1f47ed2e683d6faf5537e02aae0ad3 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:00:55 +0000 Subject: [PATCH 23/36] sci-libs/hipFFT: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipFFT/Manifest | 1 + sci-libs/hipFFT/hipFFT-6.4.3.ebuild | 41 +++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 sci-libs/hipFFT/hipFFT-6.4.3.ebuild diff --git a/sci-libs/hipFFT/Manifest b/sci-libs/hipFFT/Manifest index a95d210151e77..802e0072de7d7 100644 --- a/sci-libs/hipFFT/Manifest +++ b/sci-libs/hipFFT/Manifest @@ -3,3 +3,4 @@ DIST hipFFT-rocm-6.1.1.tar.gz 170796 BLAKE2B 8c957db8e7e2548918539c94262d912c2f3 DIST hipFFT-rocm-6.3.2.tar.gz 267935 BLAKE2B cb2f2f616f70578d98b47eeb1c89e81b769c5e615ec3f5421fc1a4fd8deb2695a3e69f8f41da3aa93adbb61d0c85596d89301437ad2d092779355976ff8d7b9c SHA512 788c1a4313c4b863051d0f7ea1a4ccd1d7955469dfcc604644041a6936279211b58850589aac90fde76b96cbe6452e87feb8ab2c01186a924ae8de47ff792cb7 DIST hipFFT-rocm-6.3.3.tar.gz 267940 BLAKE2B a04284d719c33ef214a7cd4e64cdb5babb8bff45c2965ca6d20718f034970e736ff2056dee9ca9e8aba0c00d14bc21f013ad82ed7948f5c9874cc1138fb38671 SHA512 87c03985167d2eb18b72e2ed2fbca34ad2a9ce5cabf2fa9260f00139425b5cadab4a79f23e1beaf300eee6d1029d842bddf8ebd293f6897882f91331b93a404c DIST hipFFT-rocm-6.4.1.tar.gz 299087 BLAKE2B 96c168f3e9c5a6271152713fc9238024524ced24c708de6323377be6f0d341dfe7aaed36600fed3c1ab2012fcab2c85aee2fc4d938d9692a4e3aaa2dd83746ab SHA512 ac9c1dbfc9ba09ee3d8b3ba6808bc5dfdb44e66e9f73208631a766a875b2a560863ac0d0ea6655e7a32585626a53f1575d74a782d4b8deaed5e68f8fde108ec6 +DIST hipFFT-rocm-6.4.3.tar.gz 300245 BLAKE2B e8255119b14ee3788713f7d5b632b639ca5a0f9366fc81fb83da04ac97eb6f53a17eef2c6da8851f77562ac696755c37b446117573fdbebaafee133aa769cc3c SHA512 80a25e20bbf1a4aae0787219ade0a8bc136e8d731a353695a4d7f125fb644bfd6a10c64b3152cf6120c2214516e45e7c42d0f18584e6568503f63029aad8129a diff --git a/sci-libs/hipFFT/hipFFT-6.4.3.ebuild b/sci-libs/hipFFT/hipFFT-6.4.3.ebuild new file mode 100644 index 0000000000000..20e86d07815df --- /dev/null +++ b/sci-libs/hipFFT/hipFFT-6.4.3.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="CU / ROCM agnostic hip FFT implementation" +HOMEPAGE="https://github.com/ROCm/hipFFT" +SRC_URI="https://github.com/ROCm/hipFFT/archive/refs/tags/rocm-${PV}.tar.gz -> hipFFT-rocm-${PV}.tar.gz" +S="${WORKDIR}/hipFFT-rocm-${PV}" + +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +RESTRICT="test" + +RDEPEND="dev-util/hip + sci-libs/rocFFT:${SLOT}" +DEPEND="${RDEPEND}" + +src_configure() { + # Note: hipcc is enforced; clang fails when libc++ is enabled + # with an error similar to https://github.com/boostorg/config/issues/392 + rocm_use_hipcc + + local mycmakeargs=( + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_CLIENTS_TESTS=OFF + -DBUILD_CLIENTS_RIDER=OFF + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DGPU_TARGETS="$(get_amdgpu_flags)" + ) + + cmake_src_configure +} From 282e52845e58eb14e7a2b7a293c6570f1f3578d6 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:01:19 +0000 Subject: [PATCH 24/36] sci-libs/hipRAND: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipRAND/Manifest | 1 + sci-libs/hipRAND/hipRAND-6.4.3.ebuild | 38 +++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 sci-libs/hipRAND/hipRAND-6.4.3.ebuild diff --git a/sci-libs/hipRAND/Manifest b/sci-libs/hipRAND/Manifest index 7e56e93f519f2..b22fbe7004d2b 100644 --- a/sci-libs/hipRAND/Manifest +++ b/sci-libs/hipRAND/Manifest @@ -3,3 +3,4 @@ DIST hipRAND-rocm-6.1.1.tar.gz 119063 BLAKE2B dc314d8b09c15351075594335d14f65024 DIST hipRAND-rocm-6.3.2.tar.gz 125506 BLAKE2B 836eb474c4b88a4729e3e9176736b28c090cf2add0ef463bf594deede353b755a1a07ef5898ec51e3ae66c2972cbfe6a71815020dd5f3e3b1aca105d8d8ca8e2 SHA512 8f3893ec89f76b859847b75acf3ec20f751924cd16d3ea25dbb0e1f2a5b7d75832c214e6ce9e180e3f74fbcb0c4bf95b75bf3ad32e9ac34e5e0f7522554f38a6 DIST hipRAND-rocm-6.3.3.tar.gz 125512 BLAKE2B 3a1c5fbdc115e6372dd88501abebab729022fcda03c9a3a39848fdce15f335abd772f82660af09c48abe9b88f138866a31273f5ee2b4290400ecf8cc3f8e2456 SHA512 ee2e4364d07e7ed3515f3c1094119e54055d052e396b5dece738241c8404eecb75e737f43e513262474140c78046430ea5d7f3d915c321c5d9ba4b20778ccc6e DIST hipRAND-rocm-6.4.1.tar.gz 126535 BLAKE2B 54e241cd63da3ed1ed9b6bbe6b2878092163acb5b69ceebff3fc04a94f1d0977bb2131051f6b01937ad318c3b04a6b992d5c7be42a74c37a58a585d6de61d24d SHA512 99b15b6e7aa46ad7928514cb75631fecbd85cc5af21e972249e309a00656e05048c8483a34d7151fa9b40caa4ac48953ed6c40755ff7e009d81dae46d184dfd7 +DIST hipRAND-rocm-6.4.3.tar.gz 127204 BLAKE2B 40751993b2b6567326e9e69ff006d5c1b7653e9cc1fa7d71307d9d41e91a3e4ce7d3767fd03ebde52afacf6be22d371a3273a7ca45e2c6a9a11fd772bc6256e6 SHA512 22cd2396723292ccb7504b4c5ce4150d1fe04dcfaf020963d28c27077e001fc9edf23fa03d18159fecc4f1d51df300a04a8297dfec62476464e93a7bbafc9f9b diff --git a/sci-libs/hipRAND/hipRAND-6.4.3.ebuild b/sci-libs/hipRAND/hipRAND-6.4.3.ebuild new file mode 100644 index 0000000000000..1ee1fed9a8825 --- /dev/null +++ b/sci-libs/hipRAND/hipRAND-6.4.3.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="CU / ROCM agnostic hip RAND implementation" +HOMEPAGE="https://github.com/ROCm/hipRAND" +SRC_URI="https://github.com/ROCm/hipRAND/archive/refs/tags/rocm-${PV}.tar.gz -> hipRAND-rocm-${PV}.tar.gz" +S="${WORKDIR}/hipRAND-rocm-${PV}" + +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +RESTRICT="test" + +RDEPEND="dev-util/hip + sci-libs/rocRAND:${SLOT}" +DEPEND="${RDEPEND}" + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -Wno-dev + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + ) + + cmake_src_configure +} From fe00c532a5d3e01b05a8c85f89505bb4aa0ac6bd Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:01:42 +0000 Subject: [PATCH 25/36] sci-libs/hipSOLVER: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipSOLVER/Manifest | 1 + sci-libs/hipSOLVER/hipSOLVER-6.4.3.ebuild | 49 +++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 sci-libs/hipSOLVER/hipSOLVER-6.4.3.ebuild diff --git a/sci-libs/hipSOLVER/Manifest b/sci-libs/hipSOLVER/Manifest index 3a35fd3be1889..9a3383d70778c 100644 --- a/sci-libs/hipSOLVER/Manifest +++ b/sci-libs/hipSOLVER/Manifest @@ -3,3 +3,4 @@ DIST hipSOLVER-rocm-6.1.1.tar.gz 2553462 BLAKE2B 77731b876a7fe5f80f79e5af5128a84 DIST hipSOLVER-rocm-6.3.2.tar.gz 2575541 BLAKE2B b61e50de293ef5b37e5296a194ce3ecef3fafa624345d1d0be1ef987db5bc15b9d8d8a5399faa5ab6745d2af9326c8d19b002411d143aa4f0b0bd4b47bae8070 SHA512 fb7de8eccd8691723b1ff86f1e9a7fe5f3ceccb77eb4fe6f2098987904cd874bb442d9b4728f980ed2c41f145e0f46fe6beae9a001305792ff50c81b5baffc7a DIST hipSOLVER-rocm-6.3.3.tar.gz 2573877 BLAKE2B 54d9736b63bfd314a155968737bf59c26685237e63e41a1500aa22841bb3c92a126645629dee8e9a87e0ee7a62035738dd85347a7dd0e4f05c7044755ef5e71e SHA512 d6213c1000e640bf29d96917df6f51f8f5fc30ec808d6473b7dd159f9ce160535170cec0f769c3749934e1896b9d3fcc1df21d5cda27b4d233e6a8c50e23c114 DIST hipSOLVER-rocm-6.4.1.tar.gz 2577495 BLAKE2B 1a7f86aba2eff38166bfd274649243b42400649cf0020a5e2fe543bc7cd41450212b51b6fe3e10a986d1cb62e0f9c70cfdfbe281ab9399eae2777c7b4ce0c378 SHA512 e913f512d644f9a9f15c3534962ac3ca473a81b0fc2a62d0b18aea13dea5c01fda2a3d60d79974082c498c6066ae539bb8a6b878f1e014d9988817461d8b6a38 +DIST hipSOLVER-rocm-6.4.3.tar.gz 2580341 BLAKE2B 28f40af2887befece27186aba11d6e777ae705225e4daa5b7f4599cd7bc719e908481840b3d41480b00b2945ab51e276a1962bc5fe6f44ad873eac2871f157cf SHA512 6cd8e4e0cfb0963325092ff3d8341fd630dfe3f4dbc0f15a625aa23c3a43225fc288523548cec3db0c698d765c5c37bdf22225235c2eefab6b8ee18bb0ffdffd diff --git a/sci-libs/hipSOLVER/hipSOLVER-6.4.3.ebuild b/sci-libs/hipSOLVER/hipSOLVER-6.4.3.ebuild new file mode 100644 index 0000000000000..13bd41f152bb8 --- /dev/null +++ b/sci-libs/hipSOLVER/hipSOLVER-6.4.3.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="CU / ROCM agnostic marshalling library for LAPACK routines on the GPU" +HOMEPAGE="https://github.com/ROCm/hipSOLVER" +SRC_URI="https://github.com/ROCm/hipSOLVER/archive/refs/tags/rocm-${PV}.tar.gz -> hipSOLVER-rocm-${PV}.tar.gz" +S="${WORKDIR}/hipSOLVER-rocm-${PV}" + +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="sparse" + +RESTRICT="test" + +RDEPEND=" + dev-util/hip:${SLOT} + sci-libs/rocSOLVER:${SLOT} + sparse? ( + sci-libs/suitesparseconfig + sci-libs/cholmod + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-6.4.1-find-cholmod.patch +) + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_WITH_SPARSE=$(usex sparse ON OFF) + ) + + cmake_src_configure +} From 6a5b2ca001b914d4d0528e74c40b064da52b3c89 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:02:02 +0000 Subject: [PATCH 26/36] sci-libs/hipSPARSE: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/hipSPARSE/Manifest | 1 + sci-libs/hipSPARSE/hipSPARSE-6.4.3.ebuild | 105 ++++++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 sci-libs/hipSPARSE/hipSPARSE-6.4.3.ebuild diff --git a/sci-libs/hipSPARSE/Manifest b/sci-libs/hipSPARSE/Manifest index a1bf206cb5ac9..440b51b4447e7 100644 --- a/sci-libs/hipSPARSE/Manifest +++ b/sci-libs/hipSPARSE/Manifest @@ -2,6 +2,7 @@ DIST hipSPARSE-5.7.tar.gz 458521 BLAKE2B 94695ef3cf4294f571723e31ab5d4295b5aaa24 DIST hipSPARSE-6.1.tar.gz 471148 BLAKE2B 18119ac355e180adb5ce38561f44e39119226d209a970ae8cac6b85575bad1ab2a690a3bb72de1c179c1190aa2c29d691e6ce02855f3df89a58f634d42e54103 SHA512 09f9e94c5f976e6f17c07f9be2fde31c2e740871215a6b77b49675644b883bd9994fcaacb19864ace3883bb5aea7a7dc589ddbaf9b6aaf3d9f411c7e452a0b78 DIST hipSPARSE-6.3.3.tar.gz 537761 BLAKE2B 3f4bac3b35ecaf033dbbee9f802a28f8f3cbd0155443d198ae450f22034293c48cebf60745e297b83a44ce0bdedeba44a643650af4980e4823c64edd344ac084 SHA512 aaf8d31d5102ed02fc861a90e9e6ccca22a7242559d8c775735f5d893c423bbbcf1c72ed96eade1c630aefd6154de64de8fe60cff54b9837c4ef249cbf4db06e DIST hipSPARSE-6.4.1.tar.gz 560274 BLAKE2B 72c1df2b2df3b3d3087a2d48f5ebaa3874e73fe8fcd95dde6b64e04c05158824ef627252bcfc9286c82fede5e3bafe4e152dbb165cc3079111dcacfaf82a7a70 SHA512 6a35f7a008c6c5000254a917d039114121c2ccf117d4315ae0f8aec4d71bc49ed93130c22526dc1cd5a5adf5f3f4c0310c9e25ce1008c4fd1682fecb2ca93624 +DIST hipSPARSE-6.4.3.tar.gz 560457 BLAKE2B 44b0621d38da804245593506eb17bb755d52da19273b4e9028d425e1ca45c9e4aafd14d46c599e4375522071496eabd283fb2e390efb642d25c1e0dc09600695 SHA512 815e5fc288937e69171df12ea392dca12df5b30c246bc3d467904745219293344e4b93af2a87c20ae1068ac207f901d92f5407b73a143fd4b1a4ac834a4edd39 DIST rocSPARSE_ASIC_320k.tar.gz 11301444 BLAKE2B a00cc4a3ededab3fb56339319e34e936645ddce2dee3c630153b37e337384c207b0a2829227fb7f4c2db1fe33383e97410ab7ad459d391c025f5410843d51cf2 SHA512 1db3af391c30a371c1ac0087436e266721474273a39d5b2b6d56408d950dcbbee004750e4dce4e3dbc4cb512f38f6d945676d7f29b62c52fd5a7fed0fe789e03 DIST rocSPARSE_Chebyshev4.tar.gz 50165660 BLAKE2B f1a95554c8f38937f501488fabfd406b773eb980d7463cadac0de162529ac2f834c655cadd2b65f4c42a8487bc2d67c749601ae33bd789051f9e4d1e157196a0 SHA512 fdec4947a4af923d28b4be8d23690fd6d356c58f8344a5dcdd2e3fa61769d83e47a84d65316b527e6e82d9f988de2675a852367d406e44b44d784137a90b95c0 DIST rocSPARSE_amazon0312.tar.gz 11303646 BLAKE2B 388947a29380253bb5eecb22d3a3b6f3378711044b3fe98d6d2517cd27330f11b3d12fdb96320a2889e139224f1a6a5ad1c455ff8e91a262aa2aadbe16301330 SHA512 aed2d62581763742d9c7faf3dcaf1eaa983caa1e2e7ad4abebe97c5e7c2aec9942e0e32291092b348b60052c92b130e721ec19ed59bda22e1b233ef72ac7d2ff diff --git a/sci-libs/hipSPARSE/hipSPARSE-6.4.3.ebuild b/sci-libs/hipSPARSE/hipSPARSE-6.4.3.ebuild new file mode 100644 index 0000000000000..f98dd3454da87 --- /dev/null +++ b/sci-libs/hipSPARSE/hipSPARSE-6.4.3.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake edo rocm toolchain-funcs + +DESCRIPTION="ROCm SPARSE marshalling library" +HOMEPAGE="https://github.com/ROCm/hipSPARSE" +# share some test datasets with rocSPARSE +SRC_URI="https://github.com/ROCm/hipSPARSE/archive/rocm-${PV}.tar.gz -> hipSPARSE-${PV}.tar.gz +test? ( +http://sparse-files.engr.tamu.edu/MM/SNAP/amazon0312.tar.gz -> rocSPARSE_amazon0312.tar.gz +http://sparse-files.engr.tamu.edu/MM/Muite/Chebyshev4.tar.gz -> rocSPARSE_Chebyshev4.tar.gz +http://sparse-files.engr.tamu.edu/MM/FEMLAB/sme3Dc.tar.gz -> rocSPARSE_sme3Dc.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/webbase-1M.tar.gz -> rocSPARSE_webbase-1M.tar.gz +http://sparse-files.engr.tamu.edu/MM/Bova/rma10.tar.gz -> rocSPARSE_rma10.tar.gz +http://sparse-files.engr.tamu.edu/MM/JGD_BIBD/bibd_22_8.tar.gz -> rocSPARSE_bibd_22_8.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/mac_econ_fwd500.tar.gz -> rocSPARSE_mac_econ_fwd500.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/mc2depi.tar.gz -> rocSPARSE_mc2depi.tar.gz +http://sparse-files.engr.tamu.edu/MM/Hamm/scircuit.tar.gz -> rocSPARSE_scircuit.tar.gz +http://sparse-files.engr.tamu.edu/MM/Sandia/ASIC_320k.tar.gz -> rocSPARSE_ASIC_320k.tar.gz +http://sparse-files.engr.tamu.edu/MM/GHS_psdef/bmwcra_1.tar.gz -> rocSPARSE_bmwcra_1.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos1.tar.gz -> rocSPARSE_nos1.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos2.tar.gz -> rocSPARSE_nos2.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos3.tar.gz -> rocSPARSE_nos3.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos4.tar.gz -> rocSPARSE_nos4.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos5.tar.gz -> rocSPARSE_nos5.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos6.tar.gz -> rocSPARSE_nos6.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos7.tar.gz -> rocSPARSE_nos7.tar.gz +http://sparse-files.engr.tamu.edu/MM/DNVS/shipsec1.tar.gz -> rocSPARSE_shipsec1.tar.gz +)" +S="${WORKDIR}/hipSPARSE-rocm-${PV}" + +LICENSE="MIT" +SLOT="0"/$(ver_cut 1-2) +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +# It seems that the tests heavily abuse out-of-bounds array access, causing failures with hardened libc++ +RESTRICT="test" + +RDEPEND=" + dev-util/rocminfo:${SLOT} + dev-util/hip:${SLOT} + sci-libs/rocSPARSE:${SLOT} +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-build/rocm-cmake + test? ( dev-cpp/gtest ) +" + +PATCHES=( + "${FILESDIR}/${PN}-6.4.1-fix-filesystem.patch" +) + +src_prepare() { + # too many warnings from -Wall (applied after user CXXFLAGS) + sed -e "s/-Wall/-Wall -Wno-unused-value/g" \ + -i clients/benchmarks/CMakeLists.txt \ + -i library/CMakeLists.txt \ + -i clients/tests/CMakeLists.txt || die + + cmake_src_prepare + + if use test; then + mkdir -p "${BUILD_DIR}"/clients/matrices + # compile and use the mtx2bin converter. Do not use any optimization flags! + edo $(tc-getCXX) deps/convert.cpp -o deps/convert + find "${WORKDIR}" -maxdepth 2 -regextype egrep -regex ".*/(.*)/\1\.mtx" -print0 | + while IFS= read -r -d '' mtxfile; do + destination=${BUILD_DIR}/clients/matrices/$(basename -s '.mtx' "${mtxfile}").bin + ebegin "Converting ${mtxfile} to ${destination}" + deps/convert "${mtxfile}" "${destination}" + eend $? + done + fi +} + +src_configure() { + # Note: hipcc is enforced; clang fails when libc++ is enabled + # with an error similar to https://github.com/boostorg/config/issues/392 + rocm_use_hipcc + + local mycmakeargs=( + -DHIP_RUNTIME="ROCclr" + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_SAMPLES=OFF + -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}"/clients/staging || die + edob ./hipsparse-test +} From d06cb411e0464758be70fe381862c31f297d8a63 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:03:42 +0000 Subject: [PATCH 27/36] sci-libs/miopen: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/miopen/Manifest | 1 + sci-libs/miopen/miopen-6.4.3.ebuild | 132 ++++++++++++++++++++++++++++ 2 files changed, 133 insertions(+) create mode 100644 sci-libs/miopen/miopen-6.4.3.ebuild diff --git a/sci-libs/miopen/Manifest b/sci-libs/miopen/Manifest index 2cc1e2a30f3e6..6a5af61109fae 100644 --- a/sci-libs/miopen/Manifest +++ b/sci-libs/miopen/Manifest @@ -3,4 +3,5 @@ DIST MIOpen-6.1.1.tar.gz 101935496 BLAKE2B 5aadaa5eefa1b22dedfe87deb36f8acdbe579 DIST MIOpen-6.3.2.tar.gz 104156821 BLAKE2B e7611ea2d37d3c72cde2e6be153271dacd7150083ec63ec2357e1c808dc9e79c1928f06fd4e70712989c5ab13a604a91d3fba1819723da12b49f6a447a561f3c SHA512 bf219459244c8f0962c54a8e94273aeeafe4b9b093c72ac962fa9d373526c9dc406c46d0464ec6b20d52b1e6c01e2cf2544267b573a0e774c7afd4ba9adc9fb9 DIST MIOpen-6.3.3.tar.gz 104157223 BLAKE2B 10b793594ed47397dd695ada4da1ba93935c78512c27291449df20fc7760aad2b224eaa50d3526453e7b4451828769937c66069a11f6f6fb6a636a16c6f90957 SHA512 9749d04d9a6b92ba19b3534966feb4ed21eaca3fd4a20aaec050bcf725091a8706044136f836ed20e08e7ec3b4074e1f99a08b51b4cbe449aedb7f86eb5cc87f DIST MIOpen-6.4.1.tar.gz 108253759 BLAKE2B 5c9efdd6656777b37cb43a7d78ca65a3c8db40276418468528be0b725867a8d7d8923428ae3e46afb4746749850d5f1032c8b6c47f7c054ddeb372ca8e61a858 SHA512 12a13dd1759de80c9aca85afa0db8d0b430427104c4faba06041c9972a20dd26d3d7226e70a38943845c3819f52a91af91b3b35995b36e09a806da25498bcdc7 +DIST MIOpen-6.4.3.tar.gz 108253603 BLAKE2B efeb974ab0d304a97171a2fb3497d754fdebd5d071f1e3a4fb6cf1fea2f4206686cf60905910979929b9b79e7bf99e2aaa73c433ad97c9bd480591f3fdf5485a SHA512 d3426595fb5395de225cd5c17819c2ac53e09db33f8aaf48022ab77047345c62dbaec0b3c704d24e937eb66f42011d69ac8a2dc8d8720608d635b19048dcda27 DIST gtest-1.11.0_p20210611.tar.gz 887296 BLAKE2B 8f29b7028a6dd8190a113cd93398705b23b61d88bee38beaf9dcc0dfc8a463aed7fcd3719f6f1b131d4363aa57231629aaeffa108f6558efb58416cfface6d6e SHA512 cf9e7f3fd3e31ce6677eac355fb8bfe19c5b56a8ec3af8b9417d0904cdf5da92f99f7411a08131cc9fa4fc7d38e6a71fcfac993648e47b269a74a27de7607f7a diff --git a/sci-libs/miopen/miopen-6.4.3.ebuild b/sci-libs/miopen/miopen-6.4.3.ebuild new file mode 100644 index 0000000000000..2bc8c052a6345 --- /dev/null +++ b/sci-libs/miopen/miopen-6.4.3.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} +LLVM_COMPAT=( 20 ) + +inherit cmake flag-o-matic llvm-r1 rocm + +DESCRIPTION="AMD's Machine Intelligence Library" +HOMEPAGE="https://github.com/ROCm/MIOpen" +SRC_URI="https://github.com/ROCm/MIOpen/archive/rocm-${PV}.tar.gz -> MIOpen-${PV}.tar.gz" +S="${WORKDIR}/MIOpen-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +IUSE="composable-kernel debug hipblaslt rocblas roctracer test" + +# tests can freeze machine depending on gpu/kernel +RESTRICT="test" + +RDEPEND=" + dev-util/hip:${SLOT} + >=dev-db/sqlite-3.17 + sci-libs/rocRAND:${SLOT} + >=dev-libs/boost-1.72 + dev-cpp/nlohmann_json + dev-cpp/frugally-deep + + composable-kernel? ( sci-libs/composable-kernel:${SLOT} ) + hipblaslt? ( + sci-libs/hipBLAS:${SLOT} + sci-libs/hipBLASLt:${SLOT} + ) + rocblas? ( sci-libs/rocBLAS:${SLOT} ) + roctracer? ( dev-util/roctracer:${SLOT} ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + >=dev-libs/half-1.12.0-r1 + dev-build/rocm-cmake + test? ( dev-cpp/gtest ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-build-all-tests.patch + "${FILESDIR}"/${PN}-6.3.0-conditional-ck-components.patch +) + +src_prepare() { + cmake_src_prepare + + # complementary replacements for conditional-ck-components patch + find src -name '*mha*.cpp' -type f | while IFS= read -r file; do + sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_MHA_OPS/g" "$file" || die + done + + sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_XDL_OPS/g" \ + src/mlo_dir_conv.cpp \ + src/solver/conv_ck_igemm_fwd_bias_res_add_activ_fused.cpp \ + src/solver/conv_ck_igemm_fwd_bias_activ_fused.cpp || die + find src -name '*xdl*.cpp' -type f | while IFS= read -r file; do + sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_XDL_OPS/g" "$file" || die + done + + sed -e '/MIOPEN_TIDY_ERRORS ALL/d' \ + -e 's/FLAGS_RELEASE} -s/FLAGS_RELEASE}/g' \ + -i CMakeLists.txt || die + + sed -e "/add_test/s:--build \${CMAKE_CURRENT_BINARY_DIR}:--build ${BUILD_DIR}:" \ + -i test/CMakeLists.txt || die + + sed -e "s:\${PROJECT_BINARY_DIR}/miopen/include:\${PROJECT_BINARY_DIR}/include:" \ + -i src/CMakeLists.txt || die +} + +src_configure() { + rocm_use_hipcc + + if ! use debug; then + append-cflags "-DNDEBUG" + append-cxxflags "-DNDEBUG" + CMAKE_BUILD_TYPE="Release" + else + CMAKE_BUILD_TYPE="Debug" + fi + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" + -DMIOPEN_BACKEND=HIP + -DBoost_USE_STATIC_LIBS=OFF + -DMIOPEN_USE_MLIR=OFF + -DMIOPEN_USE_ROCTRACER=$(usex roctracer ON OFF) + -DMIOPEN_USE_ROCBLAS=$(usex rocblas ON OFF) + -DMIOPEN_USE_HIPBLASLT=$(usex hipblaslt ON OFF) + -DMIOPEN_USE_COMPOSABLEKERNEL=$(usex composable-kernel ON OFF) + -DBUILD_TESTING=$(usex test ON OFF) + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + -DMIOPEN_HIP_COMPILER="${ESYSROOT}/usr/bin/hipcc" + -DMIOPEN_AMDGCN_ASSEMBLER="$(get_llvm_prefix)/bin/clang" + -DHIP_OC_COMPILER="$(get_llvm_prefix)/bin/clang" + ) + + if use test; then + mycmakeargs+=( + -DMIOPEN_TEST_ALL=ON + -DMIOPEN_TEST_GDB=OFF + ) + # needed by rocminfo + addpredict /dev/random + check_amdgpu + fi + + cmake_src_configure +} + +src_test() { + check_amdgpu + LD_LIBRARY_PATH="${BUILD_DIR}"/lib MIOPEN_SYSTEM_DB_PATH="${BUILD_DIR}"/share/miopen/db/ cmake_src_test -j1 +} + +src_install() { + cmake_src_install +} From 5db4e52785ddc9c3ecbac64bf1d78e23a654e113 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:03:50 +0000 Subject: [PATCH 28/36] sci-libs/rocBLAS: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocBLAS/Manifest | 1 + sci-libs/rocBLAS/rocBLAS-6.4.3.ebuild | 127 ++++++++++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 sci-libs/rocBLAS/rocBLAS-6.4.3.ebuild diff --git a/sci-libs/rocBLAS/Manifest b/sci-libs/rocBLAS/Manifest index d0c613819ba88..ef3b396f24c86 100644 --- a/sci-libs/rocBLAS/Manifest +++ b/sci-libs/rocBLAS/Manifest @@ -3,3 +3,4 @@ DIST rocm-rocBLAS-6.1.1.tar.gz 100103895 BLAKE2B df89a21e47730714b80c62717a86d65 DIST rocm-rocBLAS-6.3.2.tar.gz 57909504 BLAKE2B 0ed000a10c9e71465f83fb9abdb9a745c82bf32552e3d86c61bf0c802f3728f7fd4c47fbf677d01aa35c457dc5281c916ca80fdc033b2752afd6733aefa4653f SHA512 ecfb6c68b0a44ddae0e4e6cf5c41c0c33a9685c590004ffe48fdb163bd059d534181d3faed2a23142078c5f621b1955c91725357c3e8e0f9307b139b19af46fd DIST rocm-rocBLAS-6.3.3.tar.gz 57909385 BLAKE2B a51274e2895419cc517ac24a0235c90f3b2551945b6936789abc78a08c8dde151de6d853d6378a702138227604af4cc185bde3acb5bf8999e09699d293bb2b85 SHA512 fcc8718e0c3dde8715f758e83f3a1ca45dde88ac56680e7723e2041dd3c1d7b9f575b1686552d04e7ef12b57188164c8abb5a6e4c568ade03d534edc30846c9e DIST rocm-rocBLAS-6.4.1.tar.gz 57975103 BLAKE2B 21b62ed65f2e30586eb24ca3bf151bb846c3e617f6d10ded91f6a0dda3d1d3c121176634cc97cc90718e41a97b42164920085e5e126dba8c06a928a0ad1eca3a SHA512 fe25e68c7d686f30723b3e136dd4db4200a84bfc808a840f1dc21cb673dd89541fd1a4524fa5559cb21c3bb19c00f7dcbe2fa4c59bc9b8a0a4ee2dd19193ad68 +DIST rocm-rocBLAS-6.4.3.tar.gz 57989956 BLAKE2B 36ed966b9ebeabae20510a20ed5e0503254cddbac25535297baaca6ac52decac2598bcb85c73a720737dd959fc64c2ee542b3b8ed59ae85980aeaf6dbc093681 SHA512 6273122eca037c22e44d56a3c09e04383c2f59d64342b36ac65430ad9f9a963c70b4c5477eb615a31daaf0deea1aedd11b88f2d66bcbada89504cb48cf2c264f diff --git a/sci-libs/rocBLAS/rocBLAS-6.4.3.ebuild b/sci-libs/rocBLAS/rocBLAS-6.4.3.ebuild new file mode 100644 index 0000000000000..83a3cc8fa055a --- /dev/null +++ b/sci-libs/rocBLAS/rocBLAS-6.4.3.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DOCS_BUILDER="doxygen" +DOCS_DIR="docs/doxygen" +DOCS_DEPEND="media-gfx/graphviz" +LLVM_COMPAT=( 20 ) +ROCM_VERSION=${PV} + +inherit cmake docs edo flag-o-matic multiprocessing rocm llvm-r1 + +DESCRIPTION="AMD's library for BLAS on ROCm" +HOMEPAGE="https://github.com/ROCm/rocBLAS" +SRC_URI="https://github.com/ROCm/rocBLAS/archive/rocm-${PV}.tar.gz -> rocm-${P}.tar.gz" +S="${WORKDIR}/${PN}-rocm-${PV}" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark hipblaslt test video_cards_amdgpu" +RESTRICT="!test? ( test )" +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +BDEPEND=" + >=dev-build/rocm-cmake-5.3 + video_cards_amdgpu? ( + dev-util/Tensile:${SLOT} + ) + hipblaslt? ( sci-libs/hipBLASLt:${SLOT} ) + test? ( dev-cpp/gtest ) +" + +DEPEND=" + >=dev-cpp/msgpack-cxx-6.0.0 + dev-util/hip:${SLOT} + dev-util/roctracer:${SLOT} + test? ( + virtual/blas + dev-cpp/gtest + llvm-runtimes/openmp + ) + benchmark? ( + virtual/blas + dev-cpp/gtest + llvm-runtimes/openmp + ) +" + +QA_FLAGS_IGNORED="/usr/lib64/rocblas/library/.*" + +PATCHES=( + "${FILESDIR}"/${PN}-5.4.2-add-missing-header.patch + "${FILESDIR}"/${PN}-5.4.2-link-cblas.patch + "${FILESDIR}"/${PN}-6.0.2-expand-isa-compatibility.patch + "${FILESDIR}"/${PN}-6.3.0-no-git.patch + "${FILESDIR}"/${PN}-6.3.0-find-cblas.patch +) + +src_prepare() { + cmake_src_prepare + sed -e "s:,-rpath=.*\":\":" -i clients/CMakeLists.txt || die +} + +src_configure() { + llvm_prepend_path "${LLVM_SLOT}" + rocm_use_clang + + # too many warnings + append-cxxflags -Wno-explicit-specialization-storage-class -Wno-unused-value + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_WITH_TENSILE="$(usex video_cards_amdgpu)" + -DCMAKE_INSTALL_INCLUDEDIR="include/rocblas" + -DBUILD_CLIENTS_SAMPLES=OFF + -DBUILD_CLIENTS_TESTS="$(usex test ON OFF)" + -DBUILD_CLIENTS_BENCHMARKS="$(usex benchmark ON OFF)" + -DBUILD_WITH_PIP=OFF + -DBUILD_WITH_HIPBLASLT="$(usex hipblaslt ON OFF)" + -DLINK_BLIS=OFF + -Wno-dev + ) + + if usex video_cards_amdgpu; then + mycmakeargs+=( + -DTensile_COMPILER="hipcc" + -DTensile_ROOT="${EPREFIX}/usr/share/Tensile" + -DTensile_CPU_THREADS="$(makeopts_jobs)" + ) + fi + + cmake_src_configure +} + +src_compile() { + docs_compile + cmake_src_compile +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}"/clients/staging || die + export ROCBLAS_TEST_TIMEOUT=3600 ROCBLAS_TENSILE_LIBPATH="${BUILD_DIR}/Tensile/library" + export LD_LIBRARY_PATH="${BUILD_DIR}/clients:${BUILD_DIR}/library/src" + + # `--gtest_filter=*quick*:*pre_checkin*-*known_bug*` is >1h on 7900XTX + edob ./rocblas-test --yaml rocblas_smoke.yaml +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}" || die + dolib.a clients/librocblas_fortran_client.a + dobin clients/staging/rocblas-bench + fi + + # Stop llvm-strip from removing .strtab section from *.hsaco files, + # otherwise rocclr/elf/elf.cpp complains with "failed: null sections(STRTAB)" and crashes + dostrip -x "/usr/$(get_libdir)/rocblas/library/" +} From ab11a12e294949f1af00a8c9e115ce3c81a0d7ae Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:04:24 +0000 Subject: [PATCH 29/36] sci-libs/rocFFT: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocFFT/Manifest | 1 + sci-libs/rocFFT/rocFFT-6.4.3.ebuild | 150 ++++++++++++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 sci-libs/rocFFT/rocFFT-6.4.3.ebuild diff --git a/sci-libs/rocFFT/Manifest b/sci-libs/rocFFT/Manifest index 113643bb04c78..fa618e7e8c2dc 100644 --- a/sci-libs/rocFFT/Manifest +++ b/sci-libs/rocFFT/Manifest @@ -3,3 +3,4 @@ DIST rocFFT-6.1.1.tar.gz 1257210 BLAKE2B 01d383d32bb91a9cd1d68a3b1ef2c6d71b33a9a DIST rocFFT-6.3.2.tar.gz 1385667 BLAKE2B 3415cca976b31534498b87b1bc800d96aa00c9c8b2665350323f03c47eff922ff3d0b46374af7cee5958572487c51432ef55ffe8c19c8b19e093c7ca7ec05961 SHA512 e58d00810c661ef640d4e33894b41847e69de150fbdf4cd72c14d44b9298a514df7e47bd52902482beb6fb52de6e7cd01e298dec756fec150de967049a370d33 DIST rocFFT-6.3.3.tar.gz 1386087 BLAKE2B 239f42cbb6ddc2f275a9ea2e356cab1b62670ebea3ed0e660f36ed816703bef650cd6e1181d1bcc4403a379c432ea033a2ee90a308b885bf82f1a4616643c07d SHA512 76dcc4bbb6bca97a5b87f88f7b60badde31ee2ff3254d16e99c3d6c7fb9fb6c7eb5166edd50dfb0dada54f4dbdd2436a9e507c806118a05ec93cea480ac1e1c4 DIST rocFFT-6.4.1.tar.gz 1429180 BLAKE2B ef7ce3af280512cb928262e1dcc8985f027b6f10fadaa86c7aef7f78eb814125ef0a51b0fe362c5cee69679479eab8fa87e110911ee36266d534bc7521e761f1 SHA512 0140a4830e989d1347c5126f3934769da8dd515a6084a0e0707b6380eb4ad11b3856b1284b8a5f3ed6a71603173388c678f8a726cc7f52ee274ca4d3bc827007 +DIST rocFFT-6.4.3.tar.gz 1429076 BLAKE2B 2254c6c29d75d3ea63d5c61f51a274d9539d6da64981fc703d9f0570a75730918e3e7e7e8a378ab84038664ab912b86fe50ccd39165bc7eeae168204e90ee2e4 SHA512 e92889885aa5825b36a6de2e3fbf5f8d84f3519a25b6a9fe271533df4916644aadb0710cb00e53a29faa560a18e426d656bc7bd47486f80cab8c55f75f9b5071 diff --git a/sci-libs/rocFFT/rocFFT-6.4.3.ebuild b/sci-libs/rocFFT/rocFFT-6.4.3.ebuild new file mode 100644 index 0000000000000..f076020ff6215 --- /dev/null +++ b/sci-libs/rocFFT/rocFFT-6.4.3.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +ROCM_VERSION=${PV} + +inherit cmake check-reqs edo multiprocessing python-r1 rocm + +DESCRIPTION="Next generation FFT implementation for ROCm" +HOMEPAGE="https://github.com/ROCm/rocFFT" +SRC_URI="https://github.com/ROCm/rocFFT/archive/rocm-${PV}.tar.gz -> rocFFT-${PV}.tar.gz" +S="${WORKDIR}/rocFFT-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +# RDEPEND: perfscripts? dev-python/plotly[${PYTHON_USEDEP}] # currently masked by arch/amd64/x32/package.mask +RDEPEND=" +perfscripts? ( + >=media-gfx/asymptote-2.61 + dev-texlive/texlive-latex + dev-tex/latexmk + sys-apps/texinfo + dev-python/sympy[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/scipy[${PYTHON_USEDEP}] + dev-python/pandas[${PYTHON_USEDEP}] ) +${PYTHON_DEPS}" + +DEPEND="=dev-util/hip-6* + ${PYTHON_DEPS} + benchmark? ( + dev-libs/boost + sci-libs/hipRAND:${SLOT} + ) + test? ( + dev-cpp/gtest + dev-libs/boost + >=sci-libs/fftw-3 + llvm-runtimes/openmp + sci-libs/hipRAND:${SLOT} + ) +" + +BDEPEND=" + >=dev-build/cmake-3.22 + dev-build/rocm-cmake + dev-db/sqlite +" + +CHECKREQS_DISK_BUILD="7G" + +IUSE="benchmark perfscripts test" +REQUIRED_USE="perfscripts? ( benchmark ) ${PYTHON_REQUIRED_USE} ${ROCM_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-5.7.1-fix-rocm-link-path.patch +) + +required_mem() { + if use test; then + echo "52G" + else + if [[ -n "${AMDGPU_TARGETS}" ]]; then + # count how many archs user specified in ${AMDGPU_TARGETS} + local NARCH=$(($(awk -F";" '{print NF-1}' <<< "${AMDGPU_TARGETS}" || die)+1)) + else + # The default number of AMDGPU_TARGETS for rocFFT-4.3.0. May change in the future. + local NARCH=7 + fi + echo "$(($(makeopts_jobs)*${NARCH}*25+2200))M" # A linear function estimating how much memory required + fi +} + +pkg_pretend() { + return # leave the disk space check to pkg_setup phase +} + +pkg_setup() { + export CHECKREQS_MEMORY=$(required_mem) + check-reqs_pkg_setup + python_setup +} + +src_prepare() { + if use perfscripts; then + pushd scripts/perf || die + sed -e "/\/opt\/rocm/d" -e "/rocmversion/s,rocm_info.strip(),\"${PV}\"," -i perflib/specs.py || dir + sed -e "/^top/,+1d" -i rocfft-perf suites.py || die + sed -e "s,perflib,${PN}_perflib,g" -i rocfft-perf suites.py perflib/*.py || die + sed -e "/^top = /s,__file__).*$,\"${EPREFIX}/usr/share/${PN}-perflib\")," \ + -i perflib/pdf.py perflib/generators.py || die + popd + fi + + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DGPU_TARGETS="$(get_amdgpu_flags)" + -Wno-dev + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCH=$(usex benchmark ON OFF) + -DSQLITE_USE_SYSTEM_PACKAGE=ON + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}/clients/staging" || die + export LD_LIBRARY_PATH=${BUILD_DIR}/library/src/:${BUILD_DIR}/library/src/device + edob ./rocfft-test +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}"/clients/staging || die + dobin dyna-rocfft-bench rocfft-bench + dosym dyna-rocfft-bench /usr/bin/dyna-rocfft-rider + dosym rocfft-bench /usr/bin/dyna-rocfft-rider + + if ! use perfscripts; then + # prevent collision with dev-util/perf + rm -rf "${ED}"/usr/bin/perf || die + fi + fi + + if use perfscripts; then + cd "${S}"/scripts/perf || die + python_foreach_impl python_doexe rocfft-perf + python_moduleinto ${PN}_perflib + python_foreach_impl python_domodule perflib/*.py + insinto /usr/share/${PN}-perflib + doins *.asy suites.py + fi +} From 22345f2646d499dcb06a72ee6e0343d80daf4089 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:04:32 +0000 Subject: [PATCH 30/36] sci-libs/rocPRIM: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocPRIM/Manifest | 1 + sci-libs/rocPRIM/rocPRIM-6.4.3.ebuild | 68 +++++++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 sci-libs/rocPRIM/rocPRIM-6.4.3.ebuild diff --git a/sci-libs/rocPRIM/Manifest b/sci-libs/rocPRIM/Manifest index 70e1c9d8f0529..6cdb178a8cc86 100644 --- a/sci-libs/rocPRIM/Manifest +++ b/sci-libs/rocPRIM/Manifest @@ -3,3 +3,4 @@ DIST rocPRIM-6.1.1.tar.gz 611372 BLAKE2B 984df214179a6d2c90b31bd30ec9472a0b985d9 DIST rocPRIM-6.3.2.tar.gz 745935 BLAKE2B 21ffbd746e51aa7ed7028be9eea1009757d7d92403999b35310f5c249d76e2dc793d754d2eeaf44e3d0da8aa00c5ca93dfa45ed2a654fd26f88510f422a7ea11 SHA512 e5c57d95cb25a498f9ef8c555dbf89f6be2d0088a04c8fdc470dd98f851ac15dde7ce0493719d544e7f911f3438e780b12aadc42f5d47e25723828149f6279e0 DIST rocPRIM-6.3.3.tar.gz 745961 BLAKE2B 7ab15f623390de9052258717fa568b41c0f0dbe2e70c5c59089ad52bd00bdb44905a0f371dd71673af4b6f5d5ca21ab5bc6e41c04721e3b812f9543ad849c236 SHA512 5e216ff18d0a3eeb901f3ad4e8b74f9d8661a0bb943edea064529bdb973f3955e6791c415e492a89456eb0f19376f74528c3b348c4e32755a48e6b3f855a91e2 DIST rocPRIM-6.4.1.tar.gz 863530 BLAKE2B b0f846ecb35b1a58db3a06a355cc2e4124e6f5909ad525f0a7692e62b3ad852690c30a9910259c6e1cf8886c500ff3bb263712801ec84b604667ca794c06f803 SHA512 63d3707f302c06e1f76a98ac4a36d9579495286c502c397c6aa62e7d2a0494b646d6cd34988ad541b30778e9e2dadacbba516987e11b9a8a0f8dd0be2bbed74e +DIST rocPRIM-6.4.3.tar.gz 868355 BLAKE2B f9dea0b2089a54033c689593f156a2ec5fa57c9be1d97491ab888667d2f12e919dc191baf3b321cf9450c1c09032a771be286ec9662e3cd4a2e5b18ad64636eb SHA512 1190a5397d30ee659128038c6903188c29808ad8e7e09f9ef648384662bdb6eda331d7a4847b3e00d31eb3c6752977703cfba2516ce0f268b2b0a349c97e5b24 diff --git a/sci-libs/rocPRIM/rocPRIM-6.4.3.ebuild b/sci-libs/rocPRIM/rocPRIM-6.4.3.ebuild new file mode 100644 index 0000000000000..1797a805129aa --- /dev/null +++ b/sci-libs/rocPRIM/rocPRIM-6.4.3.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} +inherit cmake flag-o-matic rocm + +DESCRIPTION="HIP parallel primitives for developing performant GPU-accelerated code on ROCm" +HOMEPAGE="https://github.com/ROCm/rocPRIM" +SRC_URI="https://github.com/ROCm/rocPRIM/archive/rocm-${PV}.tar.gz -> rocPRIM-${PV}.tar.gz" +S="${WORKDIR}/rocPRIM-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE=" + benchmark? ( ${ROCM_REQUIRED_USE} ) + test? ( ${ROCM_REQUIRED_USE} ) +" + +RDEPEND="dev-util/hip + benchmark? ( dev-cpp/benchmark ) + test? ( dev-cpp/gtest )" +BDEPEND="dev-build/rocm-cmake + >=dev-build/cmake-3.22" +DEPEND="${RDEPEND}" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-6.4.1-expand-isa-compatibility.patch +) + +src_prepare() { + # install benchmark files + if use benchmark; then + sed -e "/get_filename_component/s,\${BENCHMARK_SOURCE},${PN}_\${BENCHMARK_SOURCE}," \ + -e "/add_executable/a\ install(TARGETS \${BENCHMARK_TARGET})" -i benchmark/CMakeLists.txt || die + fi + + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + # too many warnings in tests + append-cxxflags -Wno-explicit-specialization-storage-class -Wno-deprecated-declarations + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_TEST=$(usex test ON OFF) + -DBUILD_BENCHMARK=$(usex benchmark ON OFF) + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + # uses HMM to fit tests to default <512M iGPU VRAM + ROCPRIM_USE_HMM="1" cmake_src_test -j1 +} From 835b492c2f1627ef96cde31e93fe49f9c3d7bdb1 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:04:39 +0000 Subject: [PATCH 31/36] sci-libs/rocRAND: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocRAND/Manifest | 1 + sci-libs/rocRAND/rocRAND-6.4.3.ebuild | 65 +++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 sci-libs/rocRAND/rocRAND-6.4.3.ebuild diff --git a/sci-libs/rocRAND/Manifest b/sci-libs/rocRAND/Manifest index e6f7394906fe9..21a46f1c22fd1 100644 --- a/sci-libs/rocRAND/Manifest +++ b/sci-libs/rocRAND/Manifest @@ -3,3 +3,4 @@ DIST rocRAND-6.1.1.tar.gz 26683143 BLAKE2B 4108584c6372adbf2f9ef887cf1aa08f5afdf DIST rocRAND-6.3.2.tar.gz 44906513 BLAKE2B fba5f0dcc1a6fb5636ffb1c9a13f0d03d908d99c277c783ec53ffbb0b2ff4798c65c9bbf27c591690a5f17db43eb8309ee1648da39c631eba32d183560b645d8 SHA512 6eac3c27f970e75e57a864b26070e1327235a42367e9d137ebeaed8d4a20a85638edfb3d81b142171c260c71403021159c1e3b9bcb0f97c08251c33ca9e62641 DIST rocRAND-6.3.3.tar.gz 44906478 BLAKE2B 018cb0a18c9fce92391a7e3f1047a9702bde1a28d2eddd179326b2f96b0d046e47a5efd14e258586fb1c88ce0cbd2dca9d37ac1fd8054b539044d7d9d246c15c SHA512 4ef056c27e1f964c2dd53a2373fea42ce58965e90e4450246880d099561116853517e0122936dffc0b3548df72ec55b54ed430d99fec86842cf3e83fc531ed4f DIST rocRAND-6.4.1.tar.gz 44915381 BLAKE2B ea9d6b2a7edd994256b89073fbe913308ae4b371b5a55f59e3781d86e0212c7a979861b65be8dd76416b819a05d6798a83812f56fa54cee92805cde68d78c56f SHA512 7259620369cfc392d6de1278b4c2e9ce7a491b836458f2b136a79da49bdfb9378e60af6a4e950d64de8e4af58ca68162f7b23b6a46982e08c5beb70f736b685e +DIST rocRAND-6.4.3.tar.gz 44916345 BLAKE2B ee7004d2e519897d0780ca7c672f81e1c77195b88ed84e93a75f99c86de8653674ee4de8e3c31ea719c17361427e3cbf39fd5bcb7e01ed573a4c6360aee31eaa SHA512 58279a4c05ecbeac4ee8d0bfd496f8c338dd2a0d6e81f93d3d8f104883aadcac735866e9cab1e86af92ac77c2189dac02212fe74b720dd21e7494d54cca25999 diff --git a/sci-libs/rocRAND/rocRAND-6.4.3.ebuild b/sci-libs/rocRAND/rocRAND-6.4.3.ebuild new file mode 100644 index 0000000000000..d5b38455f3d0c --- /dev/null +++ b/sci-libs/rocRAND/rocRAND-6.4.3.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="Generate pseudo-random and quasi-random numbers" +HOMEPAGE="https://github.com/ROCm/rocRAND" +SRC_URI="https://github.com/ROCm/${PN}/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/rocRAND-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-5.7.1_fix_generator_alignment.patch + "${FILESDIR}"/${PN}-6.3.0-benchmark-1.8.patch +) + +RDEPEND="dev-util/hip" +DEPEND="${RDEPEND} + dev-build/rocm-cmake + benchmark? ( dev-cpp/benchmark ) + test? ( dev-cpp/gtest )" +BDEPEND="dev-build/rocm-cmake + >=dev-build/cmake-3.22" + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_TEST=$(usex test ON OFF) + -DBUILD_BENCHMARK=$(usex benchmark ON OFF) + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + export LD_LIBRARY_PATH="${BUILD_DIR}/library" + # uses HMM to fit tests to default <512M iGPU VRAM + ROCRAND_USE_HMM="1" cmake_src_test -j1 +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}"/benchmark + dobin benchmark_rocrand_* + fi +} From e1b3eb34bba181d9ec8421fc4d3cfc40f12cf080 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:05:39 +0000 Subject: [PATCH 32/36] sci-libs/rocSOLVER: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocSOLVER/Manifest | 1 + sci-libs/rocSOLVER/rocSOLVER-6.4.3.ebuild | 71 +++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 sci-libs/rocSOLVER/rocSOLVER-6.4.3.ebuild diff --git a/sci-libs/rocSOLVER/Manifest b/sci-libs/rocSOLVER/Manifest index 3d4f8ce221787..40a0b8bb5a720 100644 --- a/sci-libs/rocSOLVER/Manifest +++ b/sci-libs/rocSOLVER/Manifest @@ -3,3 +3,4 @@ DIST rocSOLVER-6.1.1.tar.gz 2971118 BLAKE2B 2611b6b65704e7cd64df682728013f07d20c DIST rocSOLVER-6.3.2.tar.gz 3077213 BLAKE2B ab05f0388f4845e7cbd6279aaa7c6a0774b99153ca0739837186792a8e5c271498d5c18a3305602d979aad65e5bc399305e0c6447bce118694ebbdcb1f26b5a3 SHA512 7a9b705783dde897a8b343e832a7775d131cc0c5caca14ee9abe4349aeff896bb1b073ea077ed1bcced6a358e4b61d9a0155c499c73fccba1d50b0ebc535dd6c DIST rocSOLVER-6.3.3.tar.gz 3077208 BLAKE2B b3c5a8377b503b2639f81ae7457d233dd225f8422a9134148826d875cacac2cb03429734915c25ca8971c651c31071daccfad9ad4fcb66a034f38b5b991380aa SHA512 5effc07c9ed5a22bfbb114fc9777e61e9b524c439ea98e0802e63490a27d4e17747de5eee74df59138bf8dcb8700b00a9074079ee3666bba630af2bab800a541 DIST rocSOLVER-6.4.1.tar.gz 3121601 BLAKE2B f7e7ec18d7802682906846d5860892c020debec7d11a85c06fc8ae519f4b63f0e9be85517d4211e763e914da14d8dbea60ff30a3ed5cc0c17bd8e52fd278d209 SHA512 3f68736439b5c813e914c4bc7d6003d990ce2c30ea2436e7a961454597919ec54b58078008efd604314e7a148aa0b343b8cc10fb47a61e191514fdbf58840ff9 +DIST rocSOLVER-6.4.3.tar.gz 3151118 BLAKE2B 84e533a9af91a6b12c1b7f967c7879c5a3d59a46e12aacb6814905f99f7de7c2cd1b429dd41e5b33b0eb63a5fae1ef6fb7d20a0508466b960a2d5c59b81c7a9a SHA512 84a37d94ca55edfc5038425f1dc6f6658e34fbbfdd3e32be3f3668307e5590895c09c4e0769e4cd89af74a2a651c6311df7124b1bedf1a7375fa519560d95e9f diff --git a/sci-libs/rocSOLVER/rocSOLVER-6.4.3.ebuild b/sci-libs/rocSOLVER/rocSOLVER-6.4.3.ebuild new file mode 100644 index 0000000000000..e2214d7f03c39 --- /dev/null +++ b/sci-libs/rocSOLVER/rocSOLVER-6.4.3.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake edo flag-o-matic rocm + +DESCRIPTION="Implementation of a subset of LAPACK functionality on the ROCm platform" +HOMEPAGE="https://github.com/ROCm/rocSOLVER" +SRC_URI="https://github.com/ROCm/rocSOLVER/archive/rocm-${PV}.tar.gz -> rocSOLVER-${PV}.tar.gz" +S=${WORKDIR}/${PN}-rocm-${PV} + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +IUSE="test benchmark" +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +RDEPEND="dev-util/hip + sci-libs/rocBLAS:${SLOT} + sci-libs/rocSPARSE:${SLOT} + dev-libs/libfmt + benchmark? ( virtual/blas )" +DEPEND="${RDEPEND}" +BDEPEND="test? ( dev-cpp/gtest + >=dev-build/cmake-3.22 + virtual/blas )" + +RESTRICT="!test? ( test )" + +src_configure() { + rocm_use_hipcc + + # too many warnings + append-cxxflags -Wno-explicit-specialization-storage-class + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -Wno-dev + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DROCM_SYMLINK_LIBS=OFF + -DBUILD_CLIENTS_SAMPLES=NO + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}"/clients/staging || die + # No filters: 64m28s on gfx1100 + # 'checkin*-*known_bug*': 1m35s + HIP_VISIBLE_DEVICES=0 LD_LIBRARY_PATH="${BUILD_DIR}/library/src" \ + edob ./rocsolver-test \ + --gtest_filter='checkin*-*known_bug*:*GVD*batched*:*STEDCX*/74:*BDSVDX*:*SYGVDX_INPLACE.__float*' +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}" || die + dobin clients/staging/rocsolver-bench + fi +} From d203fe8423dc20053da59a44838e9aba5d2296fb Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:05:48 +0000 Subject: [PATCH 33/36] sci-libs/rocSPARSE: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocSPARSE/Manifest | 1 + sci-libs/rocSPARSE/rocSPARSE-6.4.3.ebuild | 123 ++++++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 sci-libs/rocSPARSE/rocSPARSE-6.4.3.ebuild diff --git a/sci-libs/rocSPARSE/Manifest b/sci-libs/rocSPARSE/Manifest index 622c4d2bfa8c3..3feb750f37ae4 100644 --- a/sci-libs/rocSPARSE/Manifest +++ b/sci-libs/rocSPARSE/Manifest @@ -3,6 +3,7 @@ DIST rocSPARSE-6.1.1.tar.gz 1367035 BLAKE2B fc981df5913ea527bb4a7d3eba69373ebc7b DIST rocSPARSE-6.3.2.tar.gz 1490331 BLAKE2B 77317b2cd7bbfe69577c49d738b3aa829db6a9c54e93f1e5cb874825210658582f084e97e0cb8e76be9d767a3dc95625441604600b948ccebb4e634b24703ea7 SHA512 b1377749cd07ea858a06e9bbd372008d42f6afad8eb48334bbbd8a8e7ab48a4671fb9d23ac8c896e8b3f546a03118f57345ebab8473795fdaa7a49b49f368a49 DIST rocSPARSE-6.3.3.tar.gz 1490318 BLAKE2B 5df9d3af2904bf793714c5e5d79f7e102eade2ddcf693e41724e02e52f65827c36d6ae1ba48311ccefa63304ecb692a5e3f02a02f866b43e22523c0f5efcd981 SHA512 e91108da47e7f3b742fcc33be3b2dae44e388c5445963ad8cb98e63e0e01013628c6df3cfe19e5522763d565164d49c0287cd2ea6117040a00f03b90c670a6c5 DIST rocSPARSE-6.4.1.tar.gz 1539731 BLAKE2B f2d6f6b39b9b1ffd21fa6451e89781780ddcac87f1e36f76af9bce7e035cc8b7e8e935042626c34fff385809485008da052940572a34f95094ca4a165b0167a2 SHA512 12decbeef2caa61dc37b7f80bfc0ac7eeeb1a3c9d4d5a3952a600300e98592d7a987e0fef41439d6c3acddc6fd538477fd673ab428ed2ae6b32af1609ad04dc9 +DIST rocSPARSE-6.4.3.tar.gz 1539584 BLAKE2B f41f925bc82e980d2ebd1dbe61b76254933e0deae3c450105e9c3f53b1397f457cb43711feb267a0924bce5afa76f2b09ac8ec35922b873795cfae960b96b605 SHA512 e82a15ac726c16c418bcaf253817fbca919cedb8c25085793cfd0a984816ea6ffe8d98c0dca867a1bc56b4cd36a03fa3abb3c40a63e9c222c4a230aadd370b7d DIST rocSPARSE_ASIC_320k.tar.gz 11301444 BLAKE2B a00cc4a3ededab3fb56339319e34e936645ddce2dee3c630153b37e337384c207b0a2829227fb7f4c2db1fe33383e97410ab7ad459d391c025f5410843d51cf2 SHA512 1db3af391c30a371c1ac0087436e266721474273a39d5b2b6d56408d950dcbbee004750e4dce4e3dbc4cb512f38f6d945676d7f29b62c52fd5a7fed0fe789e03 DIST rocSPARSE_Chebyshev4.tar.gz 50165660 BLAKE2B f1a95554c8f38937f501488fabfd406b773eb980d7463cadac0de162529ac2f834c655cadd2b65f4c42a8487bc2d67c749601ae33bd789051f9e4d1e157196a0 SHA512 fdec4947a4af923d28b4be8d23690fd6d356c58f8344a5dcdd2e3fa61769d83e47a84d65316b527e6e82d9f988de2675a852367d406e44b44d784137a90b95c0 DIST rocSPARSE_Chevron2.tar.gz 3210636 BLAKE2B 919bc19931cbcb32c09e6b623c9d3890400895dfd65e83845d351a8e3dd8b30ef43374c3c0ca3ee9708c81b5fb8886f1a4adbea6086495f08f9498f19a2279d5 SHA512 22b71deddec4f1af5b239d4065089230cf70e521102803a77ab3f16b34a0d69534817e54d81dfa7f8d1f299932c0f0424237baeb3d8289bcfffa4b902b00e256 diff --git a/sci-libs/rocSPARSE/rocSPARSE-6.4.3.ebuild b/sci-libs/rocSPARSE/rocSPARSE-6.4.3.ebuild new file mode 100644 index 0000000000000..6c17736942a78 --- /dev/null +++ b/sci-libs/rocSPARSE/rocSPARSE-6.4.3.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..14} ) +ROCM_VERSION=${PV} + +inherit cmake edo flag-o-matic python-any-r1 toolchain-funcs rocm + +DESCRIPTION="Basic Linear Algebra Subroutines for sparse computation" +HOMEPAGE="https://github.com/ROCm/rocSPARSE" + +SRC_URI="https://github.com/ROCm/rocSPARSE/archive/rocm-${PV}.tar.gz -> rocSPARSE-${PV}.tar.gz +test? ( +http://sparse-files.engr.tamu.edu/MM/SNAP/amazon0312.tar.gz -> ${PN}_amazon0312.tar.gz +http://sparse-files.engr.tamu.edu/MM/Muite/Chebyshev4.tar.gz -> ${PN}_Chebyshev4.tar.gz +http://sparse-files.engr.tamu.edu/MM/FEMLAB/sme3Dc.tar.gz -> ${PN}_sme3Dc.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/webbase-1M.tar.gz -> ${PN}_webbase-1M.tar.gz +http://sparse-files.engr.tamu.edu/MM/Bova/rma10.tar.gz -> ${PN}_rma10.tar.gz +http://sparse-files.engr.tamu.edu/MM/JGD_BIBD/bibd_22_8.tar.gz -> ${PN}_bibd_22_8.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/mac_econ_fwd500.tar.gz -> ${PN}_mac_econ_fwd500.tar.gz +http://sparse-files.engr.tamu.edu/MM/Williams/mc2depi.tar.gz -> ${PN}_mc2depi.tar.gz +http://sparse-files.engr.tamu.edu/MM/Hamm/scircuit.tar.gz -> ${PN}_scircuit.tar.gz +http://sparse-files.engr.tamu.edu/MM/Sandia/ASIC_320k.tar.gz -> ${PN}_ASIC_320k.tar.gz +http://sparse-files.engr.tamu.edu/MM/GHS_psdef/bmwcra_1.tar.gz -> ${PN}_bmwcra_1.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos1.tar.gz -> ${PN}_nos1.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos2.tar.gz -> ${PN}_nos2.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos3.tar.gz -> ${PN}_nos3.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos4.tar.gz -> ${PN}_nos4.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos5.tar.gz -> ${PN}_nos5.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos6.tar.gz -> ${PN}_nos6.tar.gz +http://sparse-files.engr.tamu.edu/MM/HB/nos7.tar.gz -> ${PN}_nos7.tar.gz +http://sparse-files.engr.tamu.edu/MM/DNVS/shipsec1.tar.gz -> ${PN}_shipsec1.tar.gz +http://sparse-files.engr.tamu.edu/MM/Cote/mplate.tar.gz -> ${PN}_mplate.tar.gz +http://sparse-files.engr.tamu.edu/MM/Bai/qc2534.tar.gz -> ${PN}_qc2534.tar.gz +http://sparse-files.engr.tamu.edu/MM/Chevron/Chevron2.tar.gz -> ${PN}_Chevron2.tar.gz +http://sparse-files.engr.tamu.edu/MM/Chevron/Chevron3.tar.gz -> ${PN}_Chevron3.tar.gz +http://sparse-files.engr.tamu.edu/MM/Chevron/Chevron4.tar.gz -> ${PN}_Chevron4.tar.gz +)" + +S="${WORKDIR}/rocSPARSE-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +RDEPEND="=dev-util/hip-6* + sci-libs/rocPRIM:${SLOT}" +DEPEND="${RDEPEND}" +BDEPEND="test? ( + dev-cpp/gtest + >=dev-build/cmake-3.22 + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') +) +" + +RESTRICT="!test? ( test )" + +python_check_deps() { + if use test; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +src_prepare() { + # use python interpreter specifyied by python-any-r1 + sed -e "s/\${python}/${EPYTHON}/" \ + -i clients/tests/CMakeLists.txt || die + + cmake_src_prepare + + # Test need download data from https://sparse-files.engr.tamu.edu (or other mirror site), check MD5, + # unpack and convert them into csr format + # This process is handled default by ${S}/cmake/ClientMatrices.cmake, but should be the responsibility of portage. + if use test; then + mkdir -p "${BUILD_DIR}"/clients/matrices + # compile and use the mtx2csr converter. Do not use any optimization flags, because it causes error! + edo $(tc-getCXX) deps/convert.cpp -o deps/convert + find "${WORKDIR}" -maxdepth 2 -regextype egrep -regex ".*/(.*)/\1\.mtx" -print0 | + while IFS= read -r -d '' mtxfile; do + destination=${BUILD_DIR}/clients/matrices/$(basename -s '.mtx' "${mtxfile}").csr + ebegin "Converting ${mtxfile} to ${destination}" + deps/convert "${mtxfile}" "${destination}" + eend $? + done + fi +} + +src_configure() { + rocm_use_hipcc + + # tons of warnings in tests + append-cxxflags -Wno-explicit-specialization-storage-class + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_CLIENTS_SAMPLES=OFF + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) + ) + + cmake_src_configure +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}/clients/staging" || die + LD_LIBRARY_PATH="${BUILD_DIR}/library" edob ./rocsparse-test +} + +src_install() { + cmake_src_install + + if use benchmark; then + cd "${BUILD_DIR}" || die + dobin clients/staging/rocsparse-bench + fi +} From f2c12fe9b5c8d3b915e8759c128fb80874292f2f Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:06:34 +0000 Subject: [PATCH 34/36] sci-libs/rocThrust: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocThrust/Manifest | 1 + sci-libs/rocThrust/rocThrust-6.4.3.ebuild | 80 +++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 sci-libs/rocThrust/rocThrust-6.4.3.ebuild diff --git a/sci-libs/rocThrust/Manifest b/sci-libs/rocThrust/Manifest index 4186acb7f4f2f..7979d5aafe09a 100644 --- a/sci-libs/rocThrust/Manifest +++ b/sci-libs/rocThrust/Manifest @@ -3,4 +3,5 @@ DIST rocThrust-6.1.1.tar.gz 1147635 BLAKE2B e71288a4666ba1f23cf85d2d269f61f9085e DIST rocThrust-6.3.2.tar.gz 1205797 BLAKE2B 355da53bbc69a6b79909fe48bfa326fc9bc8eabf4b80d3870bd4ef73ff87ebaba5ec06ce2096efd9d4655d1f19970ca60069c14e91b6bf953263145f8ff3a178 SHA512 5f699957ef79346e38d7d8d462b25f67248e5d7b1c2ea71a153fe7f87279d442e181a721b95a2878d52ae08ff3b53797a320f51f707b852ec67d5dfaa50a1bc7 DIST rocThrust-6.3.3.tar.gz 1205828 BLAKE2B 4b65353de456558fbc4ad43630353d89336d23a4a9da00df21c34caedbcc25b9b05e0a3e4048f3709a63eb9a8882d60a906b2e7cf4976fd3953b089e9bcb04b7 SHA512 964ef583485d4885b4cf6e95a0cb65d54f1690ab4af9c18a9909d9356e19d3b431f510801ac0a26cd31b8539857840fc218e0bdf779e9a4ab7b03bb0e31f73da DIST rocThrust-6.4.1.tar.gz 1228414 BLAKE2B b3da44507b633865b76edee668d5db103a68808281c9f39679dfa517e2c00817d54c12105219863960bcc98156206b9f2fc5cc7f60c6ea1631f29d1a6cc7291f SHA512 fac687b96b560b055627bda7b7c66d5b4a9a8e8377580028923c4a6a3c4d14d0aa3fd7bfd83439ceb9d2b954afb222377a1503291fccda6c9de55deef0518d4a +DIST rocThrust-6.4.3.tar.gz 1228363 BLAKE2B de9160cc29608094c44e3c36c5ae4fba286c65b1ccd3f28ee7db9a982c02019e16ced1385e449b776662ae10c6b97293f8f7b56292ad8f45e745f35e5e2f816e SHA512 77995e4e61f059a767b2df891e037513c43204b2d09181286ecc3579ac825a555c29bd3db41f185e48572a913b6b6a7c0ac5d16133498efa0eb76115fa1d6fea DIST sqlite-amalgamation-3430200.zip 2676699 BLAKE2B b09c59772c920ddef7ba0b15b1721645541678bad9ecb23fb8ecfbb1733177cad836d1d75db8e0722ea7ab4701cfaca187b72c127e9959f7e4f116f1ec7fe41c SHA512 5ef0e65ee92a088187376fa82ccb182dffa35391dd4dbcb3fafeb0a6f1602ced1e212753837079a9cad007d73d3f5b8a67ca1a6596eba6cf0c695052fa307392 diff --git a/sci-libs/rocThrust/rocThrust-6.4.3.ebuild b/sci-libs/rocThrust/rocThrust-6.4.3.ebuild new file mode 100644 index 0000000000000..19b0c8aeca94a --- /dev/null +++ b/sci-libs/rocThrust/rocThrust-6.4.3.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake rocm + +DESCRIPTION="HIP back-end for the parallel algorithm library Thrust" +HOMEPAGE="https://github.com/ROCm/rocThrust" +SRC_URI=" + https://github.com/ROCm/rocThrust/archive/rocm-${PV}.tar.gz -> rocThrust-${PV}.tar.gz + test? ( https://www.sqlite.org/2023/sqlite-amalgamation-3430200.zip ) +" +S="${WORKDIR}/rocThrust-rocm-${PV}" + +LICENSE="Apache-2.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="benchmark test" +REQUIRED_USE=" + benchmark? ( ${ROCM_REQUIRED_USE} ) + test? ( ${ROCM_REQUIRED_USE} ) +" + +RESTRICT="!test? ( test )" + +RDEPEND="dev-util/hip + sci-libs/rocPRIM:${SLOT} + test? ( dev-cpp/gtest ) + benchmark? ( + dev-cpp/benchmark + sci-libs/rocRAND:${SLOT} + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-build/cmake-3.22 + test? ( app-arch/unzip ) +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0-operator_new.patch" + "${FILESDIR}/${PN}-6.4.1-fix-libcxx.patch" + "${FILESDIR}/${PN}-6.4.1-no-tests-install.patch" +) + +src_prepare() { + sed -e "s:set(ROCM_INSTALL_LIBDIR lib):set(ROCM_INSTALL_LIBDIR $(get_libdir)):" \ + -i cmake/ROCMExportTargetsHeaderOnly.cmake || die + + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DBUILD_TEST=$(usex test ON OFF) + -DBUILD_BENCHMARKS=$(usex benchmark ON OFF) + -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF + ) + + if use test; then + mycmakeargs+=( + -DFETCHCONTENT_SOURCE_DIR_SQLITE_LOCAL="${WORKDIR}"/sqlite-amalgamation-3430200 + ) + fi + + cmake_src_configure +} + +src_test() { + check_amdgpu + # uses HMM to fit tests to default <512M iGPU VRAM + ROCTHRUST_USE_HMM="1" cmake_src_test -j1 +} From cafb95324557ed31fc17a8f15bfa04b4a1fee423 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:06:41 +0000 Subject: [PATCH 35/36] sci-libs/rocWMMA: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rocWMMA/Manifest | 1 + sci-libs/rocWMMA/rocWMMA-6.4.3.ebuild | 74 +++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 sci-libs/rocWMMA/rocWMMA-6.4.3.ebuild diff --git a/sci-libs/rocWMMA/Manifest b/sci-libs/rocWMMA/Manifest index 893c80c5f8156..539ddccaa8eaf 100644 --- a/sci-libs/rocWMMA/Manifest +++ b/sci-libs/rocWMMA/Manifest @@ -3,3 +3,4 @@ DIST rocWMMA-6.1.1.tar.gz 3189782 BLAKE2B fd96d8f3ba8f21ee3544d532a59ffdefa1aefc DIST rocWMMA-6.3.2.tar.gz 3225614 BLAKE2B ee4c8ba96d5603c1eb029b473a8ab7c80bad0917be58d2a0d3673d84a2ccd743e3f9ee1487c49a866c685426cb1486601de0d94470f0d2de09fcde47bb063353 SHA512 01a3db5234d747273eb925db3c803651bf475d3685f7e0488be880bddceaa008f1988e476d465aba9564e95d5d5c370320d0465605e02ff88e9e7bd67d68e27d DIST rocWMMA-6.3.3.tar.gz 3225632 BLAKE2B ff3fc4b8d980233052236c4850346c171147d25b5c0e32d81271f22eb1b844150f3998e10cfb5d01797cb8d03630406226eb33ce71d9c6004b0aacc4e40da772 SHA512 e775b1e540baaa67caf65b6bb1815fab860b28e3431a52e8158afab5c4b358407ca4085e9bb68eeb9117f7147d9872baa47fac1bcefac4fc87982c543ce35c9b DIST rocWMMA-6.4.1.tar.gz 3284017 BLAKE2B 9ff4b3079695b3ee00ab3ddb80de8eed14e03b82161b8d3e9d0dc7ed78f741da014184db0c6a10c26849c5fc619e3e45e08473043dac2ea06f730d2cb3df80c2 SHA512 a3b282b34dca5314b0d5695c7129bbcd456d84f506952f8588fbeed0d94c49d48bf074544f0378a6a59e7988ba4ea97e3329649d07dd88a3d923ee5edf1a81b6 +DIST rocWMMA-6.4.3.tar.gz 3284060 BLAKE2B d2a5eb06ff51f4a6d5e1a5350e73aac2ff130b9e302574e009760bd0829e52c1d7070c924b1fbbf833839b054f72b984f76b5bd558ef4f2555465d0ae6bdf200 SHA512 7ee4f7ddf5fd65fbd62fd571dda4d77d5752d496b606a0d5e03be0a7c8f6fca0a065af5312e3dd0a993b213c01c0cc78010ab20243de85a41ef45286f2b79093 diff --git a/sci-libs/rocWMMA/rocWMMA-6.4.3.ebuild b/sci-libs/rocWMMA/rocWMMA-6.4.3.ebuild new file mode 100644 index 0000000000000..f6aafe273485f --- /dev/null +++ b/sci-libs/rocWMMA/rocWMMA-6.4.3.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_SKIP_GLOBALS=1 + +inherit cmake rocm + +DESCRIPTION="library for accelerating mixed precision matrix multiply-accumulate operations" +HOMEPAGE="https://github.com/ROCm/rocWMMA" +SRC_URI="https://github.com/ROCm/rocWMMA/archive/rocm-${PV}.tar.gz -> rocWMMA-${PV}.tar.gz" +S="${WORKDIR}/rocWMMA-rocm-${PV}" + +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +DEPEND="dev-util/hip:${SLOT}" + +IUSE_TARGETS=( gfx908 gfx90a gfx940 gfx941 gfx942 gfx1100 gfx1101 gfx1102 gfx1200 gfx1201 ) +IUSE_TARGETS=( "${IUSE_TARGETS[@]/#/amdgpu_targets_}" ) +ROCM_USEDEP_OPTFLAGS=${IUSE_TARGETS[*]/%/(-)?} +ROCM_USEDEP=${ROCM_USEDEP_OPTFLAGS// /,} +ROCM_REQUIRED_USE=" || ( ${IUSE_TARGETS[*]} )" + +BDEPEND=" + test? ( + dev-cpp/gtest + sci-libs/rocBLAS:${SLOT} + ) + dev-build/rocm-cmake +" + +IUSE="${IUSE_TARGETS[*]/#/+} test" + +REQUIRED_USE="${ROCM_REQUIRED_USE}" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-no-test-install.patch +) + +src_prepare() { + # unknown arguments for hipcc + sed -e "s/ -parallel-jobs=4//" \ + -e "s/ -Xclang -fallow-half-arguments-and-returns//" \ + -i CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DAMDGPU_TARGETS="$(get_amdgpu_flags)" + -DROCM_SYMLINK_LIBS=OFF + -DROCWMMA_BUILD_SAMPLES=OFF + -DROCWMMA_BUILD_TESTS="$(usex test)" + ) + use test && mycmakeargs+=(-DROCWMMA_USE_SYSTEM_GOOGLETEST=ON) + cmake_src_configure +} + +src_test() { + check_amdgpu + + # Expected time on gfx1100 is 1260s (-j1) or 936s (-j32) + # Visible devices are limited to the first one to exclude APU (if not disabled in the BIOS) + HIP_VISIBLE_DEVICES=0 cmake_src_test +} From 110c379a01ee669f193dc755e2253ab816367640 Mon Sep 17 00:00:00 2001 From: Patrick Lauer Date: Sun, 10 Aug 2025 06:06:47 +0000 Subject: [PATCH 36/36] sci-libs/rpp: add 6.4.3 Signed-off-by: Patrick Lauer --- sci-libs/rpp/Manifest | 1 + sci-libs/rpp/rpp-6.4.3.ebuild | 98 +++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 sci-libs/rpp/rpp-6.4.3.ebuild diff --git a/sci-libs/rpp/Manifest b/sci-libs/rpp/Manifest index b9f724fd590e1..893c6f5afdb64 100644 --- a/sci-libs/rpp/Manifest +++ b/sci-libs/rpp/Manifest @@ -1,3 +1,4 @@ DIST rpp-6.1.1.tar.gz 37016755 BLAKE2B 884090ab50e0a4a3aed4e52c5bbd934a8c5b62eca310471c30cf4c5a7cafdd36fed7894320b4d5246620b3c47e90fafd0f8160a7d4ed0295c7668c8d147f4b18 SHA512 a7c10bdd08739eba08209783decf0f4fd7c12194b9ebc63bd16e4cb998645110c089833efb83a77d4bed7f8599cf3a320608be28633f0dc956079f9d70e765f8 DIST rpp-6.3.3.tar.gz 56093678 BLAKE2B de0933386d7c6a3cce88a36e22c25bea0cdda766dbc9a297bb6f5271b7a310670faa2d1dd3cc56f52e2752946f930ad02c4de2680dea3456e09ca97d4fa6c520 SHA512 024211ab05d95fbe0bb960a08b083e5b777d4842dd717a6280b1de84402426f5f9016e3b258ef81042281d775bd5504b285dd06d246f4d3479ffe57e59935184 DIST rpp-6.4.1.tar.gz 66053835 BLAKE2B 42b7403585203b6d1e2ac76999cce0e34d6a0b10ecea90711389150144ffcb3f809d0ffa7bcba655b242b50a5cbff0e18995782a1734265b63199327aea40d06 SHA512 6dc4b68eac6fc73575215cf913879e4a5911088e0daa4116d6250f3881ae9d1fd78f1930b578daafe58ae1baac38ef91551a35869a293a61d80410ebda06c1d0 +DIST rpp-6.4.3.tar.gz 66049573 BLAKE2B cf4a31c4595e3148030a75a4c47a3bcce99002880b273fbc151948eae32639bce21126be911f18b1832d4892756b39925d79423ce455597f892fee30271f0a80 SHA512 fda88addba7a3b8ea28bcdf559a28adbf4cfd522d7071ed64c4846777a6bf1ac1143ec43719f8f83f3b948e28658a1ccbc51eccada128ddfa73aed3002506ae9 diff --git a/sci-libs/rpp/rpp-6.4.3.ebuild b/sci-libs/rpp/rpp-6.4.3.ebuild new file mode 100644 index 0000000000000..c88a9cc31903c --- /dev/null +++ b/sci-libs/rpp/rpp-6.4.3.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_VERSION=${PV} + +inherit cmake flag-o-matic rocm + +DESCRIPTION="AMD ROCm Performance Primitives (RPP) high-performance computer vision library" +HOMEPAGE="https://github.com/ROCm/rpp" +SRC_URI="https://github.com/ROCm/rpp/archive/refs/tags/rocm-${PV}.tar.gz -> rpp-${PV}.tar.gz" +S="${WORKDIR}/${PN}-rocm-${PV}" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +# pkgcheck warning: RequiredUseDefaults +REQUIRED_USE=" + cpu_flags_x86_avx2 cpu_flags_x86_fma3 cpu_flags_x86_f16c + ${ROCM_REQUIRED_USE} +" + +RDEPEND=" + dev-util/hip:${SLOT} +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-build/cmake-3.22 + >=dev-libs/half-1.12.0-r1 + test? ( + dev-cpp/gtest + media-libs/opencv:= + ) +" + +IUSE="cpu_flags_x86_avx2 cpu_flags_x86_fma3 cpu_flags_x86_f16c test" +RESTRICT="!test? ( test )" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +rcc_test_wrapper() { + local S="${WORKDIR}/${PN}-rocm-${PV}/utilities/rpp-unittests/HIP_NEW" + local CMAKE_USE_DIR="${S}" + local BUILD_DIR="${BUILD_DIR}/utilities/rpp-unittests/HIP_NEW" + cd "${S}" || die + $@ +} + +src_prepare() { + cmake_src_prepare + if use test; then + local PATCHES=() + rcc_test_wrapper cmake_src_prepare + fi +} + +src_configure() { + rocm_use_hipcc + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DGPU_TARGETS="$(get_amdgpu_flags)" + -DROCM_PATH=/usr + -DBACKEND=HIP + ) + + cmake_src_configure + + if use test; then + append-cxxflags -I"${S}/include" + append-ldflags -L"${BUILD_DIR}/lib64" + local mycmakeargs=(-DROCM_PATH=/usr) + use test && rcc_test_wrapper cmake_src_configure + fi +} + +src_compile() { + cmake_src_compile + use test && rcc_test_wrapper cmake_src_compile +} + +src_install() { + cmake_src_install + + # remove unneeded copy + rm -r "${ED}/usr/share/doc/${PF}-asan" || die +} + +src_test() { + check_amdgpu + + cd "${BUILD_DIR}"/utilities/rpp-unittests/HIP_NEW || die + for params in "0 0" "0 1" "1 1" "2 1" "5 1" "0 2" "0 3" "0 4" "0 5" "0 8"; do + LD_LIBRARY_PATH="${BUILD_DIR}"/lib64 ./uniqueFunctionalities_hip $params || die + done +}