commit: b2746b5e607d6cabd6c836d1a8a8ba54040c7ee4 Author: Sv. Lockal <lockalsash <AT> gmail <DOT> com> AuthorDate: Wed Jun 11 06:51:46 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Jun 14 22:37:10 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2746b5e
sci-libs/hipSPARSE: add 6.4.1 Signed-off-by: Sv. Lockal <lockalsash <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/42554 Signed-off-by: Sam James <sam <AT> gentoo.org> sci-libs/hipSPARSE/Manifest | 1 + sci-libs/hipSPARSE/hipSPARSE-6.4.1.ebuild | 98 +++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) diff --git a/sci-libs/hipSPARSE/Manifest b/sci-libs/hipSPARSE/Manifest index 8c76dd878a5c..a1bf206cb5ac 100644 --- a/sci-libs/hipSPARSE/Manifest +++ b/sci-libs/hipSPARSE/Manifest @@ -1,6 +1,7 @@ DIST hipSPARSE-5.7.tar.gz 458521 BLAKE2B 94695ef3cf4294f571723e31ab5d4295b5aaa24528e90838375ee8477cf0957b297663d80e5fe3406762b475b6ef4741f9ccfb4dfb1448ce71ea4014da14b46e SHA512 bb28cd81b7ec298eb2e6462a8588ed93eee7b4892923b11087a91d1c32341f29f488fd4e6797debe51a989f463db31030eae02d07be6512d6b755367ba221aac 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 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.1.ebuild b/sci-libs/hipSPARSE/hipSPARSE-6.4.1.ebuild new file mode 100644 index 000000000000..ad4782886abb --- /dev/null +++ b/sci-libs/hipSPARSE/hipSPARSE-6.4.1.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 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 ) +" + +src_prepare() { + # include <filesystem> issue - https://github.com/ROCm/hipSPARSE/issues/555 + sed -e "s/CMAKE_CXX_STANDARD 14/CMAKE_CXX_STANDARD 17/" -i CMakeLists.txt clients/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 +}
