Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Tetragramm
GitHub Repository: Tetragramm/opencv
Path: blob/master/modules/world/CMakeLists.txt
16337 views
1
set(the_description "All OpenCV modules")
2
set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
3
set(BUILD_opencv_world_INIT OFF)
4
5
if(NOT BUILD_SHARED_LIBS)
6
set(OPENCV_MODULE_TYPE STATIC)
7
set(OPENCV_WORLD_FLAGS_PROPERTY STATIC_LIBRARY_FLAGS)
8
else()
9
set(OPENCV_WORLD_FLAGS_PROPERTY LINK_FLAGS)
10
endif()
11
12
function(include_one_module m)
13
include("${OPENCV_MODULE_${m}_LOCATION}/CMakeLists.txt")
14
foreach(var
15
CMAKE_CXX_FLAGS CMAKE_C_FLAGS # Propagate warnings settings
16
)
17
set(${var} "${${var}}" PARENT_SCOPE)
18
endforeach()
19
endfunction()
20
21
if(NOT OPENCV_INITIAL_PASS)
22
set(ENABLE_PRECOMPILED_HEADERS OFF CACHE INTERNAL "" FORCE)
23
project(opencv_world)
24
25
message(STATUS "Processing WORLD modules...")
26
foreach(m ${OPENCV_MODULES_BUILD})
27
set(the_module ${m})
28
if(OPENCV_MODULE_${m}_IS_PART_OF_WORLD)
29
message(STATUS " module ${m}...")
30
set(CMAKE_CURRENT_SOURCE_DIR "${OPENCV_MODULE_${m}_LOCATION}")
31
#add_subdirectory("${OPENCV_MODULE_${m}_LOCATION}" ${CMAKE_CURRENT_BINARY_DIR}/${m})
32
include_one_module(${m})
33
endif()
34
endforeach()
35
message(STATUS "Processing WORLD modules... DONE")
36
set(CMAKE_CURRENT_SOURCE_DIR "${OPENCV_MODULE_opencv_world_LOCATION}")
37
endif()
38
39
ocv_add_module(world opencv_core)
40
41
set(headers_list)
42
set(sources_list)
43
set(link_deps "")
44
foreach(m ${OPENCV_MODULE_${the_module}_DEPS} opencv_world)
45
if(OPENCV_MODULE_${m}_IS_PART_OF_WORLD)
46
list(APPEND headers_list ${OPENCV_MODULE_${m}_HEADERS})
47
list(APPEND sources_list ${OPENCV_MODULE_${m}_SOURCES})
48
endif()
49
if(NOT " ${OPENCV_MODULE_${m}_LINK_DEPS}" STREQUAL " ")
50
list(APPEND link_deps ${OPENCV_MODULE_${m}_LINK_DEPS})
51
endif()
52
endforeach()
53
54
ocv_glob_module_sources(HEADERS ${headers_list} SOURCES ${sources_list})
55
56
ocv_module_include_directories()
57
58
#message(STATUS "${OPENCV_MODULE_${the_module}_HEADERS}")
59
#message(STATUS "${OPENCV_MODULE_${the_module}_SOURCES}")
60
ocv_create_module(${link_deps})
61
62
ocv_target_compile_definitions(${the_module} PRIVATE OPENCV_MODULE_IS_PART_OF_WORLD=1)
63
64
if(BUILD_opencv_imgcodecs AND OPENCV_MODULE_opencv_imgcodecs_IS_PART_OF_WORLD)
65
ocv_imgcodecs_configure_target()
66
endif()
67
if(BUILD_opencv_videoio AND OPENCV_MODULE_opencv_videoio_IS_PART_OF_WORLD)
68
ocv_videoio_configure_target()
69
endif()
70
if(BUILD_opencv_highgui AND OPENCV_MODULE_opencv_highgui_IS_PART_OF_WORLD)
71
ocv_highgui_configure_target()
72
endif()
73
74