aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Sinigardi <stesinigardi@hotmail.com>2019-08-12 18:22:30 +0200
committerVictor Romero <romerosanchezv@gmail.com>2019-08-12 09:22:30 -0700
commit4fb51523e91e7a98150e3810241b83757a8d2706 (patch)
treeedcacc3aef4c1559857a110d4d162058abb955a0
parentfffcd0a5ae21d0b7ae0c8cdbd7bd1210f5a29031 (diff)
downloadvcpkg-4fb51523e91e7a98150e3810241b83757a8d2706.tar.gz
vcpkg-4fb51523e91e7a98150e3810241b83757a8d2706.zip
[OpenCV] Update to v4.1.1 (#5169)
* [OpenCV] update to v4 * [OpenCV] update to v4.1 * [OpenCV] merge #6901 and #6812 * [OpenCV] port patches to v4.1 * [OpenCV] fix naming * [OpenCV] fix regression with static linkage * [OpenCV] fix linking to optional feature dependencies in static mode * fix ffmpeg on some architectures * trigger rebuild of regressions on macOS * [zxing-cpp] fix opencv 4.1 compat * [ogre] improve patching for static builds * [OpenCV] fixes for extra features * [OpenCV] drastically reduce patchset * [OpenCV] fix regression on linux * [OpenCV] fix regression on Windows * [qt5] depends on qt5-activeqt only on windows * update to v4.1.1 * [OpenCV] additional fixes for 4.1.1 * [OpenCV] fix Eigen3 feature integration * [opencv] Fix compilation in UWP * [opencv] Fix merge conflicts * [ffmpeg] fix cmake module for osx * [OpenCV] add pre-caching of optflow cuda package * [gdcm] properly fix #6863 instead of wrong #6901 * [OpenCV] fix OpenMP feature * [opencv] Add missing GetModuleHandle() call guard for UWP * [freeimage] Do not depend on libwebp[all] on UWP * [opencv] Set app container bit for UWP * [zxing-cpp] Fail with explicit message in UWP * [pthreads4w] fix target creation, missing dlls * [pthreads4w] bump CONTROL * [opencv,zxing-cpp] Fix OpenCV Video IO module * [zxing-cpp] Revert unnecessary changes * [opencv] Feature halide * Fix regression in UWP * [ffmpeg] remove unnecessary patch pointing to old OpenCV version * [opencv] remove versioning from windows dll filenames * [opencv] Move port to opencv4 * [opencv,opencv4] Make meta-package install OpenCV 4.1 * [opencv3] Rename old port opencv->opencv3 * Add failure messages when another OpenCV is already installed
-rw-r--r--ports/ffmpeg/FindFFMPEG.cmake44
-rw-r--r--ports/ffmpeg/configure_opencv.patch11
-rw-r--r--ports/ffmpeg/portfile.cmake1
-rw-r--r--ports/freeimage/CONTROL4
-rw-r--r--ports/gdcm/CONTROL2
-rw-r--r--ports/gdcm/portfile.cmake6
-rw-r--r--ports/ogre/CONTROL5
-rw-r--r--ports/ogre/portfile.cmake15
-rw-r--r--ports/ogre/toolchain_fixes.patch200
-rw-r--r--ports/opencv/CONTROL110
-rw-r--r--ports/opencv/portfile.cmake423
-rw-r--r--ports/opencv3/0001-winrt-fixes.patch (renamed from ports/opencv/0001-winrt-fixes.patch)0
-rw-r--r--ports/opencv3/0002-install-options.patch (renamed from ports/opencv/0002-install-options.patch)0
-rw-r--r--ports/opencv3/0003-disable-downloading.patch (renamed from ports/opencv/0003-disable-downloading.patch)0
-rw-r--r--ports/opencv3/0004-use-find-package-required.patch (renamed from ports/opencv/0004-use-find-package-required.patch)0
-rw-r--r--ports/opencv3/0005-remove-custom-protobuf-find-package.patch (renamed from ports/opencv/0005-remove-custom-protobuf-find-package.patch)0
-rw-r--r--ports/opencv3/0006-fix-missing-openjp2.patch (renamed from ports/opencv/0006-fix-missing-openjp2.patch)0
-rw-r--r--ports/opencv3/CONTROL93
-rw-r--r--ports/opencv3/portfile.cmake423
-rw-r--r--ports/opencv3/usage (renamed from ports/opencv/usage)0
-rw-r--r--ports/opencv4/0001-disable-downloading.patch11
-rw-r--r--ports/opencv4/0002-install-options.patch69
-rw-r--r--ports/opencv4/0003-force-package-requirements.patch128
-rw-r--r--ports/opencv4/0009-fix-uwp.patch57
-rw-r--r--ports/opencv4/CONTROL96
-rw-r--r--ports/opencv4/portfile.cmake378
-rw-r--r--ports/pthreads/CONTROL2
-rw-r--r--ports/pthreads/vcpkg-cmake-wrapper.cmake19
-rw-r--r--ports/qt5/CONTROL2
-rw-r--r--ports/zxing-cpp/0001-opencv4-compat.patch15
-rw-r--r--ports/zxing-cpp/CONTROL2
31 files changed, 1521 insertions, 595 deletions
diff --git a/ports/ffmpeg/FindFFMPEG.cmake b/ports/ffmpeg/FindFFMPEG.cmake
index 65ab59e90..b3c187340 100644
--- a/ports/ffmpeg/FindFFMPEG.cmake
+++ b/ports/ffmpeg/FindFFMPEG.cmake
@@ -35,6 +35,8 @@ include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake)
include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake)
include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake)
+set(FFMPEG_VERSION "4.1")
+
find_dependency(Threads)
#list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS Threads::Threads)
if(UNIX)
@@ -83,7 +85,7 @@ macro(FFMPEG_FIND_GENEX varname shortname headername)
set(FFMPEG_${varname}_FOUND 1)
list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR})
endif()
-endmacro(FFMPEG_FIND)
+endmacro(FFMPEG_FIND_GENEX)
if(WIN32)
if(NOT FFMPEG_${varname}_INCLUDE_DIRS)
@@ -92,8 +94,39 @@ if(WIN32)
if (FFMPEG_stdint_INCLUDE_DIRS)
set(STDINT_OK TRUE)
endif()
+ FFMPEG_FIND_GENEX(libzlib zlib zlib.h)
else()
set(STDINT_OK TRUE)
+ FFMPEG_FIND_GENEX(libzlib z zlib.h)
+endif()
+
+if(APPLE)
+ find_library(VT_UNIT VideoToolbox)
+ if (NOT VT_UNIT)
+ message(FATAL_ERROR "VideoToolbox not found")
+ endif()
+ find_library(AT_UNIT AudioToolbox)
+ if (NOT AT_UNIT)
+ message(FATAL_ERROR "AudioToolbox not found")
+ endif()
+ find_library(SEC_UNIT Security)
+ if (NOT SEC_UNIT)
+ message(FATAL_ERROR "Security not found")
+ endif()
+ find_library(CF_UNIT CoreFoundation)
+ if (NOT CF_UNIT)
+ message(FATAL_ERROR "CoreFoundation not found")
+ endif()
+ find_library(CM_UNIT CoreMedia)
+ if (NOT CM_UNIT)
+ message(FATAL_ERROR "CoreMedia not found")
+ endif()
+ find_library(CV_UNIT CoreVideo)
+ if (NOT CV_UNIT)
+ message(FATAL_ERROR "CoreVideo not found")
+ endif()
+ find_package(Iconv QUIET)
+ list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS ${VT_UNIT} ${AT_UNIT} ${SEC_UNIT} ${CF_UNIT} ${CM_UNIT} ${CV_UNIT} ${Iconv_LIBRARIES})
endif()
FFMPEG_FIND(libavcodec avcodec avcodec.h)
@@ -103,13 +136,20 @@ FFMPEG_FIND(libavformat avformat avformat.h)
FFMPEG_FIND(libavutil avutil avutil.h)
FFMPEG_FIND(libswresample swresample swresample.h)
FFMPEG_FIND(libswscale swscale swscale.h)
-FFMPEG_FIND_GENEX(libzlib zlib zlib.h)
if (FFMPEG_libavcodec_FOUND AND FFMPEG_libavdevice_FOUND AND FFMPEG_libavfilter_FOUND AND FFMPEG_libavformat_FOUND AND FFMPEG_libavutil_FOUND AND FFMPEG_libswresample_FOUND AND FFMPEG_libswscale_FOUND AND FFMPEG_libzlib_FOUND AND STDINT_OK)
list(APPEND FFMPEG_INCLUDE_DIRS ${FFMPEG_libavformat_INCLUDE_DIRS} ${FFMPEG_libavdevice_INCLUDE_DIRS} ${FFMPEG_libavcodec_INCLUDE_DIRS} ${FFMPEG_libavutil_INCLUDE_DIRS} ${FFMPEG_libswscale_INCLUDE_DIRS} ${FFMPEG_stdint_INCLUDE_DIRS})
list(REMOVE_DUPLICATES FFMPEG_INCLUDE_DIRS)
list(REMOVE_DUPLICATES FFMPEG_LIBRARY_DIRS)
+ set(FFMPEG_libavformat_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libavdevice_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libavcodec_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libavutil_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libswscale_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libavfilter_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+ set(FFMPEG_libswresample_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
+
list(APPEND FFMPEG_LIBRARIES
${FFMPEG_libavformat_LIBRARY}
${FFMPEG_libavdevice_LIBRARY}
diff --git a/ports/ffmpeg/configure_opencv.patch b/ports/ffmpeg/configure_opencv.patch
deleted file mode 100644
index ac5c82797..000000000
--- a/ports/ffmpeg/configure_opencv.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/configure
-+++ b/configure
-@@ -6110,7 +6110,7 @@ enabled libopencore_amrnb && require libopencore_amrnb opencore-amrnb/interf_dec
- enabled libopencore_amrwb && require libopencore_amrwb opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb
- enabled libopencv && { check_headers opencv2/core/core_c.h &&
- { check_pkg_config libopencv opencv opencv2/core/core_c.h cvCreateImageHeader ||
-- require libopencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } ||
-+ require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core341 -lopencv_imgproc341; } ||
- require_pkg_config libopencv opencv opencv/cxcore.h cvCreateImageHeader; }
- enabled libopenh264 && require_pkg_config libopenh264 openh264 wels/codec_api.h WelsGetCodecVersion
- enabled libopenjpeg && { check_pkg_config libopenjpeg "libopenjp2 >= 2.1.0" openjpeg.h opj_version ||
diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake
index 7309bd544..ea69db42f 100644
--- a/ports/ffmpeg/portfile.cmake
+++ b/ports/ffmpeg/portfile.cmake
@@ -12,7 +12,6 @@ vcpkg_extract_source_archive_ex(
PATCHES
create-lib-libraries.patch
detect-openssl.patch
- configure_opencv.patch
fix_windowsinclude-in-ffmpegexe-1.patch
fix_windowsinclude-in-ffmpegexe-2.patch
fix_libvpx_windows_linking.patch
diff --git a/ports/freeimage/CONTROL b/ports/freeimage/CONTROL
index 9d9a006c6..c911df6c7 100644
--- a/ports/freeimage/CONTROL
+++ b/ports/freeimage/CONTROL
@@ -1,5 +1,5 @@
Source: freeimage
-Version: 3.18.0-6
-Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all], libraw, jxrlib, openexr
+Version: 3.18.0-7
+Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all] (!uwp), libraw, jxrlib, openexr
Homepage: https://sourceforge.net/projects/freeimage/
Description: Support library for graphics image formats
diff --git a/ports/gdcm/CONTROL b/ports/gdcm/CONTROL
index 32a962eb4..3b49ddec4 100644
--- a/ports/gdcm/CONTROL
+++ b/ports/gdcm/CONTROL
@@ -1,4 +1,4 @@
Source: gdcm
-Version: 3.0.0-3
+Version: 3.0.0-4
Description: Grassroots DICOM library
Build-Depends: zlib, expat, openjpeg
diff --git a/ports/gdcm/portfile.cmake b/ports/gdcm/portfile.cmake
index 36a3e0e1f..b5e825a37 100644
--- a/ports/gdcm/portfile.cmake
+++ b/ports/gdcm/portfile.cmake
@@ -43,6 +43,12 @@ file(REMOVE_RECURSE
${CURRENT_PACKAGES_DIR}/debug/share
)
+file(READ ${CURRENT_PACKAGES_DIR}/share/gdcm/GDCMTargets.cmake GDCM_TARGETS)
+string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
+ "set(CMAKE_IMPORT_FILE_VERSION 1)
+find_package(OpenJPEG QUIET)" GDCM_TARGETS "${GDCM_TARGETS}")
+file(WRITE ${CURRENT_PACKAGES_DIR}/share/gdcm/GDCMTargets.cmake "${GDCM_TARGETS}")
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
diff --git a/ports/ogre/CONTROL b/ports/ogre/CONTROL
index d7a4dd3f5..2d870641e 100644
--- a/ports/ogre/CONTROL
+++ b/ports/ogre/CONTROL
@@ -1,5 +1,5 @@
Source: ogre
-Version: 1.12.0-1
+Version: 1.12.0-2
Build-Depends: freeimage, freetype, zlib, zziplib
Homepage: https://github.com/OGRECave/ogre
Description: 3D Object-Oriented Graphics Rendering Engine
@@ -7,6 +7,9 @@ Description: 3D Object-Oriented Graphics Rendering Engine
Feature: d3d9
Description: Build Direct3D9 RenderSystem
+Feature: csharp
+Description: Build csharp bindings
+
Feature: java
Description: Build Java (JNI) bindings
diff --git a/ports/ogre/portfile.cmake b/ports/ogre/portfile.cmake
index 04b4fe608..9f21e1f53 100644
--- a/ports/ogre/portfile.cmake
+++ b/ports/ogre/portfile.cmake
@@ -1,5 +1,9 @@
include(vcpkg_common_functions)
+if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ message("${PORT} currently requires the following library from the system package manager:\n Xaw\n\nIt can be installed on Ubuntu systems via apt-get install libxaw7-dev")
+endif()
+
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO OGRECave/ogre
@@ -38,6 +42,12 @@ else()
set(WITH_PYTHON OFF)
endif()
+if("csharp" IN_LIST FEATURES)
+ set(WITH_CSHARP ON)
+else()
+ set(WITH_CSHARP OFF)
+endif()
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
@@ -65,6 +75,7 @@ vcpkg_configure_cmake(
# Optional stuff
-DOGRE_BUILD_COMPONENT_JAVA=${WITH_JAVA}
-DOGRE_BUILD_COMPONENT_PYTHON=${WITH_PYTHON}
+ -DOGRE_BUILD_COMPONENT_CSHARP=${WITH_CSHARP}
-DOGRE_BUILD_RENDERSYSTEM_D3D9=${WITH_D3D9}
# vcpkg specific stuff
-DOGRE_CMAKE_DIR=share/ogre
@@ -92,7 +103,9 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
-if(NOT VCPKG_CMAKE_SYSTEM_NAME)
+#Remove OgreMain*.lib from lib/ folder, because autolink would complain, since it defines a main symbol
+#manual-link subfolder is here to the rescue!
+if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "Release")
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
diff --git a/ports/ogre/toolchain_fixes.patch b/ports/ogre/toolchain_fixes.patch
index 1af384bdf..22b2e69c7 100644
--- a/ports/ogre/toolchain_fixes.patch
+++ b/ports/ogre/toolchain_fixes.patch
@@ -1,45 +1,88 @@
diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt
-index a7a3796..2e21403 100755
+index a7a3796..7e41f57 100755
--- a/CMake/CMakeLists.txt
+++ b/CMake/CMakeLists.txt
-@@ -13,10 +13,12 @@
+@@ -13,13 +13,15 @@
# directory, but can also be used for custom projects.
#############################################################
--if(WIN32 OR APPLE)
-- set(OGRE_CMAKE_DIR "CMake")
--else()
-- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
+if(NOT DEFINED OGRE_CMAKE_DIR)
-+ if(WIN32 OR APPLE)
-+ set(OGRE_CMAKE_DIR "CMake")
-+ else()
-+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
-+ endif()
+ if(WIN32 OR APPLE)
+ set(OGRE_CMAKE_DIR "CMake")
+ else()
+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
endif()
++endif()
+
+-set(INST_FILES Utils/FindPkgMacros.cmake)
++set(INST_FILES Utils/FindPkgMacros.cmake)
- set(INST_FILES Utils/FindPkgMacros.cmake)
+ if (OGRE_CONFIG_THREAD_PROVIDER STREQUAL "poco")
+ set(INST_FILES ${INST_FILES} Packages/FindPOCO.cmake)
+diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake
+index 26c384f..131e238 100644
+--- a/CMake/ConfigureBuild.cmake
++++ b/CMake/ConfigureBuild.cmake
+@@ -68,7 +68,7 @@ if (OGRE_CONFIG_THREADS)
+
+ endif()
+
+-set(OGRE_ASSERT_MODE 1 CACHE STRING
++set(OGRE_ASSERT_MODE 1 CACHE STRING
+ "Enable Ogre asserts and exceptions. Possible values:
+ 0 - Standard asserts in debug builds, nothing in release builds.
+ 1 - Standard asserts in debug builds, exceptions in release builds.
+@@ -197,7 +197,7 @@ if (UNIX)
+ configure_file(${OGRE_TEMPLATES_DIR}/OGRE-MeshLodGenerator.pc.in ${PROJECT_BINARY_DIR}/pkgconfig/OGRE-MeshLodGenerator.pc @ONLY)
+ install(FILES ${PROJECT_BINARY_DIR}/pkgconfig/OGRE-MeshLodGenerator.pc DESTINATION ${OGRE_LIB_DIRECTORY}/pkgconfig)
+ endif ()
+-
++
+ if (OGRE_BUILD_COMPONENT_TERRAIN)
+ if (OGRE_BUILD_COMPONENT_PAGING)
+ set(OGRE_PAGING_ADDITIONAL_PACKAGES ", OGRE-Paging = ${OGRE_VERSION}")
diff --git a/CMake/InstallResources.cmake b/CMake/InstallResources.cmake
-index 783755e..79f7514 100644
+index 783755e..bd7fd3d 100644
--- a/CMake/InstallResources.cmake
+++ b/CMake/InstallResources.cmake
-@@ -208,10 +208,12 @@ endif ()
+@@ -131,7 +131,7 @@ configure_file(${OGRE_TEMPLATES_DIR}/tests.cfg.in ${PROJECT_BINARY_DIR}/inst/bin
+
+
+ # install resource files
+-install(FILES
++install(FILES
+ ${PROJECT_BINARY_DIR}/inst/bin/resources.cfg
+ ${PROJECT_BINARY_DIR}/inst/bin/plugins.cfg
+ ${PROJECT_BINARY_DIR}/inst/bin/samples.cfg
+@@ -208,17 +208,19 @@ endif ()
# Create the CMake package files
include(CMakePackageConfigHelpers)
--if(WIN32 OR APPLE)
-- set(OGRE_CMAKE_DIR "CMake")
--else()
-- set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
+if(NOT DEFINED OGRE_CMAKE_DIR)
-+ if(WIN32 OR APPLE)
-+ set(OGRE_CMAKE_DIR "CMake")
-+ else()
-+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
-+ endif()
+ if(WIN32 OR APPLE)
+ set(OGRE_CMAKE_DIR "CMake")
+ else()
+ set(OGRE_CMAKE_DIR "${OGRE_LIB_DIRECTORY}/OGRE/cmake")
endif()
++endif()
configure_package_config_file(${OGRE_TEMPLATES_DIR}/OGREConfig.cmake.in ${PROJECT_BINARY_DIR}/cmake/OGREConfig.cmake
INSTALL_DESTINATION ${OGRE_CMAKE_DIR}
+ PATH_VARS CMAKE_INSTALL_PREFIX)
+ write_basic_package_version_file(
+- ${PROJECT_BINARY_DIR}/cmake/OGREConfigVersion.cmake
+- VERSION ${OGRE_VERSION}
++ ${PROJECT_BINARY_DIR}/cmake/OGREConfigVersion.cmake
++ VERSION ${OGRE_VERSION}
+ COMPATIBILITY SameMajorVersion)
+ install(FILES
+ ${PROJECT_BINARY_DIR}/cmake/OGREConfig.cmake
+@@ -228,4 +230,4 @@ install(FILES
+ install(EXPORT OgreTargetsRelease CONFIGURATIONS Release None "" DESTINATION ${OGRE_CMAKE_DIR} FILE OgreTargets.cmake)
+ install(EXPORT OgreTargetsRelWithDebInfo CONFIGURATIONS RelWithDebInfo DESTINATION ${OGRE_CMAKE_DIR} FILE OgreTargets.cmake)
+ install(EXPORT OgreTargetsMinSizeRel CONFIGURATIONS MinSizeRel DESTINATION ${OGRE_CMAKE_DIR} FILE OgreTargets.cmake)
+-install(EXPORT OgreTargetsDebug CONFIGURATIONS Debug DESTINATION ${OGRE_CMAKE_DIR} FILE OgreTargets.cmake)
+\ No newline at end of file
++install(EXPORT OgreTargetsDebug CONFIGURATIONS Debug DESTINATION ${OGRE_CMAKE_DIR} FILE OgreTargets.cmake)
diff --git a/CMake/Packages/FindCg.cmake b/CMake/Packages/FindCg.cmake
index 4501cf9..e91bfd0 100644
--- a/CMake/Packages/FindCg.cmake
@@ -131,29 +174,29 @@ index 7125895..f73c928 100644
add_parent_dir(HLSL2GLSL_INCLUDE_DIRS HLSL2GLSL_INCLUDE_DIR)
-
diff --git a/CMake/Packages/FindNVAPI.cmake b/CMake/Packages/FindNVAPI.cmake
-index 95c70cd..17dabb8 100644
+index 2b9deba..6d8fb37 100644
--- a/CMake/Packages/FindNVAPI.cmake
+++ b/CMake/Packages/FindNVAPI.cmake
@@ -11,7 +11,7 @@
- # Once done, this will define
- #
- # NVAPI_FOUND - system has NVAPI
--# NVAPI_INCLUDE_DIRS - the NVAPI include directories
-+# NVAPI_INCLUDE_DIRS - the NVAPI include directories
- # NVAPI_LIBRARIES - link these to use NVAPI
-
- include(FindPkgMacros)
+ # Once done, this will define
+ #
+ # NVAPI_FOUND - system has NVAPI
+-# NVAPI_INCLUDE_DIRS - the NVAPI include directories
++# NVAPI_INCLUDE_DIRS - the NVAPI include directories
+ # NVAPI_LIBRARIES - link these to use NVAPI
+
+ include(FindPkgMacros)
@@ -44,7 +44,7 @@ findpkg_framework(NVAPI)
- find_path(NVAPI_INCLUDE_DIR NAMES nvapi.h HINTS ${NVAPI_FRAMEWORK_INCLUDES} ${NVAPI_INC_SEARCH_PATH} ${NVAPI_PKGC_INCLUDE_DIRS} PATH_SUFFIXES NVAPI)
- find_library(NVAPI_LIBRARY_REL NAMES ${NVAPI_LIBRARY_NAMES} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" release relwithdebinfo minsizerel)
- find_library(NVAPI_LIBRARY_DBG NAMES ${NVAPI_LIBRARY_NAMES_DBG} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" debug)
--make_library_set(NVAPI_LIBRARY)
-+make_library_set(NVAPI)
-
- findpkg_finish(NVAPI)
+ find_path(NVAPI_INCLUDE_DIR NAMES nvapi.h HINTS ${NVAPI_FRAMEWORK_INCLUDES} ${NVAPI_INC_SEARCH_PATH} ${NVAPI_PKGC_INCLUDE_DIRS} PATH_SUFFIXES NVAPI)
+ find_library(NVAPI_LIBRARY_REL NAMES ${NVAPI_LIBRARY_NAMES} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" release relwithdebinfo minsizerel)
+ find_library(NVAPI_LIBRARY_DBG NAMES ${NVAPI_LIBRARY_NAMES_DBG} HINTS ${NVAPI_LIB_SEARCH_PATH} ${NVAPI_PKGC_LIBRARY_DIRS} PATH_SUFFIXES "" debug)
+-make_library_set(NVAPI_LIBRARY)
++make_library_set(NVAPI)
+
+ findpkg_finish(NVAPI)
-add_parent_dir(NVAPI_INCLUDE_DIRS NVAPI_INCLUDE_DIR)
\ No newline at end of file
-+add_parent_dir(NVAPI_INCLUDE_DIRS NVAPI_INCLUDE_DIR)
++add_parent_dir(NVAPI_INCLUDE_DIRS NVAPI_INCLUDE_DIR)
diff --git a/CMake/Packages/FindPOCO.cmake b/CMake/Packages/FindPOCO.cmake
index 6b6d7fa..c2cb80e 100644
--- a/CMake/Packages/FindPOCO.cmake
@@ -313,6 +356,66 @@ index e97951e..1c7cf00 100644
findpkg_finish(ZZip)
-
+diff --git a/CMake/Templates/OGREConfig.cmake.in b/CMake/Templates/OGREConfig.cmake.in
+index 79c5394..7b22a0d 100644
+--- a/CMake/Templates/OGREConfig.cmake.in
++++ b/CMake/Templates/OGREConfig.cmake.in
+@@ -10,12 +10,12 @@
+ # Find OGRE includes and library
+ #
+ # This module defines
+-# OGRE_INCLUDE_DIRS - the OGRE include directories
++# OGRE_INCLUDE_DIRS - the OGRE include directories
+ # OGRE_LIBRARIES - link these to use the OGRE
+ # OGRE_LIBRARY_DIRS, the location of the libraries
+ # OGRE_STATIC - whther ogre was build as static lib
+ # OGRE_${COMPONENT}_FOUND - ${COMPONENT} is available
+-# OGRE_${COMPONENT}_LIBRARIES - link these to only use ${COMPONENT}
++# OGRE_${COMPONENT}_LIBRARIES - link these to only use ${COMPONENT}
+ # OGRE_PLUGIN_DIR - The directory where the OGRE plugins are located
+ # OGRE_MEDIA_DIR - The directory where the OGRE sample media is located
+ # OGRE_CONFIG_DIR - The directory where the OGRE config files are located
+@@ -25,7 +25,7 @@
+ set(OGRE_STATIC @OGRE_STATIC@)
+ set(OGRE_MEDIA_DIR "@PACKAGE_CMAKE_INSTALL_PREFIX@/@OGRE_MEDIA_PATH@")
+ set(OGRE_PLUGIN_DIR "@PACKAGE_CMAKE_INSTALL_PREFIX@/lib/OGRE")
+-set(OGRE_CONFIG_DIR "@PACKAGE_CMAKE_INSTALL_PREFIX@/@OGRE_CFG_INSTALL_PATH@")
++set(OGRE_CONFIG_DIR "@PACKAGE_CMAKE_INSTALL_PREFIX@/@OGRE_CFG_INSTALL_PATH@")
+
+ set(OGRE_PREFIX_DIR "@PACKAGE_CMAKE_INSTALL_PREFIX@")
+ get_filename_component(OGRE_LIBRARY_DIRS "${OGRE_PREFIX_DIR}/lib" ABSOLUTE)
+@@ -47,7 +47,7 @@ set(OGRE_PLUGINS)
+ macro(ogre_declare_component COMPONENT)
+ set(OGRE_${COMPONENT}_FOUND TRUE)
+ set(OGRE_${COMPONENT}_LIBRARIES Ogre${COMPONENT}) # backwards compatibility
+-
++
+ list(APPEND OGRE_COMPONENTS ${COMPONENT})
+ list(APPEND OGRE_LIBRARIES Ogre${COMPONENT})
+ endmacro()
+@@ -55,11 +55,11 @@ endmacro()
+ macro(ogre_declare_plugin TYPE COMPONENT)
+ set(OGRE_${TYPE}_${COMPONENT}_FOUND TRUE)
+ set(OGRE_${TYPE}_${COMPONENT}_LIBRARIES ${TYPE}_${COMPONENT})
+-
++
+ if(@OGRE_STATIC@)
+ list(APPEND OGRE_LIBRARIES ${TYPE}_${COMPONENT})
+ endif()
+-
++
+ list(APPEND OGRE_PLUGINS ${TYPE}_${COMPONENT})
+ endmacro()
+
+@@ -149,7 +149,7 @@ endif()
+ cmake_policy(POP)
+
+ if(@OGRE_STATIC@)
+- list(APPEND OGRE_LIBRARIES OgreGLSupport@OGRE_LIB_SUFFIX@ @CMAKE_DL_LIBS@) # glXXw uses dlopen
++ list(APPEND OGRE_LIBRARIES OgreGLSupport @CMAKE_DL_LIBS@) # glXXw uses dlopen
+ list(APPEND OGRE_LIBRARY_DIRS "${OGRE_LIBRARY_DIRS}/OGRE") # plugins folder
+ endif()
+
diff --git a/CMake/Utils/FindPkgMacros.cmake b/CMake/Utils/FindPkgMacros.cmake
index 374f84b..dc7066d 100644
--- a/CMake/Utils/FindPkgMacros.cmake
@@ -349,7 +452,7 @@ index 374f84b..dc7066d 100644
# Generate debug names from given release names
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d2819f0..8b54b38 100644
+index d2819f0..f40239f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -142,7 +142,7 @@ if (MSVC)
@@ -361,7 +464,7 @@ index d2819f0..8b54b38 100644
# Turn on the ability to create folders to organize projects (.vcproj)
# It creates "CMakePredefinedTargets" folder by default and adds CMake
# defined projects like INSTALL.vcproj and ZERO_CHECK.vcproj
-@@ -274,14 +274,9 @@ elseif(EMSCRIPTEN)
+@@ -274,12 +274,8 @@ elseif(EMSCRIPTEN)
elseif (APPLE AND NOT APPLE_IOS)
set(XCODE_ATTRIBUTE_SDKROOT macosx)
@@ -372,11 +475,9 @@ index d2819f0..8b54b38 100644
- set(CMAKE_OSX_SYSROOT macosx)
- endif()
-- # Make sure that the OpenGL render system is selected for non-iOS Apple builds
+ # Make sure that the OpenGL render system is selected for non-iOS Apple builds
set(OGRE_BUILD_RENDERSYSTEM_GLES2 FALSE)
- endif ()
-
-@@ -310,7 +305,7 @@ include(Dependencies)
+@@ -310,7 +306,7 @@ include(Dependencies)
# Customise what to build
option(OGRE_STATIC "Static build" FALSE)
option(OGRE_ENABLE_PRECOMPILED_HEADERS "Use precompiled headers to speed up build" TRUE)
@@ -385,7 +486,7 @@ index d2819f0..8b54b38 100644
"Make ResourceManager strict for faster operation. Possible values:
0 - OFF search in all groups twice - for case sensitive and insensitive lookup [DEPRECATED]
1 - PEDANTIC require an explicit resource group. Case sensitive lookup.
-@@ -352,7 +347,7 @@ cmake_dependent_option(OGRE_BUILD_LIBS_AS_FRAMEWORKS "Build frameworks for libra
+@@ -352,7 +348,7 @@ cmake_dependent_option(OGRE_BUILD_LIBS_AS_FRAMEWORKS "Build frameworks for libra
option(OGRE_BUILD_TESTS "Build the unit tests & PlayPen" FALSE)
option(OGRE_CONFIG_DOUBLE "Use doubles instead of floats in Ogre" FALSE)
option(OGRE_CONFIG_NODE_INHERIT_TRANSFORM "Tells the node whether it should inherit full transform from it's parent node or derived position, orientation and scale" FALSE)
@@ -437,7 +538,7 @@ index bdb303d..e8031d1 100644
\ No newline at end of file
+)
diff --git a/OgreMain/CMakeLists.txt b/OgreMain/CMakeLists.txt
-index 6ec4e34..666a736 100644
+index 6ec4e34..2803a8a 100644
--- a/OgreMain/CMakeLists.txt
+++ b/OgreMain/CMakeLists.txt
@@ -188,21 +188,21 @@ if (WINDOWS_STORE OR WINDOWS_PHONE)
@@ -475,12 +576,13 @@ index 6ec4e34..666a736 100644
list(APPEND LIBRARIES "atomic")
else()
list(APPEND LIBRARIES "-latomic")
-@@ -226,8 +226,6 @@ if (APPLE)
+@@ -226,8 +226,7 @@ if (APPLE)
LINK_FLAGS "-framework IOKit -framework Cocoa -framework Carbon -framework OpenGL -framework CoreVideo"
)
- set(OGRE_OSX_BUILD_CONFIGURATION "$(PLATFORM_NAME)/$(CONFIGURATION)")
-
++
if(OGRE_BUILD_LIBS_AS_FRAMEWORKS)
add_custom_command(TARGET OgreMain POST_BUILD
COMMAND mkdir ARGS -p ${PROJECT_BINARY_DIR}/lib/${OGRE_OSX_BUILD_CONFIGURATION}/Ogre.framework/Headers/Threading
diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL
index 30e04b54c..bfc7d7f81 100644
--- a/ports/opencv/CONTROL
+++ b/ports/opencv/CONTROL
@@ -1,93 +1,17 @@
-Source: opencv
-Version: 3.4.3-9
-Build-Depends: zlib
-Homepage: https://github.com/opencv/opencv
-Description: computer vision library
-Default-Features: opengl, jpeg, png, tiff, eigen, flann
-
-Feature: opengl
-Build-Depends: opengl
-Description: opengl support for opencv
-
-Feature: dnn
-Build-Depends: protobuf
-Description: opencv_dnn module
-
-Feature: ovis
-Build-Depends: ogre
-Description: opencv_ovis module
-
-Feature: flann
-Description: opencv_flann module
-
-Feature: sfm
-Build-Depends: eigen3, glog, gflags, ceres
-Description: opencv_sfm module
-
-Feature: contrib
-Build-Depends: opencv[flann]
-Description: opencv_contrib module
-
-Feature: cuda
-Build-Depends: cuda
-Description: CUDA support for opencv
-
-Feature: ffmpeg
-Description: prebuilt ffmpeg support for opencv
-
-Feature: ipp
-Description: Enable Intel Integrated Performance Primitives
-
-Feature: tbb
-Build-Depends: tbb
-Description: Enable Intel Threading Building Blocks
-
-Feature: qt
-Build-Depends: qt5
-Description: Qt GUI support for opencv
-
-Feature: vtk
-Build-Depends: vtk
-Description: vtk support for opencv
-
-Feature: gdcm
-Build-Depends: gdcm
-Description: GDCM support for opencv
-
-Feature: webp
-Build-Depends: libwebp
-Description: WebP support for opencv
-
-Feature: openexr
-Build-Depends: openexr
-Description: OpenEXR support for opencv
-
-Feature: tiff
-Build-Depends: tiff
-Description: TIFF support for opencv
-
-Feature: png
-Build-Depends: libpng
-Description: PNG support for opencv
-
-Feature: jpeg
-Build-Depends: libjpeg-turbo
-Description: JPEG support for opencv
-
-Feature: jasper
-Build-Depends: jasper
-Description: JPEG 2000 support for opencv
-
-Feature: eigen
-Build-Depends: eigen3
-Description: Eigen support for opencv
-
-Feature: halide
-Build-Depends: halide, opencv[dnn]
-Description: Halide support for opencv
-
-Feature: world
-Description: Compile to a single package support for opencv
-
-Feature: nonfree
-Description: allow nonfree and unredistributable libraries
+Source: opencv
+Version: 1
+Homepage: https://github.com/opencv/opencv
+Description: Computer vision library
+Build-Depends: opencv4[core]
+
+Feature: contrib
+Description: opencv_contrib module
+Build-Depends: opencv4[contrib]
+
+Feature: cuda
+Description: Enable CUDA support in OpenCV
+Build-Depends: opencv4[cuda]
+
+Feature: ffmpeg
+Description: Enable ffmpeg support in OpenCV
+Build-Depends: opencv4[ffmpeg]
diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake
index be86319c7..cc6e26fcb 100644
--- a/ports/opencv/portfile.cmake
+++ b/ports/opencv/portfile.cmake
@@ -1,422 +1 @@
-include(vcpkg_common_functions)
-
-set(OPENCV_PORT_VERSION "3.4.3")
-
-vcpkg_from_github(
- OUT_SOURCE_PATH SOURCE_PATH
- REPO opencv/opencv
- REF ${OPENCV_PORT_VERSION}
- SHA512 d653a58eb5e3939b9fdb7438ac35f77cf4385cf72d5d22bfd21722a109e1b3283dbb9407985061b7548114f0d05c9395aac9bb62b4d2bc1f68da770a49987fef
- HEAD_REF master
- PATCHES
- 0001-winrt-fixes.patch
- 0002-install-options.patch
- 0003-disable-downloading.patch
- 0004-use-find-package-required.patch
- 0005-remove-custom-protobuf-find-package.patch
- 0006-fix-missing-openjp2.patch
-)
-
-string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT)
-
-set(CMAKE_MODULE_PATH)
-
-set(BUILD_opencv_world OFF)
-if("world" IN_LIST FEATURES)
- set(BUILD_opencv_world ON)
-endif()
-
-set(BUILD_opencv_dnn OFF)
-set(WITH_PROTOBUF OFF)
-if("dnn" IN_LIST FEATURES)
- set(BUILD_opencv_dnn ON)
- set(WITH_PROTOBUF ON)
- set(PROTOBUF_UPDATE_FILES ON)
- set(UPDATE_PROTO_FILES ON)
- vcpkg_download_distfile(TINYDNN_ARCHIVE
- URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz"
- FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz"
- SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
- )
-endif()
-
-set(BUILD_opencv_flann OFF)
-if("flann" IN_LIST FEATURES)
- set(BUILD_opencv_flann ON)
-endif()
-
-set(BUILD_opencv_ovis OFF)
-if("ovis" IN_LIST FEATURES)
- set(BUILD_opencv_ovis ON)
-endif()
-
-set(BUILD_opencv_sfm OFF)
-if("sfm" IN_LIST FEATURES)
- set(BUILD_opencv_sfm ON)
-endif()
-
-set(BUILD_opencv_contrib OFF)
-if("contrib" IN_LIST FEATURES)
- set(BUILD_opencv_contrib ON)
-
- # Used for opencv's face module
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat"
- FILENAME "opencv-cache/data/7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat"
- SHA512 c16e60a6c4bb4de3ab39b876ae3c3f320ea56f69c93e9303bd2dff8760841dcd71be4161fff8bc71e8fe4fe8747fa8465d49d6bd8f5ebcdaea161f4bc2da7c93
- )
-
- vcpkg_download_distfile(TINYDNN_ARCHIVE
- URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz"
- FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz"
- SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
- )
-
- function(download_opencv_3rdparty ID COMMIT HASH)
- if(NOT EXISTS "${DOWNLOADS}/opencv-cache/${ID}/${COMMIT}.stamp")
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://github.com/opencv/opencv_3rdparty/archive/${COMMIT}.zip"
- FILENAME "opencv_3rdparty-${COMMIT}.zip"
- SHA512 ${HASH}
- )
- vcpkg_extract_source_archive(${OCV_DOWNLOAD})
- file(MAKE_DIRECTORY "${DOWNLOADS}/opencv-cache/${ID}")
- file(GLOB XFEATURES2D_I ${CURRENT_BUILDTREES_DIR}/src/opencv_3rdparty-${COMMIT}/*)
- foreach(FILE ${XFEATURES2D_I})
- file(COPY ${FILE} DESTINATION "${DOWNLOADS}/opencv-cache/${ID}")
- get_filename_component(XFEATURES2D_I_NAME "${FILE}" NAME)
- file(MD5 "${FILE}" FILE_HASH)
- file(RENAME "${DOWNLOADS}/opencv-cache/${ID}/${XFEATURES2D_I_NAME}" "${DOWNLOADS}/opencv-cache/${ID}/${FILE_HASH}-${XFEATURES2D_I_NAME}")
- endforeach()
- file(WRITE "${DOWNLOADS}/opencv-cache/${ID}/${COMMIT}.stamp")
- endif()
- endfunction()
-
- # Used for opencv's xfeature2d module
- download_opencv_3rdparty(
- xfeatures2d/boostdesc
- 34e4206aef44d50e6bbcd0ab06354b52e7466d26
- 2ccdc8fb59da55eabc73309a80a4d3b1e73e2341027cdcdd2d714e0f519e60f243f38f79b13ed3de32f595aa23e4f86418eed42e741f32a81b1e6e0879190601
- )
-
- # Used for opencv's xfeature2d module
- download_opencv_3rdparty(
- xfeatures2d/vgg
- fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d
- 7051f5d6ccb938d296b919dd6d5dcddc5afb527aed456639c9984276a8f64565c084d96a72499a7756f127f8d2b1ce9ab70e4cbb3f89c4e16f82296c2a15daed
- )
-endif()
-
-set(WITH_CUDA OFF)
-if("cuda" IN_LIST FEATURES)
- set(WITH_CUDA ON)
-endif()
-
-set(WITH_FFMPEG OFF)
-if("ffmpeg" IN_LIST FEATURES)
- set(WITH_FFMPEG ON)
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg.dll"
- FILENAME "opencv-cache/ffmpeg/fa5a2a4e2f37defcb95bde8ed145c2b3-opencv_ffmpeg.dll"
- SHA512 875f922e1d9fc2fe7c8e879ede35b1001b6ad8b3c4d71feb3823421ce861f580df3418c791315b23870fcb0378d297b01e0761d3f65277ff11ec2fef8c0b08b7
- )
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg_64.dll"
- FILENAME "opencv-cache/ffmpeg/2cc08fc4fef8199fe80e0f126684834f-opencv_ffmpeg_64.dll"
- SHA512 4e74aa4cb115f103b929f93bbc8dcf675de7d0c7916f8f0a80ac46761134b088634be95f959ce5827753ae9ecb2365ca40440dfbb9a9bf89f22ee11b6c8342b3
- )
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/ffmpeg_version.cmake"
- FILENAME "opencv-cache/ffmpeg/3b90f67f4b429e77d3da36698cef700c-ffmpeg_version.cmake"
- SHA512 7d0142c30ac6f6260c1bcabc22753030fd25a708477fa28053e8df847c366967d3b93a8ac14af19a2b7b73d9f8241749a431458faf21a0c8efc7d6d99eecfdcf
- )
-endif()
-
-set(WITH_IPP OFF)
-if("ipp" IN_LIST FEATURES)
- set(WITH_IPP ON)
-
- if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/bdb7bb85f34a8cb0d35e40a81f58da431aa1557a/ippicv/ippicv_2017u3_win_intel64_general_20180518.zip"
- FILENAME "opencv-cache/ippicv/915ff92958089ede8ea532d3c4fe7187-ippicv_2017u3_win_intel64_general_20180518.zip"
- SHA512 8aa08292d542d521c042864446e47a7a6bdbf3896d86fc7b43255459c24a2e9f34a4e9b177023d178fed7a2e82a9db410f89d81375a542d049785d263f46c64d
- )
- else()
- vcpkg_download_distfile(OCV_DOWNLOAD
- URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/bdb7bb85f34a8cb0d35e40a81f58da431aa1557a/ippicv/ippicv_2017u3_win_ia32_general_20180518.zip"
- FILENAME "opencv-cache/ippicv/928168c2d99ab284047dfcfb7a821d91-ippicv_2017u3_win_ia32_general_20180518.zip"
- SHA512 b89b0fb739152303cafc9fb064fa8b24fd94850697137ccbb5c1e344e0f5094115603a5e3be3a25f85d0faefc5c53429a7d65da0142d012ada41e8db2bcdd6b7
- )
- endif()
-endif()
-
-set(WITH_TBB OFF)
-if("tbb" IN_LIST FEATURES)
- set(WITH_TBB ON)
-endif()
-
-set(WITH_QT OFF)
-if("qt" IN_LIST FEATURES)
- set(WITH_QT ON)
-endif()
-
-set(WITH_VTK OFF)
-if("vtk" IN_LIST FEATURES)
- set(WITH_VTK ON)
-endif()
-
-set(WITH_WEBP OFF)
-if("webp" IN_LIST FEATURES)
- set(WITH_WEBP ON)
- list(APPEND CMAKE_MODULE_PATH ${CURRENT_INSTALLED_DIR}/share/libwebp)
-endif()
-
-set(WITH_GDCM OFF)
-if("gdcm" IN_LIST FEATURES)
- set(WITH_GDCM ON)
-endif()
-
-set(WITH_OPENGL OFF)
-if("opengl" IN_LIST FEATURES)
- set(WITH_OPENGL ON)
-endif()
-
-set(WITH_OPENEXR OFF)
-if("openexr" IN_LIST FEATURES)
- set(WITH_OPENEXR ON)
- list(APPEND CMAKE_MODULE_PATH ${CURRENT_INSTALLED_DIR}/share/openexr)
-endif()
-
-set(WITH_MSMF ON)
-if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
- set(WITH_MSMF OFF)
-endif()
-
-set(WITH_TIFF OFF)
-if("tiff" IN_LIST FEATURES)
- set(WITH_TIFF ON)
-endif()
-
-set(WITH_JPEG OFF)
-if("jpeg" IN_LIST FEATURES)
- set(WITH_JPEG ON)
-endif()
-
-set(WITH_JASPER OFF)
-if("jasper" IN_LIST FEATURES)
- set(WITH_JASPER ON)
-endif()
-
-set(WITH_PNG OFF)
-if("png" IN_LIST FEATURES)
- set(WITH_PNG ON)
-endif()
-
-set(WITH_EIGEN OFF)
-if("eigen" IN_LIST FEATURES)
- set(WITH_EIGEN ON)
-endif()
-
-set(WITH_HALIDE OFF)
-if("halide" IN_LIST FEATURES)
- set(WITH_HALIDE ON)
-endif()
-
-set(OPENCV_ENABLE_NONFREE OFF)
-if("nonfree" IN_LIST FEATURES)
- set(OPENCV_ENABLE_NONFREE ON)
-endif()
-
-if(BUILD_opencv_contrib)
- vcpkg_from_github(
- OUT_SOURCE_PATH CONTRIB_SOURCE_PATH
- REPO opencv/opencv_contrib
- REF ${OPENCV_PORT_VERSION}
- SHA512 456c6f878fb3bd5459f6430405cf05c609431f8d7db743aa699fc75c305d019682ee3a804bf0cf5107597dd1dbbb69b08be3535a0e6c717e4773ed7c05d08e59
- HEAD_REF master
- )
- set(BUILD_WITH_CONTRIB_FLAG "-DOPENCV_EXTRA_MODULES_PATH=${CONTRIB_SOURCE_PATH}/modules")
-endif()
-
-set(WITH_ZLIB ON)
-set(BUILD_opencv_line_descriptor ON)
-set(BUILD_opencv_saliency ON)
-set(BUILD_opencv_bgsegm ON)
-if(VCPKG_TARGET_ARCHITECTURE MATCHES "arm")
- set(BUILD_opencv_line_descriptor OFF)
- set(BUILD_opencv_saliency OFF)
- set(BUILD_opencv_bgsegm OFF)
-endif()
-
-string(REPLACE ";" "\\\\\;" CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}")
-
-vcpkg_configure_cmake(
- PREFER_NINJA
- SOURCE_PATH ${SOURCE_PATH}
- OPTIONS
- # Ungrouped Entries
- -DOpenCV_DISABLE_ARCH_PATH=ON
- # Do not build docs/examples
- -DBUILD_DOCS=OFF
- -DBUILD_EXAMPLES=OFF
- # Do not build integrated libraries, use external ones whenever possible
- -DBUILD_JASPER=OFF
- -DBUILD_JPEG=OFF
- -DBUILD_OPENEXR=OFF
- -DBUILD_PACKAGE=OFF
- -DBUILD_PERF_TESTS=OFF
- -DBUILD_PNG=OFF
- -DBUILD_PROTOBUF=OFF
- -DBUILD_TESTS=OFF
- -DBUILD_TIFF=OFF
- -DBUILD_WEBP=OFF
- -DBUILD_WITH_DEBUG_INFO=ON
- -DBUILD_WITH_STATIC_CRT=${BUILD_WITH_STATIC_CRT}
- -DBUILD_ZLIB=OFF
- # Select which OpenCV modules should be built
- -DBUILD_opencv_apps=OFF
- -DBUILD_opencv_bgsegm=${BUILD_opencv_bgsegm}
- -DBUILD_opencv_dnn=${BUILD_opencv_dnn}
- -DBUILD_opencv_flann=${BUILD_opencv_flann}
- -DBUILD_opencv_line_descriptor=${BUILD_opencv_line_descriptor}
- -DBUILD_opencv_ovis=${BUILD_opencv_ovis}
- -DBUILD_opencv_python2=OFF
- -DBUILD_opencv_python3=OFF
- -DBUILD_opencv_saliency=${BUILD_opencv_saliency}
- -DBUILD_opencv_sfm=${BUILD_opencv_sfm}
- -DBUILD_opencv_world=${BUILD_opencv_world}
- # PROTOBUF
- -DPROTOBUF_UPDATE_FILES=${PROTOBUF_UPDATE_FILES}
- -DUPDATE_PROTO_FILES=${UPDATE_PROTO_FILES}
- # CMAKE
- -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
- -DCMAKE_DISABLE_FIND_PACKAGE_JNI=ON
- "-DCMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}"
- # ENABLE
- -DENABLE_CXX11=ON
- -DENABLE_PYLINT=OFF
- -DOPENCV_ENABLE_NONFREE=${OPENCV_ENABLE_NONFREE}
- # INSTALL
- -DINSTALL_FORCE_UNIX_PATHS=ON
- -DINSTALL_LICENSE=OFF
- # OPENCV
- -DOPENCV_CONFIG_INSTALL_PATH=share/opencv
- "-DOPENCV_DOWNLOAD_PATH=${DOWNLOADS}/opencv-cache"
- ${BUILD_WITH_CONTRIB_FLAG}
- -DOPENCV_OTHER_INSTALL_PATH=share/opencv
- # WITH
- -DWITH_CUBLAS=${WITH_CUDA}
- -DWITH_CUDA=${WITH_CUDA}
- -DWITH_EIGEN=${WITH_EIGEN}
- -DWITH_FFMPEG=${WITH_FFMPEG}
- -DWITH_GDCM=${WITH_GDCM}
- -DWITH_IPP=${WITH_IPP}
- -DWITH_JASPER=${WITH_JASPER}
- -DWITH_JPEG=${WITH_JPEG}
- -DWITH_LAPACK=OFF
- -DWITH_MATLAB=OFF
- -DWITH_MSMF=${WITH_MSMF}
- -DWITH_OPENCLAMDBLAS=OFF
- -DWITH_OPENEXR=${WITH_OPENEXR}
- -DWITH_OPENGL=${WITH_OPENGL}
- -DWITH_PNG=${WITH_PNG}
- -DWITH_PROTOBUF=${WITH_PROTOBUF}
- -DWITH_QT=${WITH_QT}
- -DWITH_TBB=${WITH_TBB}
- -DWITH_TIFF=${WITH_TIFF}
- -DWITH_VTK=${WITH_VTK}
- -DWITH_WEBP=${WITH_WEBP}
- -DWITH_ZLIB=${WITH_ZLIB}
- -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR}
- OPTIONS_DEBUG
- -DINSTALL_HEADERS=OFF
- -DINSTALL_OTHER=OFF
-)
-
-vcpkg_install_cmake()
-
-file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/opencv/LICENSE ${CURRENT_PACKAGES_DIR}/share/opencv/copyright)
-file(REMOVE ${CURRENT_PACKAGES_DIR}/LICENSE)
-file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/LICENSE)
-
-if(VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
- set(OpenCV_RUNTIME vc15)
-else()
- set(OpenCV_RUNTIME vc14)
-endif()
-if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
- set(OpenCV_ARCH x64)
-elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
- set(OpenCV_ARCH ARM)
-elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
- set(OpenCV_ARCH ARM64)
-else()
- set(OpenCV_ARCH x86)
-endif()
-
-file(GLOB BIN_AND_LIB ${CURRENT_PACKAGES_DIR}/${OpenCV_ARCH}/${OpenCV_RUNTIME}/*)
-file(COPY ${BIN_AND_LIB} DESTINATION ${CURRENT_PACKAGES_DIR})
-file(GLOB DEBUG_BIN_AND_LIB ${CURRENT_PACKAGES_DIR}/debug/${OpenCV_ARCH}/${OpenCV_RUNTIME}/*)
-file(COPY ${DEBUG_BIN_AND_LIB} DESTINATION ${CURRENT_PACKAGES_DIR}/debug)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/${OpenCV_ARCH})
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/${OpenCV_ARCH})
-
-file(GLOB STATICLIB ${CURRENT_PACKAGES_DIR}/staticlib/*)
-if(STATICLIB)
- file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib)
- file(COPY ${STATICLIB} DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/staticlib)
-endif()
-file(GLOB STATICLIB ${CURRENT_PACKAGES_DIR}/debug/staticlib/*)
-if(STATICLIB)
- file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib)
- file(COPY ${STATICLIB} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/staticlib)
-endif()
-
-file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig.cmake OPENCV_CONFIG)
-string(REPLACE "/staticlib/"
- "/lib/" OPENCV_CONFIG "${OPENCV_CONFIG}")
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig.cmake "${OPENCV_CONFIG}")
-
-file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-release.cmake OPENCV_CONFIG_LIB)
-string(REPLACE "/staticlib/"
- "/lib/" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-release.cmake "${OPENCV_CONFIG_LIB}")
-
-file(READ ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules-debug.cmake OPENCV_CONFIG_LIB)
-string(REPLACE "/staticlib/"
- "/lib/" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
-string(REPLACE "PREFIX}/lib"
- "PREFIX}/debug/lib" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
-string(REPLACE "PREFIX}/bin"
- "PREFIX}/debug/bin" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-debug.cmake "${OPENCV_CONFIG_LIB}")
-
-file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake)
-
-file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES)
-string(REPLACE "${CURRENT_INSTALLED_DIR}"
- "\${_VCPKG_INSTALLED_DIR}/\${VCPKG_TARGET_TRIPLET}" OPENCV_MODULES "${OPENCV_MODULES}")
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}")
-
-if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
- file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES)
- string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
- "set(CMAKE_IMPORT_FILE_VERSION 1)
- find_package(TIFF REQUIRED)" OPENCV_MODULES "${OPENCV_MODULES}")
- file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}")
-endif()
-
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-
-file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv)
-
-vcpkg_copy_pdbs()
-
-set(VCPKG_LIBRARY_LINKAGE "dynamic")
-
-set(VCPKG_POLICY_ALLOW_OBSOLETE_MSVCRT enabled)
+SET(VCPKG_POLICY_EMPTY_PACKAGE enabled)
diff --git a/ports/opencv/0001-winrt-fixes.patch b/ports/opencv3/0001-winrt-fixes.patch
index b2fe1a021..b2fe1a021 100644
--- a/ports/opencv/0001-winrt-fixes.patch
+++ b/ports/opencv3/0001-winrt-fixes.patch
diff --git a/ports/opencv/0002-install-options.patch b/ports/opencv3/0002-install-options.patch
index 0719a7cb9..0719a7cb9 100644
--- a/ports/opencv/0002-install-options.patch
+++ b/ports/opencv3/0002-install-options.patch
diff --git a/ports/opencv/0003-disable-downloading.patch b/ports/opencv3/0003-disable-downloading.patch
index 28b00251f..28b00251f 100644
--- a/ports/opencv/0003-disable-downloading.patch
+++ b/ports/opencv3/0003-disable-downloading.patch
diff --git a/ports/opencv/0004-use-find-package-required.patch b/ports/opencv3/0004-use-find-package-required.patch
index 4e1daf659..4e1daf659 100644
--- a/ports/opencv/0004-use-find-package-required.patch
+++ b/ports/opencv3/0004-use-find-package-required.patch
diff --git a/ports/opencv/0005-remove-custom-protobuf-find-package.patch b/ports/opencv3/0005-remove-custom-protobuf-find-package.patch
index 91ac137f9..91ac137f9 100644
--- a/ports/opencv/0005-remove-custom-protobuf-find-package.patch
+++ b/ports/opencv3/0005-remove-custom-protobuf-find-package.patch
diff --git a/ports/opencv/0006-fix-missing-openjp2.patch b/ports/opencv3/0006-fix-missing-openjp2.patch
index c0afb9952..c0afb9952 100644
--- a/ports/opencv/0006-fix-missing-openjp2.patch
+++ b/ports/opencv3/0006-fix-missing-openjp2.patch
diff --git a/ports/opencv3/CONTROL b/ports/opencv3/CONTROL
new file mode 100644
index 000000000..5f65d9e43
--- /dev/null
+++ b/ports/opencv3/CONTROL
@@ -0,0 +1,93 @@
+Source: opencv3
+Version: 3.4.3-10
+Build-Depends: zlib
+Homepage: https://github.com/opencv/opencv
+Description: computer vision library
+Default-Features: opengl, jpeg, png, tiff, eigen, flann
+
+Feature: opengl
+Build-Depends: opengl
+Description: opengl support for opencv
+
+Feature: dnn
+Build-Depends: protobuf
+Description: opencv_dnn module
+
+Feature: ovis
+Build-Depends: ogre
+Description: opencv_ovis module
+
+Feature: flann
+Description: opencv_flann module
+
+Feature: sfm
+Build-Depends: eigen3, glog, gflags, ceres
+Description: opencv_sfm module
+
+Feature: contrib
+Build-Depends: opencv3[flann]
+Description: opencv_contrib module
+
+Feature: cuda
+Build-Depends: cuda
+Description: CUDA support for opencv
+
+Feature: ffmpeg
+Description: prebuilt ffmpeg support for opencv
+
+Feature: ipp
+Description: Enable Intel Integrated Performance Primitives
+
+Feature: tbb
+Build-Depends: tbb
+Description: Enable Intel Threading Building Blocks
+
+Feature: qt
+Build-Depends: qt5
+Description: Qt GUI support for opencv
+
+Feature: vtk
+Build-Depends: vtk
+Description: vtk support for opencv
+
+Feature: gdcm
+Build-Depends: gdcm
+Description: GDCM support for opencv
+
+Feature: webp
+Build-Depends: libwebp
+Description: WebP support for opencv
+
+Feature: openexr
+Build-Depends: openexr
+Description: OpenEXR support for opencv
+
+Feature: tiff
+Build-Depends: tiff
+Description: TIFF support for opencv
+
+Feature: png
+Build-Depends: libpng
+Description: PNG support for opencv
+
+Feature: jpeg
+Build-Depends: libjpeg-turbo
+Description: JPEG support for opencv
+
+Feature: jasper
+Build-Depends: jasper
+Description: JPEG 2000 support for opencv
+
+Feature: eigen
+Build-Depends: eigen3
+Description: Eigen support for opencv
+
+Feature: halide
+Build-Depends: halide, opencv3[dnn]
+Description: Halide support for opencv
+
+Feature: world
+Description: Compile to a single package support for opencv
+
+Feature: nonfree
+Description: allow nonfree and unredistributable libraries
diff --git a/ports/opencv3/portfile.cmake b/ports/opencv3/portfile.cmake
new file mode 100644
index 000000000..12c4dadae
--- /dev/null
+++ b/ports/opencv3/portfile.cmake
@@ -0,0 +1,423 @@
+if (EXISTS "${CURRENT_INSTALLED_DIR}/share/opencv4")
+ message(FATAL_ERROR "OpenCV 4 is installed, please uninstall and try again:\n vcpkg remove opencv4")
+endif()
+
+include(vcpkg_common_functions)
+
+set(OPENCV_PORT_VERSION "3.4.3")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO opencv/opencv
+ REF ${OPENCV_PORT_VERSION}
+ SHA512 d653a58eb5e3939b9fdb7438ac35f77cf4385cf72d5d22bfd21722a109e1b3283dbb9407985061b7548114f0d05c9395aac9bb62b4d2bc1f68da770a49987fef
+ HEAD_REF master
+ PATCHES
+ 0001-winrt-fixes.patch
+ 0002-install-options.patch
+ 0003-disable-downloading.patch
+ 0004-use-find-package-required.patch
+ 0005-remove-custom-protobuf-find-package.patch
+ 0006-fix-missing-openjp2.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT)
+
+set(CMAKE_MODULE_PATH)
+
+set(BUILD_opencv_world OFF)
+if("world" IN_LIST FEATURES)
+ set(BUILD_opencv_world ON)
+endif()
+
+set(BUILD_opencv_dnn OFF)
+set(WITH_PROTOBUF OFF)
+if("dnn" IN_LIST FEATURES)
+ set(BUILD_opencv_dnn ON)
+ set(WITH_PROTOBUF ON)
+ set(PROTOBUF_UPDATE_FILES ON)
+ set(UPDATE_PROTO_FILES ON)
+ vcpkg_download_distfile(TINYDNN_ARCHIVE
+ URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz"
+ FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz"
+ SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
+ )
+endif()
+
+set(BUILD_opencv_flann OFF)
+if("flann" IN_LIST FEATURES)
+ set(BUILD_opencv_flann ON)
+endif()
+
+set(BUILD_opencv_ovis OFF)
+if("ovis" IN_LIST FEATURES)
+ set(BUILD_opencv_ovis ON)
+endif()
+
+set(BUILD_opencv_sfm OFF)
+if("sfm" IN_LIST FEATURES)
+ set(BUILD_opencv_sfm ON)
+endif()
+
+set(BUILD_opencv_contrib OFF)
+if("contrib" IN_LIST FEATURES)
+ set(BUILD_opencv_contrib ON)
+
+ # Used for opencv's face module
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat"
+ FILENAME "opencv-cache/data/7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat"
+ SHA512 c16e60a6c4bb4de3ab39b876ae3c3f320ea56f69c93e9303bd2dff8760841dcd71be4161fff8bc71e8fe4fe8747fa8465d49d6bd8f5ebcdaea161f4bc2da7c93
+ )
+
+ vcpkg_download_distfile(TINYDNN_ARCHIVE
+ URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz"
+ FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz"
+ SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
+ )
+
+ function(download_opencv_3rdparty ID COMMIT HASH)
+ if(NOT EXISTS "${DOWNLOADS}/opencv-cache/${ID}/${COMMIT}.stamp")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://github.com/opencv/opencv_3rdparty/archive/${COMMIT}.zip"
+ FILENAME "opencv_3rdparty-${COMMIT}.zip"
+ SHA512 ${HASH}
+ )
+ vcpkg_extract_source_archive(${OCV_DOWNLOAD})
+ file(MAKE_DIRECTORY "${DOWNLOADS}/opencv-cache/${ID}")
+ file(GLOB XFEATURES2D_I ${CURRENT_BUILDTREES_DIR}/src/opencv_3rdparty-${COMMIT}/*)
+ foreach(FILE ${XFEATURES2D_I})
+ file(COPY ${FILE} DESTINATION "${DOWNLOADS}/opencv-cache/${ID}")
+ get_filename_component(XFEATURES2D_I_NAME "${FILE}" NAME)
+ file(MD5 "${FILE}" FILE_HASH)
+ file(RENAME "${DOWNLOADS}/opencv-cache/${ID}/${XFEATURES2D_I_NAME}" "${DOWNLOADS}/opencv-cache/${ID}/${FILE_HASH}-${XFEATURES2D_I_NAME}")
+ endforeach()
+ file(WRITE "${DOWNLOADS}/opencv-cache/${ID}/${COMMIT}.stamp")
+ endif()
+ endfunction()
+
+ # Used for opencv's xfeature2d module
+ download_opencv_3rdparty(
+ xfeatures2d/boostdesc
+ 34e4206aef44d50e6bbcd0ab06354b52e7466d26
+ 2ccdc8fb59da55eabc73309a80a4d3b1e73e2341027cdcdd2d714e0f519e60f243f38f79b13ed3de32f595aa23e4f86418eed42e741f32a81b1e6e0879190601
+ )
+
+ # Used for opencv's xfeature2d module
+ download_opencv_3rdparty(
+ xfeatures2d/vgg
+ fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d
+ 7051f5d6ccb938d296b919dd6d5dcddc5afb527aed456639c9984276a8f64565c084d96a72499a7756f127f8d2b1ce9ab70e4cbb3f89c4e16f82296c2a15daed
+ )
+endif()
+
+set(WITH_CUDA OFF)
+if("cuda" IN_LIST FEATURES)
+ set(WITH_CUDA ON)
+endif()
+
+set(WITH_FFMPEG OFF)
+if("ffmpeg" IN_LIST FEATURES)
+ set(WITH_FFMPEG ON)
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg.dll"
+ FILENAME "opencv-cache/ffmpeg/fa5a2a4e2f37defcb95bde8ed145c2b3-opencv_ffmpeg.dll"
+ SHA512 875f922e1d9fc2fe7c8e879ede35b1001b6ad8b3c4d71feb3823421ce861f580df3418c791315b23870fcb0378d297b01e0761d3f65277ff11ec2fef8c0b08b7
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg_64.dll"
+ FILENAME "opencv-cache/ffmpeg/2cc08fc4fef8199fe80e0f126684834f-opencv_ffmpeg_64.dll"
+ SHA512 4e74aa4cb115f103b929f93bbc8dcf675de7d0c7916f8f0a80ac46761134b088634be95f959ce5827753ae9ecb2365ca40440dfbb9a9bf89f22ee11b6c8342b3
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/ffmpeg_version.cmake"
+ FILENAME "opencv-cache/ffmpeg/3b90f67f4b429e77d3da36698cef700c-ffmpeg_version.cmake"
+ SHA512 7d0142c30ac6f6260c1bcabc22753030fd25a708477fa28053e8df847c366967d3b93a8ac14af19a2b7b73d9f8241749a431458faf21a0c8efc7d6d99eecfdcf
+ )
+endif()
+
+set(WITH_IPP OFF)
+if("ipp" IN_LIST FEATURES)
+ set(WITH_IPP ON)
+
+ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/bdb7bb85f34a8cb0d35e40a81f58da431aa1557a/ippicv/ippicv_2017u3_win_intel64_general_20180518.zip"
+ FILENAME "opencv-cache/ippicv/915ff92958089ede8ea532d3c4fe7187-ippicv_2017u3_win_intel64_general_20180518.zip"
+ SHA512 8aa08292d542d521c042864446e47a7a6bdbf3896d86fc7b43255459c24a2e9f34a4e9b177023d178fed7a2e82a9db410f89d81375a542d049785d263f46c64d
+ )
+ else()
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/bdb7bb85f34a8cb0d35e40a81f58da431aa1557a/ippicv/ippicv_2017u3_win_ia32_general_20180518.zip"
+ FILENAME "opencv-cache/ippicv/928168c2d99ab284047dfcfb7a821d91-ippicv_2017u3_win_ia32_general_20180518.zip"
+ SHA512 b89b0fb739152303cafc9fb064fa8b24fd94850697137ccbb5c1e344e0f5094115603a5e3be3a25f85d0faefc5c53429a7d65da0142d012ada41e8db2bcdd6b7
+ )
+ endif()
+endif()
+
+set(WITH_TBB OFF)
+if("tbb" IN_LIST FEATURES)
+ set(WITH_TBB ON)
+endif()
+
+set(WITH_QT OFF)
+if("qt" IN_LIST FEATURES)
+ set(WITH_QT ON)
+endif()
+
+set(WITH_VTK OFF)
+if("vtk" IN_LIST FEATURES)
+ set(WITH_VTK ON)
+endif()
+
+set(WITH_WEBP OFF)
+if("webp" IN_LIST FEATURES)
+ set(WITH_WEBP ON)
+ list(APPEND CMAKE_MODULE_PATH ${CURRENT_INSTALLED_DIR}/share/libwebp)
+endif()
+
+set(WITH_GDCM OFF)
+if("gdcm" IN_LIST FEATURES)
+ set(WITH_GDCM ON)
+endif()
+
+set(WITH_OPENGL OFF)
+if("opengl" IN_LIST FEATURES)
+ set(WITH_OPENGL ON)
+endif()
+
+set(WITH_OPENEXR OFF)
+if("openexr" IN_LIST FEATURES)
+ set(WITH_OPENEXR ON)
+ list(APPEND CMAKE_MODULE_PATH ${CURRENT_INSTALLED_DIR}/share/openexr)
+endif()
+
+set(WITH_MSMF ON)
+if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ set(WITH_MSMF OFF)
+endif()
+
+set(WITH_TIFF OFF)
+if("tiff" IN_LIST FEATURES)
+ set(WITH_TIFF ON)
+endif()
+
+set(WITH_JPEG OFF)
+if("jpeg" IN_LIST FEATURES)
+ set(WITH_JPEG ON)
+endif()
+
+set(WITH_JASPER OFF)
+if("jasper" IN_LIST FEATURES)
+ set(WITH_JASPER ON)
+endif()
+
+set(WITH_PNG OFF)
+if("png" IN_LIST FEATURES)
+ set(WITH_PNG ON)
+endif()
+
+set(WITH_EIGEN OFF)
+if("eigen" IN_LIST FEATURES)
+ set(WITH_EIGEN ON)
+endif()
+
+set(WITH_HALIDE OFF)
+if("halide" IN_LIST FEATURES)
+ set(WITH_HALIDE ON)
+endif()
+
+set(OPENCV_ENABLE_NONFREE OFF)
+if("nonfree" IN_LIST FEATURES)
+ set(OPENCV_ENABLE_NONFREE ON)
+endif()
+
+if(BUILD_opencv_contrib)
+ vcpkg_from_github(
+ OUT_SOURCE_PATH CONTRIB_SOURCE_PATH
+ REPO opencv/opencv_contrib
+ REF ${OPENCV_PORT_VERSION}
+ SHA512 456c6f878fb3bd5459f6430405cf05c609431f8d7db743aa699fc75c305d019682ee3a804bf0cf5107597dd1dbbb69b08be3535a0e6c717e4773ed7c05d08e59
+ HEAD_REF master
+ )
+ set(BUILD_WITH_CONTRIB_FLAG "-DOPENCV_EXTRA_MODULES_PATH=${CONTRIB_SOURCE_PATH}/modules")
+endif()
+
+set(WITH_ZLIB ON)
+set(BUILD_opencv_line_descriptor ON)
+set(BUILD_opencv_saliency ON)
+set(BUILD_opencv_bgsegm ON)
+if(VCPKG_TARGET_ARCHITECTURE MATCHES "arm")
+ set(BUILD_opencv_line_descriptor OFF)
+ set(BUILD_opencv_saliency OFF)
+ set(BUILD_opencv_bgsegm OFF)
+endif()
+
+string(REPLACE ";" "\\\\\;" CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}")
+
+vcpkg_configure_cmake(
+ PREFER_NINJA
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ # Ungrouped Entries
+ -DOpenCV_DISABLE_ARCH_PATH=ON
+ # Do not build docs/examples
+ -DBUILD_DOCS=OFF
+ -DBUILD_EXAMPLES=OFF
+ # Do not build integrated libraries, use external ones whenever possible
+ -DBUILD_JASPER=OFF
+ -DBUILD_JPEG=OFF
+ -DBUILD_OPENEXR=OFF
+ -DBUILD_PACKAGE=OFF
+ -DBUILD_PERF_TESTS=OFF
+ -DBUILD_PNG=OFF
+ -DBUILD_PROTOBUF=OFF
+ -DBUILD_TESTS=OFF
+ -DBUILD_TIFF=OFF
+ -DBUILD_WEBP=OFF
+ -DBUILD_WITH_DEBUG_INFO=ON
+ -DBUILD_WITH_STATIC_CRT=${BUILD_WITH_STATIC_CRT}
+ -DBUILD_ZLIB=OFF
+ # Select which OpenCV modules should be built
+ -DBUILD_opencv_apps=OFF
+ -DBUILD_opencv_bgsegm=${BUILD_opencv_bgsegm}
+ -DBUILD_opencv_dnn=${BUILD_opencv_dnn}
+ -DBUILD_opencv_flann=${BUILD_opencv_flann}
+ -DBUILD_opencv_line_descriptor=${BUILD_opencv_line_descriptor}
+ -DBUILD_opencv_ovis=${BUILD_opencv_ovis}
+ -DBUILD_opencv_python2=OFF
+ -DBUILD_opencv_python3=OFF
+ -DBUILD_opencv_saliency=${BUILD_opencv_saliency}
+ -DBUILD_opencv_sfm=${BUILD_opencv_sfm}
+ -DBUILD_opencv_world=${BUILD_opencv_world}
+ # PROTOBUF
+ -DPROTOBUF_UPDATE_FILES=${PROTOBUF_UPDATE_FILES}
+ -DUPDATE_PROTO_FILES=${UPDATE_PROTO_FILES}
+ # CMAKE
+ -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_JNI=ON
+ "-DCMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}"
+ # ENABLE
+ -DENABLE_CXX11=ON
+ -DENABLE_PYLINT=OFF
+ -DOPENCV_ENABLE_NONFREE=${OPENCV_ENABLE_NONFREE}
+ # INSTALL
+ -DINSTALL_FORCE_UNIX_PATHS=ON
+ -DINSTALL_LICENSE=OFF
+ # OPENCV
+ -DOPENCV_CONFIG_INSTALL_PATH=share/opencv
+ "-DOPENCV_DOWNLOAD_PATH=${DOWNLOADS}/opencv-cache"
+ ${BUILD_WITH_CONTRIB_FLAG}
+ -DOPENCV_OTHER_INSTALL_PATH=share/opencv
+ # WITH
+ -DWITH_CUBLAS=${WITH_CUDA}
+ -DWITH_CUDA=${WITH_CUDA}
+ -DWITH_EIGEN=${WITH_EIGEN}
+ -DWITH_FFMPEG=${WITH_FFMPEG}
+ -DWITH_GDCM=${WITH_GDCM}
+ -DWITH_HALIDE=${WITH_HALIDE}
+ -DWITH_IPP=${WITH_IPP}
+ -DWITH_JASPER=${WITH_JASPER}
+ -DWITH_JPEG=${WITH_JPEG}
+ -DWITH_LAPACK=OFF
+ -DWITH_MATLAB=OFF
+ -DWITH_MSMF=${WITH_MSMF}
+ -DWITH_OPENCLAMDBLAS=OFF
+ -DWITH_OPENEXR=${WITH_OPENEXR}
+ -DWITH_OPENGL=${WITH_OPENGL}
+ -DWITH_PNG=${WITH_PNG}
+ -DWITH_PROTOBUF=${WITH_PROTOBUF}
+ -DWITH_QT=${WITH_QT}
+ -DWITH_TBB=${WITH_TBB}
+ -DWITH_TIFF=${WITH_TIFF}
+ -DWITH_VTK=${WITH_VTK}
+ -DWITH_WEBP=${WITH_WEBP}
+ -DWITH_ZLIB=${WITH_ZLIB}
+ -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR}
+ OPTIONS_DEBUG
+ -DINSTALL_HEADERS=OFF
+ -DINSTALL_OTHER=OFF
+)
+
+vcpkg_install_cmake()
+
+if(VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
+ set(OpenCV_RUNTIME vc15)
+else()
+ set(OpenCV_RUNTIME vc14)
+endif()
+if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
+ set(OpenCV_ARCH x64)
+elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
+ set(OpenCV_ARCH ARM)
+elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
+ set(OpenCV_ARCH ARM64)
+else()
+ set(OpenCV_ARCH x86)
+endif()
+
+file(GLOB BIN_AND_LIB ${CURRENT_PACKAGES_DIR}/${OpenCV_ARCH}/${OpenCV_RUNTIME}/*)
+file(COPY ${BIN_AND_LIB} DESTINATION ${CURRENT_PACKAGES_DIR})
+file(GLOB DEBUG_BIN_AND_LIB ${CURRENT_PACKAGES_DIR}/debug/${OpenCV_ARCH}/${OpenCV_RUNTIME}/*)
+file(COPY ${DEBUG_BIN_AND_LIB} DESTINATION ${CURRENT_PACKAGES_DIR}/debug)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/${OpenCV_ARCH})
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/${OpenCV_ARCH})
+
+file(GLOB STATICLIB ${CURRENT_PACKAGES_DIR}/staticlib/*)
+if(STATICLIB)
+ file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib)
+ file(COPY ${STATICLIB} DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/staticlib)
+endif()
+file(GLOB STATICLIB ${CURRENT_PACKAGES_DIR}/debug/staticlib/*)
+if(STATICLIB)
+ file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib)
+ file(COPY ${STATICLIB} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/staticlib)
+endif()
+
+file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig.cmake OPENCV_CONFIG)
+string(REPLACE "/staticlib/"
+ "/lib/" OPENCV_CONFIG "${OPENCV_CONFIG}")
+file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig.cmake "${OPENCV_CONFIG}")
+
+file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-release.cmake OPENCV_CONFIG_LIB)
+string(REPLACE "/staticlib/"
+ "/lib/" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
+file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-release.cmake "${OPENCV_CONFIG_LIB}")
+
+file(READ ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules-debug.cmake OPENCV_CONFIG_LIB)
+string(REPLACE "/staticlib/"
+ "/lib/" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
+string(REPLACE "PREFIX}/lib"
+ "PREFIX}/debug/lib" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
+string(REPLACE "PREFIX}/bin"
+ "PREFIX}/debug/bin" OPENCV_CONFIG_LIB "${OPENCV_CONFIG_LIB}")
+file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-debug.cmake "${OPENCV_CONFIG_LIB}")
+
+file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake)
+
+file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES)
+string(REPLACE "${CURRENT_INSTALLED_DIR}"
+ "\${_VCPKG_INSTALLED_DIR}/\${VCPKG_TARGET_TRIPLET}" OPENCV_MODULES "${OPENCV_MODULES}")
+file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}")
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES)
+ string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
+ "set(CMAKE_IMPORT_FILE_VERSION 1)
+ find_package(TIFF REQUIRED)" OPENCV_MODULES "${OPENCV_MODULES}")
+ file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}")
+endif()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv)
+
+vcpkg_copy_pdbs()
+
+file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv3)
+file(RENAME ${CURRENT_PACKAGES_DIR}/share/opencv3/LICENSE ${CURRENT_PACKAGES_DIR}/share/opencv3/copyright)
+
+set(VCPKG_POLICY_ALLOW_OBSOLETE_MSVCRT enabled)
diff --git a/ports/opencv/usage b/ports/opencv3/usage
index 1c30e5fea..1c30e5fea 100644
--- a/ports/opencv/usage
+++ b/ports/opencv3/usage
diff --git a/ports/opencv4/0001-disable-downloading.patch b/ports/opencv4/0001-disable-downloading.patch
new file mode 100644
index 000000000..28b00251f
--- /dev/null
+++ b/ports/opencv4/0001-disable-downloading.patch
@@ -0,0 +1,11 @@
+--- a/cmake/OpenCVDownload.cmake
++++ b/cmake/OpenCVDownload.cmake
+@@ -151,6 +151,8 @@ function(ocv_download)
+ # Download
+ if(NOT EXISTS "${CACHE_CANDIDATE}")
+ ocv_download_log("#cmake_download \"${CACHE_CANDIDATE}\" \"${DL_URL}\"")
++ string(REPLACE "${OPENCV_DOWNLOAD_PATH}/" "opencv-cache/" CACHE_SUBPATH "${CACHE_CANDIDATE}")
++ message(FATAL_ERROR " Downloads are not permitted during configure. Please pre-download the file \"${CACHE_CANDIDATE}\":\n \n vcpkg_download_distfile(OCV_DOWNLOAD\n URLS \"${DL_URL}\"\n FILENAME \"${CACHE_SUBPATH}\"\n SHA512 0\n )")
+ file(DOWNLOAD "${DL_URL}" "${CACHE_CANDIDATE}"
+ INACTIVITY_TIMEOUT 60
+ TIMEOUT 600
diff --git a/ports/opencv4/0002-install-options.patch b/ports/opencv4/0002-install-options.patch
new file mode 100644
index 000000000..10aa08c24
--- /dev/null
+++ b/ports/opencv4/0002-install-options.patch
@@ -0,0 +1,69 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8631bbc..e801558 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -647,7 +647,7 @@ endif()
+
+ if(WIN32)
+ # Postfix of DLLs:
+- set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}")
++ set(OPENCV_DLLVERSION "")
+ set(OPENCV_DEBUG_POSTFIX d)
+ else()
+ # Postfix of so's:
+@@ -698,7 +698,7 @@ endif()
+ ocv_cmake_hook(POST_CMAKE_BUILD_OPTIONS)
+
+ # --- Python Support ---
+-if(NOT IOS)
++if(0)
+ include(cmake/OpenCVDetectPython.cmake)
+ endif()
+
+diff --git a/cmake/OpenCVCompilerOptions.cmake b/cmake/OpenCVCompilerOptions.cmake
+index e3ae62f..d866162 100644
+--- a/cmake/OpenCVCompilerOptions.cmake
++++ b/cmake/OpenCVCompilerOptions.cmake
+@@ -256,7 +256,6 @@ if(MSVC)
+ #endif()
+
+ if(BUILD_WITH_DEBUG_INFO)
+- set(OPENCV_EXTRA_FLAGS_RELEASE "${OPENCV_EXTRA_FLAGS_RELEASE} /Zi")
+ set(OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE "${OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE} /debug")
+ set(OPENCV_EXTRA_SHARED_LINKER_FLAGS_RELEASE "${OPENCV_EXTRA_SHARED_LINKER_FLAGS_RELEASE} /debug")
+ endif()
+diff --git a/cmake/OpenCVGenConfig.cmake b/cmake/OpenCVGenConfig.cmake
+index cef9d0b..b6ddb81 100644
+--- a/cmake/OpenCVGenConfig.cmake
++++ b/cmake/OpenCVGenConfig.cmake
+@@ -109,7 +109,7 @@ function(ocv_gen_config TMP_DIR NESTED_PATH ROOT_NAME)
+ endif()
+ endfunction()
+
+-if((CMAKE_HOST_SYSTEM_NAME MATCHES "Linux" OR UNIX) AND NOT ANDROID)
++if(NOT ANDROID)
+ ocv_gen_config("${CMAKE_BINARY_DIR}/unix-install" "" "")
+ endif()
+
+@@ -121,7 +121,7 @@ endif()
+ # --------------------------------------------------------------------------------------------
+ # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
+ # --------------------------------------------------------------------------------------------
+-if(WIN32)
++if(0)
+ if(CMAKE_HOST_SYSTEM_NAME MATCHES Windows)
+ if(BUILD_SHARED_LIBS)
+ set(_lib_suffix "lib")
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 1f0d720..0bb1ff7 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -1,8 +1,6 @@
+ file(GLOB HAAR_CASCADES haarcascades/*.xml)
+ file(GLOB LBP_CASCADES lbpcascades/*.xml)
+
+-install(FILES ${HAAR_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/haarcascades COMPONENT libs)
+-install(FILES ${LBP_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/lbpcascades COMPONENT libs)
+
+ if(INSTALL_TESTS AND OPENCV_TEST_DATA_PATH)
+ install(DIRECTORY "${OPENCV_TEST_DATA_PATH}/" DESTINATION "${OPENCV_TEST_DATA_INSTALL_PATH}" COMPONENT "tests")
diff --git a/ports/opencv4/0003-force-package-requirements.patch b/ports/opencv4/0003-force-package-requirements.patch
new file mode 100644
index 000000000..b6051f849
--- /dev/null
+++ b/ports/opencv4/0003-force-package-requirements.patch
@@ -0,0 +1,128 @@
+diff --git a/cmake/OpenCVFindLibsGrfmt.cmake b/cmake/OpenCVFindLibsGrfmt.cmake
+index 227cfb2..7a97a19 100644
+--- a/cmake/OpenCVFindLibsGrfmt.cmake
++++ b/cmake/OpenCVFindLibsGrfmt.cmake
+@@ -6,7 +6,7 @@
+ if(BUILD_ZLIB)
+ ocv_clear_vars(ZLIB_FOUND)
+ else()
+- find_package(ZLIB "${MIN_VER_ZLIB}")
++ find_package(ZLIB "${MIN_VER_ZLIB}" REQUIRED)
+ if(ZLIB_FOUND AND ANDROID)
+ if(ZLIB_LIBRARIES MATCHES "/usr/(lib|lib32|lib64)/libz.so$")
+ set(ZLIB_LIBRARIES z)
+@@ -30,7 +30,7 @@ if(WITH_JPEG)
+ if(BUILD_JPEG)
+ ocv_clear_vars(JPEG_FOUND)
+ else()
+- include(FindJPEG)
++ find_package(JPEG REQUIRED)
+ endif()
+
+ if(NOT JPEG_FOUND)
+@@ -74,7 +74,7 @@ if(WITH_TIFF)
+ if(BUILD_TIFF)
+ ocv_clear_vars(TIFF_FOUND)
+ else()
+- include(FindTIFF)
++ find_package(TIFF REQUIRED)
+ if(TIFF_FOUND)
+ ocv_parse_header("${TIFF_INCLUDE_DIR}/tiff.h" TIFF_VERSION_LINES TIFF_VERSION_CLASSIC TIFF_VERSION_BIG TIFF_VERSION TIFF_BIGTIFF_VERSION)
+ endif()
+@@ -117,7 +117,7 @@ if(WITH_WEBP)
+ if(BUILD_WEBP)
+ ocv_clear_vars(WEBP_FOUND WEBP_LIBRARY WEBP_LIBRARIES WEBP_INCLUDE_DIR)
+ else()
+- include(cmake/OpenCVFindWebP.cmake)
++ find_package(WebP REQUIRED)
+ if(WEBP_FOUND)
+ set(HAVE_WEBP 1)
+ endif()
+@@ -158,7 +158,7 @@ if(WITH_JASPER)
+ if(BUILD_JASPER)
+ ocv_clear_vars(JASPER_FOUND)
+ else()
+- include(FindJasper)
++ find_package(Jasper REQUIRED)
+ endif()
+
+ if(NOT JASPER_FOUND)
+@@ -182,7 +182,7 @@ if(WITH_PNG)
+ if(BUILD_PNG)
+ ocv_clear_vars(PNG_FOUND)
+ else()
+- include(FindPNG)
++ find_package(PNG REQUIRED)
+ if(PNG_FOUND)
+ include(CheckIncludeFile)
+ check_include_file("${PNG_PNG_INCLUDE_DIR}/libpng/png.h" HAVE_LIBPNG_PNG_H)
+@@ -213,7 +213,7 @@ endif()
+ if(WITH_OPENEXR)
+ ocv_clear_vars(HAVE_OPENEXR)
+ if(NOT BUILD_OPENEXR)
+- include("${OpenCV_SOURCE_DIR}/cmake/OpenCVFindOpenEXR.cmake")
++ find_package(OpenEXR REQUIRED)
+ endif()
+
+ if(OPENEXR_FOUND)
+@@ -231,7 +231,7 @@ endif()
+
+ # --- GDAL (optional) ---
+ if(WITH_GDAL)
+- find_package(GDAL QUIET)
++ find_package(GDAL REQUIRED)
+
+ if(NOT GDAL_FOUND)
+ set(HAVE_GDAL NO)
+@@ -243,7 +243,7 @@ if(WITH_GDAL)
+ endif()
+
+ if (WITH_GDCM)
+- find_package(GDCM QUIET)
++ find_package(GDCM REQUIRED)
+ if(NOT GDCM_FOUND)
+ set(HAVE_GDCM NO)
+ ocv_clear_vars(GDCM_VERSION GDCM_LIBRARIES)
+@@ -273,4 +273,4 @@ if(WITH_IMGCODEC_PFM)
+ set(HAVE_IMGCODEC_PFM ON)
+ elseif(DEFINED WITH_IMGCODEC_PFM)
+ set(HAVE_IMGCODEC_PFM OFF)
+-endif()
+\ No newline at end of file
++endif()
+diff --git a/cmake/OpenCVFindLibsPerf.cmake b/cmake/OpenCVFindLibsPerf.cmake
+index a658bf6..5c9411a 100644
+--- a/cmake/OpenCVFindLibsPerf.cmake
++++ b/cmake/OpenCVFindLibsPerf.cmake
+@@ -41,14 +41,9 @@ endif(WITH_CUDA)
+
+ # --- Eigen ---
+ if(WITH_EIGEN AND NOT HAVE_EIGEN)
+- find_package(Eigen3 QUIET)
++ find_package(Eigen3 REQUIRED)
+
+ if(Eigen3_FOUND)
+- if(TARGET Eigen3::Eigen)
+- # Use Eigen3 imported target if possible
+- list(APPEND OPENCV_LINKER_LIBS Eigen3::Eigen)
+- set(HAVE_EIGEN 1)
+- else()
+ if(DEFINED EIGEN3_INCLUDE_DIRS)
+ set(EIGEN_INCLUDE_PATH ${EIGEN3_INCLUDE_DIRS})
+ set(HAVE_EIGEN 1)
+@@ -56,7 +51,6 @@ if(WITH_EIGEN AND NOT HAVE_EIGEN)
+ set(EIGEN_INCLUDE_PATH ${EIGEN3_INCLUDE_DIR})
+ set(HAVE_EIGEN 1)
+ endif()
+- endif()
+ if(HAVE_EIGEN)
+ if(DEFINED EIGEN3_WORLD_VERSION) # CMake module
+ set(EIGEN_WORLD_VERSION ${EIGEN3_WORLD_VERSION})
+@@ -67,6 +61,7 @@ if(WITH_EIGEN AND NOT HAVE_EIGEN)
+ set(EIGEN_MAJOR_VERSION ${EIGEN3_VERSION_MINOR})
+ set(EIGEN_MINOR_VERSION ${EIGEN3_VERSION_PATCH})
+ endif()
++ ocv_include_directories(${EIGEN_INCLUDE_PATH})
+ endif()
+ endif()
+
diff --git a/ports/opencv4/0009-fix-uwp.patch b/ports/opencv4/0009-fix-uwp.patch
new file mode 100644
index 000000000..5c54256a5
--- /dev/null
+++ b/ports/opencv4/0009-fix-uwp.patch
@@ -0,0 +1,57 @@
+diff --git a/cmake/OpenCVModule.cmake b/cmake/OpenCVModule.cmake
+index 799592b..3f44173 100644
+--- a/cmake/OpenCVModule.cmake
++++ b/cmake/OpenCVModule.cmake
+@@ -852,7 +852,7 @@ macro(ocv_create_module)
+ set(the_module_target ${the_module})
+ endif()
+
+- if(WINRT)
++ if(WINRT AND BUILD_TESTS)
+ # removing APPCONTAINER from modules to run from console
+ # in case of usual starting of WinRT test apps output is missing
+ # so starting of console version w/o APPCONTAINER is required to get test results
+@@ -1175,7 +1175,7 @@ function(ocv_add_perf_tests)
+ set_target_properties(${the_target} PROPERTIES FOLDER "tests performance")
+ endif()
+
+- if(WINRT)
++ if(WINRT AND BUILD_TESTS)
+ # removing APPCONTAINER from tests to run from console
+ # look for detailed description inside of ocv_create_module macro above
+ add_custom_command(TARGET "opencv_perf_${name}"
+diff --git a/modules/core/src/utils/datafile.cpp b/modules/core/src/utils/datafile.cpp
+index aafbfdf..10543ae 100644
+--- a/modules/core/src/utils/datafile.cpp
++++ b/modules/core/src/utils/datafile.cpp
+@@ -108,7 +108,7 @@ static cv::String getModuleLocation(const void* addr)
+ CV_UNUSED(addr);
+ #ifdef _WIN32
+ HMODULE m = 0;
+-#if _WIN32_WINNT >= 0x0501
++#if _WIN32_WINNT >= 0x0501 && (!defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP))
+ ::GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
+ reinterpret_cast<LPCTSTR>(addr),
+ &m);
+@@ -155,7 +155,7 @@ bool getBinLocation(std::wstring& dst)
+ {
+ void* addr = (void*)getModuleLocation; // using code address, doesn't work with static linkage!
+ HMODULE m = 0;
+-#if _WIN32_WINNT >= 0x0501
++#if _WIN32_WINNT >= 0x0501 && (!defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP))
+ ::GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
+ reinterpret_cast<LPCTSTR>(addr),
+ &m);
+diff --git a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp
+index 236e227..eccf97e 100644
+--- a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp
++++ b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp
+@@ -94,7 +94,7 @@ Media::CaptureFrameGrabber::~CaptureFrameGrabber()
+
+ void Media::CaptureFrameGrabber::ShowCameraSettings()
+ {
+-#if WINAPI_FAMILY!=WINAPI_FAMILY_PHONE_APP
++#if (WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP) && (WINAPI_FAMILY != WINAPI_FAMILY_PC_APP)
+ if (_state == State::Started)
+ {
+ CameraOptionsUI::Show(_capture.Get());
diff --git a/ports/opencv4/CONTROL b/ports/opencv4/CONTROL
new file mode 100644
index 000000000..29d6ec9ce
--- /dev/null
+++ b/ports/opencv4/CONTROL
@@ -0,0 +1,96 @@
+Source: opencv4
+Version: 4.1.1
+Build-Depends: protobuf, zlib
+Description: computer vision library
+Default-Features: dnn, jpeg, opengl, png, tiff, webp
+
+Feature: nonfree
+Description: opencv nonfree module
+
+Feature: ade
+Build-Depends: ade
+Description: graph api
+
+Feature: contrib
+Build-Depends: hdf5 (!uwp)
+Description: opencv_contrib module
+
+Feature: cuda
+Build-Depends: opencv4[contrib], cuda
+Description: CUDA support for opencv
+
+Feature: dnn
+Description: Enable dnn module
+
+Feature: eigen
+Build-Depends: eigen3
+Description: Eigen support for opencv
+
+Feature: ffmpeg
+Build-Depends: ffmpeg
+Description: ffmpeg support for opencv
+
+Feature: gdcm
+Build-Depends: gdcm
+Description: GDCM support for opencv
+
+Feature: ipp
+Description: Enable Intel Integrated Performance Primitives
+
+Feature: jasper
+Build-Depends: jasper
+Description: JPEG 2000 support for opencv
+
+Feature: jpeg
+Build-Depends: libjpeg-turbo
+Description: JPEG support for opencv
+
+Feature: openexr
+Build-Depends: openexr
+Description: OpenEXR support for opencv
+
+Feature: opengl
+Build-Depends: opengl
+Description: opengl support for opencv
+
+Feature: openmp
+Description: Enable openmp support for opencv
+
+Feature: ovis
+Build-Depends: opencv4[contrib], ogre
+Description: opencv_ovis module
+
+Feature: png
+Build-Depends: libpng
+Description: PNG support for opencv
+
+Feature: qt
+Build-Depends: qt5
+Description: Qt GUI support for opencv
+
+Feature: sfm
+Build-Depends: opencv4[contrib], eigen3, glog, gflags, ceres
+Description: opencv_sfm module
+
+Feature: tbb
+Build-Depends: tbb
+Description: Enable Intel Threading Building Blocks
+
+Feature: tiff
+Build-Depends: tiff
+Description: TIFF support for opencv
+
+Feature: vtk
+Build-Depends: vtk
+Description: vtk support for opencv
+
+Feature: webp
+Build-Depends: libwebp
+Description: WebP support for opencv
+
+Feature: halide
+Build-Depends: halide, opencv4[dnn]
+Description: Halide support for opencv
+
+Feature: world
+Description: Compile to a single package support for opencv
diff --git a/ports/opencv4/portfile.cmake b/ports/opencv4/portfile.cmake
new file mode 100644
index 000000000..a1faafc71
--- /dev/null
+++ b/ports/opencv4/portfile.cmake
@@ -0,0 +1,378 @@
+if (EXISTS "${CURRENT_INSTALLED_DIR}/share/opencv3")
+ message(FATAL_ERROR "OpenCV 3 is installed, please uninstall and try again:\n vcpkg remove opencv3")
+endif()
+
+include(vcpkg_common_functions)
+
+set(OPENCV_VERSION "4.1.1")
+
+if(VCPKG_TARGET_IS_LINUX)
+ message("OpenCV currently requires the following library from the system package manager:\n libgtk3\n\nThis can be installed on Ubuntu systems via apt-get install libgtk-3-dev")
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO opencv/opencv
+ REF ${OPENCV_VERSION}
+ SHA512 80fa48d992ca06a2a4ab6740df6d8c21f4926165486b393969da2c5bbe2f3a0b799fb76dee5e3654e90c743e49bbd2b5b02ad59a4766896bbf4cd5b4e3251e0f
+ HEAD_REF master
+ PATCHES
+ 0001-disable-downloading.patch
+ 0002-install-options.patch
+ 0003-force-package-requirements.patch
+ 0009-fix-uwp.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT)
+
+set(ADE_DIR ${CURRENT_INSTALLED_DIR}/share/ade CACHE PATH "Path to existing ADE CMake Config file")
+
+vcpkg_check_features(
+ "ade" WITH_ADE
+ "contrib" WITH_CONTRIB
+ "cuda" WITH_CUDA
+ "dnn" BUILD_opencv_dnn
+ "eigen" WITH_EIGEN
+ "ffmpeg" WITH_FFMPEG
+ "gdcm" WITH_GDCM
+ "halide" WITH_HALIDE
+ "ipp" WITH_IPP
+ "jasper" WITH_JASPER
+ "jpeg" WITH_JPEG
+ "nonfree" OPENCV_ENABLE_NONFREE
+ "openexr" WITH_OPENEXR
+ "opengl" WITH_OPENGL
+ "openmp" WITH_OPENMP
+ "ovis" BUILD_opencv_ovis
+ "png" WITH_PNG
+ "qt" WITH_QT
+ "sfm" BUILD_opencv_sfm
+ "tbb" WITH_TBB
+ "tiff" WITH_TIFF
+ "vtk" WITH_VTK
+ "webp" WITH_WEBP
+ "world" BUILD_opencv_world
+)
+
+if(WITH_CUDA)
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://github.com/NVIDIA/NVIDIAOpticalFlowSDK/archive/79c6cee80a2df9a196f20afd6b598a9810964c32.zip"
+ FILENAME "opencv-cache/nvidia_optical_flow/ca5acedee6cb45d0ec610a6732de5c15-79c6cee80a2df9a196f20afd6b598a9810964c32.zip"
+ SHA512 d80cdedec588dafaad4ebb8615349f842ecdc64d3ca9480fee7086d606e6f2362606a9a2ce273c5cf507be2840ec24bbcbe32c2962672c3bcfb72d31428ef73d
+ )
+endif()
+
+# Build image quality module when building with 'contrib' feature and not UWP.
+set(BUILD_opencv_quality OFF)
+if(WITH_CONTRIB)
+ if (VCPKG_TARGET_IS_UWP)
+ set(BUILD_opencv_quality OFF)
+ message(WARNING "The image quality module (quality) does not build for UWP, the module has been disabled.")
+ # The hdf module is silently disabled by OpenCVs buildsystem if HDF5 is not detected.
+ message(WARNING "The hierarchical data format module (hdf) depends on HDF5 which doesn't support UWP, the module has been disabled.")
+ else()
+ set(BUILD_opencv_quality CMAKE_DEPENDS_IN_PROJECT_ONLY)
+ endif()
+
+ vcpkg_from_github(
+ OUT_SOURCE_PATH CONTRIB_SOURCE_PATH
+ REPO opencv/opencv_contrib
+ REF ${OPENCV_VERSION}
+ SHA512 8af13f0a5f350360316662c1ce5e58c21d906a58591acfbd575a8dacde19b6f3bbd694c3c199feb35c33549cf8c37e3fb4c494b586a00ad29fe3b4aeeb2d22ab
+ HEAD_REF master
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i"
+ SHA512 5c8702a60314fac4ebb6dafb62a603948ec034058d1a582fcb89a063b51511802c02e192eadfc0b233b1f711f4c74cabab6d9ebe8a50c3554ea0ccdbef87dc5c
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_bi.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/232c966b13651bd0e46a1497b0852191-boostdesc_bgm_bi.i"
+ SHA512 b28ba2b615e0755ff0f6733b567682800fb9e7d522250aa498075cc1b8927f4177cacdcb0cfdf712539a29c4773232dc714931b6d292292b091b5cf170b203a6
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_hd.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/324426a24fa56ad9c5b8e3e0b3e5303e-boostdesc_bgm_hd.i"
+ SHA512 c214045c3730a1d9dfc594f70895edf82d2fd3058a3928908627014371e02460d052cbaedf41bb96cf76460c0a8b4b01b7b0ac7d269ec5d3f17f2a46c9f0091b
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_064.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/202e1b3e9fec871b04da31f7f016679f-boostdesc_binboost_064.i"
+ SHA512 f32240a7b975233d2bbad02fdb74c6e29ed71ed6f0c08172ca33eb1e69a7a7f6d6964adf41422213a0452121a9c4bb2effe3d7b9d6743c9bf58d4bc8c9b1db36
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_128.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/98ea99d399965c03d555cef3ea502a0b-boostdesc_binboost_128.i"
+ SHA512 f58e2bebfaa690d324691a6c2067d9a1e5267037ea0f2b397966289253b9efd27d8238aff6206e95262086e1fcddf01ae1a1c49f066a8bbac3aa7908214b9a8f
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_256.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/e6dcfa9f647779eb1ce446a8d759b6ea-boostdesc_binboost_256.i"
+ SHA512 351ee07b9714a379c311f293d96e99f001c894393c911a421b4c536345d43c02ba2d867e9f657eac104841563045ab8c8edab878e5ffeb1e1a7494375ef58987
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_lbgm.i"
+ FILENAME "opencv-cache/xfeatures2d/boostdesc/0ae0675534aa318d9668f2a179c2a052-boostdesc_lbgm.i"
+ SHA512 7fa12e2207ff154acf2433bbb4f3f47aa71d1fa8789493b688d635d20586b7ead30ee8dcd3b3753992ebbe98062cbde44d02683db1c563d52e35aefd7912a4f2
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_48.i"
+ FILENAME "opencv-cache/xfeatures2d/vgg/e8d0dcd54d1bcfdc29203d011a797179-vgg_generated_48.i"
+ SHA512 2403e9119738261a05a3116ca7e5c9e11da452c422f8670cd96ad2cb5bf970f76172e23b9913a3172adf06f2b31bee956f605b66dbccf3d706c4334aff713774
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_64.i"
+ FILENAME "opencv-cache/xfeatures2d/vgg/7126a5d9a8884ebca5aea5d63d677225-vgg_generated_64.i"
+ SHA512 2c954223677905f489b01988389ac80a8caa33bdb57adb3cb9409075012b5e2f472f14966d8be75d75c90c9330f66d59c69539dc6b5a5e265a4d98ff5041f0ea
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_80.i"
+ FILENAME "opencv-cache/xfeatures2d/vgg/7cd47228edec52b6d82f46511af325c5-vgg_generated_80.i"
+ SHA512 9931ad1d1bd6d11951ca5357ab0a524f6ff9b33f936ceeafebc0dafb379ec7e2105e467443e9f424f60a0f2f445bdff821ed9e42330abed883227183ebad4a9e
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_120.i"
+ FILENAME "opencv-cache/xfeatures2d/vgg/151805e03568c9f490a5e3a872777b75-vgg_generated_120.i"
+ SHA512 ad7c1d2b159ab5790c898815663bb90549f1cf7ade3c82d939d381608b26d26c5b2af01eb1ba21f4d114ced74586ab3fc83f14e2d8cfe4e6faac538aa0e7e255
+ )
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat"
+ FILENAME "opencv-cache/data/7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat"
+ SHA512 c16e60a6c4bb4de3ab39b876ae3c3f320ea56f69c93e9303bd2dff8760841dcd71be4161fff8bc71e8fe4fe8747fa8465d49d6bd8f5ebcdaea161f4bc2da7c93
+ )
+ set(BUILD_WITH_CONTRIB_FLAG "-DOPENCV_EXTRA_MODULES_PATH=${CONTRIB_SOURCE_PATH}/modules")
+endif()
+
+if(BUILD_opencv_dnn)
+ vcpkg_download_distfile(TINYDNN_ARCHIVE
+ URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz"
+ FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz"
+ SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
+ )
+endif()
+
+if(WITH_IPP)
+ if(VCPKG_TARGET_IS_OSX)
+ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv/ippicv_2019_mac_intel64_general_20180723.tgz"
+ FILENAME "opencv-cache/ippicv/fe6b2bb75ae0e3f19ad3ae1a31dfa4a2-ippicv_2019_mac_intel64_general_20180723.tgz"
+ SHA512 266fe3fecf8e95e1f51c09b65330a577743ef72b423b935d4d1fe8d87f1b4f258c282fe6a18fc805d489592f137ebed37c9f1d1b34026590d9f1ba107015132e
+ )
+ else()
+ message(WARNING "This target architecture is not supported IPPICV")
+ set(WITH_IPP OFF)
+ endif()
+ elseif(VCPKG_TARGET_IS_LINUX)
+ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv/ippicv_2019_lnx_intel64_general_20180723.tgz"
+ FILENAME "opencv-cache/ippicv/c0bd78adb4156bbf552c1dfe90599607-ippicv_2019_lnx_intel64_general_20180723.tgz"
+ SHA512 e4ec6b3b9fc03d7b3ae777c2a26f57913e83329fd2f7be26c259b07477ca2a641050b86979e0c96e25aa4c1f9f251b28727690358a77418e76dd910d0f4845c9
+ )
+ elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv/ippicv_2019_lnx_ia32_general_20180723.tgz"
+ FILENAME "opencv-cache/ippicv/4f38432c30bfd6423164b7a24bbc98a0-ippicv_2019_lnx_ia32_general_20180723.tgz"
+ SHA512 d96d3989928ff11a18e631bf5ecfdedf88fd350162a23fa2c8f7dbc3bf878bf442aff7fb2a07dc56671d7268cc20682055891be75b9834e9694d20173e92b6a3
+ )
+ else()
+ message(WARNING "This target architecture is not supported IPPICV")
+ set(WITH_IPP OFF)
+ endif()
+ elseif(VCPKG_TARGET_IS_WINDOWS)
+ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv/ippicv_2019_win_intel64_20180723_general.zip"
+ FILENAME "opencv-cache/ippicv/1d222685246896fe089f88b8858e4b2f-ippicv_2019_win_intel64_20180723_general.zip"
+ SHA512 b6c4f2696e2004b8f5471efd9bdc6c684b77830e0533d8880310c0b665b450d6f78e10744c937f5592ab900e187c475e46cb49e98701bb4bcbbc7da77723011d
+ )
+ elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
+ vcpkg_download_distfile(OCV_DOWNLOAD
+ URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/32e315a5b106a7b89dbed51c28f8120a48b368b4/ippicv/ippicv_2019_win_ia32_20180723_general.zip"
+ FILENAME "opencv-cache/ippicv/0157251a2eb9cd63a3ebc7eed0f3e59e-ippicv_2019_win_ia32_20180723_general.zip"
+ SHA512 c33fd4019c71b064b153e1b25e0307f9c7ada693af8ec910410edeab471c6f14df9b11bf9f5302ceb0fcd4282f5c0b6c92fb5df0e83eb50ed630c45820d1e184
+ )
+ else()
+ message(WARNING "This target architecture is not supported IPPICV")
+ set(WITH_IPP OFF)
+ endif()
+ else()
+ message(WARNING "This target architecture is not supported IPPICV")
+ set(WITH_IPP OFF)
+ endif()
+endif()
+
+set(WITH_MSMF ON)
+if(NOT VCPKG_TARGET_IS_WINDOWS OR VCPKG_TARGET_IS_UWP)
+ set(WITH_MSMF OFF)
+endif()
+
+if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
+ if (WITH_TBB)
+ message(WARNING "TBB is currently unsupported in this build configuration, turning it off")
+ set(WITH_TBB OFF)
+ endif()
+
+ if (WITH_VTK)
+ message(WARNING "VTK is currently unsupported in this build configuration, turning it off")
+ set(WITH_VTK OFF)
+ endif()
+
+ if (VCPKG_TARGET_IS_WINDOWS AND BUILD_opencv_ovis)
+ message(WARNING "OVIS is currently unsupported in this build configuration, turning it off")
+ set(BUILD_opencv_ovis OFF)
+ endif()
+endif()
+
+vcpkg_configure_cmake(
+ PREFER_NINJA
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ ###### ocv_options
+ -DOpenCV_INSTALL_BINARIES_PREFIX=
+ -DOPENCV_LIB_INSTALL_PATH=lib
+ -DOPENCV_3P_LIB_INSTALL_PATH=lib
+ -DOPENCV_CONFIG_INSTALL_PATH=share/opencv
+ -DOPENCV_FFMPEG_USE_FIND_PACKAGE=FFMPEG
+ -DCMAKE_DEBUG_POSTFIX=d
+ ###### Ungrouped Entries
+ -DOPENCV_ENABLE_NONFREE=${OPENCV_ENABLE_NONFREE}
+ -DBUILD_opencv_java=OFF
+ -Dade_DIR=${ADE_DIR}
+ ###### Disable build 3rd party libs
+ -DBUILD_JASPER=OFF
+ -DBUILD_JPEG=OFF
+ -DBUILD_OPENEXR=OFF
+ -DBUILD_PNG=OFF
+ -DBUILD_TIFF=OFF
+ -DBUILD_WEBP=OFF
+ -DBUILD_ZLIB=OFF
+ -DBUILD_TBB=OFF
+ -DBUILD_IPP_IW=OFF
+ -DBUILD_ITT=OFF
+ ###### Disable build 3rd party components
+ -DBUILD_PROTOBUF=OFF
+ ###### OpenCV Build components
+ -DBUILD_opencv_apps=OFF
+ -DBUILD_opencv_js=OFF
+ -DBUILD_ANDROID_PROJECT=OFF
+ -DBUILD_ANDROID_EXAMPLES=OFF
+ -DBUILD_DOCS=OFF
+ -DBUILD_EXAMPLES=OFF
+ -DBUILD_PACKAGE=OFF
+ -DBUILD_PERF_TESTS=OFF
+ -DBUILD_TESTS=OFF
+ -DBUILD_WITH_DEBUG_INFO=ON
+ -DBUILD_WITH_STATIC_CRT=${BUILD_WITH_STATIC_CRT}
+ -DBUILD_JAVA=OFF
+ -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR}
+ ###### PROTOBUF
+ -DPROTOBUF_UPDATE_FILES=ON
+ -DUPDATE_PROTO_FILES=ON
+ ###### PYLINT/FLAKE8
+ -DENABLE_PYLINT=OFF
+ -DENABLE_FLAKE8=OFF
+ # CMAKE
+ -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_JNI=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
+ # ENABLE
+ -DENABLE_CXX11=ON
+ ###### OPENCV vars
+ "-DOPENCV_DOWNLOAD_PATH=${DOWNLOADS}/opencv-cache"
+ ${BUILD_WITH_CONTRIB_FLAG}
+ -DOPENCV_OTHER_INSTALL_PATH=share/opencv
+ ###### customized properties
+ -DWITH_ADE=${WITH_ADE}
+ -DWITH_CUBLAS=${WITH_CUDA}
+ -DWITH_CUDA=${WITH_CUDA}
+ -DWITH_EIGEN=${WITH_EIGEN}
+ -DWITH_FFMPEG=${WITH_FFMPEG}
+ -DWITH_GDCM=${WITH_GDCM}
+ -DWITH_HALIDE=${WITH_HALIDE}
+ -DWITH_IPP=${WITH_IPP}
+ -DWITH_JASPER=${WITH_JASPER}
+ -DWITH_JPEG=${WITH_JPEG}
+ -DWITH_MSMF=${WITH_MSMF}
+ -DWITH_OPENEXR=${WITH_OPENEXR}
+ -DWITH_OPENGL=${WITH_OPENGL}
+ -DWITH_OPENMP=${WITH_OPENMP}
+ -DWITH_PNG=${WITH_PNG}
+ -DWITH_PROTOBUF=ON
+ -DWITH_QT=${WITH_QT}
+ -DWITH_TBB=${WITH_TBB}
+ -DWITH_TIFF=${WITH_TIFF}
+ -DWITH_VTK=${WITH_VTK}
+ -DWITH_WEBP=${WITH_WEBP}
+ ###### WITH PROPERTIES explicitly disabled, they have problems with libraries if already installed by user and that are "involuntarily" found during install
+ -DWITH_LAPACK=OFF
+ ###### BUILD_options (mainly modules which require additional libraries)
+ -DBUILD_opencv_ovis=${BUILD_opencv_ovis}
+ -DBUILD_opencv_sfm=${BUILD_opencv_sfm}
+ -DBUILD_opencv_dnn=${BUILD_opencv_dnn}
+ -DBUILD_opencv_world=${BUILD_opencv_world}
+ ###### The following modules are disabled for UWP
+ -DBUILD_opencv_quality=${BUILD_opencv_quality}
+)
+
+vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets(CONFIG_PATH "share/opencv" TARGET_PATH "share/opencv")
+vcpkg_copy_pdbs()
+
+# OpenCV does not list TIFF as a dependency.
+# We explicitly add it to the module file,
+# in order to fix unresolved symbols linking problems
+# for downstream projects using OpenCV as static library
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES)
+ string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
+ "set(CMAKE_IMPORT_FILE_VERSION 1)
+find_package(TIFF REQUIRED)
+find_package(Protobuf REQUIRED)
+if(Protobuf_FOUND)
+ if(TARGET protobuf::libprotobuf)
+ add_library(libprotobuf INTERFACE IMPORTED)
+ set_target_properties(libprotobuf PROPERTIES
+ INTERFACE_LINK_LIBRARIES protobuf::libprotobuf
+ )
+ else()
+ add_library(libprotobuf UNKNOWN IMPORTED)
+ set_target_properties(libprotobuf PROPERTIES
+ IMPORTED_LOCATION \"${Protobuf_LIBRARY}\"
+ INTERFACE_INCLUDE_DIRECTORIES \"${Protobuf_INCLUDE_DIR}\"
+ INTERFACE_SYSTEM_INCLUDE_DIRECTORIES \"${Protobuf_INCLUDE_DIR}\"
+ )
+ endif()
+endif()
+find_package(HDF5 QUIET)
+find_package(Freetype QUIET)
+find_package(Ogre QUIET)
+find_package(gflags QUIET)
+find_package(Ceres QUIET)
+find_package(ade QUIET)
+find_package(VTK QUIET)
+find_package(OpenMP QUIET)
+find_package(GDCM QUIET)" OPENCV_MODULES "${OPENCV_MODULES}")
+
+ if(WITH_OPENMP)
+ string(REPLACE "set_target_properties(opencv_core PROPERTIES
+ INTERFACE_LINK_LIBRARIES \""
+ "set_target_properties(opencv_core PROPERTIES
+ INTERFACE_LINK_LIBRARIES \"\$<LINK_ONLY:OpenMP::OpenMP_CXX>;" OPENCV_MODULES "${OPENCV_MODULES}")
+ endif()
+
+ file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}")
+
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
+endif()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/setup_vars_opencv4.cmd)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/setup_vars_opencv4.cmd)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/LICENSE)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/LICENSE)
+
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv4 RENAME copyright)
diff --git a/ports/pthreads/CONTROL b/ports/pthreads/CONTROL
index 53d5706c7..448fb9951 100644
--- a/ports/pthreads/CONTROL
+++ b/ports/pthreads/CONTROL
@@ -1,4 +1,4 @@
Source: pthreads
-Version: 3.0.0-2
+Version: 3.0.0-3
Homepage: https://sourceware.org/pub/pthreads-win32/
Description: pthreads for windows
diff --git a/ports/pthreads/vcpkg-cmake-wrapper.cmake b/ports/pthreads/vcpkg-cmake-wrapper.cmake
index 8d3a4e875..12d390a7a 100644
--- a/ports/pthreads/vcpkg-cmake-wrapper.cmake
+++ b/ports/pthreads/vcpkg-cmake-wrapper.cmake
@@ -70,18 +70,21 @@ if(NOT PThreads4W_STRUCTEXC_LIBRARY)
find_library(PThreads4W_STRUCTEXC_LIBRARY_DEBUG NAMES pthreadVSE${PThreads4W_MAJOR_VERSION}d)
select_library_configurations(PThreads4W_STRUCTEXC)
endif()
-if(WIN32)
- string( REPLACE ".lib" ".dll" PThreads4W_LIBRARY_RELEASE_DLL "${PThreads4W_LIBRARY_RELEASE}" )
- string( REPLACE ".lib" ".dll" PThreads4W_LIBRARY_DEBUG_DLL "${PThreads4W_LIBRARY_DEBUG}" )
- string( REPLACE ".lib" ".dll" PThreads4W_CXXEXC_LIBRARY_RELEASE_DLL "${PThreads4W_CXXEXC_LIBRARY_RELEASE}" )
- string( REPLACE ".lib" ".dll" PThreads4W_CXXEXC_LIBRARY_DEBUG_DLL "${PThreads4W_CXXEXC_LIBRARY_DEBUG}" )
- string( REPLACE ".lib" ".dll" PThreads4W_STRUCTEXC_LIBRARY_RELEASE_DLL "${PThreads4W_STRUCTEXC_LIBRARY_RELEASE}" )
- string( REPLACE ".lib" ".dll" PThreads4W_STRUCTEXC_LIBRARY_DEBUG_DLL "${PThreads4W_STRUCTEXC_LIBRARY_DEBUG}" )
-endif()
find_package_handle_standard_args(PThreads4W DEFAULT_MSG PThreads4W_LIBRARY PThreads4W_CXXEXC_LIBRARY PThreads4W_STRUCTEXC_LIBRARY PThreads4W_INCLUDE_DIR)
mark_as_advanced(PThreads4W_INCLUDE_DIR PThreads4W_LIBRARY PThreads4W_CXXEXC_LIBRARY PThreads4W_STRUCTEXC_LIBRARY)
+set(PThreads4W_DLL_DIR ${PThreads4W_INCLUDE_DIR})
+list(TRANSFORM PThreads4W_DLL_DIR APPEND "/../bin")
+message(STATUS "PThreads4W_DLL_DIR: ${PThreads4W_DLL_DIR}")
+
+find_file(PThreads4W_LIBRARY_RELEASE_DLL NAMES pthreadVC${PThreads4W_MAJOR_VERSION}.dll PATHS ${PThreads4W_DLL_DIR})
+find_file(PThreads4W_LIBRARY_DEBUG_DLL NAMES pthreadVC${PThreads4W_MAJOR_VERSION}d.dll PATHS ${PThreads4W_DLL_DIR})
+find_file(PThreads4W_CXXEXC_LIBRARY_RELEASE_DLL NAMES pthreadVCE${PThreads4W_MAJOR_VERSION}.dll PATHS ${PThreads4W_DLL_DIR})
+find_file(PThreads4W_CXXEXC_LIBRARY_DEBUG_DLL NAMES pthreadVCE${PThreads4W_MAJOR_VERSION}d.dll PATHS ${PThreads4W_DLL_DIR})
+find_file(PThreads4W_STRUCTEXC_LIBRARY_RELEASE_DLL NAMES pthreadVSE${PThreads4W_MAJOR_VERSION}.dll PATHS ${PThreads4W_DLL_DIR})
+find_file(PThreads4W_STRUCTEXC_LIBRARY_DEBUG_DLL NAMES pthreadVSE${PThreads4W_MAJOR_VERSION}d.dll PATHS ${PThreads4W_DLL_DIR})
+
#Compatibility definitions, deprecated
set(PTHREAD_INCLUDE_DIR ${PThreads4W_INCLUDE_DIR} CACHE PATH "")
set(PTHREADS_INCLUDE_DIR ${PThreads4W_INCLUDE_DIR} CACHE PATH "")
diff --git a/ports/qt5/CONTROL b/ports/qt5/CONTROL
index 74b69467a..0f6bdeafd 100644
--- a/ports/qt5/CONTROL
+++ b/ports/qt5/CONTROL
@@ -2,4 +2,4 @@ Source: qt5
Version: 5.12.3
Homepage: https://www.qt.io/
Description: Qt5 Application Framework
-Build-Depends: qt5-3d, qt5-activeqt, qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-graphicaleffects, qt5-imageformats, qt5-location, qt5-multimedia, qt5-mqtt, qt5-networkauth, qt5-purchasing, qt5-quickcontrols, qt5-quickcontrols2, qt5-script, qt5-scxml, qt5-sensors, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-webchannel, qt5-websockets, qt5-winextras (windows), qt5-macextras (osx), qt5-xmlpatterns
+Build-Depends: qt5-3d, qt5-activeqt (windows), qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-graphicaleffects, qt5-imageformats, qt5-location, qt5-multimedia, qt5-mqtt, qt5-networkauth, qt5-purchasing, qt5-quickcontrols, qt5-quickcontrols2, qt5-script, qt5-scxml, qt5-sensors, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-webchannel, qt5-websockets, qt5-winextras (windows), qt5-macextras (osx), qt5-xmlpatterns
diff --git a/ports/zxing-cpp/0001-opencv4-compat.patch b/ports/zxing-cpp/0001-opencv4-compat.patch
index 51cec5387..76ad1f4a0 100644
--- a/ports/zxing-cpp/0001-opencv4-compat.patch
+++ b/ports/zxing-cpp/0001-opencv4-compat.patch
@@ -1,5 +1,18 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ccb2ba9..5ade734 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ cmake_minimum_required(VERSION 3.0)
+
+ project(zxing)
+-
++set(CMAKE_CXX_STANDARD 11)
+ option(BUILD_TESTING "Enable generation of test targets" OFF)
+
+ set(CMAKE_LIBRARY_PATH /opt/local/lib ${CMAKE_LIBRARY_PATH})
diff --git a/opencv-cli/src/main.cpp b/opencv-cli/src/main.cpp
-index 63b6fd3..430dda6 100755
+index 63b6fd3..5900c4f 100644
--- a/opencv-cli/src/main.cpp
+++ b/opencv-cli/src/main.cpp
@@ -135,14 +135,14 @@ int main(int argc, char** argv) {
diff --git a/ports/zxing-cpp/CONTROL b/ports/zxing-cpp/CONTROL
index c97ad1734..16343782d 100644
--- a/ports/zxing-cpp/CONTROL
+++ b/ports/zxing-cpp/CONTROL
@@ -1,4 +1,4 @@
Source: zxing-cpp
-Version: 3.3.3-5
+Version: 3.3.3-6
Build-Depends: opencv
Description: Barcode detection and decoding library.