From ba7f15b90ef46b78006e9eddca550cf55def13c9 Mon Sep 17 00:00:00 2001 From: zichguan-amd Date: Tue, 11 Nov 2025 16:53:31 -0500 Subject: [PATCH] Disable hipSPARSELt examples on unsupported architectures Signed-off-by: zichguan-amd --- Libraries/hipSPARSELt/CMakeLists.txt | 10 ++++++++++ Libraries/hipSPARSELt/spmm/CMakeLists.txt | 9 +++++++++ Libraries/hipSPARSELt/spmm_advanced/CMakeLists.txt | 9 +++++++++ 3 files changed, 28 insertions(+) diff --git a/Libraries/hipSPARSELt/CMakeLists.txt b/Libraries/hipSPARSELt/CMakeLists.txt index 62242bbe4..37f499ae1 100644 --- a/Libraries/hipSPARSELt/CMakeLists.txt +++ b/Libraries/hipSPARSELt/CMakeLists.txt @@ -27,6 +27,16 @@ include(CTest) file(RELATIVE_PATH folder_bin ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/${folder_bin}) +# see https://github.com/ROCm/rocm-libraries/blob/40bbc75960836d1b9e0573606df9dd79800e412a/projects/hipsparselt/cmake/hipsparselt_supported_architectures.cmake#L10-L21 +set(HIPSPARSELT_SUPPORTED_ARCH gfx942 gfx950) + +foreach(ARCH ${CMAKE_HIP_ARCHITECTURES}) + if(NOT ARCH IN_LIST HIPSPARSELT_SUPPORTED_ARCH) + message(STATUS "hipSPARSELt does not support architecture: ${ARCH}, not building hipSPARSELt examples") + return() + endif() +endforeach() + if(CMAKE_SYSTEM_NAME MATCHES "Windows") set(ROCM_ROOT "$ENV{HIP_PATH}" diff --git a/Libraries/hipSPARSELt/spmm/CMakeLists.txt b/Libraries/hipSPARSELt/spmm/CMakeLists.txt index ade3c6274..d5a0503aa 100644 --- a/Libraries/hipSPARSELt/spmm/CMakeLists.txt +++ b/Libraries/hipSPARSELt/spmm/CMakeLists.txt @@ -35,6 +35,15 @@ select_gpu_language() enable_language(${ROCM_EXAMPLES_GPU_LANGUAGE}) select_hip_platform() +# see https://github.com/ROCm/rocm-libraries/blob/40bbc75960836d1b9e0573606df9dd79800e412a/projects/hipsparselt/cmake/hipsparselt_supported_architectures.cmake#L10-L21 +set(HIPSPARSELT_SUPPORTED_ARCH gfx942 gfx950) + +foreach(ARCH ${CMAKE_HIP_ARCHITECTURES}) + if(NOT ARCH IN_LIST HIPSPARSELT_SUPPORTED_ARCH) + message(FATAL_ERROR "hipSPARSELt does not support architecture: ${ARCH}, not building hipSPARSELt examples") + endif() +endforeach() + if(CMAKE_SYSTEM_NAME MATCHES "Windows") set(ROCM_ROOT "$ENV{HIP_PATH}" diff --git a/Libraries/hipSPARSELt/spmm_advanced/CMakeLists.txt b/Libraries/hipSPARSELt/spmm_advanced/CMakeLists.txt index 3685fa741..8222327a0 100644 --- a/Libraries/hipSPARSELt/spmm_advanced/CMakeLists.txt +++ b/Libraries/hipSPARSELt/spmm_advanced/CMakeLists.txt @@ -35,6 +35,15 @@ select_gpu_language() enable_language(${ROCM_EXAMPLES_GPU_LANGUAGE}) select_hip_platform() +# see https://github.com/ROCm/rocm-libraries/blob/40bbc75960836d1b9e0573606df9dd79800e412a/projects/hipsparselt/cmake/hipsparselt_supported_architectures.cmake#L10-L21 +set(HIPSPARSELT_SUPPORTED_ARCH gfx942 gfx950) + +foreach(ARCH ${CMAKE_HIP_ARCHITECTURES}) + if(NOT ARCH IN_LIST HIPSPARSELT_SUPPORTED_ARCH) + message(FATAL_ERROR "hipSPARSELt does not support architecture: ${ARCH}, not building hipSPARSELt examples") + endif() +endforeach() + if(CMAKE_SYSTEM_NAME MATCHES "Windows") set(ROCM_ROOT "$ENV{HIP_PATH}"