aboutsummaryrefslogtreecommitdiff
path: root/math/g2o/Makefile
blob: 5c77ffd89c7976528e2470369771e2825b6ac198 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# $FreeBSD$

PORTNAME=	g2o
DISTVERSION=	20170730_git-87
DISTVERSIONSUFFIX=	-gbbe3c2b
PORTREVISION=	1
CATEGORIES=	math

MAINTAINER=	yuri@FreeBSD.org
COMMENT=	General framework for graph optimization

LICENSE=	LGPL3 GPLv3
LICENSE_COMB=	dual

LIB_DEPENDS=	libcxsparse.so:math/suitesparse \
		libQGLViewer-qt5.so:graphics/libQGLViewer

USES=		cmake:outsource eigen:3
USE_GITHUB=	yes
GH_ACCOUNT=	RainerKuemmerle
USE_GL=		gl glu
USE_QT5=	core gui opengl xml widgets buildtools_build qmake_build
USE_LDCONFIG=	yes

CMAKE_OFF=	DO_SSE_AUTODETECT

OPTIONS_DEFINE=			FAST_MATH
OPTIONS_SINGLE=			SIMD_${ARCH}
OPTIONS_SINGLE_SIMD_amd64=	NOSSE SSE2 SSE3 SSE41 SSE42 SSE4A
OPTIONS_SINGLE_SIMD_i386=	${OPTIONS_SINGLE_SIMD_amd64}
OPTIONS_DEFAULT_amd64=		SSE2
OPTIONS_DEFAULT_i386=		SSE2

SIMD_amd64_DESC=	Use SSE SIMD optimizations
SIMD_i386_DESC=		${SIMD_amd64_DESC}
FAST_MATH_DESC=		Enable fast math operations
NOSSE_DESC=		Do not use SIMD optimization
SSE2_DESC=		SSE2 optimization
SSE3_DESC=		SSE3 optimization
SSE41_DESC=		SSE41 optimization
SSE42_DESC=		SSE42 optimization
SSE4A_DESC=		SSE4a optimization

FAST_MATH_CMAKE_BOOL=	G2O_FAST_MATH
NOSSE_CMAKE_ON=		-DDISABLE_SSE2:BOOL=ON -DDISABLE_SSE3:BOOL=ON -DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
SSE2_CMAKE_ON=		-DDISABLE_SSE3:BOOL=ON -DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
SSE3_CMAKE_ON=		-DDISABLE_SSE4_1:BOOL=ON -DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
SSE41_CMAKE_ON=		-DDISABLE_SSE4_2:BOOL=ON -DDISABLE_SSE4_A:BOOL=ON
SSE42_CMAKE_ON=		-DDISABLE_SSE4_A:BOOL=ON

post-patch:
	@${REINPLACE_CMD} -e 's|/usr/include|${LOCALBASE}/include|' \
		${WRKSRC}/cmake_modules/*.cmake

.include <bsd.port.mk>