diff --git a/ports/openmvg/CONTROL b/ports/openmvg/CONTROL index 7e7384a19..7f883548d 100644 --- a/ports/openmvg/CONTROL +++ b/ports/openmvg/CONTROL @@ -1,5 +1,5 @@ Source: openmvg -Version: 1.4-6 +Version: 1.4-7 Description: open Multiple View Geometry library. Basis for 3D computer vision and Structure from Motion. Build-Depends: coinutils, clp, osi, liblemon, flann, eigen3, ceres, cereal, libjpeg-turbo, tiff, libpng, zlib, suitesparse diff --git a/ports/openmvg/fix-config-cmake.patch b/ports/openmvg/fix-config-cmake.patch new file mode 100644 index 000000000..f229502ce --- /dev/null +++ b/ports/openmvg/fix-config-cmake.patch @@ -0,0 +1,13 @@ +diff --git a/src/cmakeFindModules/OpenMVGConfig.cmake.in b/src/cmakeFindModules/OpenMVGConfig.cmake.in +index e7dfbfd..357a25c 100644 +--- a/src/cmakeFindModules/OpenMVGConfig.cmake.in ++++ b/src/cmakeFindModules/OpenMVGConfig.cmake.in +@@ -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) + if (NOT EXISTS ${CURRENT_ROOT_INSTALL_DIR}) + OPENMVG_REPORT_NOT_FOUND( + "OpenMVG install root: ${CURRENT_ROOT_INSTALL_DIR}, " diff --git a/ports/openmvg/portfile.cmake b/ports/openmvg/portfile.cmake index 9f517c11f..6f4d5891f 100644 --- a/ports/openmvg/portfile.cmake +++ b/ports/openmvg/portfile.cmake @@ -1,5 +1,3 @@ -include(vcpkg_common_functions) - 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 @@ -12,6 +10,13 @@ vcpkg_from_github( SHA512 949cf3680375c87b06db0f4713c846422c98d1979d49e9db65761f63f6f3212f0fcd8425f23c6112f04fbbb90b241638c2fd9329bb6b8b612c1d073aac55759a PATCHES fixcmake.patch + fix-config-cmake.patch +) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + openmp OpenMVG_USE_OPENMP + opencv OpenMVG_USE_OPENCV + opencv OpenMVG_USE_OCVSIFT ) set(ENABLE_OPENCV OFF) @@ -25,28 +30,28 @@ if("openmp" IN_LIST FEATURES) endif() # remove some deps to prevent conflict -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/ceres-solver) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/cxsparse) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/eigen) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/flann) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/jpeg) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/lemon) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/png) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/tiff) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/third_party/zlib) +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) # remove some cmake modules to force using our configs -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindEigen.cmake) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindLemon.cmake) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindFlann.cmake) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindCoinUtils.cmake) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindClp.cmake) -file(REMOVE_RECURSE ${SOURCE_PATH}/src/cmakeFindModules/FindOsi.cmake) +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_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/src PREFER_NINJA - OPTIONS + OPTIONS ${FEATURE_OPTIONS} -DOpenMVG_BUILD_SHARED=OFF -DOpenMVG_BUILD_TESTS=OFF -DOpenMVG_BUILD_DOC=OFF @@ -55,9 +60,6 @@ vcpkg_configure_cmake( -DOpenMVG_BUILD_SOFTWARES=OFF -DOpenMVG_BUILD_GUI_SOFTWARES=OFF -DOpenMVG_BUILD_COVERAGE=OFF - -DOpenMVG_USE_OPENMP=${ENABLE_OPENMP} - -DOpenMVG_USE_OPENCV=${ENABLE_OPENCV} - -DOpenMVG_USE_OCVSIFT=${ENABLE_OPENCV} -DOpenMVG_USE_INTERNAL_CLP=OFF -DOpenMVG_USE_INTERNAL_COINUTILS=OFF -DOpenMVG_USE_INTERNAL_OSI=OFF @@ -70,8 +72,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH share/openMVG/cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) #remove extra deprecated cmake target files left in unappropriate folders file(GLOB REMOVE_CMAKE ${CURRENT_PACKAGES_DIR}/lib/*.cmake) @@ -79,8 +80,8 @@ file(REMOVE_RECURSE ${REMOVE_CMAKE}) file(GLOB REMOVE_CMAKE ${CURRENT_PACKAGES_DIR}/debug/lib/*.cmake) file(REMOVE_RECURSE ${REMOVE_CMAKE}) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/openMVG/image/image_test) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/openMVG/exif/image_data) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/openMVG/image/image_test + ${CURRENT_PACKAGES_DIR}/include/openMVG/exif/image_data) if(OpenMVG_BUILD_SHARED) # release