summaryrefslogtreecommitdiff
path: root/graphics/openmvs
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/openmvs')
-rw-r--r--graphics/openmvs/Makefile19
-rw-r--r--graphics/openmvs/distinfo6
-rw-r--r--graphics/openmvs/files/patch-build_Utils.cmake18
-rw-r--r--graphics/openmvs/files/patch-libs_MVS_Mesh.cpp25
-rw-r--r--graphics/openmvs/pkg-plist1
5 files changed, 51 insertions, 18 deletions
diff --git a/graphics/openmvs/Makefile b/graphics/openmvs/Makefile
index 3301245bf008..a8a6d7f35ffa 100644
--- a/graphics/openmvs/Makefile
+++ b/graphics/openmvs/Makefile
@@ -1,7 +1,7 @@
PORTNAME= openmvs
DISTVERSIONPREFIX= v
-DISTVERSION= 2.2.0
-PORTREVISION= 9
+DISTVERSION= 2.3.0
+PORTREVISION= 1
CATEGORIES= graphics
MAINTAINER= yuri@FreeBSD.org
@@ -11,12 +11,6 @@ WWW= https://github.com/cdcseacave/openMVS
LICENSE= AGPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
-BROKEN= compilation is broken because of the use of discontinued C++ features, see https://github.com/cdcseacave/openMVS/issues/1075
-BROKEN_aarch64= use of undeclared identifier '__builtin_ia32_emms' # https://github.com/cdcseacave/openMVS/issues/847
-
-BUILD_DEPENDS= cgal>0:math/cgal \
- ${LOCALBASE}/include/sys/sysinfo.h:devel/libsysinfo \
- vcglib>0:devel/vcglib
LIB_DEPENDS= libboost_thread.so:devel/boost-libs \
libceres.so:math/ceres-solver \
libgflags.so:devel/gflags \
@@ -25,9 +19,14 @@ LIB_DEPENDS= libboost_thread.so:devel/boost-libs \
libmpfr.so:math/mpfr \
libopencv_core.so:graphics/opencv \
libpng16.so:graphics/png \
- libtiff.so:graphics/tiff
+ libtiff.so:graphics/tiff \
+ ${PY_BOOST} \
+ libpython${PYTHON_VER}${PYTHON_ABIVER}.so:lang/python${PYTHON_SUFFIX}
+BUILD_DEPENDS= cgal>0:math/cgal \
+ ${LOCALBASE}/include/sys/sysinfo.h:devel/libsysinfo \
+ vcglib>0:devel/vcglib
-USES= cmake:testing compiler:c++17-lang eigen:3 jpeg
+USES= cmake:testing compiler:c++14-lang eigen:3 jpeg python
USE_GITHUB= yes
GH_ACCOUNT= cdcseacave
diff --git a/graphics/openmvs/distinfo b/graphics/openmvs/distinfo
index e2dae598de94..3c81c967d383 100644
--- a/graphics/openmvs/distinfo
+++ b/graphics/openmvs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1688531169
-SHA256 (cdcseacave-openMVS-v2.2.0_GH0.tar.gz) = 849e6b9d0ab187e0ecb71c55827080fe63e24af42274de6c35c0c9b922ac6323
-SIZE (cdcseacave-openMVS-v2.2.0_GH0.tar.gz) = 2162877
+TIMESTAMP = 1764968217
+SHA256 (cdcseacave-openMVS-v2.3.0_GH0.tar.gz) = ac7312fb71dbab18c5b2755ad9ac3caa40ec689f6f369c330ca73c87c1f34258
+SIZE (cdcseacave-openMVS-v2.3.0_GH0.tar.gz) = 2169982
diff --git a/graphics/openmvs/files/patch-build_Utils.cmake b/graphics/openmvs/files/patch-build_Utils.cmake
index 436115176d97..35547d765433 100644
--- a/graphics/openmvs/files/patch-build_Utils.cmake
+++ b/graphics/openmvs/files/patch-build_Utils.cmake
@@ -1,10 +1,18 @@
---- build/Utils.cmake.orig 2022-04-17 08:46:34 UTC
+--- build/Utils.cmake.orig 2024-05-27 00:00:00 UTC
+++ build/Utils.cmake
-@@ -433,6 +433,7 @@ macro(optimize_default_compiler_settings)
- endif()
+@@ -442,6 +442,7 @@
endif()
endif()
-+ set(CMAKE_CXX_STANDARD 14)
- if(CLANG AND (CMAKE_CXX_STANDARD EQUAL 11 OR CMAKE_CXX_STANDARD EQUAL 14 OR CMAKE_CXX_STANDARD EQUAL 17))
+ if(CLANG AND (CMAKE_CXX_STANDARD EQUAL 11 OR CMAKE_CXX_STANDARD EQUAL 14 OR CMAKE_CXX_STANDARD EQUAL 17 OR CMAKE_CXX_STANDARD EQUAL 20))
++ set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard" FORCE)
set(CMAKE_EXE_LINKER_FLAGS "-stdlib=libc++")
add_extra_compiler_option(-stdlib=libc++)
+ endif()
+@@ -497,6 +498,7 @@
+ add_extra_compiler_option(-Wno-int-in-bool-context)
+ add_extra_compiler_option(-Wno-deprecated-declarations)
+ endif()
++ add_extra_compiler_option(-Wno-missing-template-arg-list-after-template-kw)
+ add_extra_compiler_option(-fdiagnostics-show-option)
+ add_extra_compiler_option(-ftemplate-backtrace-limit=0)
+
diff --git a/graphics/openmvs/files/patch-libs_MVS_Mesh.cpp b/graphics/openmvs/files/patch-libs_MVS_Mesh.cpp
new file mode 100644
index 000000000000..fd6e20e61e5f
--- /dev/null
+++ b/graphics/openmvs/files/patch-libs_MVS_Mesh.cpp
@@ -0,0 +1,25 @@
+--- libs/MVS/Mesh.cpp.orig 2024-05-27 00:00:00 UTC
++++ libs/MVS/Mesh.cpp
+@@ -35,6 +35,22 @@
+ #include <boost/graph/adjacency_list.hpp>
+ #include <boost/graph/filtered_graph.hpp>
+ #include <boost/graph/connected_components.hpp>
++// Fix for vcglib compatibility with modern C++ standard library
++#include <algorithm>
++#include <random>
++namespace std {
++// Provide random_shuffle for C++14/17 when it's been removed
++template<class RandomIt, class RandomFunc>
++void random_shuffle(RandomIt first, RandomIt last, RandomFunc& r) {
++ std::shuffle(first, last, std::default_random_engine());
++}
++// Provide unary_function for vcglib
++template <typename ArgumentType, typename ResultType>
++struct unary_function {
++ typedef ArgumentType argument_type;
++ typedef ResultType result_type;
++};
++}
+ #ifdef _MSC_VER
+ #pragma warning(push)
+ #pragma warning(disable: 4244 4267 4305)
diff --git a/graphics/openmvs/pkg-plist b/graphics/openmvs/pkg-plist
index 4106ec6de447..373cc4ad6b88 100644
--- a/graphics/openmvs/pkg-plist
+++ b/graphics/openmvs/pkg-plist
@@ -101,6 +101,7 @@ lib/OpenMVS/libCommon.so
lib/OpenMVS/libIO.so
lib/OpenMVS/libMVS.so
lib/OpenMVS/libMath.so
+lib/pyOpenMVS.so
lib/cmake/OpenMVS/OpenMVSConfig.cmake
lib/cmake/OpenMVS/OpenMVSConfigVersion.cmake
lib/cmake/OpenMVS/OpenMVSTargets-%%CMAKE_BUILD_TYPE%%.cmake