Skip to content

Commit ead1dcf

Browse files
committed
error if cuda4dnn depends are not resolved
1 parent ff99218 commit ead1dcf

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

modules/dnn/CMakeLists.txt

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,18 @@ ocv_option(OPENCV_DNN_CUDA "Build with CUDA support"
2727
AND HAVE_CUDNN
2828
)
2929

30-
if(OPENCV_DNN_CUDA AND HAVE_CUDA AND HAVE_CUBLAS AND HAVE_CUDNN)
31-
add_definitions(-DCV_CUDA4DNN=1)
30+
if(OPENCV_DNN_CUDA)
31+
if(HAVE_CUDA AND HAVE_CUBLAS AND HAVE_CUDNN)
32+
add_definitions(-DCV_CUDA4DNN=1)
33+
else()
34+
if(NOT HAVE_CUDA)
35+
message(SEND_ERROR "DNN: CUDA backend requires CUDA Toolkit. Please resolve dependency or disable OPENCV_DNN_CUDA=OFF")
36+
elseif(NOT HAVE_CUBLAS)
37+
message(SEND_ERROR "DNN: CUDA backend requires cuBLAS. Please resolve dependency or disable OPENCV_DNN_CUDA=OFF")
38+
elseif(NOT HAVE_CUDNN)
39+
message(SEND_ERROR "DNN: CUDA backend requires cuDNN. Please resolve dependency or disable OPENCV_DNN_CUDA=OFF")
40+
endif()
41+
endif()
3242
endif()
3343

3444
ocv_cmake_hook_append(INIT_MODULE_SOURCES_opencv_dnn "${CMAKE_CURRENT_LIST_DIR}/cmake/hooks/INIT_MODULE_SOURCES_opencv_dnn.cmake")

0 commit comments

Comments
 (0)