Files
CMake/Tests/RunCMake/CUDA_architectures/RunCMakeTest.cmake
Brad King 7bf5200699 CUDA: Restore CMAKE_CUDA_ARCHITECTURES support for -real and -virtual suffixes
Fix the validation regex added by commit c267ed205a (CUDA: Defer
architecture testing to the compiler testing step, 2022-04-25) to
allow these values.
2022-04-29 09:07:53 -04:00

28 lines
1.1 KiB
CMake

include(RunCMake)
run_cmake(architectures-all)
run_cmake(architectures-all-major)
run_cmake(architectures-native)
run_cmake(architectures-empty)
run_cmake(architectures-invalid)
run_cmake(architectures-not-set)
include("${RunCMake_BINARY_DIR}/architectures-not-set-build/info.cmake" OPTIONAL)
message(STATUS " CMAKE_CUDA_COMPILER_ID='${CMAKE_CUDA_COMPILER_ID}'")
message(STATUS " CMAKE_CUDA_COMPILER_VERSION='${CMAKE_CUDA_COMPILER_VERSION}'")
message(STATUS " CMAKE_CUDA_ARCHITECTURES='${CMAKE_CUDA_ARCHITECTURES}'")
if(CMAKE_CUDA_COMPILER_ID STREQUAL "Clang" AND CMAKE_CUDA_ARCHITECTURES)
list(GET CMAKE_CUDA_ARCHITECTURES 0 arch)
set(CMAKE_CUDA_FLAGS --cuda-gpu-arch=sm_${arch})
message(STATUS "Adding CMAKE_CUDA_FLAGS='${CMAKE_CUDA_FLAGS}' for CMAKE_CUDA_ARCHITECTURES=OFF with Clang.")
set(RunCMake_TEST_OPTIONS "-DCMAKE_CUDA_FLAGS=${CMAKE_CUDA_FLAGS}")
endif()
run_cmake(architectures-off)
unset(RunCMake_TEST_OPTIONS)
if(CMAKE_CUDA_ARCHITECTURES MATCHES "([0-9]+)")
set(arch "${CMAKE_MATCH_1}")
run_cmake_with_options(architectures-suffix -Darch=${arch})
endif()