diff --git a/Modules/Internal/CMakeCUDAArchitecturesAll.cmake b/Modules/Internal/CMakeCUDAArchitecturesAll.cmake index 97f0c0c906..5b396eeb2c 100644 --- a/Modules/Internal/CMakeCUDAArchitecturesAll.cmake +++ b/Modules/Internal/CMakeCUDAArchitecturesAll.cmake @@ -72,15 +72,16 @@ function(cmake_cuda_architectures_all lang lang_var_) endif() if(${lang_var_}TOOLKIT_VERSION VERSION_GREATER_EQUAL 12.9) - if(CMAKE_${lang}_COMPILER_ID STREQUAL "NVIDIA" - OR (CMAKE_${lang}_COMPILER_ID STREQUAL "Clang" AND CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL 16.0) - ) + if(CMAKE_${lang}_COMPILER_ID STREQUAL "NVIDIA") list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 100 101 103 120 121) list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 100 120) + elseif(CMAKE_${lang}_COMPILER_ID STREQUAL "Clang" AND CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL 20.1) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 100 101 120) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 100 120) endif() elseif(${lang_var_}TOOLKIT_VERSION VERSION_GREATER_EQUAL 12.8) if(CMAKE_${lang}_COMPILER_ID STREQUAL "NVIDIA" - OR (CMAKE_${lang}_COMPILER_ID STREQUAL "Clang" AND CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL 16.0) + OR (CMAKE_${lang}_COMPILER_ID STREQUAL "Clang" AND CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL 20.1) ) list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 100 101 120) list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 100 120)