cmake: support OPENCV_ABI_SKIP_MODULES_LIST
authorAlexander Alekhin <alexander.alekhin@intel.com>
Mon, 13 Jan 2020 14:09:24 +0000 (17:09 +0300)
committerAlexander Alekhin <alexander.alekhin@intel.com>
Mon, 27 Jan 2020 11:40:48 +0000 (14:40 +0300)
backporting of commit f163778da7132304ad9f1bf3f3743660042ba406

cmake/OpenCVGenABI.cmake

index 4aaa16a..57905a2 100644 (file)
@@ -2,6 +2,8 @@ if (NOT GENERATE_ABI_DESCRIPTOR)
   return()
 endif()
 
+set(OPENCV_ABI_SKIP_MODULES_LIST "" CACHE STRING "List of modules to exclude from ABI checker")
+
 set(filename "opencv_abi.xml")
 set(path1 "${CMAKE_BINARY_DIR}/${filename}")
 
@@ -28,6 +30,7 @@ foreach(mod ${OPENCV_MODULES_BUILD})
   string(REGEX REPLACE "^opencv_" "" mod "${mod}")
   if(NOT OPENCV_MODULE_opencv_${mod}_CLASS STREQUAL "PUBLIC"
       OR NOT "${OPENCV_MODULE_opencv_${mod}_LOCATION}" STREQUAL "${OpenCV_SOURCE_DIR}/modules/${mod}" # opencv_contrib
+      OR ";${mod};" MATCHES ";${OPENCV_ABI_SKIP_MODULES_LIST};"
   )
     # headers
     foreach(h ${OPENCV_MODULE_opencv_${mod}_HEADERS})