@@ -1149,31 +1149,41 @@ MACRO(COVISE_USE_OPENMP target)
11491149ENDMACRO (COVISE_USE_OPENMP )
11501150
11511151MACRO (COVISE_FIND_CUDA )
1152- IF (COVISE_USE_CUDA)
1153- include (CheckLanguage )
1154- check_language (CUDA )
1155- covise_find_package (CUDAToolkit )
1156- ENDIF (COVISE_USE_CUDA )
1157- IF ((CMAKE_CUDA_COMPILER OR CUDAToolkit_NVCC_EXECUTABLE) AND CUDAToolkit_FOUND AND COVISE_USE_CUDA)
1152+ IF (COVISE_USE_CUDA)
1153+ include (CheckLanguage )
1154+ check_language (CUDA )
1155+
1156+ covise_find_package (CUDAToolkit )
1157+ if (CUDAToolkit_FOUND)
1158+ if (CUDAToolkit_NVCC_EXECUTABLE AND NOT CMAKE_CUDA_COMPILER)
1159+ set (CMAKE_CUDA_COMPILER
1160+ ${CUDAToolkit_NVCC_EXECUTABLE}
1161+ CACHE FILEPATH "CUDA compiler" FORCE )
1162+ endif ()
1163+
1164+ if (NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
1165+ if (CUDAToolkit_VERSION_MAJOR GREATER 12)
1166+ set (CMAKE_CUDA_ARCHITECTURES 75)
1167+ else ()
1168+ set (CMAKE_CUDA_ARCHITECTURES 60)
1169+ endif ()
1170+ endif ()
1171+ endif ()
1172+
1173+ if (CMAKE_CUDA_COMPILER)
11581174 enable_language (CUDA )
11591175 ADD_DEFINITIONS (-DHAVE_CUDA )
11601176 set (CUDA_FOUND TRUE )
11611177 set (CUDA_PROPAGATE_HOST_FLAGS ON )
11621178 if (NOT WIN32 )
1163- if ((CMAKE_BUILD_TYPE STREQUAL "Debug" ) OR (CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" ))
1164- set (CUDA_NVCC_FLAGS "-g ${CUDA_NVCC_FLAGS} " )
1165- endif ()
1179+ if ((CMAKE_BUILD_TYPE STREQUAL "Debug" ) OR (CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" ))
1180+ set (CUDA_NVCC_FLAGS "-g ${CUDA_NVCC_FLAGS} " )
1181+ endif ()
11661182 endif ()
11671183 covise_find_package (CCCL CONFIG )
1168- ENDIF ()
1184+ endif ()
11691185
1170- if (NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
1171- if (CUDAToolkit_VERSION_MAJOR GREATER 12)
1172- set (CMAKE_CUDA_ARCHITECTURES 75)
1173- else ()
1174- set (CMAKE_CUDA_ARCHITECTURES 60)
1175- endif ()
1176- endif ()
1186+ ENDIF (COVISE_USE_CUDA )
11771187ENDMACRO (COVISE_FIND_CUDA )
11781188
11791189MACRO (COVISE_FIND_BOOST )
0 commit comments