From ef97fc17c79603d33b13833db54bb77f8f747306 Mon Sep 17 00:00:00 2001 From: Kai Pastor Date: Mon, 21 Jul 2025 07:52:22 +0200 Subject: [PATCH] [openmvg,vlfeat] Fix (#46409) --- ports/openmvg/build_fixes.patch | 459 +++++----------------- ports/openmvg/fast-c-language.diff | 25 ++ ports/openmvg/no-absolute-paths.patch | 46 ++- ports/openmvg/portfile.cmake | 168 ++++---- ports/openmvg/vcpkg.json | 10 +- ports/vlfeat/expose_missing_symbols.patch | 10 +- ports/vlfeat/portfile.cmake | 4 + ports/vlfeat/vcpkg.json | 2 +- scripts/ci.feature.baseline.txt | 5 +- versions/baseline.json | 4 +- versions/o-/openmvg.json | 5 + versions/v-/vlfeat.json | 5 + 12 files changed, 262 insertions(+), 481 deletions(-) create mode 100644 ports/openmvg/fast-c-language.diff diff --git a/ports/openmvg/build_fixes.patch b/ports/openmvg/build_fixes.patch index ae06b0aa20..1ec5ce6265 100644 --- a/ports/openmvg/build_fixes.patch +++ b/ports/openmvg/build_fixes.patch @@ -1,405 +1,132 @@ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 6879c4c6..edf4e5b2 100644 +index 6879c4c..aa4167a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -24,6 +24,7 @@ endif() - - set(CMAKE_FIND_FRAMEWORK LAST) - -+if(0) - # ============================================================================== - # OpenMVG build options - # ============================================================================== -@@ -59,6 +60,7 @@ option(OpenMVG_USE_OCVSIFT "Add or not OpenCV SIFT in available features" OFF) - # Enable this to be able to use LiGT in main_SfM. - # ============================================================================== - option(OpenMVG_USE_LIGT "Add or not LiGT in available" ON) -+endif() - - # ============================================================================== - # OpenMVG version -@@ -104,6 +106,7 @@ else (OpenMVG_BUILD_SHARED) - set(BUILD_SHARED_LIBS OFF) +@@ -324,13 +324,18 @@ else() + if (TARGET flann::flann) + set(FLANN_LIBRARIES "flann::flann;flann::flann_cpp") + else() +- find_package(Flann QUIET) ++ set(FLANN_LIBRARIES "flann::flann_s;flann::flann_cpp_s") + endif() ++ set(FLANN_FOUND TRUE) endif() - -+if(0) - # ============================================================================== - # Check that submodule have been initialized and updated - # ============================================================================== -@@ -112,6 +115,7 @@ if (NOT EXISTS ${PROJECT_SOURCE_DIR}/dependencies/cereal/include) - "\n submodule(s) are missing, please update your repository:\n" - " > git submodule update -i\n") - endif() -+endif() - - # ============================================================================== - # Additional cmake find modules -@@ -191,9 +195,10 @@ endif() - # ============================================================================== - # IMAGE IO detection - # ============================================================================== --find_package(JPEG QUIET) --find_package(PNG QUIET) --find_package(TIFF QUIET) -+find_package(JPEG REQUIRED) -+find_package(PNG REQUIRED) -+find_package(TIFF REQUIRED) -+find_package(vlfeat REQUIRED) - - # Folders - set_property(GLOBAL PROPERTY USE_FOLDERS ON) -@@ -281,6 +286,7 @@ endif() - # - external if EIGEN_INCLUDE_DIR_HINTS is defined - # - internal if Eigen not found - # ============================================================================== -+if(0) - find_package(Eigen3 QUIET) - if (NOT Eigen3_FOUND) - set(EIGEN_INCLUDE_DIR_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/eigen) -@@ -289,7 +295,11 @@ if (NOT Eigen3_FOUND) - else() - set(EIGEN_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) - endif() -+endif() -+ - add_definitions(-DEIGEN_MPL2_ONLY) -+find_package(Eigen3 REQUIRED) -+set(EIGEN_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) - - # ============================================================================== - # Ceres -@@ -297,6 +307,7 @@ add_definitions(-DEIGEN_MPL2_ONLY) - # - external by default if CERES_DIR_HINTS or find_package found a valid Ceres - # - internal if ceres not found (ceres-solver+cxsparse+miniglog) - # ============================================================================== -+if(0) - find_package(Ceres QUIET HINTS ${CERES_DIR_HINTS}) - if (NOT Ceres_FOUND) - set(OpenMVG_USE_INTERNAL_CERES ON) -@@ -308,6 +319,9 @@ if (NOT Ceres_FOUND) - STRING(REGEX REPLACE "version ([0-9.]+).*" "\\1" CERES_VERSION ${CERES_CONFIG}) - set(CERES_LIBRARIES openMVG_ceres) - endif() -+endif() -+ -+find_package(Ceres REQUIRED) - - # ============================================================================== - # Flann -@@ -315,6 +329,7 @@ endif() - # - internal by default (flann), - # - external if FLANN_INCLUDE_DIR_HINTS and a valid Flann setup is found - # ============================================================================== -+if(0) - if (NOT DEFINED FLANN_INCLUDE_DIR_HINTS) - set(FLANN_INCLUDE_DIR_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/flann/src/cpp) - set(OpenMVG_USE_INTERNAL_FLANN ON) -@@ -330,6 +345,9 @@ endif() if (NOT FLANN_FOUND OR OpenMVG_USE_INTERNAL_FLANN) set(FLANN_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/flann/src/cpp) endif() -+endif() -+ -+find_package(flann REQUIRED) ++# Used together in openMVG/LinearProgramming ++find_package(PkgConfig REQUIRED) ++pkg_check_modules(OSI_CLP_COIN osi-clp clp osi coinutils REQUIRED) ++if(0) # ============================================================================== # CoinUtils -@@ -356,13 +374,13 @@ endif() - if (NOT DEFINED CLP_INCLUDE_DIR_HINTS) - set(CLP_INCLUDE_DIR_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/dependencies/osi_clp/Clp/src/) - set(OpenMVG_USE_INTERNAL_CLP ON) -- find_package(Clp QUIET) -+ find_package(Clp REQUIRED) - set(CLP_INCLUDE_DIRS - ${CMAKE_CURRENT_SOURCE_DIR}/dependencies/osi_clp/Clp/src/ - ${CMAKE_CURRENT_SOURCE_DIR}/dependencies/osi_clp/Clp/src/OsiClp/) - set(CLP_LIBRARIES lib_clp lib_OsiClpSolver) - else() -- find_package(Clp QUIET) -+ find_package(Clp REQUIRED) + # ============================================================================== +@@ -391,6 +396,7 @@ if (OpenMVG_USE_INTERNAL_OSI AND OpenMVG_USE_INTERNAL_CLP AND OpenMVG_USE_INTERN + set_property(TARGET lib_Osi PROPERTY FOLDER OpenMVG/3rdParty/lib_Osi) + set_property(TARGET lib_OsiClpSolver PROPERTY FOLDER OpenMVG/3rdParty/lib_OsiClpSolver) endif() ++endif() # ============================================================================== -@@ -398,6 +416,7 @@ endif() - # - internal by default (Lemon), - # - external if LEMON_INCLUDE_DIR_HINTS and a valid Lemon setup is found - # ============================================================================== -+if(0) - if (NOT DEFINED LEMON_INCLUDE_DIR_HINTS) + # Lemon +@@ -402,7 +408,7 @@ if (NOT DEFINED LEMON_INCLUDE_DIR_HINTS) set(LEMON_INCLUDE_DIR_HINTS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/lemon) set(OpenMVG_USE_INTERNAL_LEMON ON) -@@ -408,13 +427,16 @@ if (NOT LEMON_FOUND OR OpenMVG_USE_INTERNAL_LEMON) - ${CMAKE_CURRENT_SOURCE_DIR}/third_party/lemon - ${PROJECT_BINARY_DIR}/third_party/lemon) endif() -+endif() -+ +-find_package(Lemon QUIET) +find_package(LEMON REQUIRED) - - # ============================================================================== - # OpenCV - # ============================================================================== - # - only external and enabled only if OpenMVG_USE_OPENCV is set to ON - # ============================================================================== --if (OpenMVG_USE_OPENCV) -+if (0) - find_package( OpenCV QUIET ) - if (NOT OpenCV_FOUND OR OpenCV_VERSION VERSION_LESS "3.0.0") - message(STATUS "OpenCV was not found (note that OpenCV version >= 3.0.0 is required). -> Disabling OpenCV support.") -@@ -429,7 +451,7 @@ endif() - # ============================================================================== - # - enabled only if OpenMVG_USE_LIGT is set to ON - # ============================================================================== --if (OpenMVG_USE_LIGT) -+if (0) - add_definitions(-DUSE_PATENTED_LIGT) - endif() - -@@ -438,7 +460,6 @@ endif() - # Third-party libraries: - # ============================================================================== - add_subdirectory(third_party) --add_subdirectory(testing) - - # ============================================================================== - # openMVG modules -@@ -447,9 +468,9 @@ add_subdirectory(testing) - add_subdirectory(openMVG) - - # openMVG tutorial examples --if (OpenMVG_BUILD_EXAMPLES) -+if (0) - add_subdirectory(openMVG_Samples) --endif (OpenMVG_BUILD_EXAMPLES) -+endif () - - # Complete software(s) build on openMVG libraries - if (OpenMVG_BUILD_SOFTWARES) -@@ -464,7 +485,7 @@ add_subdirectory(nonFree) - # -------------------------- - # Sphinx detection - # ============================================================================== --if (OpenMVG_BUILD_DOC) -+if (0) - find_package(Sphinx) - if (EXISTS ${SPHINX_EXECUTABLE}) - set(SPHINX_HTML_DIR "${CMAKE_CURRENT_BINARY_DIR}/htmlDoc") -@@ -526,67 +547,67 @@ message("** Use LiGT for global translation estimation: " ${OpenMVG_USE_LIGT}) - - message("\n") - --if (DEFINED OpenMVG_USE_INTERNAL_CEREAL) -+if (OpenMVG_USE_INTERNAL_CEREAL) - message(STATUS "CEREAL: (internal)") - else() - message(STATUS "CEREAL: (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_EIGEN) -+if (OpenMVG_USE_INTERNAL_EIGEN) - message(STATUS "EIGEN: " ${EIGEN_VERSION} " (internal)") - else() - message(STATUS "EIGEN: " ${EIGEN_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_CERES) -+if (OpenMVG_USE_INTERNAL_CERES) - message(STATUS "CERES: " ${CERES_VERSION} " (internal)") - else() - message(STATUS "CERES: " ${CERES_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_FLANN) -+if (OpenMVG_USE_INTERNAL_FLANN) - message(STATUS "FLANN: " ${FLANN_VERSION} " (internal)") - else() - message(STATUS "FLANN: " ${FLANN_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_TIFF) -+if (OpenMVG_USE_INTERNAL_TIFF) - message(STATUS "LIBTIFF: " ${TIFF_VERSION_STRING} " (internal)") - else() - message(STATUS "LIBTIFF: " ${TIFF_VERSION_STRING} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_PNG) -+if (OpenMVG_USE_INTERNAL_PNG) - message(STATUS "LIBPNG: " ${PNG_VERSION_STRING} " (internal)") - else() - message(STATUS "LIBPNG: " ${PNG_VERSION_STRING} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_JPEG) -+if (OpenMVG_USE_INTERNAL_JPEG) - message(STATUS "LIBJPEG (internal)") - else() - message(STATUS "LIBJPEG (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_CLP) -+if (OpenMVG_USE_INTERNAL_CLP) - message(STATUS "CLP: " ${CLP_VERSION} " (internal)") - else() - message(STATUS "CLP: " ${CLP_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_COINUTILS) -+if (OpenMVG_USE_INTERNAL_COINUTILS) - message(STATUS "COINUTILS: " ${COINUTILS_VERSION} " (internal)") - else() - message(STATUS "COINUTILS: " ${COINUTILS_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_OSI) -+if (OpenMVG_USE_INTERNAL_OSI) - message(STATUS "OSI: " ${OSI_VERSION} " (internal)") - else() - message(STATUS "OSI: " ${OSI_VERSION} " (external)") - endif() - --if (DEFINED OpenMVG_USE_INTERNAL_LEMON) -+if (OpenMVG_USE_INTERNAL_LEMON) - message(STATUS "LEMON: " ${LEMON_VERSION} " (internal)") - else() - message(STATUS "LEMON: " ${LEMON_VERSION} " (external)") -diff --git a/src/cmakeFindModules/FindClp.cmake b/src/cmakeFindModules/FindClp.cmake -index 8a69c234..1ed9a21f 100644 ---- a/src/cmakeFindModules/FindClp.cmake -+++ b/src/cmakeFindModules/FindClp.cmake -@@ -51,7 +51,7 @@ IF(EXISTS "${CLP_DIR}" AND NOT "${CLP_DIR}" STREQUAL "") - SET(CLP_INCLUDE_DIR ${CLP_DIR}) - - FIND_LIBRARY(CLP_LIBRARY NAMES Clp) -- FIND_LIBRARY(CLPSOLVER_LIBRARY NAMES ClpSolver) -+ FIND_LIBRARY(CLPSOLVER_LIBRARY NAMES ClpSolver Clp) - FIND_LIBRARY(OSICLP_LIBRARY NAMES OsiClp) - - # locate Clp libraries -diff --git a/src/cmakeFindModules/FindCoinUtils.cmake b/src/cmakeFindModules/FindCoinUtils.cmake -index 5b64ce14..595fb7dc 100644 ---- a/src/cmakeFindModules/FindCoinUtils.cmake -+++ b/src/cmakeFindModules/FindCoinUtils.cmake -@@ -57,6 +57,12 @@ IF(EXISTS "${COINUTILS_DIR}" AND NOT "${COINUTILS_DIR}" STREQUAL "") - SET(COINUTILS_LIBRARIES ${COINUTILS_LIBRARY}) - ENDIF() - -+ if(NOT WIN32) -+ find_package(PkgConfig) -+ pkg_check_modules(CoinUtils coinutils IMPORTED_TARGET) -+ list(APPEND COINUTILS_LIBRARIES PkgConfig::CoinUtils) -+ endif() -+ - MESSAGE(STATUS "CoinUtils ${COINUTILS_VERSION} found (include: ${COINUTILS_INCLUDE_DIRS})") - ELSE() - MESSAGE(STATUS "You are attempting to build without CoinUtils. " + if (NOT LEMON_FOUND OR OpenMVG_USE_INTERNAL_LEMON) + set(LEMON_INCLUDE_DIRS + ${CMAKE_CURRENT_SOURCE_DIR}/third_party/lemon diff --git a/src/cmakeFindModules/OpenMVGConfig.cmake.in b/src/cmakeFindModules/OpenMVGConfig.cmake.in -index 5a788b56..ba3b4b3c 100644 +index 5a788b5..7a0afdb 100644 --- a/src/cmakeFindModules/OpenMVGConfig.cmake.in +++ b/src/cmakeFindModules/OpenMVGConfig.cmake.in -@@ -51,6 +51,18 @@ set(OPENMVG_VERSION @OPENMVG_VERSION@) - get_filename_component(CURRENT_CONFIG_INSTALL_DIR - "${CMAKE_CURRENT_LIST_FILE}" PATH) - -+include(CMakeFindDependencyMacro) -+ -+find_dependency(flann) -+find_dependency(Threads) -+find_dependency(cereal) -+find_dependency(Ceres) -+find_dependency(vlfeat) -+if(NOT WIN32) -+ find_dependency(PkgConfig) -+ pkg_check_modules(CoinUtils coinutils IMPORTED_TARGET) -+endif() -+ - # Record the state of the CMake module path when this script was - # called so that we can ensure that we leave it in the same state on - # exit as it was on entry, but modify it locally. -@@ -61,7 +73,7 @@ set(CMAKE_MODULE_PATH ${CURRENT_CONFIG_INSTALL_DIR}) +@@ -61,7 +61,7 @@ set(CMAKE_MODULE_PATH ${CURRENT_CONFIG_INSTALL_DIR}) # Build the absolute root install directory as a relative path get_filename_component(CURRENT_ROOT_INSTALL_DIR - ${CMAKE_MODULE_PATH}/../../../ ABSOLUTE) -+ ${CMAKE_MODULE_PATH}/../../ ABSOLUTE) ++ "${CMAKE_CURRENT_LIST_DIR}/../.." ABSOLUTE) if (NOT EXISTS ${CURRENT_ROOT_INSTALL_DIR}) OPENMVG_REPORT_NOT_FOUND( "OpenMVG install root: ${CURRENT_ROOT_INSTALL_DIR}, " +@@ -88,11 +88,14 @@ set(OpenMVG_USE_OPENMP "@OpenMVG_USE_OPENMP@") + + # Find transitive dependencies if required + include(CMakeFindDependencyMacro) ++find_dependency(flann CONFIG) ++find_dependency(Ceres CONFIG) ++find_dependency(vlfeat CONFIG) + if (OpenMVG_USE_OPENMP) +- find_dependency(OpenMP REQUIRED) ++ find_dependency(OpenMP) + endif() + if (NOT OpenMVG_USE_INTERNAL_CEREAL) +- find_dependency(cereal REQUIRED) ++ find_dependency(cereal CONFIG) + endif() + + # Import exported OpenMVG targets +diff --git a/src/nonFree/sift/CMakeLists.txt b/src/nonFree/sift/CMakeLists.txt +index 402a2d8..b2912ea 100644 +--- a/src/nonFree/sift/CMakeLists.txt ++++ b/src/nonFree/sift/CMakeLists.txt +@@ -25,7 +25,9 @@ set(FEATS + vl/mathop.c + vl/random.c) + set_source_files_properties(${FEATS} PROPERTIES LANGUAGE C) +-add_library(vlsift ${FEATS}) ++find_package(vlfeat CONFIG REQUIRED) ++add_library(vlsift INTERFACE) ++target_link_libraries(vlsift INTERFACE unofficial::vlfeat::vl) + install(TARGETS vlsift DESTINATION lib EXPORT openMVG-targets) + set_property(TARGET vlsift PROPERTY FOLDER OpenMVG/nonFree) + install( +diff --git a/src/nonFree/sift/SIFT_describer.hpp b/src/nonFree/sift/SIFT_describer.hpp +index cd800b0..9586d9b 100644 +--- a/src/nonFree/sift/SIFT_describer.hpp ++++ b/src/nonFree/sift/SIFT_describer.hpp +@@ -18,7 +18,7 @@ + #include + + extern "C" { +-#include "nonFree/sift/vl/sift.h" ++#include + } + + namespace openMVG { +diff --git a/src/openMVG/exif/sensor_width_database/CMakeLists.txt b/src/openMVG/exif/sensor_width_database/CMakeLists.txt +index 33d9f16..58b4761 100644 +--- a/src/openMVG/exif/sensor_width_database/CMakeLists.txt ++++ b/src/openMVG/exif/sensor_width_database/CMakeLists.txt +@@ -2,4 +2,4 @@ + UNIT_TEST(openMVG ParseDatabase "openMVG_testing;${STLPLUS_LIBRARY}") + + # Installation rules +-install(FILES sensor_width_camera_database.txt DESTINATION ${CMAKE_INSTALL_LIBDIR}/openMVG) ++install(FILES sensor_width_camera_database.txt DESTINATION share/openmvg) diff --git a/src/openMVG/linearProgramming/CMakeLists.txt b/src/openMVG/linearProgramming/CMakeLists.txt -index 4532161d..e3ddedc6 100644 +index 3a8a402..24151e9 100644 --- a/src/openMVG/linearProgramming/CMakeLists.txt +++ b/src/openMVG/linearProgramming/CMakeLists.txt -@@ -16,8 +16,8 @@ target_link_libraries(openMVG_linearProgramming +@@ -15,16 +15,12 @@ target_link_libraries(openMVG_linearProgramming + PUBLIC openMVG_numeric PRIVATE - ${CLP_LIBRARIES} # clp + solver wrapper +- ${CLP_LIBRARIES} # clp + solver wrapper - ${COINUTILS_LIBRARY} # container tools - ${OSI_LIBRARY} # generic LP -+ ${COINUTILS_LIBRARIES} # container tools -+ ${OSI_LIBRARIES} # generic LP ++ ${OSI_CLP_COIN_LINK_LIBRARIES} ) target_include_directories(openMVG_linearProgramming -diff --git a/src/openMVG/matching/CMakeLists.txt b/src/openMVG/matching/CMakeLists.txt -index b92a49b7..6fa26493 100644 ---- a/src/openMVG/matching/CMakeLists.txt -+++ b/src/openMVG/matching/CMakeLists.txt -@@ -16,6 +16,7 @@ list(REMOVE_ITEM matching_files_cpp ${REMOVEFILESUNITTEST}) - - set(THREADS_PREFER_PTHREAD_FLAG ON) - find_package(Threads REQUIRED) -+find_package(flann CONFIG REQUIRED) - - set_source_files_properties(${matching_files_cpp} PROPERTIES LANGUAGE CXX) - add_library(openMVG_matching -@@ -37,10 +38,10 @@ target_link_libraries(openMVG_matching - Threads::Threads - ${cereal_TARGET} - ) --if (NOT DEFINED OpenMVG_USE_INTERNAL_FLANN) -+if (NOT OpenMVG_USE_INTERNAL_FLANN) - target_link_libraries(openMVG_matching + PRIVATE +- ${CLP_INCLUDE_DIRS} +- ${COINUTILS_INCLUDE_DIRS} +- ${OSI_INCLUDE_DIRS} ++ ${OSI_CLP_COIN_INCLUDE_DIRS} PUBLIC -- ${FLANN_LIBRARIES} -+ $,flann::flann_s,flann::flann> + $ ) - endif() - set_target_properties(openMVG_matching PROPERTIES SOVERSION ${OPENMVG_VERSION_MAJOR} VERSION "${OPENMVG_VERSION_MAJOR}.${OPENMVG_VERSION_MINOR}") -diff --git a/src/third_party/CMakeLists.txt b/src/third_party/CMakeLists.txt -index 1e025dc6..4a06dfcc 100644 ---- a/src/third_party/CMakeLists.txt -+++ b/src/third_party/CMakeLists.txt -@@ -18,7 +18,7 @@ add_subdirectory(stlplus3) - set(STLPLUS_LIBRARY openMVG_stlplus PARENT_SCOPE) - - # Add graph library --if(DEFINED OpenMVG_USE_INTERNAL_LEMON) -+if(0) - add_subdirectory(lemon) - set(LEMON_LIBRARY openMVG_lemon PARENT_SCOPE) - endif() -@@ -64,13 +64,13 @@ endif (NOT TIFF_FOUND) - ## - - # Add ceres-solver (A Nonlinear Least Squares Minimizer) --if (DEFINED OpenMVG_USE_INTERNAL_CERES) -+if (0) - add_subdirectory(ceres-solver) - set_property(TARGET openMVG_ceres PROPERTY FOLDER OpenMVG/3rdParty/ceres) - endif() - - # Add an Approximate Nearest Neighbor library --if (DEFINED OpenMVG_USE_INTERNAL_FLANN) -+if (0) - set(FLANN_INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include/openMVG/third_party/flann/src/cpp) - add_subdirectory(flann) - endif() -@@ -84,7 +84,7 @@ add_subdirectory(fast) - ## - # Install Header only libraries if necessary - ## --if (DEFINED OpenMVG_USE_INTERNAL_EIGEN) -+if (0) - #Configure Eigen install - set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include/openMVG/third_party/eigen) - add_subdirectory(eigen) diff --git a/ports/openmvg/fast-c-language.diff b/ports/openmvg/fast-c-language.diff new file mode 100644 index 0000000000..1193e3b650 --- /dev/null +++ b/ports/openmvg/fast-c-language.diff @@ -0,0 +1,25 @@ +diff --git a/src/openMVG/features/fast/fast_detector.cpp b/src/openMVG/features/fast/fast_detector.cpp +index 7223149..0daa5db 100644 +--- a/src/openMVG/features/fast/fast_detector.cpp ++++ b/src/openMVG/features/fast/fast_detector.cpp +@@ -9,7 +9,9 @@ + #include "openMVG/features/fast/fast_detector.hpp" + + #include "openMVG/image/image_container.hpp" ++extern "C" { + #include "third_party/fast/fast.h" ++} + + #include + // +diff --git a/src/third_party/fast/CMakeLists.txt b/src/third_party/fast/CMakeLists.txt +index dc0aba6..7361dc0 100644 +--- a/src/third_party/fast/CMakeLists.txt ++++ b/src/third_party/fast/CMakeLists.txt +@@ -1,6 +1,5 @@ + + file(GLOB_RECURSE C_FILES ${CMAKE_CURRENT_SOURCE_DIR} *.c) +-set_source_files_properties(${C_FILES} PROPERTIES LANGUAGE CXX) + add_library(openMVG_fast STATIC ${C_FILES}) + set_property(TARGET openMVG_fast PROPERTY FOLDER OpenMVG/3rdParty) + diff --git a/ports/openmvg/no-absolute-paths.patch b/ports/openmvg/no-absolute-paths.patch index 45d00aec4b..50c87cb3e4 100644 --- a/ports/openmvg/no-absolute-paths.patch +++ b/ports/openmvg/no-absolute-paths.patch @@ -1,12 +1,11 @@ diff --git a/src/software/SfM/SfM_GlobalPipeline.py.in b/src/software/SfM/SfM_GlobalPipeline.py.in -index 7fda0cd..c6f0bdb 100644 +index 42b41cc..b1dc361 100644 --- a/src/software/SfM/SfM_GlobalPipeline.py.in +++ b/src/software/SfM/SfM_GlobalPipeline.py.in -@@ -16,14 +16,13 @@ - # +@@ -17,13 +17,13 @@ # if output_dir is not present script will create it # -- + +import os # Indicate the openMVG binary directory -OPENMVG_SFM_BIN = "@OPENMVG_SOFTWARE_SFM_BUILD_DIR@" @@ -14,21 +13,20 @@ index 7fda0cd..c6f0bdb 100644 # Indicate the openMVG camera sensor width directory -CAMERA_SENSOR_WIDTH_DIRECTORY = "@OPENMVG_SOFTWARE_SFM_SRC_DIR@" + "/../../openMVG/exif/sensor_width_database" -+CAMERA_SENSOR_WIDTH_DIRECTORY = os.path.dirname(__file__) ++CAMERA_SENSOR_WIDTH_DIRECTORY = OPENMVG_SFM_BIN -import os import subprocess import sys diff --git a/src/software/SfM/SfM_SequentialPipeline.py.in b/src/software/SfM/SfM_SequentialPipeline.py.in -index 0ff2e77..98d3eb2 100644 +index 423c85c..5335680 100644 --- a/src/software/SfM/SfM_SequentialPipeline.py.in +++ b/src/software/SfM/SfM_SequentialPipeline.py.in -@@ -16,14 +16,13 @@ - # +@@ -17,13 +17,13 @@ # if output_dir is not present script will create it # -- + +import os # Indicate the openMVG binary directory -OPENMVG_SFM_BIN = "@OPENMVG_SOFTWARE_SFM_BUILD_DIR@" @@ -36,29 +34,49 @@ index 0ff2e77..98d3eb2 100644 # Indicate the openMVG camera sensor width directory -CAMERA_SENSOR_WIDTH_DIRECTORY = "@OPENMVG_SOFTWARE_SFM_SRC_DIR@" + "/../../openMVG/exif/sensor_width_database" -+CAMERA_SENSOR_WIDTH_DIRECTORY = os.path.dirname(__file__) ++CAMERA_SENSOR_WIDTH_DIRECTORY = OPENMVG_SFM_BIN + +-import os + import subprocess + import sys + +diff --git a/src/software/SfM/import/SfM_StructurePipeline.py.in b/src/software/SfM/import/SfM_StructurePipeline.py.in +index 3489eca..6d8b3d2 100644 +--- a/src/software/SfM/import/SfM_StructurePipeline.py.in ++++ b/src/software/SfM/import/SfM_StructurePipeline.py.in +@@ -18,13 +18,13 @@ + # if output_dir is not present script will create it + # + ++import os + # Indicate the openMVG binary directory +-OPENMVG_SFM_BIN = "@OPENMVG_SOFTWARE_SFM_BUILD_DIR@" ++OPENMVG_SFM_BIN = os.path.dirname(__file__) + + # Indicate the openMVG camera sensor width directory +-CAMERA_SENSOR_WIDTH_DIRECTORY = "@OPENMVG_SOFTWARE_SFM_SRC_DIR@" + "/../../openMVG/exif/sensor_width_database" ++CAMERA_SENSOR_WIDTH_DIRECTORY = OPENMVG_SFM_BIN -import os import subprocess import sys diff --git a/src/software/SfM/tutorial_demo.py.in b/src/software/SfM/tutorial_demo.py.in -index 1c56aab..3fb31c4 100644 +index c7361f3..82f3378 100644 --- a/src/software/SfM/tutorial_demo.py.in +++ b/src/software/SfM/tutorial_demo.py.in -@@ -8,13 +8,14 @@ +@@ -8,13 +8,13 @@ # usage : python tutorial_demo.py # +import os -+ # Indicate the openMVG binary directory -OPENMVG_SFM_BIN = "@OPENMVG_SOFTWARE_SFM_BUILD_DIR@" +OPENMVG_SFM_BIN = os.path.dirname(__file__) # Indicate the openMVG camera sensor width directory -CAMERA_SENSOR_WIDTH_DIRECTORY = "@OPENMVG_SOFTWARE_SFM_SRC_DIR@" + "/../../openMVG/exif/sensor_width_database" -+CAMERA_SENSOR_WIDTH_DIRECTORY = os.path.dirname(__file__) ++CAMERA_SENSOR_WIDTH_DIRECTORY = OPENMVG_SFM_BIN -import os import subprocess diff --git a/ports/openmvg/portfile.cmake b/ports/openmvg/portfile.cmake index 5b3b32f1d0..f445a73a41 100644 --- a/ports/openmvg/portfile.cmake +++ b/ports/openmvg/portfile.cmake @@ -1,10 +1,8 @@ vcpkg_buildpath_length_warning(37) #the port produces some empty dlls when building shared libraries, since some components do not export anything, breaking the internal build itself -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - -if("software" IN_LIST FEATURES AND VCPKG_CRT_LINKAGE STREQUAL static) - message(FATAL_ERROR "OpenMVG software currently cannot be built with static CRT linking. Please open an issue if you require this feature.") +if(VCPKG_TARGET_IS_WINDOWS) + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) endif() vcpkg_from_github( @@ -15,100 +13,87 @@ vcpkg_from_github( PATCHES build_fixes.patch 0001-eigen_3.4.0.patch + fast-c-language.diff no-absolute-paths.patch ) - -set(OpenMVG_USE_OPENMP OFF) -if("openmp" IN_LIST FEATURES) - set(OpenMVG_USE_OPENMP ON) -endif() +file(REMOVE_RECURSE + "${SOURCE_PATH}/src/cmakeFindModules/FindEigen.cmake" + "${SOURCE_PATH}/src/cmakeFindModules/FindFlann.cmake" + "${SOURCE_PATH}/src/cmakeFindModules/FindLemon.cmake" + "${SOURCE_PATH}/src/cmakeFindModules/FindClp.cmake" + "${SOURCE_PATH}/src/cmakeFindModules/FindCoinUtils.cmake" + "${SOURCE_PATH}/src/cmakeFindModules/FindOsi.cmake" + "${SOURCE_PATH}/src/nonFree/sift/vl" + "${SOURCE_PATH}/src/third_party/CppUnitLite" + "${SOURCE_PATH}/src/third_party/ceres-solver" + "${SOURCE_PATH}/src/third_party/cxsparse" + "${SOURCE_PATH}/src/third_party/eigen" + "${SOURCE_PATH}/src/third_party/flann" + "${SOURCE_PATH}/src/third_party/jpeg" + "${SOURCE_PATH}/src/third_party/lemon" + "${SOURCE_PATH}/src/third_party/png" + "${SOURCE_PATH}/src/third_party/tiff" + "${SOURCE_PATH}/src/third_party/zlib" +) +file(MAKE_DIRECTORY "${SOURCE_PATH}/src/dependencies/cereal/include/_placeholder") vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - opencv OpenMVG_USE_OPENCV - opencv OpenMVG_USE_OCVSIFT - software OpenMVG_BUILD_SOFTWARES - software OpenMVG_BUILD_GUI_SOFTWARES + opencv OpenMVG_USE_OPENCV + opencv OpenMVG_USE_OCVSIFT + opencv VCPKG_LOCK_FIND_PACKAGE_OpenCV + openmp OpenMVG_USE_OPENMP + software OpenMVG_BUILD_SOFTWARES + software OpenMVG_BUILD_GUI_SOFTWARES ) -# remove some deps to prevent conflict -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/ceres-solver - ${SOURCE_PATH}/src/third_party/cxsparse - ${SOURCE_PATH}/src/third_party/eigen - ${SOURCE_PATH}/src/third_party/flann - ${SOURCE_PATH}/src/third_party/jpeg - ${SOURCE_PATH}/src/third_party/lemon - ${SOURCE_PATH}/src/third_party/png - ${SOURCE_PATH}/src/third_party/tiff - ${SOURCE_PATH}/src/third_party/zlib) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" OpenMVG_BUILD_SHARED) -# remove some cmake modules to force using our configs -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindEigen.cmake - ${SOURCE_PATH}/src/cmakeFindModules/FindLemon.cmake - ${SOURCE_PATH}/src/cmakeFindModules/FindFlann.cmake - #${SOURCE_PATH}/src/cmakeFindModules/FindCoinUtils.cmake - #${SOURCE_PATH}/src/cmakeFindModules/FindClp.cmake - #${SOURCE_PATH}/src/cmakeFindModules/FindOsi.cmake - ) +vcpkg_find_acquire_program(PKGCONFIG) +set(ENV{PKG_CONFIG} "${PKGCONFIG}") vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/src" - OPTIONS ${FEATURE_OPTIONS} - -DOpenMVG_USE_OPENMP=${OpenMVG_USE_OPENMP} - -DOpenMVG_BUILD_SHARED=OFF - -DOpenMVG_BUILD_TESTS=OFF + OPTIONS + ${FEATURE_OPTIONS} + -DOpenMVG_BUILD_SHARED=${OpenMVG_BUILD_SHARED} + -DOpenMVG_BUILD_COVERAGE=OFF -DOpenMVG_BUILD_DOC=OFF -DOpenMVG_BUILD_EXAMPLES=OFF -DOpenMVG_BUILD_OPENGL_EXAMPLES=OFF - -DOpenMVG_BUILD_COVERAGE=OFF - -DOpenMVG_USE_INTERNAL_CLP=OFF - -DOpenMVG_USE_INTERNAL_COINUTILS=OFF - -DOpenMVG_USE_INTERNAL_OSI=OFF - -DOpenMVG_USE_INTERNAL_EIGEN=OFF - -DOpenMVG_USE_INTERNAL_CEREAL=OFF - -DOpenMVG_USE_INTERNAL_CERES=OFF - -DOpenMVG_USE_INTERNAL_FLANN=OFF - -DOpenMVG_USE_INTERNAL_LEMON=OFF - "-DCOINUTILS_INCLUDE_DIR_HINTS=${CURRENT_INSTALLED_DIR}/include/coin-or" - "-DCLP_INCLUDE_DIR_HINTS=${CURRENT_INSTALLED_DIR}/include/coin-or" - "-DOSI_INCLUDE_DIR_HINTS=${CURRENT_INSTALLED_DIR}/include/coin-or" + -DOpenMVG_BUILD_TESTS=OFF + -DOpenMVG_USE_LIGT=OFF + "-DFLANN_INCLUDE_DIR_HINTS=${CURRENT_INSTALLED_DIR}/include" + "-DLEMON_INCLUDE_DIR_HINTS=${CURRENT_INSTALLED_DIR}/include" + -DVCPKG_LOCK_FIND_PACKAGE_cereal=ON + -DVCPKG_LOCK_FIND_PACKAGE_Ceres=ON + -DVCPKG_LOCK_FIND_PACKAGE_Eigen3=ON + -DVCPKG_LOCK_FIND_PACKAGE_Flann=ON + -DVCPKG_LOCK_FIND_PACKAGE_JPEG=ON + -DVCPKG_LOCK_FIND_PACKAGE_PNG=ON + -DVCPKG_LOCK_FIND_PACKAGE_TIFF=ON + OPTIONS_DEBUG + -DOpenMVG_USE_OPENCV=OFF + -DOpenMVG_BUILD_SOFTWARES=OFF + -DOpenMVG_BUILD_GUI_SOFTWARES=OFF + MAYBE_UNUSED_VARIABLES + FLANN_INCLUDE_DIR_HINTS # Must be "defined" + LEMON_INCLUDE_DIR_HINTS # Must be "defined" + VCPKG_LOCK_FIND_PACKAGE_OpenCV ) - vcpkg_cmake_install() - -file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/share/openMVG/") -file(RENAME "${CURRENT_PACKAGES_DIR}/lib/openMVG/cmake" "${CURRENT_PACKAGES_DIR}/share/openMVG/cmake") -if(NOT VCPKG_BUILD_TYPE) - file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/share/openMVG/") - file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/openMVG/cmake" "${CURRENT_PACKAGES_DIR}/debug/share/openMVG/cmake") -endif() - -vcpkg_cmake_config_fixup() +vcpkg_copy_pdbs() +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/openMVG") file(REMOVE_RECURSE - "${CURRENT_PACKAGES_DIR}/debug/include" - "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/cereal" - "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/glfw" - "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/osi_clp" - "${CURRENT_PACKAGES_DIR}/include/openMVG/image/image_test" - "${CURRENT_PACKAGES_DIR}/include/openMVG/exif/image_data" - "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/nonFree/sift/vl") - -if(OpenMVG_BUILD_SHARED) - if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - # release - file(GLOB DLL_FILES "${CURRENT_PACKAGES_DIR}/lib/*.dll") - file(COPY "${DLL_FILES}" DESTINATION "${CURRENT_PACKAGES_DIR}/bin") - file(REMOVE_RECURSE "${DLL_FILES}") - endif() - if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - # debug - file(GLOB DLL_FILES "${CURRENT_PACKAGES_DIR}/debug/lib/*.dll") - file(COPY "${DLL_FILES}" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") - file(REMOVE_RECURSE "${DLL_FILES}") - endif() -endif() -vcpkg_copy_pdbs() + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/cereal" + "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/glfw" + "${CURRENT_PACKAGES_DIR}/include/openMVG_dependencies/osi_clp" + "${CURRENT_PACKAGES_DIR}/include/openMVG/image/image_test" + "${CURRENT_PACKAGES_DIR}/include/openMVG/exif/image_data" +) if("software" IN_LIST FEATURES) if(VCPKG_TARGET_IS_OSX) @@ -173,13 +158,20 @@ if("software" IN_LIST FEATURES) openMVG_main_ComputeFeatures_OpenCV) endif() - file(COPY "${SOURCE_PATH}/src/openMVG/exif/sensor_width_database/sensor_width_camera_database.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}") - set(OPENMVG_SOFTWARE_SFM_BUILD_DIR "${CURRENT_INSTALLED_DIR}/tools/${PORT}") - set(OPENMVG_CAMERA_SENSOR_WIDTH_DIRECTORY "${CURRENT_INSTALLED_DIR}/tools/${PORT}") - configure_file("${SOURCE_PATH}/src/software/SfM/tutorial_demo.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/tutorial_demo.py" @ONLY) - configure_file("${SOURCE_PATH}/src/software/SfM/SfM_GlobalPipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/SfM_GlobalPipeline.py" @ONLY) - configure_file("${SOURCE_PATH}/src/software/SfM/SfM_SequentialPipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/SfM_SequentialPipeline.py" @ONLY) + file(COPY "${CURRENT_PACKAGES_DIR}/share/${PORT}/sensor_width_camera_database.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}") + file(COPY_FILE "${SOURCE_PATH}/src/software/SfM/tutorial_demo.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/tutorial_demo.py") + file(COPY_FILE "${SOURCE_PATH}/src/software/SfM/SfM_GlobalPipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/SfM_GlobalPipeline.py") + file(COPY_FILE "${SOURCE_PATH}/src/software/SfM/SfM_SequentialPipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/SfM_SequentialPipeline.py") + file(COPY_FILE "${SOURCE_PATH}/src/software/SfM/import/SfM_StructurePipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/SfM_StructurePipeline.py") endif() -# Handle copyright -file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +set(third_party_notices "") +file(GLOB files "${SOURCE_PATH}/src/third_party/*/README.openMVG") +foreach(file IN LISTS files) + cmake_path(GET file PARENT_PATH parent_path) + cmake_path(GET parent_path FILENAME component) + set(extra_file "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/${component}") + file(COPY_FILE "${file}" "${extra_file}") + list(APPEND third_party_notices "${extra_file}") +endforeach() +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE" ${third_party_notices}) diff --git a/ports/openmvg/vcpkg.json b/ports/openmvg/vcpkg.json index e7405bc6e7..d93c6433e9 100644 --- a/ports/openmvg/vcpkg.json +++ b/ports/openmvg/vcpkg.json @@ -1,9 +1,9 @@ { "name": "openmvg", "version": "2.1", - "port-version": 1, + "port-version": 2, "description": "open Multiple View Geometry library. Basis for 3D computer vision and Structure from Motion.", - "license": "MPL-2.0-no-copyleft-exception", + "license": null, "supports": "(x86 | x64 | arm64) & !xbox", "dependencies": [ "cereal", @@ -38,7 +38,7 @@ ], "features": { "opencv": { - "description": "opencv support for openmvg", + "description": "Build opencv+openMVG samples programs", "dependencies": [ { "name": "opencv", @@ -49,10 +49,10 @@ ] }, "openmp": { - "description": "openmp support for openmvg" + "description": "OpenMP support" }, "software": { - "description": "build openMVG tools", + "description": "Build openMVG tools", "dependencies": [ "qt5-base", "qt5-svg" diff --git a/ports/vlfeat/expose_missing_symbols.patch b/ports/vlfeat/expose_missing_symbols.patch index 02e9ce0a66..b7cbc163e5 100644 --- a/ports/vlfeat/expose_missing_symbols.patch +++ b/ports/vlfeat/expose_missing_symbols.patch @@ -67,13 +67,15 @@ diff --git a/vl/sift.h b/vl/sift.h index 50e03f4..f9558ad 100644 --- a/vl/sift.h +++ b/vl/sift.h -@@ -138,7 +138,8 @@ void vl_sift_keypoint_init (VlSiftFilt const *f, - double y, +@@ -139,6 +139,11 @@ void vl_sift_keypoint_init (VlSiftFilt const *f, double sigma) ; /** @} */ -- + +VL_EXPORT -+void update_gradient(VlSiftFilt* f); ++void vl_sift_update_gradient(VlSiftFilt* f); ++ ++#define update_gradient vl_sift_update_gradient ++ /** @name Retrieve data and parameters ** @{ **/ diff --git a/ports/vlfeat/portfile.cmake b/ports/vlfeat/portfile.cmake index 730d28a927..7ff1f7d9a9 100644 --- a/ports/vlfeat/portfile.cmake +++ b/ports/vlfeat/portfile.cmake @@ -34,6 +34,10 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_cmake_config_fixup() +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/vl/host.h" "__declspec(dllimport)" "__declspec(dllexport)") +endif() + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share") vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING") diff --git a/ports/vlfeat/vcpkg.json b/ports/vlfeat/vcpkg.json index 4a81a53675..78fd67d3e0 100644 --- a/ports/vlfeat/vcpkg.json +++ b/ports/vlfeat/vcpkg.json @@ -1,7 +1,7 @@ { "name": "vlfeat", "version-date": "2020-07-10", - "port-version": 4, + "port-version": 5, "description": "An open library of computer vision algorithms", "homepage": "https://www.vlfeat.org", "dependencies": [ diff --git a/scripts/ci.feature.baseline.txt b/scripts/ci.feature.baseline.txt index 43b7b4f9b9..e40c73a94d 100644 --- a/scripts/ci.feature.baseline.txt +++ b/scripts/ci.feature.baseline.txt @@ -1544,6 +1544,8 @@ openmama:arm64-uwp = cascade openmama:arm64-windows = cascade openmama:x64-uwp = cascade openmama:x64-windows-static = cascade +openmvg[opencv,software](arm & windows) = cascade +openmvg(uwp) = cascade openmvs:arm64-uwp = cascade openmvs:arm64-windows = cascade openmvs:x64-linux = cascade @@ -2151,7 +2153,8 @@ opencv2[python](osx) = feature-fails # requires python2 opencv2[world] = feature-fails # See https://github.com/microsoft/vcpkg/issues/29943 opencv3[ffmpeg] = feature-fails # ffmpeg5+ is not supported under opencv3. See https://github.com/microsoft/vcpkg/issues/32150 opencv3[halide](osx) = feature-fails # Same as opencv4[halide] -openmvg(windows & arm) = fail # nmmintrin.h(17): fatal error C1189: #error: This header is specific to X86, X64, ARM64, and ARM64EC targets. See https://github.com/microsoft/vcpkg/issues/33746 +openmvg[core](arm & windows & !uwp) = combination-fails # nmmintrin.h(17): fatal error C1189: #error: This header is specific to X86, X64, ARM64, and ARM64EC targets. See https://github.com/microsoft/vcpkg/issues/33746 +openmvg[openmp](arm & windows & !uwp) = feature-fails openscap[python](!windows) = feature-fails # CI image lacks swig opentelemetry-cpp[otlp](uwp) = feature-fails # --grpc_out: protoc-gen-grpc: The system cannot find the file specified. See https://github.com/microsoft/vcpkg/issues/34847 openvdb[ax] = feature-fails # ax requires llvm version <= 14. Work when using a baseline + overwrite diff --git a/versions/baseline.json b/versions/baseline.json index a71b60d338..78b9e025a5 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -7046,7 +7046,7 @@ }, "openmvg": { "baseline": "2.1", - "port-version": 1 + "port-version": 2 }, "openmvs": { "baseline": "2.1.0", @@ -10042,7 +10042,7 @@ }, "vlfeat": { "baseline": "2020-07-10", - "port-version": 4 + "port-version": 5 }, "vlpp": { "baseline": "1.2.10.2", diff --git a/versions/o-/openmvg.json b/versions/o-/openmvg.json index 9942a25fc2..6d607ea272 100644 --- a/versions/o-/openmvg.json +++ b/versions/o-/openmvg.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "26f65270e3a45107e6e23f45dc8837143d77fb90", + "version": "2.1", + "port-version": 2 + }, { "git-tree": "004bc9d5fa217b3e1f94c62f850107d47ff7427b", "version": "2.1", diff --git a/versions/v-/vlfeat.json b/versions/v-/vlfeat.json index b5afac9847..2a6fc7d11e 100644 --- a/versions/v-/vlfeat.json +++ b/versions/v-/vlfeat.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "3dbc9caca5e1bf0aa44655bea08cc44405fd7280", + "version-date": "2020-07-10", + "port-version": 5 + }, { "git-tree": "00b7794f5db916989104858cce0f09b7bc6b65a2", "version-date": "2020-07-10",