# $OpenBSD$

COMMENT =		visual toolkit library for 3D rendering

VERSION =		8.2.0
DISTNAME =		VTK-${VERSION}
PKGNAME =		${DISTNAME:L}

LIBVER =		0.0

SHARED_LIBS += vtkChartsCore-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkChartsCorePython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkCommon-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkCommonKitPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkDICOMParser-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkDomainsChemistry-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkDomainsChemistryPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkFilters-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkFiltersFlowPaths-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkFiltersFlowPathsPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkFiltersHybrid-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkFiltersHybridPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkFiltersKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkGeovisCore-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkGeovisCorePython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkIO-${MAJOR_V}				${LIBVER}
SHARED_LIBS += vtkIOExport-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkIOExportOpenGL2-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOExportOpenGL2Python37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkIOExportPDF-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOExportPDFPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkIOExportPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOImport-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkIOImportPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOInfovis-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkIOInfovisPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOKitPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOMINC-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkIOMINCPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOTecplotTable-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkIOTecplotTablePython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkImaging-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkImagingHybrid-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkImagingHybridPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkImagingKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkInfovisCore-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkInfovisCorePython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkInfovisLayout-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkInfovisLayoutPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkInteraction-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkInteractionKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkNetCDF-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkOpenGL-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkOpenGLKitPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkParallel-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkParallelKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkPythonInterpreter-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkRendering-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkRenderingGL2PSOpenGL2-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkRenderingGL2PSOpenGL2Python37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkRenderingKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkViews-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkViewsInfovis-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkViewsInfovisPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkViewsKitPython37D-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkWrapping-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkWrappingKitPython37D-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkWrappingPython37Core-${MAJOR_V}	${LIBVER}
SHARED_LIBS += vtkdoubleconversion-${MAJOR_V}		${LIBVER}
SHARED_LIBS += vtkexodusII-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkexpat-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkfreetype-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkgl2ps-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkhdf5-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkhdf5_hl-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkjsoncpp-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtklibharu-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtklibxml2-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtklzma-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkmetaio-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkogg-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkproj-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkpugixml-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtksqlite-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtksys-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtktheora-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkverdict-${MAJOR_V}			${LIBVER}
SHARED_LIBS += vtkzlib-${MAJOR_V}			${LIBVER}

CATEGORIES =		graphics devel

HOMEPAGE =		https://vtk.org/

MAINTAINER =		Charlie Burnett <burne251@umn.edu>

# BSD
PERMIT_PACKAGE =	Yes

WANTLIB +=		${COMPILER_LIBCXX}
WANTLIB +=		EGL GL GLU ICE SM X11 Xext Xt m pthread
WANTLIB +=		jpeg lz4 png tiff lz4 GLEW z

MAJOR_V =		${VERSION:R}
SUBST_VARS +=		MAJOR_V

MASTER_SITES =		http://www.vtk.org/files/release/${MAJOR_V}/

COMPILER =		base-clang ports-gcc

MODULES +=		devel/cmake

# avoid selections from vtk/ThirdParty/
#   jpeg: newer
#   lz4: newer and fixes bugs
#   png: newer
#   tiff: newer, patched for OpenBSD security
#   glew: newer, patched for OpenBSD
LIB_DEPENDS +=		graphics/jpeg \
			archivers/lz4 \
			graphics/png \
			graphics/tiff \
			graphics/glew

CONFIGURE_ARGS +=	-DVTK_USE_SYSTEM_JPEG=TRUE \
			-DVTK_USE_SYSTEM_LZ4=TRUE \
			-DVTK_USE_SYSTEM_PNG=TRUE \
			-DVTK_USE_SYSTEM_TIFF=TRUE \
			-DVTK_USE_SYSTEM_GLEW=TRUE

# finetune lib search
CONFIGURE_ARGS +=	-DEGL_INCLUDE_DIR:PATH=/usr/X11R6/include/EGL \
			-DEGL_opengl_LIBRARY:FILEPATH=/usr/X11R6/lib/libEGL.so.1.1

# configuration (is python version available in a symbol?)
## python wrap fails to find X11R6/include
## but with kits this works; only 50 libs plus 56 for Python
CONFIGURE_ARGS +=	-DVTK_ENABLE_KITS=ON

CONFIGURE_ARGS +=	-DVTK_WRAP_PYTHON=ON \
			-DVTK_PYTHON_VERSION=3.7 \

CONFIGURE_ARGS +=	-DCMAKE_BUILD_TYPE=Release \
			-DVTK_OPENGL_HAS_EGL:BOOL=ON

.include <bsd.port.mk>
