summaryrefslogtreecommitdiff
path: root/math/mathgl/Makefile
blob: 0e112e6e4a156ccbb066c7eea49d0c27a15d0437 (plain)
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
# $FreeBSD$

PORTNAME=	mathgl
DISTVERSION=	2.4.2.1
PORTREVISION=	5
CATEGORIES=	math graphics
MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}%20${PORTVERSION:R}

MAINTAINER=	yuri@FreeBSD.org
COMMENT=	Library for high-quality scientific data visualization

LICENSE=	GPLv3
LICENSE_FILE=	${WRKSRC}/COPYING

LIB_DEPENDS=	libgif.so:graphics/giflib \
		libgsl.so:math/gsl \
		libhdf5.so:science/hdf5 \
		libhpdf.so:print/libharu \
		libltdl.so:devel/libltdl \
		libpng.so:graphics/png \
		libsz.so:science/szip

USES=		cmake compiler:c++11-lang gettext-runtime jpeg python:2.7
USE_GL=		gl glu glut
USE_XORG=	xi xmu
USE_LDCONFIG=	yes

.for v in double gif glut gsl hdf5 jpeg ltdl mgl2 opengl pdf png zlib
CMAKE_ARGS+=	-Denable-${v}=ON
.endfor

.for v in doc-info doc-html lgpl mgltex
CMAKE_ARGS+=	-Denable-${v}=OFF
.endfor

OPTIONS_DEFINE=		PYTHON MPI
OPTIONS_GROUP=		GRAPHICS
OPTIONS_GROUP_GRAPHICS=	QT5 FLTK WXGTK
OPTIONS_RADIO=		THREADS
OPTIONS_RADIO_THREADS=	PTHREADS OPENMP
OPTIONS_DEFAULT=	QT5
OPTIONS_SUB=		yes
GRAPHICS_DESC=		Graphics support
PTHREADS_DESC=		Enable POSIX threads support (broken, fix pending release)
OPENMP_DESC=		Parallel processing support via OpenMP (broken, cmake bug)
FLTK_DESC=		Enable fltk widget
PLIST_SUB=		SHLIB_VER=7.5.0

PYTHON_CMAKE_BOOL=	enable-python
PYTHON_BUILD_DEPENDS=	swig3.0:devel/swig30 \
			${PYNUMPY}
PYTHON_RUN_DEPENDS=	${PYNUMPY}
MPI_CMAKE_BOOL=		enable-mpi
MPI_LIB_DEPENDS=	libmpi.so:net/openmpi

QT5_CMAKE_BOOL=		enable-qt5
QT5_USE=		QT=core,gui,opengl,printsupport,widgets,buildtools_build,qmake_build
QT5_USES=		desktop-file-utils qt:5 shared-mime-info
FLTK_CMAKE_BOOL=	enable-fltk
FLTK_LIB_DEPENDS=	libfltk.so:x11-toolkits/fltk
FLTK_USE=		XORG=ice,sm,x11,xext
WXGTK_CMAKE_BOOL=	wx
WXGTK_USE=		WX=3.0+

PTHREADS_CMAKE_BOOL=	enable-pthread
OPENMP_CMAKE_BOOL=	enable-openmp

post-patch-FLTK-on:
	@${REINPLACE_CMD} -e 's|#include <Fl/|#include <FL/|' \
		${WRKSRC}/mgllab/mgllab.* \
		${WRKSRC}/utils/mglview.cpp \
		${WRKSRC}/widgets/image.h

.include <bsd.port.mk>