Merge pull request #22137 from danopdev:issues-22126
[platform/upstream/opencv.git] / modules / ts / CMakeLists.txt
1 set(the_description "The ts module")
2
3 if(NOT BUILD_opencv_ts AND NOT BUILD_TESTS AND NOT BUILD_PERF_TESTS)
4   ocv_module_disable(ts)
5 endif()
6
7 set(OPENCV_MODULE_TYPE STATIC)
8 set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
9
10 if(WINRT)
11   # WINRT doesn't have access to environment variables
12   # so adding corresponding macros during CMake run
13   add_env_definitions(OPENCV_TEST_DATA_PATH)
14   add_env_definitions(OPENCV_PERF_VALIDATION_DIR)
15 endif()
16
17 ocv_warnings_disable(CMAKE_CXX_FLAGS -Wundef)
18
19 ocv_add_module(ts INTERNAL opencv_core opencv_imgproc opencv_imgcodecs opencv_videoio opencv_highgui)
20
21 ocv_glob_module_sources()
22 ocv_module_include_directories()
23 ocv_create_module()
24
25 # generate config file
26 set(OPENCV_TESTS_CONFIG_FILE "${CMAKE_BINARY_DIR}/opencv_tests_config.hpp")
27 set(OPENCV_TESTS_CONFIG_STR "")
28 if(CMAKE_INSTALL_PREFIX)
29   set(OPENCV_TESTS_CONFIG_STR "${OPENCV_TESTS_CONFIG_STR}
30 #define OPENCV_INSTALL_PREFIX \"${CMAKE_INSTALL_PREFIX}\"
31 ")
32 endif()
33 if(OPENCV_TEST_DATA_INSTALL_PATH)
34   set(OPENCV_TESTS_CONFIG_STR "${OPENCV_TESTS_CONFIG_STR}
35 #define OPENCV_TEST_DATA_INSTALL_PATH \"${OPENCV_TEST_DATA_INSTALL_PATH}\"
36 ")
37 endif()
38 if(EXISTS "${OPENCV_TESTS_CONFIG_FILE}")
39   file(READ "${OPENCV_TESTS_CONFIG_FILE}" __content)
40 endif()
41 if(NOT OPENCV_TESTS_CONFIG_STR STREQUAL "${__content}")
42   file(WRITE "${OPENCV_TESTS_CONFIG_FILE}" "${OPENCV_TESTS_CONFIG_STR}")
43 endif()