svn commit: r457634 - in head/math: . flann flann/files

Jan Beich jbeich at FreeBSD.org
Sat Dec 30 23:05:35 UTC 2017


Yuri Victorovich <yuri at FreeBSD.org> writes:

> Author: yuri
> Date: Sat Dec 30 19:45:33 2017
> New Revision: 457634
> URL: https://svnweb.freebsd.org/changeset/ports/457634
>
> Log:
>   New port: math/flann: Library for fast nearest neighbor searches in high dimensional spaces
[...]
> +DISTVERSION=	1.8.4

1.8.4 is out of date. Intentional?

https://github.com/mariusmuja/flann/releases
https://repology.org/metapackage/flann/versions
https://abi-laboratory.pro/tracker/timeline/flann/

> +		-DUSE_OPENMP:BOOL=OFF  # OpenMP search is broken in cmake: https://gitlab.kitware.com/cmake/cmake/issues/17474

I've tried to unbundle FLANN 1.8.4 in graphics/colmap but losing OpenMP
and its scheduling fix[1] doesn't look like a good idea.

[1] https://github.com/colmap/colmap/commit/4b594eb85c13

--
>From 33bd2604076cb68ae1711e79e0e1dc3f1ab3318b Mon Sep 17 00:00:00 2001
From: Jan Beich <jbeich at FreeBSD.org>
Date: Sat, 30 Dec 2017 22:15:30 +0000
Subject: [PATCH] [experiment] graphics/colmap: unbundle FLANN after r457634

---
 graphics/colmap/Makefile | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/graphics/colmap/Makefile b/graphics/colmap/Makefile
index 406dee01ad8a..97e145eec01a 100644
--- a/graphics/colmap/Makefile
+++ b/graphics/colmap/Makefile
@@ -2,6 +2,7 @@
 
 PORTNAME=	colmap
 DISTVERSION=	3.3
+PORTREVISION=	1
 CATEGORIES=	graphics
 
 MAINTAINER=	jbeich at FreeBSD.org
@@ -11,14 +12,14 @@ LICENSE=	BSD2CLAUSE BSD3CLAUSE CC-BY-3.0 GPLv3+ MIT SIFTGPU
 LICENSE_COMB=	multi
 LICENSE_NAME_SIFTGPU=	SiftGPU non-commercial license
 LICENSE_FILE_BSD2CLAUSE=${WRKSRC}/src/ext/VLFeat/LICENSE
-LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/src/ext/FLANN/LICENSE
 LICENSE_FILE_CC-BY-3.0=	${WRKSRC}/src/ui/media/LICENSE
 LICENSE_FILE_GPLv3+ =	${WRKSRC}/COPYING.txt
 LICENSE_FILE_MIT=	${WRKSRC}/src/ext/PoissonRecon/LICENSE
 LICENSE_FILE_SIFTGPU=	${WRKSRC}/src/ext/SiftGPU/LICENSE
 LICENSE_PERMS_SIFTGPU=	dist-mirror pkg-mirror auto-accept
 
-BUILD_DEPENDS=	eigen>=3:math/eigen3
+BUILD_DEPENDS=	eigen>=3:math/eigen3 \
+		flann>0:math/flann
 LIB_DEPENDS=	libboost_filesystem.so:devel/boost-libs \
 		libglog.so:devel/glog \
 		libfreeimage.so:graphics/freeimage \
@@ -28,13 +29,13 @@ USES=		cmake compiler:${OPENMP}c++11-lib fortran localbase sqlite
 USE_GITHUB=	yes
 USE_GL=		gl glew
 USE_QT5=	qmake_build buildtools_build core gui opengl_build widgets
-EXCLUDE=	SQLite
+EXCLUDE=	FLANN SQLite
 EXTRACT_AFTER_ARGS=	${EXCLUDE:S,^,--exclude src/ext/,}
 CMAKE_ARGS=	-DBOOST_STATIC=off -DCUDA_ENABLED=off
 CFLAGS+=	-DVL_OS_LINUX=1
 CXXFLAGS+=	-D_GLIBCXX_USE_C99 -D_GLIBCXX_USE_C99_MATH_TR1 \
 		-D_DECLARE_C99_LDBL_MATH # XXX ports/193528
-LDFLAGS+=	-Wl,--as-needed # gflags, glu, xi, xmu
+LDFLAGS+=	-Wl,--as-needed # flann, gflags, glu, xi, xmu
 TEST_TARGET=	test ARGS="-V"
 
 OPTIONS_DEFINE=		DOCS OPENMP SIMD TEST
@@ -58,9 +59,10 @@ post-patch:
 		${WRKSRC}/CMakeLists.txt
 	@${REINPLACE_CMD} -e '/install.*test/d' \
 		${WRKSRC}/cmake/CMakeHelper.cmake
-# XXX Unbundle FLANN as it has more consumers
-	@${REINPLACE_CMD} -e '/SQLite/d' \
+	@${REINPLACE_CMD} -e '/FLANN/d' -e '/SQLite/d' \
 		${WRKSRC}/src/ext/CMakeLists.txt
+	@${REINPLACE_CMD} -e 's,ext/FLANN,flann,' \
+		${WRKSRC}/src/retrieval/visual_index.h
 	@${REINPLACE_CMD} -e 's,ext/SQLite/,,' \
 		${WRKSRC}/src/base/database.h \
 		${WRKSRC}/src/util/sqlite3_utils.h


More information about the svn-ports-head mailing list