commit: 76dc598ae5a2f447f3b9d9e69fb1499b5631c926 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> AuthorDate: Sun Nov 19 06:46:10 2023 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Thu Dec 14 14:51:04 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=76dc598a
rocm.eclass: add ROCM_SKIP_GLOBALS for the USE-flags exposure. Low level ebuilds such as dev-util/hip and dev-libs/rocm-opencl-runtime unconditionally supports all the AMDGPU cards. They do not need to define amdgpu_targets_* USE-flags. But their src_test() call check_amdgpu() to confirm an AMDGPU is available. Reference: https://marc.info/?l=gentoo-dev&m=170045497732286 Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org> eclass/rocm.eclass | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/eclass/rocm.eclass b/eclass/rocm.eclass index b78dfea1cc31..9804ecde97d0 100644 --- a/eclass/rocm.eclass +++ b/eclass/rocm.eclass @@ -125,11 +125,26 @@ _ROCM_ECLASS=1 # DEPEND="sci-libs/rocBLAS[${ROCM_USEDEP}]" # @CODE +# @ECLASS_VARIABLE: ROCM_SKIP_GLOBALS +# @DESCRIPTION: +# Controls whether _rocm_set_globals() is executed. This variable is for +# ebuilds that call check_amdgpu() without the need to define amdgpu_targets_* +# USE-flags, such as dev-util/hip and dev-libs/rocm-opencl-runtime. +# +# Example use: +# @CODE +# ROCM_SKIP_GLOBALS=1 +# inherit rocm +# @CODE + # @FUNCTION: _rocm_set_globals # @DESCRIPTION: # Set global variables useful to ebuilds: IUSE, ROCM_REQUIRED_USE, and -# ROCM_USEDEP +# ROCM_USEDEP, unless ROCM_SKIP_GLOBALS is set. + _rocm_set_globals() { + [[ -n ${ROCM_SKIP_GLOBALS} ]] && return + # Two lists of AMDGPU_TARGETS of certain ROCm version. Official support # matrix: # https://docs.amd.com/bundle/ROCm-Installation-Guide-v${ROCM_VERSION}/page/Prerequisite_Actions.html. @@ -179,7 +194,6 @@ _rocm_set_globals() { _rocm_set_globals unset -f _rocm_set_globals - # @FUNCTION: get_amdgpu_flags # @USAGE: get_amdgpu_flags # @DESCRIPTION: