summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler/CMakeCommonCompilerMacros.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/Compiler/CMakeCommonCompilerMacros.cmake')
-rw-r--r--Modules/Compiler/CMakeCommonCompilerMacros.cmake44
1 files changed, 44 insertions, 0 deletions
diff --git a/Modules/Compiler/CMakeCommonCompilerMacros.cmake b/Modules/Compiler/CMakeCommonCompilerMacros.cmake
index 96537f8..409b65a 100644
--- a/Modules/Compiler/CMakeCommonCompilerMacros.cmake
+++ b/Modules/Compiler/CMakeCommonCompilerMacros.cmake
@@ -134,3 +134,47 @@ macro(cmake_record_cxx_compile_features)
unset(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT)
endif()
endmacro()
+
+macro(cmake_record_cuda_compile_features)
+ set(_result 0)
+ if(_result EQUAL 0 AND DEFINED CMAKE_CUDA20_STANDARD_COMPILE_OPTION)
+ if(CMAKE_CUDA20_STANDARD__HAS_FULL_SUPPORT)
+ _has_compiler_features_cuda(20)
+ else()
+ _record_compiler_features_cuda(20)
+ endif()
+ unset(CMAKE_CUDA20_STANDARD__HAS_FULL_SUPPORT)
+ endif()
+ if(_result EQUAL 0 AND DEFINED CMAKE_CUDA17_STANDARD_COMPILE_OPTION)
+ if(CMAKE_CUDA17_STANDARD__HAS_FULL_SUPPORT)
+ _has_compiler_features_cuda(17)
+ else()
+ _record_compiler_features_cuda(17)
+ endif()
+ unset(CMAKE_CUDA17_STANDARD__HAS_FULL_SUPPORT)
+ endif()
+ if(_result EQUAL 0 AND DEFINED CMAKE_CUDA14_STANDARD_COMPILE_OPTION)
+ if(CMAKE_CUDA14_STANDARD__HAS_FULL_SUPPORT)
+ _has_compiler_features_cuda(14)
+ else()
+ _record_compiler_features_cuda(14)
+ endif()
+ unset(CMAKE_CUDA14_STANDARD__HAS_FULL_SUPPORT)
+ endif()
+ if(_result EQUAL 0 AND DEFINED CMAKE_CUDA11_STANDARD_COMPILE_OPTION)
+ if(CMAKE_CUDA11_STANDARD__HAS_FULL_SUPPORT)
+ _has_compiler_features_cuda(11)
+ else()
+ _record_compiler_features_cuda(11)
+ endif()
+ unset(CMAKE_CUDA11_STANDARD__HAS_FULL_SUPPORT)
+ endif()
+ if(_result EQUAL 0 AND DEFINED CMAKE_CUDA03_STANDARD_COMPILE_OPTION)
+ if(CMAKE_CUDA03_STANDARD__HAS_FULL_SUPPORT)
+ _has_compiler_features_cuda(03)
+ else()
+ _record_compiler_features_cuda(03)
+ endif()
+ unset(CMAKE_CUDA03_STANDARD__HAS_FULL_SUPPORT)
+ endif()
+endmacro()