Toolchain packages for ROCm are all in gentoo and math libraries are ready. Those math libs have many common build configurations like adding AMDGPU_TARGETS and __skip_rocmclang as well as sharing dependencies. It would be much better to have a eclass to simplify those ebuilds. Reproducible: Always
(In reply to Wu Yiyang from comment #0) > Toolchain packages for ROCm are all in gentoo and math libraries are ready. > Those math libs have many common build configurations like adding > AMDGPU_TARGETS and __skip_rocmclang as well as sharing dependencies. It > would be much better to have a eclass to simplify those ebuilds. > > Reproducible: Always Good idea. Please go ahead and draft a rocm.eclass. It can be modeled after cuda.eclass. Assigning to the science team.
to also filter +fcf-protection* from the useflags
CFLAGS sorry
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf8a6a845b68b578772f2ae0d2703f203c6dec33 commit cf8a6a845b68b578772f2ae0d2703f203c6dec33 Author: Yiyang Wu <xgreenlandforwyy@gmail.com> AuthorDate: 2022-07-04 02:59:07 +0000 Commit: Benda Xu <heroxbd@gentoo.org> CommitDate: 2022-09-12 09:26:42 +0000 rocm.eclass: new eclass This eclass provides utilities for ROCm libraries in https://github.com/ROCmSoftwarePlatform, e.g. rocBLAS, rocFFT. It contains a USE_EXPAND, amdgpu_targets_*, which handles the GPU architecture to compile, and keep targets coherent among dependencies. Packages that depend on ROCm libraries, like cupy, can also make use of this eclass, mainly specify GPU architecture and it's corresponding dependencies via USE_EXPAND. Closes: https://github.com/gentoo/gentoo/pull/26784 Closes: https://bugs.gentoo.org/810619 Bug: https://bugs.gentoo.org/817440 Reference: https://archives.gentoo.org/gentoo-dev/message/49b17ca059187a4b5d983a9500507158 Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com> Signed-off-by: Benda Xu <heroxbd@gentoo.org> eclass/rocm.eclass | 223 ++++++++++++++++++++++++++++++++++++++++++++ profiles/base/make.defaults | 2 +- 2 files changed, 224 insertions(+), 1 deletion(-)