Browse Source

Tests: Add cases for CMAKE_CUDA_ARCHITECTURES={all,all-major}

The `CudaOnly.All` test only sets these in project code after CUDA is
enabled.  Add another case to test the values during compiler detection.

Issue: #23161
Brad King 3 years ago
parent
commit
dae3ad08fa

+ 2 - 0
Tests/RunCMake/CUDA_architectures/RunCMakeTest.cmake

@@ -1,4 +1,6 @@
 include(RunCMake)
 
+run_cmake(architectures-all)
+run_cmake(architectures-all-major)
 run_cmake(architectures-empty)
 run_cmake(architectures-invalid)

+ 3 - 0
Tests/RunCMake/CUDA_architectures/architectures-all-major-stdout.txt

@@ -0,0 +1,3 @@
+-- CMAKE_CUDA_ARCHITECTURES='all-major'
+-- CMAKE_CUDA_ARCHITECTURES_ALL='[0-9;]+'
+-- CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR='[0-9;]+'

+ 5 - 0
Tests/RunCMake/CUDA_architectures/architectures-all-major.cmake

@@ -0,0 +1,5 @@
+set(CMAKE_CUDA_ARCHITECTURES "all-major")
+enable_language(CUDA)
+message(STATUS "CMAKE_CUDA_ARCHITECTURES='${CMAKE_CUDA_ARCHITECTURES}'")
+message(STATUS "CMAKE_CUDA_ARCHITECTURES_ALL='${CMAKE_CUDA_ARCHITECTURES_ALL}'")
+message(STATUS "CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR='${CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR}'")

+ 3 - 0
Tests/RunCMake/CUDA_architectures/architectures-all-stdout.txt

@@ -0,0 +1,3 @@
+-- CMAKE_CUDA_ARCHITECTURES='all'
+-- CMAKE_CUDA_ARCHITECTURES_ALL='[0-9;]+'
+-- CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR='[0-9;]+'

+ 5 - 0
Tests/RunCMake/CUDA_architectures/architectures-all.cmake

@@ -0,0 +1,5 @@
+set(CMAKE_CUDA_ARCHITECTURES "all")
+enable_language(CUDA)
+message(STATUS "CMAKE_CUDA_ARCHITECTURES='${CMAKE_CUDA_ARCHITECTURES}'")
+message(STATUS "CMAKE_CUDA_ARCHITECTURES_ALL='${CMAKE_CUDA_ARCHITECTURES_ALL}'")
+message(STATUS "CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR='${CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR}'")