Home | History | Annotate | Download | only in test
      1 set(test_deps opencv_cudev opencv_core opencv_imgproc opencv_imgcodecs opencv_videoio opencv_highgui opencv_ts ${OPENCV_MODULE_opencv_ts_DEPS})
      2 
      3 ocv_check_dependencies(${test_deps})
      4 
      5 if(OCV_DEPENDENCIES_FOUND)
      6   set(the_target "opencv_test_${name}")
      7 
      8   ocv_module_include_directories("${test_deps}" "${the_module}")
      9 
     10   file(GLOB test_srcs "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/*.cu")
     11   file(GLOB test_hdrs "${CMAKE_CURRENT_SOURCE_DIR}/*.hpp")
     12   source_group("Src" FILES ${test_srcs})
     13   source_group("Include" FILES ${test_hdrs})
     14   set(OPENCV_TEST_${the_module}_SOURCES ${test_srcs} ${test_hdrs})
     15 
     16   foreach(var CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_DEBUG)
     17     # we remove /EHa as it generates warnings under windows
     18     string(REPLACE "/EHa" "" ${var} "${${var}}")
     19 
     20     # we remove -ggdb3 flag as it leads to preprocessor errors when compiling CUDA files (CUDA 4.1)
     21     string(REPLACE "-ggdb3" "" ${var} "${${var}}")
     22 
     23     # we remove -Wsign-promo as it generates warnings under linux
     24     string(REPLACE "-Wsign-promo" "" ${var} "${${var}}")
     25 
     26     # we remove -fvisibility-inlines-hidden because it's used for C++ compiler
     27     # but NVCC uses C compiler by default
     28     string(REPLACE "-fvisibility-inlines-hidden" "" ${var} "${${var}}")
     29   endforeach()
     30 
     31   CUDA_ADD_EXECUTABLE(${the_target} ${OPENCV_TEST_${the_module}_SOURCES})
     32   ocv_target_link_libraries(${the_target} ${test_deps} ${OPENCV_LINKER_LIBS} ${CUDA_LIBRARIES})
     33   add_dependencies(opencv_tests ${the_target})
     34 
     35   # Additional target properties
     36   set_target_properties(${the_target} PROPERTIES
     37     DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}"
     38     RUNTIME_OUTPUT_DIRECTORY "${EXECUTABLE_OUTPUT_PATH}"
     39   )
     40 
     41   if(ENABLE_SOLUTION_FOLDERS)
     42     set_target_properties(${the_target} PROPERTIES FOLDER "tests accuracy")
     43   endif()
     44 
     45   enable_testing()
     46   get_target_property(LOC ${the_target} LOCATION)
     47   add_test(${the_target} "${LOC}")
     48 endif()
     49