Ticket #58029: Portfile-vtk-8.2.0

File Portfile-vtk-8.2.0, 6.2 KB (added by snarkhunter (Steve Langer), 5 years ago)

proposed Portfile for vtk 8.2.0

Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2
3PortSystem          1.0
4PortGroup           cmake 1.0
5PortGroup           mpi 1.0
6PortGroup           muniversal 1.0
7PortGroup           cxx11 1.1
8
9name                vtk
10version             8.2.0
11revision            0
12categories          graphics devel
13platforms           darwin
14license             BSD
15
16set branch          [join [lrange [split ${version} .] 0 1] .]
17
18maintainers         {stromnov @stromnov} openmaintainer
19
20description         Visualization Toolkit (VTK)
21
22long_description    Visualization Toolkit (VTK) is an open-source, freely \
23                    available software system for 3D computer graphics, \
24                    image processing and visualization.
25
26homepage            http://www.vtk.org
27master_sites        http://www.vtk.org/files/release/${branch}
28
29distname            VTK-${version}
30
31checksums           rmd160  9c566529757081d65d439d37dadbb533f0b55162 \
32                    sha256  34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb \
33                    size    35511819
34
35cmake.out_of_source yes
36mpi.setup 
37
38depends_lib-append \
39    port:expat \
40    port:freetype \
41    port:hdf5 \
42    port:jpeg \
43    port:jsoncpp \
44    port:lz4 \
45    port:netcdf-cxx \
46    port:tiff \
47    port:zlib \
48    port:double-conversion \
49    port:eigen3 \
50    port:glew
51
52configure.args-delete \
53                    -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
54
55configure.args-append \
56                    ../${distname}/ \
57                    -DBUILD_SHARED_LIBS=ON \
58                    -DBUILD_EXAMPLES:BOOL=OFF \
59                    -DVTK_WRAP_PYTHON:BOOL=OFF \
60                    -DVTK_WRAP_JAVA:BOOL=OFF \
61                    -DVTK_WRAP_TCL:BOOL=OFF \
62                    -DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \
63                    -DVTK_USE_SYSTEM_LIBPROJ4:BOOL=OFF \
64                    -DVTK_USE_SYSTEM_GL2PS:BOOL=OFF \
65                    -DVTK_USE_SYSTEM_LIBHARU:BOOL=OFF \
66                    -DVTK_USE_COCOA:BOOL=ON \
67                    -DVTK_USE_SYSTEM_LIBPROJ:BOOL=OFF \
68                    -DVTK_USE_SYSTEM_PUGIXML:BOOL=OFF \
69                    -DVTK_USE_SYSTEM_OGG:BOOL=OFF \
70                    -DVTK_USE_SYSTEM_THEORA:BOOL=OFF
71
72# As proposed at #46890
73if {${os.major} <= 10} {
74    configure.args-append \
75                        -DIOKit:FILEPATH=/System/Library/Frameworks/IOKit.framework
76}
77
78variant ffmpeg description {Add support for ffmpeg} {
79    depends_lib-append port:ffmpeg
80    configure.args-append \
81        -DModule_vtkIOFFMPEG:BOOL=ON
82}
83
84# As proposed at #46853
85variant qt4 description {Add Qt4 support.} {
86    PortGroup           qt4 1.0
87    configure.args-append \
88                        -DQT_QMAKE_EXECUTABLE:PATH=${qt_qmake_cmd} \
89                        -DVTK_Group_Qt:BOOL=ON
90}
91
92variant qt5 description {Add Qt5 support.} {
93    PortGroup           qt5 1.0
94}
95
96variant python27 conflicts python35 python36 python37 description {Add Python 2.7 support.} {
97    depends_lib-append  port:python27
98    configure.args-delete \
99                        -DVTK_WRAP_PYTHON:BOOL=OFF
100    configure.args-append \
101                        -DVTK_WRAP_PYTHON:BOOL=ON \
102                        -DPYTHON_EXECUTABLE:STRING=${prefix}/bin/python2.7 \
103                        -DVTK_INSTALL_PYTHON_MODULE_DIR=${frameworks_dir}/Python.framework/Versions/2.7/lib/python2.7/site-packages
104    if {[mpi_variant_isset]} {
105        depends_lib-append port:py27-mpi4py
106        configure.args-append \
107            -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON
108    }
109
110}
111
112variant python35 conflicts python27 python36 python37 description {Add Python 3.5 support.} {
113    depends_lib-append  port:python35
114    configure.args-delete \
115                        -DVTK_WRAP_PYTHON:BOOL=OFF
116    configure.args-append \
117                        -DVTK_WRAP_PYTHON:BOOL=ON \
118                        -DPYTHON_EXECUTABLE:STRING=${prefix}/bin/python3.5 \
119                        -DVTK_INSTALL_PYTHON_MODULE_DIR=${frameworks_dir}/Python.framework/Versions/3.5/lib/python3.5/site-packages
120    if {[mpi_variant_isset]} {
121        depends_lib-append port:py35-mpi4py
122        configure.args-append \
123            -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON
124    }
125}
126
127variant python36 conflicts python27 python35 python37 description {Add Python 3.6 support.} {
128    depends_lib-append  port:python36
129    configure.args-delete \
130                        -DVTK_WRAP_PYTHON:BOOL=OFF
131    configure.args-append \
132                        -DVTK_WRAP_PYTHON:BOOL=ON \
133                        -DPYTHON_EXECUTABLE:STRING=${prefix}/bin/python3.6 \
134                        -DVTK_INSTALL_PYTHON_MODULE_DIR=${frameworks_dir}/Python.framework/Versions/3.6/lib/python3.6/site-packages
135
136    if {[mpi_variant_isset]} {
137        depends_lib-append port:py36-mpi4py
138        configure.args-append \
139            -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON
140    }
141}
142
143variant python37 conflicts python27 python35 python36 description {Add Python 3.7 support.} {
144    depends_lib-append  port:python37
145    configure.args-delete \
146                        -DVTK_WRAP_PYTHON:BOOL=OFF
147    configure.args-append \
148                        -DVTK_WRAP_PYTHON:BOOL=ON \
149                        -DPYTHON_EXECUTABLE:STRING=${prefix}/bin/python3.7 \
150                        -DVTK_INSTALL_PYTHON_MODULE_DIR=${frameworks_dir}/Python.framework/Versions/3.7/lib/python3.7/site-packages
151
152    if {[mpi_variant_isset]} {
153        depends_lib-append port:py37-mpi4py
154        configure.args-append \
155            -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON
156    }
157}
158
159variant hdf5 description {Add hdf5 readers} {
160    depends_lib-append port:boost
161    configure.args-append \
162    -DVTK_USE_SYSTEM_HDF5:BOOL=ON \
163    -DVTK_USE_SYSTEM_NETCDF:BOOL=ON \
164    -DVTK_USE_SYSTEM_XDMF2:BOOL=OFF \
165    -DVTK_USE_SYSTEM_XDMF3:BOOL=OFF \
166    -DNETCDF_DIR=${prefix} \
167    -DBOOST_ROOT=${prefix} \
168    -DModule_vtkIOXdmf2:BOOL=ON \
169    -DModule_vtkxdmf2:BOOL=ON \
170    -DModule_vtkxdmf3:BOOL=ON \
171    -DModule_vtkIOXdmf3:BOOL=ON
172   
173    mpi.enforce_variant hdf5
174}
175
176if {[mpi_variant_isset]} {
177    configure.args-append \
178        -DVTK_Group_MPI:BOOL=ON \
179        -DVTK_USE_SYSTEM_DIY2:BOOL=OFF
180
181}
182
183livecheck.type      regex
184livecheck.url       http://www.vtk.org/VTK/resources/software.html
185livecheck.regex     {[vV][tT][kK]-(\d+(?:\.\d+)*)\.[tz]}