aboutsummaryrefslogtreecommitdiffstats
path: root/math/vtk-python/Makefile
blob: 0785d527de95026bc2655c36702f0cf1164b49db (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
# New ports collection makefile for:    vtk-python
# Date created:         10 Oct 2003
# Whom:                 Mykola Khotyaintsev <ko@irfu.se>
#
# $FreeBSD$
#

CATEGORIES+=    python
PKGNAMESUFFIX=  -python

COMMENT=    The Visualization Toolkit Python libs

LIB_DEPENDS=    vtkCommon.${LIBVER}:${PORTSDIR}/math/vtk \
        tcl84:${PORTSDIR}/lang/tcl84 \
        tk84:${PORTSDIR}/x11-toolkits/tk84

MASTERDIR=  ${.CURDIR}/../vtk

WRAP=       Python
BINARIES=   vtkWrapPython vtkpython
EXTRA_LIBS= RenderingPythonTkWidgets

USE_PYTHON= yes
TCL_INCLUDE_DIR=${PREFIX}/include/tcl8.4
TK_INCLUDE_DIR= ${PREFIX}/include/tk8.4

CXXFLAGS+=  -DUSE_NON_CONST \
        -DUSE_COMPOSITELESS_PHOTO_PUT_BLOCK \
        -I${TCL_INCLUDE_DIR} # -Ds for TCL/TK 8.4, -I for libvtkRenderingPythonTkWidgets.so build

LINKERFLAGS=    -L${PREFIX}/lib # to link vtkpython to vtk libs

CMAKE_DEFS= -DVTK_WRAP_PYTHON:BOOL=ON \
        -DPYTHON_INCLUDE_PATH:PATH=${PYTHON_INCLUDEDIR} \
        -DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBDIR}/config/lib${PYTHON_VERSION}.a \
        -DTCL_INCLUDE_PATH:PATH=${TCL_INCLUDE_DIR} \
        -DTK_INCLUDE_PATH:PATH=${TK_INCLUDE_DIR} \
        -DEXPAT_LIBRARY:PATH=${LOCALBASE}/lib/libexpat.so \
        -DEXPAT_INCLUDE_DIR:PATH=${LOCALBASE}/include \
        -DCMAKE_BACKWARDS_COMPATIBILITY:STRING=2.2

EXTRA_PATCHES+= ${.CURDIR}/files/extra-patch-Common-vtkPythonUtil.cxx
PLIST_SUB+= VTK_PTH_LOCATION_DIR=${PYTHON_SITELIBDIR}

.include "${MASTERDIR}/Makefile"

post-patch: patch-common

do-install: install-cnotice install-binaries install-libs
    @${ECHO_MSG} "Installing vtk site package to ${PREFIX}/lib/vtk/python ..."
    @${MKDIR} ${PREFIX}/lib/vtk
.for i in "" vtk/ vtk/gtk/ vtk/qt/ vtk/test/ vtk/tk/ vtk/util/ vtk/wx/
    @${MKDIR} ${PREFIX}/lib/vtk/python/${i}
    @${INSTALL_DATA} ${VTKSRCDIR}/Wrapping/Python/${i}*.py ${PREFIX}/lib/vtk/python/${i}
.endfor
    @${ECHO} ${PREFIX}/lib/vtk/python > ${PYTHON_SITELIBDIR}/vtk.pth
    @${PYTHON_CMD}  -c "import compileall; compileall.compile_dir( '${PREFIX}/lib/vtk/python' );"
    @${PYTHON_CMD} -Oc "import compileall; compileall.compile_dir( '${PREFIX}/lib/vtk/python' );"

.for i in ${VTK_KITS:S/$/Python/} ${EXTRA_LIBS}
    @${LN} -sf ${PREFIX}/lib/libvtk${i}.so \
        ${PREFIX}/lib/vtk/python/libvtk${i}.so
.endfor

.include <bsd.port.post.mk>