mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-08 23:00:07 -06:00
Tests/CompileFeatures: Cover CUDA default standard level
This commit is contained in:
@@ -398,8 +398,10 @@ if(BUILD_TESTING)
|
||||
set(CompileFeatures_BUILD_OPTIONS
|
||||
-DCMake_TEST_C_STANDARDS=${TEST_STDS_C}
|
||||
-DCMake_TEST_CXX_STANDARDS=${TEST_STDS_CXX}
|
||||
-DCMake_TEST_CUDA=${CMake_TEST_CUDA}
|
||||
)
|
||||
ADD_TEST_MACRO(CompileFeatures CompileFeatures)
|
||||
set_property(TEST CompileFeatures APPEND PROPERTY LABELS "CUDA")
|
||||
|
||||
ADD_TEST_MACRO(CMakeCommands.target_compile_features)
|
||||
|
||||
|
||||
@@ -298,6 +298,22 @@ if (CMAKE_CXX_COMPILE_FEATURES)
|
||||
endif()
|
||||
endif ()
|
||||
|
||||
if (CMake_TEST_CUDA
|
||||
AND CMAKE_CUDA_COMPILE_FEATURES
|
||||
AND CMAKE_CUDA_STANDARD_DEFAULT
|
||||
AND NOT CMAKE_CUDA_FLAGS MATCHES "-std=")
|
||||
add_executable(default_dialect_cuda default_dialect.cu)
|
||||
target_compile_definitions(default_dialect_cuda PRIVATE
|
||||
DEFAULT_CXX26=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},26>
|
||||
DEFAULT_CXX23=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},23>
|
||||
DEFAULT_CXX20=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},20>
|
||||
DEFAULT_CXX17=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},17>
|
||||
DEFAULT_CXX14=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},14>
|
||||
DEFAULT_CXX11=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},11>
|
||||
DEFAULT_CXX98=$<EQUAL:${CMAKE_CUDA_STANDARD_DEFAULT},03>
|
||||
)
|
||||
endif ()
|
||||
|
||||
# always add a target "CompileFeatures"
|
||||
if ((NOT CXX_expected_features) OR
|
||||
(NOT cxx_auto_type IN_LIST CXX_expected_features))
|
||||
|
||||
1
Tests/CompileFeatures/default_dialect.cu
Normal file
1
Tests/CompileFeatures/default_dialect.cu
Normal file
@@ -0,0 +1 @@
|
||||
#include "default_dialect.cpp"
|
||||
Reference in New Issue
Block a user