diff --git a/cmake/OpenCVModule.cmake b/cmake/OpenCVModule.cmake index e9bd277b85..bac3fe397d 100644 --- a/cmake/OpenCVModule.cmake +++ b/cmake/OpenCVModule.cmake @@ -427,24 +427,21 @@ endmacro() # Usage: # ocv_glob_module_sources() macro(ocv_glob_module_sources) - file(GLOB_RECURSE lib_srcs "src/*.cpp") - file(GLOB_RECURSE lib_int_hdrs "src/*.hpp" "src/*.h") - file(GLOB lib_hdrs "include/opencv2/${name}/*.hpp" "include/opencv2/${name}/*.h") + file(GLOB lib_srcs "src/*.cpp") + file(GLOB lib_int_hdrs "src/*.hpp" "src/*.h") + file(GLOB lib_hdrs "include/opencv2/${name}/*.hpp" "include/opencv2/${name}/*.h") file(GLOB lib_hdrs_detail "include/opencv2/${name}/detail/*.hpp" "include/opencv2/${name}/detail/*.h") - file(GLOB_RECURSE lib_device_srcs "src/*.cu") + file(GLOB lib_device_srcs "src/cuda/*.cu") set(device_objs "") set(lib_device_hdrs "") if (HAVE_CUDA AND lib_device_srcs) ocv_include_directories(${CUDA_INCLUDE_DIRS}) - file(GLOB_RECURSE lib_device_hdrs "src/cuda/*.hpp") + file(GLOB lib_device_hdrs "src/cuda/*.hpp") - ocv_cuda_compile(device_objs ${lib_device_srcs}) + ocv_cuda_compile(device_objs ${lib_device_srcs} ${lib_device_hdrs}) source_group("Src\\Cuda" FILES ${lib_device_srcs} ${lib_device_hdrs}) - if (lib_device_hdrs) - list(REMOVE_ITEM lib_int_hdrs ${lib_device_hdrs}) - endif() endif() ocv_set_module_sources(${ARGN} HEADERS ${lib_hdrs} ${lib_hdrs_detail} @@ -462,14 +459,12 @@ endmacro() # ocv_create_module(SKIP_LINK) macro(ocv_create_module) add_library(${the_module} ${OPENCV_MODULE_TYPE} ${OPENCV_MODULE_${the_module}_HEADERS} ${OPENCV_MODULE_${the_module}_SOURCES}) - set(cuda_libs "") - - if (HAVE_CUDA) - set(cuda_libs ${CUDA_LIBRARIES} ${CUDA_npp_LIBRARY}) - endif() if(NOT "${ARGN}" STREQUAL "SKIP_LINK") - target_link_libraries(${the_module} ${OPENCV_MODULE_${the_module}_DEPS} ${OPENCV_MODULE_${the_module}_DEPS_EXT} ${OPENCV_LINKER_LIBS} ${IPP_LIBS} ${cuda_libs} ${ARGN}) + target_link_libraries(${the_module} ${OPENCV_MODULE_${the_module}_DEPS} ${OPENCV_MODULE_${the_module}_DEPS_EXT} ${OPENCV_LINKER_LIBS} ${IPP_LIBS} ${ARGN}) + if (HAVE_CUDA) + target_link_libraries(${the_module} ${CUDA_LIBRARIES} ${CUDA_npp_LIBRARY}) + endif() endif() add_dependencies(opencv_modules ${the_module})