set_target_properties(${OPENCV_PLUGIN_NAME} PROPERTIES PREFIX "${OPENCV_PLUGIN_MODULE_PREFIX}")
endif()
- if(APPLE)
- set_target_properties(${OPENCV_PLUGIN_NAME} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
- elseif(WIN32)
- # Hack for Windows only, Linux/MacOS uses global symbol table (without exact .so binding)
+ if(WIN32 OR NOT APPLE)
+ set(OPENCV_PLUGIN_NO_LINK FALSE CACHE BOOL "")
+ else()
+ set(OPENCV_PLUGIN_NO_LINK TRUE CACHE BOOL "")
+ endif()
+
+ if(OPENCV_PLUGIN_NO_LINK)
+ if(APPLE)
+ set_target_properties(${OPENCV_PLUGIN_NAME} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
+ endif()
+ else()
find_package(OpenCV REQUIRED ${module} ${OPENCV_PLUGIN_DEPS})
target_link_libraries(${OPENCV_PLUGIN_NAME} PRIVATE ${OpenCV_LIBRARIES})
endif()