aboutsummaryrefslogtreecommitdiff
path: root/graphics/cloudcompare/Makefile
blob: 29b7581cf0441eff7b7d7d1aee60b4f75838eae5 (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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# $FreeBSD$

PORTNAME=	cloudcompare
DISTVERSIONPREFIX=	v
DISTVERSION=	2.9.1-288
DISTVERSIONSUFFIX=	-gb4d51361
PORTREVISION=	5
CATEGORIES=	graphics

MAINTAINER=	neel@neelc.org
COMMENT=	3D point cloud processing software

LICENSE=	GPLv2+ LGPL20+
LICENSE_COMB=	multi

BROKEN_aarch64=		fails to compile: mmintrin.h:47:5: use of undeclared identifier '__builtin_ia32_emms'; did you mean '__builtin_isless'?

USES=		cmake:outsource localbase:ldflags qt:5
USE_GITHUB=	yes
GH_ACCOUNT=	CloudCompare
GH_PROJECT=	${GH_ACCOUNT}
GH_TAGNAME=	5d41227deb30c445ccbaa2d789a4363b57948a5d
USE_QT=		concurrent core gui opengl printsupport widgets buildtools_build qmake_build
USE_LDCONFIG=	yes

OPTIONS_DEFINE=	DXFLIB GAMEPAD GDAL PDAL SHAPELIB PLUGINS
OPTIONS_DEFAULT=	DXFLIB GAMEPAD GDAL PDAL SHAPELIB PLUGINS
OPTIONS_SUB=	yes

DXFLIB_DESC=	Enable AutoCAD DXF file support
GAMEPAD_DESC=	Enable Qt gamepad support
GDAL_DESC=	Enable raster file support
PDAL_DESC=	Enable point cloud data support
SHAPELIB_DESC=	Enable shape file support

DXFLIB_CMAKE_BOOL=	OPTION_USE_DXF_LIB

GAMEPAD_USES=	qt:5
GAMEPAD_USE=		QT=gamepad
GAMEPAD_CMAKE_BOOL=	OPTION_SUPPORT_GAMEPADS

GDAL_CMAKE_BOOL=	OPTION_USE_GDAL
GDAL_CMAKE_ON=		-DGDAL_INCLUDE_DIR=${PREFIX}/include \
			-DGDAL_LIBRARY=${PREFIX}/lib/libgdal.so
GDAL_LIB_DEPENDS=	libgdal.so:graphics/gdal

PDAL_CMAKE_BOOL=	OPTION_PDAL_LAS
PDAL_CMAKE_ON=		-DJSON_ROOT_DIR=${PREFIX}/include/jsoncpp
PDAL_LIB_DEPENDS=	libpdal_base.so:math/pdal

SHAPELIB_CMAKE_BOOL=	OPTION_USE_SHAPE_LIB
SHAPELIB_LIB_DEPENDS=	libshp.so:devel/shapelib

PLUGINS_USES=		eigen:3 jpeg python:2.7
PLUGINS_CMAKE_BOOL=	INSTALL_QANIMATION_PLUGIN INSTALL_QBLUR_PLUGIN INSTALL_QBROOM_PLUGIN INSTALL_QCOMPASS_PLUGIN \
			INSTALL_QCSF_PLUGIN INSTALL_QCSV_MATRIX_IO_PLUGIN INSTALL_QDUMMY_PLUGIN INSTALL_QEDL_PLUGIN INSTALL_QFACETS_PLUGIN \
			INSTALL_QHPR_PLUGIN INSTALL_QM3C2_PLUGIN \
			INSTALL_QPCV_PLUGIN INSTALL_QPHOTOSCAN_IO_PLUGIN INSTALL_QRANSAC_SD_PLUGIN \
			INSTALL_QSRA_PLUGIN INSTALL_QSSAO_PLUGIN # plugins requiring rare external libs are left out, TODO maybe add some of them?
PLUGINS_CMAKE_ON=	-DEIGEN_ROOT_DIR:BOOL=${LOCALBASE}/include/eigen3
PLUGINS_CXXFLAGS=	-Wno-narrowing
PLUGINS_CXXFLAGS+=	-DEIGEN_DONT_PARALLELIZE # OpenMP is broken in cmake, see bug#223678
PLUGINS_USE=		XORG=ice,sm,x11,xext,xt GL=gl,glu
PLUGINS_LIB_DEPENDS=	libboost_system.so:devel/boost-libs \
			libexpat.so:textproc/expat2 \
			libflann_cpp_s.so:math/flann \
			libfreetype.so:print/freetype2 \
			libpng.so:graphics/png \
			libtiff.so:graphics/tiff \
			libvtkDomainsChemistry-6.2.so:math/vtk6
PLUGINS_IMPLIES=	SHAPELIB

post-patch:
	@${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},1' ${WRKSRC}/snap/gui/ccViewer.desktop ${WRKSRC}/snap/gui/cloudcompare.desktop

post-install:
	@${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
	${INSTALL_DATA} ${WRKSRC}/snap/gui/ccViewer.desktop ${STAGEDIR}${PREFIX}/share/applications
	${INSTALL_DATA} ${WRKSRC}/snap/gui/ccViewer.png ${STAGEDIR}${PREFIX}/share/pixmaps
	${INSTALL_DATA} ${WRKSRC}/snap/gui/cloudcompare.desktop ${STAGEDIR}${PREFIX}/share/applications
	${INSTALL_DATA} ${WRKSRC}/snap/gui/cloudcompare.png ${STAGEDIR}${PREFIX}/share/pixmaps

.include <bsd.port.mk>