aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorras0219 <533828+ras0219@users.noreply.github.com>2020-09-04 18:59:21 -0700
committerGitHub <noreply@github.com>2020-09-04 18:59:21 -0700
commitbb61fc16628994678ee3855008972a28797ba5a7 (patch)
tree419d508bdf29a0edd04976e9ece7f8aa43e332b8
parentc41328a87c1436820f9e3dd2c970d407de52eaf7 (diff)
downloadvcpkg-bb61fc16628994678ee3855008972a28797ba5a7.tar.gz
vcpkg-bb61fc16628994678ee3855008972a28797ba5a7.zip
[blaze][ceres][clapack][geogram][lapack][lapack-reference][opencv4][selene] Fix deps issues (#13229)
Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
-rw-r--r--ports/bigint/CMakeLists.txt31
-rw-r--r--ports/bigint/CONTROL2
-rw-r--r--ports/bigint/portfile.cmake5
-rw-r--r--ports/bigint/usage5
-rw-r--r--ports/bigint/vcpkg-cmake-wrapper.cmake10
-rw-r--r--ports/blaze/CONTROL1
-rw-r--r--ports/blaze/fix-vm-build.patch20
-rw-r--r--ports/blaze/portfile.cmake2
-rw-r--r--ports/ceres/0003_fix_exported_ceres_config.patch2
-rw-r--r--ports/ceres/CONTROL2
-rw-r--r--ports/clapack/FindLAPACK.cmake (renamed from ports/lapack/clapack/FindLAPACK.cmake)0
-rw-r--r--ports/clapack/portfile.cmake3
-rw-r--r--ports/clapack/vcpkg-cmake-wrapper.cmake (renamed from ports/lapack/clapack/vcpkg-cmake-wrapper.cmake)3
-rw-r--r--ports/geogram/CONTROL1
-rw-r--r--ports/lapack-reference/CONTROL2
-rw-r--r--ports/lapack-reference/FindLAPACK.cmake23
-rw-r--r--ports/lapack-reference/vcpkg-cmake-wrapper.cmake13
-rw-r--r--ports/lapack/CONTROL4
-rw-r--r--ports/lapack/portfile.cmake7
-rw-r--r--ports/mlpack/CONTROL1
-rw-r--r--ports/opencv4/CONTROL7
-rw-r--r--ports/opencv4/portfile.cmake74
-rw-r--r--ports/selene/CONTROL7
-rw-r--r--ports/selene/portfile.cmake3
-rw-r--r--ports/zxing-cpp/0003-fix-dependency-bigint.patch5
-rw-r--r--ports/zxing-cpp/portfile.cmake8
-rw-r--r--scripts/ci.baseline.txt22
27 files changed, 151 insertions, 112 deletions
diff --git a/ports/bigint/CMakeLists.txt b/ports/bigint/CMakeLists.txt
index e4cccbe12..fffc94192 100644
--- a/ports/bigint/CMakeLists.txt
+++ b/ports/bigint/CMakeLists.txt
@@ -1,14 +1,11 @@
-cmake_minimum_required(VERSION 3.8.0)
-project(bigint)
+cmake_minimum_required(VERSION 3.14.0)
+project(bigint CXX)
if(MSVC)
- add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS)
+ add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS)
endif()
-include_directories(".")
-
-set(
- bigint_srcs
+set(BIGINT_SRCS
BigUnsigned.cc
BigInteger.cc
BigIntegerAlgorithms.cc
@@ -16,8 +13,7 @@ set(
BigIntegerUtils.cc
)
-set(
- bigint_hh
+set(BIGINT_HH
NumberlikeArray.hh
BigUnsigned.hh
BigInteger.hh
@@ -27,15 +23,20 @@ set(
BigIntegerUtils.hh
)
-add_library(bigint ${bigint_srcs})
+add_library(bigint ${BIGINT_SRCS})
+target_include_directories(bigint PUBLIC $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)
+
+install(
+ TARGETS bigint
+ EXPORT bigint-config
+)
install(
- TARGETS bigint
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib
+ EXPORT bigint-config
+ NAMESPACE bigint::
+ DESTINATION share/bigint
)
if(NOT DISABLE_INSTALL_HEADERS)
- install(FILES ${bigint_hh} DESTINATION include/bigint)
+ install(FILES ${BIGINT_HH} DESTINATION include/bigint)
endif()
diff --git a/ports/bigint/CONTROL b/ports/bigint/CONTROL
index d6291ac68..1f0d8f63b 100644
--- a/ports/bigint/CONTROL
+++ b/ports/bigint/CONTROL
@@ -1,5 +1,5 @@
Source: bigint
Version: 2010.04.30
-Port-Version: 5
+Port-Version: 6
Homepage: https://mattmccutchen.net/bigint
Description: C++ Big Integer Library
diff --git a/ports/bigint/portfile.cmake b/ports/bigint/portfile.cmake
index 07c43836f..723169750 100644
--- a/ports/bigint/portfile.cmake
+++ b/ports/bigint/portfile.cmake
@@ -21,7 +21,6 @@ vcpkg_configure_cmake(
)
vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets()
-configure_file(${CURRENT_PORT_DIR}/usage ${CURRENT_PACKAGES_DIR}/share/${PORT}/usage @ONLY)
-file(INSTALL ${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
-file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/bigint RENAME copyright)
+file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/bigint/usage b/ports/bigint/usage
deleted file mode 100644
index cf9dc6474..000000000
--- a/ports/bigint/usage
+++ /dev/null
@@ -1,5 +0,0 @@
-The package @PORT@:@TARGET_TRIPLET@ provides CMake targets:
-
- find_package(@PORT@ CONFIG REQUIRED)
- target_include_directories(main PRIVATE ${BIGINT_INCLUDE_DIRS})
- target_link_libraries(main PRIVATE ${BIGINT_LIBRARIES})
diff --git a/ports/bigint/vcpkg-cmake-wrapper.cmake b/ports/bigint/vcpkg-cmake-wrapper.cmake
deleted file mode 100644
index 92972c09f..000000000
--- a/ports/bigint/vcpkg-cmake-wrapper.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
-include(SelectLibraryConfigurations)
-
-find_path(BIGINT_INCLUDE_DIR BigInteger.hh PATH_SUFFIXES bigint)
-find_library(BIGINT_LIBRARY_DEBUG NAMES bigint NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH REQUIRED)
-find_library(BIGINT_LIBRARY_RELEASE NAMES bigint NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH REQUIRED)
-
-select_library_configurations(BIGINT)
-
-set(BIGINT_INCLUDE_DIRS ${BIGINT_INCLUDE_DIR})
-set(BIGINT_LIBRARIES ${BIGINT_LIBRARY})
diff --git a/ports/blaze/CONTROL b/ports/blaze/CONTROL
index 49343784c..94d148368 100644
--- a/ports/blaze/CONTROL
+++ b/ports/blaze/CONTROL
@@ -1,5 +1,6 @@
Source: blaze
Version: 3.8
+Port-Version: 1
Build-Depends: lapack, boost-exception
Homepage: https://bitbucket.org/blaze-lib/blaze
Description: Blaze is an open-source, high-performance C++ math library for dense and sparse arithmetic.
diff --git a/ports/blaze/fix-vm-build.patch b/ports/blaze/fix-vm-build.patch
new file mode 100644
index 000000000..3936299e0
--- /dev/null
+++ b/ports/blaze/fix-vm-build.patch
@@ -0,0 +1,20 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e5ab1f460..a23c6dbf5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -145,12 +145,13 @@ if (${BLAZE_CACHE_SIZE_AUTO})
+ endif (flag EQUAL 0)
+ endif (APPLE)
+
+- if (flag)
++ string(REGEX MATCH "([0-9][0-9]+)" tmp ${tmp}) # Get a number containing at least 2 digits in the string tmp
++
++ if (flag OR NOT tmp)
+ message("Cache size not found automatically. Using default value as cache size.")
+ set(tmp ${BLAZE_CACHE_SIZE_DEFAULT})
+ endif (flag)
+
+- string(REGEX MATCH "([0-9][0-9]+)" tmp ${tmp}) # Get a number containing at least 2 digits in the string tmp
+ math(EXPR BLAZE_CACHE_SIZE ${tmp}*1024) # Convert to bytes (assuming that the value is given in kibibytes)
+
+ endif (${BLAZE_CACHE_SIZE_AUTO})
diff --git a/ports/blaze/portfile.cmake b/ports/blaze/portfile.cmake
index 012889f22..8ef5792fd 100644
--- a/ports/blaze/portfile.cmake
+++ b/ports/blaze/portfile.cmake
@@ -4,6 +4,8 @@ vcpkg_from_bitbucket(
REF 0380370f0626de2ad0ec7ea815803e22bbf6b42e
SHA512 47df2a291febf0565787ed9c4222ee1958d03c5b76c54923e4d8e44f75321c266e81d69ba4512a4ab07d7e431c065d025e01269cf9c1d5f0927f133885def4c7
HEAD_REF master
+ PATCHES
+ fix-vm-build.patch
)
vcpkg_configure_cmake(
diff --git a/ports/ceres/0003_fix_exported_ceres_config.patch b/ports/ceres/0003_fix_exported_ceres_config.patch
index 071ad0ad1..9b02e9963 100644
--- a/ports/ceres/0003_fix_exported_ceres_config.patch
+++ b/ports/ceres/0003_fix_exported_ceres_config.patch
@@ -89,7 +89,7 @@ index d0380de..55760a8 100644
-endif (CERES_USES_MINIGLOG)
+#SuiteSparse
+if (@SUITESPARSE@)
-+ find_dependency(suitesparse CONFIG REQUIRED)
++ find_dependency(suitesparse CONFIG)
+endif()
# Import exported Ceres targets, if they have not already been imported.
diff --git a/ports/ceres/CONTROL b/ports/ceres/CONTROL
index 5870df378..5fb8186ad 100644
--- a/ports/ceres/CONTROL
+++ b/ports/ceres/CONTROL
@@ -1,6 +1,6 @@
Source: ceres
Version: 1.14.0
-Port-Version: 9
+Port-Version: 10
Build-Depends: glog, eigen3
Homepage: https://github.com/ceres-solver/ceres-solver
Description: non-linear optimization package
diff --git a/ports/lapack/clapack/FindLAPACK.cmake b/ports/clapack/FindLAPACK.cmake
index eff9bae70..eff9bae70 100644
--- a/ports/lapack/clapack/FindLAPACK.cmake
+++ b/ports/clapack/FindLAPACK.cmake
diff --git a/ports/clapack/portfile.cmake b/ports/clapack/portfile.cmake
index 034c0991b..356387488 100644
--- a/ports/clapack/portfile.cmake
+++ b/ports/clapack/portfile.cmake
@@ -43,5 +43,8 @@ vcpkg_fixup_cmake_targets(CONFIG_PATH share/clapack)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+# Install clapack wrappers.
+file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/lapack)
+file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/FindLAPACK.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/lapack)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/lapack/clapack/vcpkg-cmake-wrapper.cmake b/ports/clapack/vcpkg-cmake-wrapper.cmake
index 8c9af9e86..cb2e08fdf 100644
--- a/ports/lapack/clapack/vcpkg-cmake-wrapper.cmake
+++ b/ports/clapack/vcpkg-cmake-wrapper.cmake
@@ -1,3 +1,4 @@
+message(STATUS "Using VCPKG FindLAPACK from package 'clapack'")
set(LAPACK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
@@ -7,4 +8,4 @@ list(REMOVE_ITEM ARGS "MODULE")
_find_package(${ARGS})
-set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH}) \ No newline at end of file
+set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH})
diff --git a/ports/geogram/CONTROL b/ports/geogram/CONTROL
index 83b210ac3..c74c9d216 100644
--- a/ports/geogram/CONTROL
+++ b/ports/geogram/CONTROL
@@ -4,6 +4,7 @@ Port-Version: 1
Homepage: https://gforge.inria.fr/projects/geogram/
Description: Geogram is a programming library of geometric algorithms.
Build-Depends: openblas, lapack
+Supports: !uwp
Feature: graphics
Description: Build viewers and geogram_gfx library.
diff --git a/ports/lapack-reference/CONTROL b/ports/lapack-reference/CONTROL
index d44258412..3d8bb855d 100644
--- a/ports/lapack-reference/CONTROL
+++ b/ports/lapack-reference/CONTROL
@@ -1,6 +1,6 @@
Source: lapack-reference
Version: 3.8.0
-Port-Version: 2
+Port-Version: 3
Description: LAPACK — Linear Algebra PACKage http://www.netlib.org/lapack/
Default-Features: blas-select
Build-Depends: vcpkg-gfortran (windows)
diff --git a/ports/lapack-reference/FindLAPACK.cmake b/ports/lapack-reference/FindLAPACK.cmake
index b6df00319..a411c7c18 100644
--- a/ports/lapack-reference/FindLAPACK.cmake
+++ b/ports/lapack-reference/FindLAPACK.cmake
@@ -86,6 +86,7 @@ This module defines the following variables:
find_package(LAPACK)
#]=======================================================================]
+enable_language(C)
# Check the language being used
if(NOT (CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED OR CMAKE_Fortran_COMPILER_LOADED))
if(LAPACK_FIND_REQUIRED)
@@ -109,20 +110,6 @@ set(CMAKE_REQUIRED_QUIET ${LAPACK_FIND_QUIETLY})
set(LAPACK_FOUND FALSE)
set(LAPACK95_FOUND FALSE)
-set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
-if(BLA_STATIC)
- if(WIN32)
- set(CMAKE_FIND_LIBRARY_SUFFIXES .lib ${CMAKE_FIND_LIBRARY_SUFFIXES})
- else()
- set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
- endif()
-else()
- if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
- # for ubuntu's libblas3gf and liblapack3gf packages
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES} .so.3gf)
- endif()
-endif()
-
# TODO: move this stuff to a separate module
macro(CHECK_LAPACK_LIBRARIES LIBRARIES _prefix _name _flags _list _threadlibs _addlibdir _subdirs _blas)
@@ -202,11 +189,8 @@ set(LAPACK_LINKER_FLAGS)
set(LAPACK_LIBRARIES)
set(LAPACK95_LIBRARIES)
-if(LAPACK_FIND_QUIETLY OR NOT LAPACK_FIND_REQUIRED)
- find_package(BLAS)
-else()
- find_package(BLAS REQUIRED)
-endif()
+include(CMakeFindDependencyMacro)
+find_dependency(BLAS)
if(BLAS_FOUND)
set(LAPACK_LINKER_FLAGS ${BLAS_LINKER_FLAGS})
@@ -565,4 +549,3 @@ if(NOT TARGET LAPACK::LAPACK)
endif()
cmake_pop_check_state()
-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
diff --git a/ports/lapack-reference/vcpkg-cmake-wrapper.cmake b/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
index a91b040ca..b3a7128ff 100644
--- a/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
+++ b/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
@@ -1,2 +1,11 @@
-message(STATUS "Using VCPKG FindLAPACK. Remove if CMake has been updated to account for -lm and -lgfortran in lapack-reference!")
-include(${CMAKE_CURRENT_LIST_DIR}/FindLAPACK.cmake)
+message(STATUS "Using VCPKG FindLAPACK from package 'lapack-reference'")
+set(LAPACK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
+
+list(REMOVE_ITEM ARGS "NO_MODULE")
+list(REMOVE_ITEM ARGS "CONFIG")
+list(REMOVE_ITEM ARGS "MODULE")
+
+_find_package(${ARGS})
+
+set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH})
diff --git a/ports/lapack/CONTROL b/ports/lapack/CONTROL
index b16436d7f..aad8e3cf8 100644
--- a/ports/lapack/CONTROL
+++ b/ports/lapack/CONTROL
@@ -1,4 +1,4 @@
Source: lapack
-Version: 2
+Version: 3
Description: Metapackage for packages which provide LAPACK
-Build-Depends: clapack ((arm&windows)|uwp), lapack-reference(!uwp&!(arm&windows))
+Build-Depends: clapack(arm&windows), lapack-reference(!arm|!windows)
diff --git a/ports/lapack/portfile.cmake b/ports/lapack/portfile.cmake
index ab7f28a0b..2a59fa726 100644
--- a/ports/lapack/portfile.cmake
+++ b/ports/lapack/portfile.cmake
@@ -1,10 +1,5 @@
SET(VCPKG_POLICY_EMPTY_PACKAGE enabled)
-# Make sure LAPACK can be found
-if(VCPKG_TARGET_IS_UWP OR VCPKG_TARGET_IS_WINDOWS AND VCPKG_TARGET_ARCHITECTURE MATCHES "arm")
- # Install clapack wrappers.
- file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/clapack/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share//${PORT})
- file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/clapack/FindLAPACK.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share//${PORT})
-endif()
+# Make sure LAPACK can be found
vcpkg_configure_cmake(SOURCE_PATH ${CURRENT_PORT_DIR}
OPTIONS -DCMAKE_PREFIX_PATH="${CURRENT_PACKAGES_DIR}")
diff --git a/ports/mlpack/CONTROL b/ports/mlpack/CONTROL
index 7d3debb83..7c9974510 100644
--- a/ports/mlpack/CONTROL
+++ b/ports/mlpack/CONTROL
@@ -4,6 +4,7 @@ Port-Version: 6
Homepage: https://github.com/mlpack/mlpack
Description: mlpack is a fast, flexible machine learning library, written in C++, that aims to provide fast, extensible implementations of cutting-edge machine learning algorithms.
Build-Depends: openblas, lapack, boost, armadillo, ensmallen, stb
+Supports: !uwp
Feature: tools
Description: Build command-line executables.
diff --git a/ports/opencv4/CONTROL b/ports/opencv4/CONTROL
index fa6388e66..f06945f44 100644
--- a/ports/opencv4/CONTROL
+++ b/ports/opencv4/CONTROL
@@ -1,5 +1,6 @@
Source: opencv4
Version: 4.3.0
+Port-Version: 1
Build-Depends: protobuf, zlib
Homepage: https://github.com/opencv/opencv
Description: computer vision library
@@ -17,7 +18,7 @@ Build-Depends: hdf5 (!uwp), tesseract (!uwp)
Description: opencv_contrib module
Feature: cuda
-Build-Depends: opencv4[contrib], cuda, cudnn
+Build-Depends: opencv4[core,contrib], cuda, cudnn
Description: CUDA support for opencv
Feature: dnn
@@ -62,7 +63,7 @@ Feature: openmp
Description: Enable openmp support for opencv
Feature: ovis
-Build-Depends: opencv4[contrib], ogre
+Build-Depends: opencv4[core,contrib], ogre
Description: opencv_ovis module
Feature: png
@@ -74,7 +75,7 @@ Build-Depends: qt5-base[core]
Description: Qt GUI support for opencv
Feature: sfm
-Build-Depends: opencv4[contrib], eigen3, glog, gflags, ceres
+Build-Depends: opencv4[core,contrib], opencv4[core,eigen], glog, gflags, ceres
Description: opencv_sfm module
Feature: tbb
diff --git a/ports/opencv4/portfile.cmake b/ports/opencv4/portfile.cmake
index 522623c45..0ea97e777 100644
--- a/ports/opencv4/portfile.cmake
+++ b/ports/opencv4/portfile.cmake
@@ -374,17 +374,16 @@ vcpkg_copy_pdbs()
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(Protobuf REQUIRED)
-if(Protobuf_FOUND)
+ set(DEPS_STRING "include(CMakeFindDependencyMacro)
+find_dependency(protobuf CONFIG)
+if(protobuf_FOUND)
if(TARGET protobuf::libprotobuf)
- add_library(libprotobuf INTERFACE IMPORTED)
+ add_library (libprotobuf INTERFACE IMPORTED)
set_target_properties(libprotobuf PROPERTIES
INTERFACE_LINK_LIBRARIES protobuf::libprotobuf
)
else()
- add_library(libprotobuf UNKNOWN IMPORTED)
+ add_library (libprotobuf UNKNOWN IMPORTED)
set_target_properties(libprotobuf PROPERTIES
IMPORTED_LOCATION \"${Protobuf_LIBRARY}\"
INTERFACE_INCLUDE_DIRECTORIES \"${Protobuf_INCLUDE_DIR}\"
@@ -392,24 +391,57 @@ if(Protobuf_FOUND)
)
endif()
endif()
-find_package(CUDA QUIET)
-find_package(Threads QUIET)
-find_package(TIFF QUIET)
-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(Tesseract QUIET)
-find_package(OpenEXR QUIET)
+find_dependency(Threads)")
+ if("tiff" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(TIFF)")
+ endif()
+ if("cuda" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(CUDA)")
+ endif()
+ if(BUILD_opencv_quality)
+ string(APPEND DEPS_STRING "
+# C language is required for try_compile tests in FindHDF5
+enable_language(C)
+find_dependency(HDF5)
+find_dependency(Tesseract)")
+ endif()
+ if(WITH_TBB)
+ string(APPEND DEPS_STRING "\nfind_dependency(TBB)")
+ endif()
+ if(WITH_VTK)
+ string(APPEND DEPS_STRING "\nfind_dependency(VTK)")
+ endif()
+ if("sfm" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(gflags CONFIG)\nfind_dependency(Ceres CONFIG)")
+ endif()
+ if("eigen" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(Eigen3 CONFIG)")
+ endif()
+ if("openexr" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(OpenEXR CONFIG)")
+ endif()
+ if(WITH_OPENMP)
+ string(APPEND DEPS_STRING "\nfind_dependency(OpenMP CONFIG)")
+ endif()
+ if(BUILD_opencv_ovis)
+ string(APPEND DEPS_STRING "\nfind_dependency(Ogre)\nfind_dependency(Freetype)")
+ endif()
+ if("qt" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
-find_package(Qt5 COMPONENTS OpenGL Concurrent Test QUIET)
-find_package(GDCM QUIET)" OPENCV_MODULES "${OPENCV_MODULES}")
+find_dependency(Qt5 COMPONENTS OpenGL Concurrent Test)")
+ endif()
+ if("ade" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(ade)")
+ endif()
+ if("gdcm" IN_LIST FEATURES)
+ string(APPEND DEPS_STRING "\nfind_dependency(GDCM)")
+ endif()
+
+ string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
+ "set(CMAKE_IMPORT_FILE_VERSION 1)\n${DEPS_STRING}" OPENCV_MODULES "${OPENCV_MODULES}")
if(WITH_OPENMP)
string(REPLACE "set_target_properties(opencv_core PROPERTIES
diff --git a/ports/selene/CONTROL b/ports/selene/CONTROL
index 03eeb9185..0a1ef5278 100644
--- a/ports/selene/CONTROL
+++ b/ports/selene/CONTROL
@@ -1,5 +1,10 @@
Source: selene
-Version: 0.3.1-2
+Version: 0.3.1
+Port-Version: 3
Homepage: https://github.com/kmhofmann/selene
Description: A C++17 image representation, processing and I/O library.
Build-Depends: zlib, libpng, libjpeg-turbo, tiff
+
+Feature: opencv
+Description: Enable using OpenCV
+Build-Depends: opencv[core]
diff --git a/ports/selene/portfile.cmake b/ports/selene/portfile.cmake
index e6a942885..703c3d2bc 100644
--- a/ports/selene/portfile.cmake
+++ b/ports/selene/portfile.cmake
@@ -10,9 +10,12 @@ vcpkg_from_github(
disable_x86_intrinsics_on_arm.patch
)
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS "opencv" SELENE_USE_OPENCV)
+
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
+ OPTIONS ${FEATURE_OPTIONS}
)
vcpkg_install_cmake()
diff --git a/ports/zxing-cpp/0003-fix-dependency-bigint.patch b/ports/zxing-cpp/0003-fix-dependency-bigint.patch
index 1601d3e39..eff577f44 100644
--- a/ports/zxing-cpp/0003-fix-dependency-bigint.patch
+++ b/ports/zxing-cpp/0003-fix-dependency-bigint.patch
@@ -2,15 +2,14 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
index 54071bd..0edd0e9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -44,6 +44,12 @@ if(WIN32)
+@@ -44,6 +44,11 @@ if(WIN32)
set(CMAKE_DEBUG_POSTFIX -debug)
endif()
+# Bigint
+find_package(bigint CONFIG REQUIRED)
+
-+include_directories(${BIGINT_INCLUDE_DIRS})
-+link_libraries(${BIGINT_LIBRARIES})
++link_libraries(bigint::bigint)
+
# OpenCV classes
if(WITH_OPENCV)
diff --git a/ports/zxing-cpp/portfile.cmake b/ports/zxing-cpp/portfile.cmake
index f6fd43351..9211ef3c6 100644
--- a/ports/zxing-cpp/portfile.cmake
+++ b/ports/zxing-cpp/portfile.cmake
@@ -7,9 +7,9 @@ vcpkg_from_github(
SHA512 a079ad47171224de4469e76bf0779b6ebc9c6dfb3604bd5dbf5e6e5f321d9e6255f689daa749855f8400023602f1773214013c006442e9b32dd4b8146c888c02
HEAD_REF master
PATCHES
- 0001-opencv4-compat.patch
- 0002-improve-features.patch
- 0003-fix-dependency-bigint.patch
+ 0001-opencv4-compat.patch
+ 0002-improve-features.patch
+ 0003-fix-dependency-bigint.patch
)
file(REMOVE ${SOURCE_PATH}/cmake/FindModules/FindIconv.cmake)
@@ -25,7 +25,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
- OPTIONS ${FEATURE_OPTIONS}
+ OPTIONS ${FEATURE_OPTIONS}
)
vcpkg_install_cmake()
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index edae43608..e19bcfbb8 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -120,9 +120,6 @@ bitserializer-rapidyaml:x64-osx=skip
bitserializer:arm-uwp=skip
bitserializer:arm64-windows=skip
bitserializer:x64-osx=skip
-blaze:x64-windows=fail
-blaze:x64-windows-static=fail
-blaze:x86-windows=fail
blend2d:arm64-windows=fail
blend2d:arm-uwp=fail
blend2d:x64-uwp=fail
@@ -206,15 +203,6 @@ chmlib:x64-uwp=fail
civetweb:arm64-windows = skip
civetweb:arm-uwp = skip
civetweb:x64-uwp = skip
-# clapack is replaced by lapack-reference.
-clapack:arm64-windows=skip
-clapack:arm-uwp=skip
-clapack:x64-linux=skip
-clapack:x64-osx=skip
-clapack:x64-uwp=skip
-clapack:x64-windows-static=skip
-clapack:x64-windows=skip
-clapack:x86-windows=skip
clblas:arm64-windows=fail
clblast:x64-linux=fail
clblast:x64-windows-static=fail
@@ -1902,3 +1890,13 @@ ctp:x64-windows-static=skip
ctp:x86-windows=skip
protozero:arm-uwp=fail
protozero:x64-uwp=fail
+
+# clapack is replaced by lapack-reference on the platforms lapack-reference supports
+clapack:x64-linux=skip
+clapack:x64-osx=skip
+clapack:x64-windows-static=skip
+clapack:x64-windows=skip
+clapack:x86-windows=skip
+clapack:x64-uwp=skip
+lapack-reference:arm64-windows=skip
+lapack-reference:arm-uwp=skip