|
|
|
@ -421,6 +421,41 @@ function(__ocv_resolve_dependencies) |
|
|
|
|
set(HAVE_${m} ON CACHE INTERNAL "Module ${m} will be built in current configuration") |
|
|
|
|
endforeach() |
|
|
|
|
|
|
|
|
|
# Whitelist feature |
|
|
|
|
if(BUILD_LIST) |
|
|
|
|
# Prepare the list |
|
|
|
|
string(REGEX REPLACE "[ ,:]+" ";" whitelist "${BUILD_LIST}" ) |
|
|
|
|
if(BUILD_opencv_world) |
|
|
|
|
list(APPEND whitelist world) |
|
|
|
|
endif() |
|
|
|
|
ocv_list_add_prefix(whitelist "opencv_") |
|
|
|
|
ocv_list_sort(whitelist) |
|
|
|
|
ocv_list_unique(whitelist) |
|
|
|
|
message(STATUS "Using whitelist: ${whitelist}") |
|
|
|
|
# Expand the list |
|
|
|
|
foreach(depth RANGE 10) |
|
|
|
|
set(new_whitelist ${whitelist}) |
|
|
|
|
foreach(m ${whitelist}) |
|
|
|
|
list(APPEND new_whitelist ${OPENCV_MODULE_${m}_REQ_DEPS}) |
|
|
|
|
list(APPEND new_whitelist ${OPENCV_MODULE_${m}_PRIVATE_REQ_DEPS}) |
|
|
|
|
endforeach() |
|
|
|
|
ocv_list_sort(new_whitelist) |
|
|
|
|
ocv_list_unique(new_whitelist) |
|
|
|
|
if("${whitelist}" STREQUAL "${new_whitelist}") |
|
|
|
|
break() |
|
|
|
|
endif() |
|
|
|
|
set(whitelist "${new_whitelist}") |
|
|
|
|
endforeach() |
|
|
|
|
# Disable modules not in whitelist |
|
|
|
|
foreach(m ${OPENCV_MODULES_BUILD}) |
|
|
|
|
list(FIND whitelist ${m} idx) |
|
|
|
|
if(idx EQUAL -1) |
|
|
|
|
message(STATUS "Module ${m} disabled by whitelist") |
|
|
|
|
__ocv_module_turn_off(${m}) |
|
|
|
|
endif() |
|
|
|
|
endforeach() |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
# disable MODULES with unresolved dependencies |
|
|
|
|
set(has_changes ON) |
|
|
|
|
while(has_changes) |
|
|
|
|