* add vtk

This commit is contained in:
Alexander Baldeck 2019-08-05 14:55:54 +00:00
parent e8ca1ba204
commit 1750f21ae1
2 changed files with 141 additions and 0 deletions

6
vtk/.contrib Normal file
View File

@ -0,0 +1,6 @@
# Contributor: Christofer Bertonha <christoferbertonha at gmail dot com>
# Contributor: leepesjee <lpeschier at xs4all dot nl>
# Contributor: Olivier Medoc
# Contributor: ignotus
# Contributor: Fabian Moser
# Contributor: djscholl

135
vtk/PKGBUILD Normal file
View File

@ -0,0 +1,135 @@
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
# Maintainer: Evgeniy Alekseev <arcanis at archlinux dot org>
# Maintainer: Bruno Pagani <archange at archlinux dot org>
# Contributor: Ray Rashif <schiv at archlinux dot org>
# Contributor: Andrzej Giniewicz <gginiu at gmail dot com>
# Contributor: Thomas Dziedzic <gostrc at gmail>
pkgname=vtk
pkgver=8.2.0
pkgrel=5
pkgdesc="A software system for 3D computer graphics, image processing, and visualization"
arch=(x86_64 powerpc64le)
url="https://www.vtk.org/"
license=(BSD)
depends=(gcc-libs double-conversion)
makedepends=(cmake boost doxygen ffmpeg gdal gnuplot
jdk-openjdk openmpi python-matplotlib qt5-base
qt5-tools qt5-webkit qt5-x11extras tk unixodbc wget
double-conversion eigen expat freetype2 glew hdf5
libjpeg jsoncpp libxml2 lz4 xz python-mpi4py netcdf
libogg pdal pegtl libpng pugixml libtheora libtiff zlib
proj sqlite)
optdepends=('gnuplot: plotting tools'
'graphviz: drawing tools'
'java-runtime: java bindings'
'python: python bindings'
'python-mpi4py: OpenMPI python support'
'python-matplotlib: for Matplotlib rendering'
'openmpi: OpenMPI support'
'qt5-x11extras'
'qt5-webkit: WebKit support'
'tk: tcl bindings'
ffmpeg
gdal
glew
hdf5
jsoncpp
lz4
netcdf
pdal
pugixml
proj
sqlite
unixodbc)
source=("${url}/files/release/${pkgver%.*}/VTK-${pkgver}.tar.gz"
"${url}/files/release/${pkgver%.*}/VTKData-${pkgver}.tar.gz"
"${url}/files/release/${pkgver%.*}/VTKLargeData-${pkgver}.tar.gz"
proj6.patch)
options=(staticlibs)
sha512sums=('521bd4dabedbc24b0e80a314a34ecd7554b04af28a7973245e3a9cf99a09b995d1b8ac42305c8e53369f226a0a6da3cdb29105ba2c90b46492736ef717760286'
'517d0f6dfdb0c61f59df933f06d3a28c8a48ea684aaff311456213fe493e2a20128886144325fc4edfa376b2d375a2dae6c60ad6e3d5d2f4a7b0ac1d8545c87b'
'8a7ea3d5870b1e4ccb31c77b4c270d00208349da1b2938e957210db3ec1449b678c66edc2faee1d4514aca6d725f642abc91e10ab0c151f6743cad1c53485588'
'bd095a848c198752307d6924eaa46d07af4fbbba70f4665e10c8b5dd8d2a84cb6d9ea6c25705463a6c054c5afa5af4c68030ad90d37953672c0fc609eaf24b07')
prepare() {
mkdir build
cd VTK-${pkgver}
# Fix build with proj 6.0
patch -Np1 -i ../proj6.patch
# Fix build with Java 12
sed -i 's/VTK_JAVA_SOURCE_VERSION "1.6"/VTK_JAVA_SOURCE_VERSION "1.7"/
s/VTK_JAVA_TARGET_VERSION "1.6"/VTK_JAVA_TARGET_VERSION "1.7"/' Wrapping/Java/CMakeLists.txt
}
build() {
cd build
# to help cmake find java
export JAVA_HOME=/usr/lib/jvm/default
# GL2PS blocked by http://www.vtk.org/Bug/view.php?id=16083
# LIBHARU blocked by https://github.com/libharu/libharu/pull/157
# exodusII,kissfft,verdict,VPIC,xdmf2/3,zfp not packaged in Arch
# Note: VTK explicitly disables system GLEW dependency, it uses embedded sources with modifications
local VTK_USE_SYSTEM_LIB=""
# Common with ParaView
for lib in DOUBLECONVERSION EIGEN EXPAT FREETYPE GLEW HDF5 JPEG JSONCPP LIBXML2 LZ4 LZMA MPI4PY NETCDF OGG PEGTL PNG PUGIXML THEORA TIFF ZLIB; do
VTK_USE_SYSTEM_LIB+="-DVTK_USE_SYSTEM_${lib}=ON "
done
for lib in LIBPROJ SQLITE; do
VTK_USE_SYSTEM_LIB+="-DVTK_USE_SYSTEM_${lib}=ON "
done
local _tkver=$(echo 'puts $tcl_version' | tclsh)
cmake ../VTK-${pkgver} \
-Wno-dev \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_DOCUMENTATION=OFF \
-DDOXYGEN_KEEP_TEMP=ON \
-DDOCUMENTATION_HTML_HELP=OFF \
-DDOCUMENTATION_HTML_TARZ=OFF \
-DBUILD_EXAMPLES=ON \
-DXDMF_STATIC_AND_SHARED=OFF \
-DVTK_USE_FFMPEG_ENCODER=ON \
-DVTK_BUILD_ALL_MODULES=ON \
-DModule_vtkIOPDAL=ON \
-DVTK_USE_LARGE_DATA=ON \
-DVTK_QT_VERSION="5" \
-DVTK_WRAP_JAVA=ON \
-DVTK_WRAP_PYTHON=ON \
-DVTK_WRAP_TCL=ON \
-DCMAKE_CXX_FLAGS="-D__STDC_CONSTANT_MACROS" \
-DVTK_PYTHON_VERSION="3" \
-DVTK_CUSTOM_LIBRARY_SUFFIX="" \
-DVTK_INSTALL_INCLUDE_DIR=include/vtk \
-DVTK_INSTALL_TCL_DIR=/usr/lib/tcl${_tkver}/vtk/ \
${VTK_USE_SYSTEM_LIB} \
-DCMAKE_BUILD_TYPE=Release
make
}
package() {
cd build
make DESTDIR="${pkgdir}" install
# Move the vtk.jar to the arch-specific location
install -dv "${pkgdir}"/usr/share/java/vtk
mv -v "${pkgdir}"/usr/lib/vtk.jar "${pkgdir}"/usr/share/java/vtk
rm -rf "${pkgdir}"/usr/lib/vtk-${pkgver%.*}/java
# Install license
install -Dm644 ../VTK-${pkgver}/Copyright.txt -t "${pkgdir}"/usr/share/licenses/${pkgname}/
# Fix path of QtDesigner plugin
install -dv "${pkgdir}"/usr/lib/qt
mv "${pkgdir}"/usr/plugins "${pkgdir}"/usr/lib/qt/plugins
}