early-access version 2853
This commit is contained in:
183
externals/vcpkg/ports/openmvs/fix-build.patch
vendored
Executable file
183
externals/vcpkg/ports/openmvs/fix-build.patch
vendored
Executable file
@@ -0,0 +1,183 @@
|
||||
diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
|
||||
index 2365de65f..4d871850d 100644
|
||||
--- a/apps/CMakeLists.txt
|
||||
+++ b/apps/CMakeLists.txt
|
||||
@@ -1,6 +1,7 @@
|
||||
# Add applications
|
||||
ADD_SUBDIRECTORY(InterfaceCOLMAP)
|
||||
ADD_SUBDIRECTORY(InterfaceMetashape)
|
||||
+ADD_SUBDIRECTORY(InterfaceVisualSFM)
|
||||
ADD_SUBDIRECTORY(DensifyPointCloud)
|
||||
ADD_SUBDIRECTORY(ReconstructMesh)
|
||||
ADD_SUBDIRECTORY(RefineMesh)
|
||||
|
||||
diff --git a/build/Templates/OpenMVSConfig.cmake.in b/build/Templates/OpenMVSConfig.cmake.in
|
||||
index 9747b3e1..5e2469d3 100644
|
||||
--- a/build/Templates/OpenMVSConfig.cmake.in
|
||||
+++ b/build/Templates/OpenMVSConfig.cmake.in
|
||||
@@ -15,9 +15,67 @@ set(OpenMVS_INCLUDE_DIRS "@INSTALL_INCLUDE_DIR_IN@")
|
||||
|
||||
set(OpenMVS_DEFINITIONS "@OpenMVS_DEFINITIONS@")
|
||||
|
||||
+list(APPEND CMAKE_MODULE_PATH "${OpenMVS_CMAKE_DIR}")
|
||||
+
|
||||
+if (MSVC)
|
||||
+ set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /GL")
|
||||
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GL")
|
||||
+ set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
+ set(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
+endif()
|
||||
+
|
||||
+set(CMAKE_CXX_STANDARD 14)
|
||||
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
+
|
||||
+include(CMakeFindDependencyMacro)
|
||||
+
|
||||
+if(@OpenMVS_USE_OPENMP@)
|
||||
+ find_dependency(OpenMP)
|
||||
+ add_definitions(-D_USE_OPENMP)
|
||||
+endif()
|
||||
+
|
||||
+if(@OpenMVS_USE_OPENGL@)
|
||||
+ find_dependency(OpenGL)
|
||||
+ add_definitions(${OpenGL_DEFINITIONS} -D_USE_OPENGL)
|
||||
+endif()
|
||||
+
|
||||
+if(@OpenMVS_USE_CUDA@)
|
||||
+ find_dependency(CUDA)
|
||||
+ add_definitions(-D_USE_CUDA)
|
||||
+ include_directories(${CUDA_INCLUDE_DIRS})
|
||||
+endif()
|
||||
+
|
||||
+if(@OpenMVS_USE_BREAKPAD@)
|
||||
+ find_dependency(BREAKPAD)
|
||||
+ add_definitions(${BREAKPAD_DEFINITIONS} -D_USE_BREAKPAD)
|
||||
+endif()
|
||||
+
|
||||
+find_dependency(Boost)
|
||||
+add_definitions(${Boost_DEFINITIONS} -D_USE_BOOST)
|
||||
+include_directories(${Boost_INCLUDE_DIRS})
|
||||
+find_dependency(Eigen3)
|
||||
+add_definitions(${EIGEN3_DEFINITIONS} -D_USE_EIGEN)
|
||||
+include_directories(${EIGEN3_INCLUDE_DIRS})
|
||||
+find_dependency(OpenCV)
|
||||
+add_definitions(${OpenCV_DEFINITIONS})
|
||||
+find_dependency(CGAL)
|
||||
+add_definitions(${CGAL_DEFINITIONS})
|
||||
+
|
||||
+find_dependency(VCG REQUIRED)
|
||||
+add_definitions(${VCG_DEFINITIONS})
|
||||
+
|
||||
+if(@OpenMVS_USE_CERES@)
|
||||
+ find_dependency(Ceres)
|
||||
+ add_definitions(${CERES_DEFINITIONS})
|
||||
+endif()
|
||||
+
|
||||
+add_definitions(@OpenMVS_DEFINITIONS@)
|
||||
+
|
||||
+# Our library dependencies (contains definitions for IMPORTED targets)
|
||||
+if(NOT TARGET MVS AND NOT OpenMVS_BINARY_DIR)
|
||||
+ include("${OpenMVS_CMAKE_DIR}/OpenMVSTargets.cmake")
|
||||
+endif()
|
||||
+
|
||||
# These are IMPORTED targets created by OpenMVSTargets.cmake
|
||||
set(OpenMVS_LIBRARIES MVS)
|
||||
-set(OpenMVS_BINARIES InterfaceCOLMAP DensifyPointCloud ReconstructMesh RefineMesh TextureMesh)
|
||||
-
|
||||
-include("${CMAKE_CURRENT_LIST_DIR}/OpenMVSTargets.cmake")
|
||||
-check_required_components("OpenMVS")
|
||||
+set(OpenMVS_BINARIES InterfaceVisualSFM InterfaceCOLMAP DensifyPointCloud ReconstructMesh RefineMesh TextureMesh)
|
||||
|
||||
diff --git a/build/Utils.cmake b/build/Utils.cmake
|
||||
index 106d43167..33390d192 100644
|
||||
--- a/build/Utils.cmake
|
||||
+++ b/build/Utils.cmake
|
||||
@@ -173,32 +173,6 @@ macro(ComposePackageLibSuffix)
|
||||
set(PACKAGE_LIB_SUFFIX "")
|
||||
set(PACKAGE_LIB_SUFFIX_DBG "")
|
||||
set(PACKAGE_LIB_SUFFIX_REL "")
|
||||
- if(MSVC)
|
||||
- if("${MSVC_VERSION}" STRGREATER "1929")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc17")
|
||||
- elseif("${MSVC_VERSION}" STRGREATER "1916")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc16")
|
||||
- elseif("${MSVC_VERSION}" STRGREATER "1900")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc15")
|
||||
- elseif("${MSVC_VERSION}" STREQUAL "1900")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc14")
|
||||
- elseif("${MSVC_VERSION}" STREQUAL "1800")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc12")
|
||||
- elseif("${MSVC_VERSION}" STREQUAL "1700")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc11")
|
||||
- elseif("${MSVC_VERSION}" STREQUAL "1600")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc10")
|
||||
- elseif("${MSVC_VERSION}" STREQUAL "1500")
|
||||
- set(PACKAGE_LIB_SUFFIX "/vc9")
|
||||
- endif()
|
||||
- if("${SYSTEM_BITNESS}" STREQUAL "64")
|
||||
- set(PACKAGE_LIB_SUFFIX "${PACKAGE_LIB_SUFFIX}/x64")
|
||||
- else()
|
||||
- set(PACKAGE_LIB_SUFFIX "${PACKAGE_LIB_SUFFIX}/x86")
|
||||
- endif()
|
||||
- set(PACKAGE_LIB_SUFFIX_DBG "${PACKAGE_LIB_SUFFIX}/Debug")
|
||||
- set(PACKAGE_LIB_SUFFIX_REL "${PACKAGE_LIB_SUFFIX}/Release")
|
||||
- endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -806,12 +780,8 @@ macro(ConfigLibrary)
|
||||
# Offer the user the choice of overriding the installation directories
|
||||
set(INSTALL_LIB_DIR "lib" CACHE PATH "Installation directory for libraries")
|
||||
set(INSTALL_BIN_DIR "bin" CACHE PATH "Installation directory for executables")
|
||||
- set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Installation directory for header files")
|
||||
- if(WIN32 AND NOT CYGWIN)
|
||||
- set(DEF_INSTALL_CMAKE_DIR "CMake")
|
||||
- else()
|
||||
- set(DEF_INSTALL_CMAKE_DIR "lib/cmake")
|
||||
- endif()
|
||||
+ set(INSTALL_INCLUDE_DIR "include/openmvs" CACHE PATH "Installation directory for header files")
|
||||
+ set(DEF_INSTALL_CMAKE_DIR "share/openmvs")
|
||||
set(INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files")
|
||||
# Make relative paths absolute (needed later on)
|
||||
foreach(p LIB BIN INCLUDE CMAKE)
|
||||
@@ -822,7 +792,7 @@ macro(ConfigLibrary)
|
||||
else()
|
||||
set(${varp} "${CMAKE_INSTALL_PREFIX}/${${var}}")
|
||||
endif()
|
||||
- set(${var} "${${varp}}/${PROJECT_NAME}")
|
||||
+ set(${var} "${${varp}}")
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
|
||||
diff --git a/libs/Common/Strings.h b/libs/Common/MVSStrings.h
|
||||
similarity index 100%
|
||||
rename from libs/Common/Strings.h
|
||||
rename to libs/Common/MVSStrings.h
|
||||
diff --git a/libs/Common/Types.h b/libs/Common/Types.h
|
||||
index bcac65c..9abeefb 100644
|
||||
--- a/libs/Common/Types.h
|
||||
+++ b/libs/Common/Types.h
|
||||
@@ -380,7 +380,7 @@ typedef TAliasCast<double,int32_t> CastD2I;
|
||||
|
||||
// I N C L U D E S /////////////////////////////////////////////////
|
||||
|
||||
-#include "Strings.h"
|
||||
+#include "MVSStrings.h"
|
||||
#include "AutoPtr.h"
|
||||
#include "List.h"
|
||||
#include "Thread.h"
|
||||
|
||||
diff --git a/apps/InterfaceMetashape/InterfaceMetashape.cpp b/apps/InterfaceMetashape/InterfaceMetashape.cpp
|
||||
index 1157bf29..73563b3c 100644
|
||||
--- a/apps/InterfaceMetashape/InterfaceMetashape.cpp
|
||||
+++ b/apps/InterfaceMetashape/InterfaceMetashape.cpp
|
||||
@@ -246,7 +246,7 @@ bool ParseImageListXML(Scene& scene, PlatformDistCoeffs& pltDistCoeffs, size_t&
|
||||
tinyxml2::XMLElement* elem;
|
||||
const size_t nLen(pStream->getSize());
|
||||
String strCameras; strCameras.resize(nLen);
|
||||
- pStream->read(&strCameras[0], nLen);
|
||||
+ pStream->read(strCameras.data(), nLen);
|
||||
tinyxml2::XMLDocument doc;
|
||||
doc.Parse(strCameras.c_str(), nLen);
|
||||
if (doc.ErrorID() != tinyxml2::XML_SUCCESS)
|
||||
42
externals/vcpkg/ports/openmvs/no-absolute-paths.patch
vendored
Executable file
42
externals/vcpkg/ports/openmvs/no-absolute-paths.patch
vendored
Executable file
@@ -0,0 +1,42 @@
|
||||
diff --git a/MvgMvsPipeline.py b/MvgMvsPipeline.py.in
|
||||
index 53a4a5cc..97735396 100644
|
||||
--- a/MvgMvsPipeline.py
|
||||
+++ b/MvgMvsPipeline.py.in
|
||||
@@ -109,14 +109,14 @@ def find(afile):
|
||||
return d
|
||||
return None
|
||||
|
||||
-
|
||||
+current_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
# Try to find openMVG and openMVS binaries in PATH
|
||||
-OPENMVG_BIN = whereis("openMVG_main_SfMInit_ImageListing")
|
||||
-OPENMVS_BIN = whereis("ReconstructMesh")
|
||||
+OPENMVG_BIN = os.path.join(current_dir, '..', 'openmvg')
|
||||
+OPENMVS_BIN = current_dir
|
||||
|
||||
# Try to find openMVG camera sensor database
|
||||
-CAMERA_SENSOR_DB_FILE = "sensor_width_camera_database.txt"
|
||||
-CAMERA_SENSOR_DB_DIRECTORY = find(CAMERA_SENSOR_DB_FILE)
|
||||
+CAMERA_SENSOR_DB_FILE = os.path.join(OPENMVG_BIN, 'sensor_width_camera_database.txt')
|
||||
+CAMERA_SENSOR_DB_DIRECTORY = OPENMVS_BIN
|
||||
|
||||
# Ask user for openMVG and openMVS directories if not found
|
||||
if not OPENMVG_BIN:
|
||||
|
||||
diff --git a/MvgOptimizeSfM.py b/MvgOptimizeSfM.py.in
|
||||
index 930d6805..6eb672c1 100644
|
||||
--- a/MvgOptimizeSfM.py
|
||||
+++ b/MvgOptimizeSfM.py.in
|
||||
@@ -56,9 +56,10 @@ def launch(cmdline):
|
||||
sys.exit('\r\nProcess canceled by user, all files remains')
|
||||
|
||||
|
||||
+current_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
# Try to find openMVG and openMVS binaries in PATH
|
||||
-OPENMVG_BIN = whereis("openMVG_main_SfMInit_ImageListing")
|
||||
-OPENMVS_BIN = whereis("ReconstructMesh")
|
||||
+OPENMVG_BIN = os.path.join(current_dir, '..', 'openmvg')
|
||||
+OPENMVS_BIN = current_dir
|
||||
|
||||
# Ask user for openMVG and openMVS directories if not found
|
||||
if not OPENMVG_BIN:
|
||||
75
externals/vcpkg/ports/openmvs/portfile.cmake
vendored
Executable file
75
externals/vcpkg/ports/openmvs/portfile.cmake
vendored
Executable file
@@ -0,0 +1,75 @@
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO cdcseacave/openMVS
|
||||
REF v2.0.1
|
||||
SHA512 f1c1708d6e5c9424b95fb71c88ca510c70a4b11711079f12f173ecf190b009a977f7aa11f49a0b2e634a307f2732e4c33d9cd37d727ba60da99051876adb7d1e
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-build.patch
|
||||
no-absolute-paths.patch
|
||||
)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
cuda OpenMVS_USE_CUDA
|
||||
openmp OpenMVS_USE_OPENMP
|
||||
nonfree OpenMVS_USE_NONFREE
|
||||
ceres OpenMVS_USE_CERES
|
||||
)
|
||||
|
||||
file(REMOVE "${SOURCE_PATH}/build/Modules/FindCERES.cmake")
|
||||
file(REMOVE "${SOURCE_PATH}/build/Modules/FindCGAL.cmake")
|
||||
file(REMOVE "${SOURCE_PATH}/build/Modules/FindEIGEN.cmake")
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS ${FEATURE_OPTIONS}
|
||||
-DOpenMVS_USE_FAST_FLOAT2INT=ON
|
||||
-DOpenMVS_USE_FAST_INVSQRT=OFF
|
||||
-DOpenMVS_USE_FAST_CBRT=ON
|
||||
-DOpenMVS_USE_SSE=ON
|
||||
-DOpenMVS_USE_OPENGL=ON
|
||||
-DOpenMVS_USE_BREAKPAD=OFF
|
||||
OPTIONS_RELEASE
|
||||
-DOpenMVS_BUILD_TOOLS=ON
|
||||
OPTIONS_DEBUG
|
||||
-DOpenMVS_BUILD_TOOLS=OFF
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
vcpkg_cmake_config_fixup()
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/${PORT}/OpenMVSTargets-release.cmake TARGETS_CMAKE)
|
||||
string(REPLACE "bin/InterfaceCOLMAP" "tools/${PORT}/InterfaceCOLMAP" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/InterfaceMetashape" "tools/${PORT}/InterfaceMetashape" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/InterfaceVisualSFM" "tools/${PORT}/InterfaceVisualSFM" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/DensifyPointCloud" "tools/${PORT}/DensifyPointCloud" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/ReconstructMesh" "tools/${PORT}/ReconstructMesh" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/RefineMesh" "tools/${PORT}/RefineMesh" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/TextureMesh" "tools/${PORT}/TextureMesh" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
string(REPLACE "bin/Viewer" "tools/${PORT}/Viewer" TARGETS_CMAKE "${TARGETS_CMAKE}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/${PORT}/OpenMVSTargets-release.cmake "${TARGETS_CMAKE}")
|
||||
|
||||
vcpkg_copy_tools(AUTO_CLEAN TOOL_NAMES
|
||||
DensifyPointCloud
|
||||
InterfaceCOLMAP
|
||||
InterfaceMetashape
|
||||
InterfaceVisualSFM
|
||||
ReconstructMesh
|
||||
RefineMesh
|
||||
TextureMesh
|
||||
Viewer
|
||||
)
|
||||
|
||||
set(OPENMVG_TOOLS_PATH "${CURRENT_INSTALLED_DIR}/tools/openmvg")
|
||||
set(OPENMVS_TOOLS_PATH "${CURRENT_INSTALLED_DIR}/tools/${PORT}")
|
||||
set(SENSOR_WIDTH_CAMERA_DATABASE_TXT_PATH "${OPENMVG_TOOLS_PATH}/sensor_width_camera_database.txt")
|
||||
configure_file("${SOURCE_PATH}/MvgMvsPipeline.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/MvgMvsPipeline.py" @ONLY)
|
||||
configure_file("${SOURCE_PATH}/MvgOptimizeSfM.py.in" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/MvgOptimizeSfM.py" @ONLY)
|
||||
file(INSTALL "${SOURCE_PATH}/build/Modules/FindVCG.cmake" DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT})
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
||||
64
externals/vcpkg/ports/openmvs/vcpkg.json
vendored
Executable file
64
externals/vcpkg/ports/openmvs/vcpkg.json
vendored
Executable file
@@ -0,0 +1,64 @@
|
||||
{
|
||||
"name": "openmvs",
|
||||
"version": "2.0.1",
|
||||
"description": "OpenMVS: open Multi-View Stereo reconstruction library",
|
||||
"homepage": "https://cdcseacave.github.io/openMVS",
|
||||
"license": "AGPL-3.0-only",
|
||||
"dependencies": [
|
||||
"boost-iostreams",
|
||||
"boost-program-options",
|
||||
"boost-serialization",
|
||||
"boost-system",
|
||||
"boost-throw-exception",
|
||||
{
|
||||
"name": "cgal",
|
||||
"default-features": false
|
||||
},
|
||||
"eigen3",
|
||||
"glew",
|
||||
"glfw3",
|
||||
"libpng",
|
||||
"opencv",
|
||||
{
|
||||
"name": "openmvg",
|
||||
"features": [
|
||||
"software"
|
||||
],
|
||||
"platform": "!(windows & static)"
|
||||
},
|
||||
"tiff",
|
||||
"vcglib",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
},
|
||||
"zlib"
|
||||
],
|
||||
"default-features": [
|
||||
"nonfree"
|
||||
],
|
||||
"features": {
|
||||
"ceres": {
|
||||
"description": "CERES support for openmvs",
|
||||
"dependencies": [
|
||||
"ceres"
|
||||
]
|
||||
},
|
||||
"cuda": {
|
||||
"description": "CUDA support for openmvs",
|
||||
"dependencies": [
|
||||
"cuda"
|
||||
]
|
||||
},
|
||||
"nonfree": {
|
||||
"description": "nonfree support for openmvs"
|
||||
},
|
||||
"openmp": {
|
||||
"description": "OpenMP support for openmvs"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user