aboutsummaryrefslogtreecommitdiff
path: root/math/vtk5/Makefile
blob: e5d02d6f312d61532a6dbbd8c71ea59a3e01acf3 (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# New ports collection makefile for:	vtk5
# Date created:         10 Oct 2003
# Whom:                 Mykola Khotyaintsev <ko@irfu.se>
# Repocopied from math/vtk by:	Jason W. Bacon <bacon@smithers.neuro.mcw.edu>
#
# $FreeBSD$
#

PORTNAME=	vtk
PORTVERSION=	5.0.3
PORTREVISION=	1
CATEGORIES=	math graphics
MASTER_SITES=	http://www.vtk.org/files/release/5.0/ \
		http://www.neuro.mcw.edu/Ports/distfiles/VTK5/
DISTNAME?=	vtk-${PORTVERSION}

MAINTAINER=	bacon@smithers.neuro.mcw.edu
COMMENT=	The Visualization Toolkit

LIB_DEPENDS=	expat.[5-6]:${PORTSDIR}/textproc/expat2 \
		jpeg.9:${PORTSDIR}/graphics/jpeg \
		png.5:${PORTSDIR}/graphics/png \
		tiff.4:${PORTSDIR}/graphics/tiff

LATEST_LINK=	vtk5

USE_QT_VER=	3
USE_TCL=	yes
USE_TK=		yes
USE_PYTHON=	yes
INSTALLS_EGGINFO=	yes

VTKSRCDIR=	${WRKDIR}/VTK
VTKDATAROOT=	${EXAMPLESDIR}/VTKData
PYDISTUTILS_PKGNAME=	VTK

CONFLICTS=	vtk-4* vtk-5.0.[012456789]*
NO_FILTER_SHLIBS=	yes

VTK_KITS=	Common Filtering GenericFiltering Graphics \
		Hybrid IO Imaging Parallel Rendering VolumeRendering \
		Widgets

SUB_FILES=	pkg-message vtk.3
PKGMESSAGE=	${WRKDIR}/pkg-message

USE_CMAKE=	yes
USE_GMAKE=	yes
USE_GL=		yes
USE_LDCONFIG=	yes

OPTIONS=	VTKMPEG2	"Install patented MPEG2 encoder module" Off

PLIST_SUB=	VER=${PORTVERSION} VER1=${PORTVERSION:R} VER2=${PORTVERSION:R:R}

MAN3=		vtk.3

.include <bsd.port.pre.mk>

CMAKE_USE_PTHREAD=	yes
CMAKE_SOURCE_PATH=	../VTK
CXXFLAGS+=	-Wno-deprecated
CMAKE_ARGS+=	${VTKSRCDIR} \
		-DBUILD_SHARED_LIBS:BOOL=ON \
		-DBUILD_DOCUMENTATION:BOOL=ON \
		-DBUILD_TESTING:BOOL=OFF \
		-DVTK_USE_RENDERING:BOOL=ON \
		-DVTK_USE_HYBRID:BOOL=ON \
		-DVTK_USE_PARALLEL:BOOL=ON \
		-DVTK_USE_SYSTEM_EXPAT:BOOL=ON \
		-DVTK_USE_SYSTEM_JPEG:BOOL=ON \
		-DVTK_USE_SYSTEM_PNG:BOOL=ON \
		-DVTK_USE_SYSTEM_TIFF:BOOL=ON \
		-DVTK_USE_SYSTEM_ZLIB:BOOL=ON \
		-DVTK_USE_GUISUPPORT:BOOL=ON \
		-DVTK_USE_QVTK:BOOL=ON \
		-DVTK_WRAP_PYTHON:BOOL=ON \
		-DVTK_WRAP_TCL:BOOL=ON \
		-DTCL_INCLUDE_PATH=${TCL_INCLUDEDIR} \
		-DTK_INCLUDE_PATH=${TK_INCLUDEDIR} \
		-DDESIRED_QT_VERSION:STRING=3 \
		-DVTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T:BOOL=ON \
		-DVTK_DATA_ROOT:PATH=${VTKDATAROOT}

.if defined(WITH_VTKMPEG2)
LIB_DEPENDS+=	vtkMPEG2Encode.5:${PORTSDIR}/multimedia/vtkmpeg2encode
PLIST_FILES+=	include/vtk-5.0/vtkMPEG2Writer.h
CMAKE_ARGS+=	-DvtkMPEG2Encode_INCLUDE_PATH=${LOCALBASE}/include/vtk-5.0 \
		-DvtkMPEG2Encode_LIBRARIES=vtkMPEG2Encode \
		-DVTK_USE_PATENTED:BOOL=ON \
		-DVTK_USE_MPEG2_ENCODER:BOOL=ON
.endif

post-extract:
		${MKDIR} ${WRKSRC}
		${REINPLACE_CMD} -e 's|malloc.h|stdlib.h|g' \
		${VTKSRCDIR}/Hybrid/vtkVRMLImporter.cxx

# FSL links directly to libQVTKWidgetPlugin.so, so put it in a standard
# library directory.
pre-install:
	${MKDIR} ${DOCSDIR}
	${MKDIR} ${PREFIX}/lib/vtk-5.0
.if !defined(NOPORTDOCS)
	${INSTALL_DATA} ${VTKSRCDIR}/README.html ${DOCSDIR}
.endif
	${INSTALL_DATA} ${WRKSRC}/bin/libQVTKWidgetPlugin.so ${PREFIX}/lib
	${INSTALL_MAN} ${WRKDIR}/vtk.3 ${MANPREFIX}/man/man3

# Ports system wants us to conform to lib.so.x format, but VTK5
# only installs lib.so.x.y and lib.so.5.x.y.z.
post-install:
	@for lib in ${PREFIX}/lib/libvtk*.so ${PREFIX}/lib/libQVTK*.so; do \
		${RM} -f $$lib; \
		${LN} -sf $$lib.${PORTVERSION} $$lib; \
		${LN} -sf $$lib.${PORTVERSION} $$lib.5; \
	done
	@${ECHO_CMD}
	@${CAT} ${PKGMESSAGE}
	@${ECHO_CMD}
.if defined(WITH_VTKMPEG2)
	@${ECHO_CMD} "This port uses the patented MPEG2 encoder."
	@${ECHO_CMD}
.endif

.include <bsd.port.post.mk>