From 24dbb43c096691d0333cacf231e22f1369f8c826 Mon Sep 17 00:00:00 2001 From: Alexander Alekhin Date: Tue, 22 Dec 2015 17:10:33 +0300 Subject: [PATCH] pkg-config: modules list contains only OpenCV modules (fixes #5852) --- cmake/OpenCVUtils.cmake | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/cmake/OpenCVUtils.cmake b/cmake/OpenCVUtils.cmake index 3a23cd7..75412eb 100644 --- a/cmake/OpenCVUtils.cmake +++ b/cmake/OpenCVUtils.cmake @@ -806,7 +806,13 @@ macro(ocv_get_all_libs _modules _extra _3rdparty) else() set(deps "") endif() - list(INSERT ${_modules} 0 ${deps} ${m}) + set(_rev_deps "${deps};${m}") + ocv_list_reverse(_rev_deps) + foreach (dep ${_rev_deps}) + if(DEFINED OPENCV_MODULE_${dep}_LOCATION) + list(INSERT ${_modules} 0 ${dep}) + endif() + endforeach() foreach (dep ${deps} ${OPENCV_LINKER_LIBS}) if (NOT DEFINED OPENCV_MODULE_${dep}_LOCATION) if (TARGET ${dep}) @@ -832,9 +838,6 @@ macro(ocv_get_all_libs _modules _extra _3rdparty) endif() endif() - # split 3rdparty libs and modules - list(REMOVE_ITEM ${_modules} ${${_3rdparty}} ${${_extra}} non_empty_list) - ocv_list_filterout(${_modules} "^[\$]<") ocv_list_filterout(${_3rdparty} "^[\$]<") ocv_list_filterout(${_extra} "^[\$]<")