mirror of
https://gitdl.cn/https://github.com/chakralinux/desktop.git
synced 2025-01-24 02:22:13 +08:00
120 lines
4.5 KiB
Bash
120 lines
4.5 KiB
Bash
# Contributions from ArchLinux
|
|
|
|
pkgname=vtk
|
|
pkgver=8.1.1
|
|
pkgrel=1
|
|
pkgdesc='A software system for 3D computer graphics, image processing, and visualization'
|
|
arch=('x86_64')
|
|
url='http://www.vtk.org/'
|
|
license=('BSD')
|
|
depends=('gcc-libs')
|
|
makedepends=('boost' 'cmake' 'doxygen' 'ffmpeg' 'gdal' 'glew' 'gnuplot'
|
|
'hdf5' 'java-environment' 'jsoncpp' 'lz4'
|
|
'mariadb' 'netcdf' 'openmpi' 'proj' 'python3-autobahn' 'python3-constantly'
|
|
'python3-incremental' 'python3-matplotlib'
|
|
'python3-mpi4py' 'python3-twisted' 'qt5-base' 'qt5-tools'
|
|
'qt5-webkit' 'qt5-x11extras' 'tk' 'unixodbc' 'wget')
|
|
optdepends=('python3: python bindings'
|
|
'java-runtime: java bindings'
|
|
'tk: tcl bindings'
|
|
'gnuplot: plotting tools'
|
|
'graphviz: drawing tools'
|
|
'python3-constantly'
|
|
'python3-incremental'
|
|
'python3-matplotlib: for Matplotlib rendering'
|
|
'python3-twisted: for vtkWeb'
|
|
'python3-autobahn: for vtkWeb'
|
|
'python3-mpi4py: OpenMPI python support'
|
|
'openmpi: OpenMPI support'
|
|
'qt5-x11extras'
|
|
'qt5-webkit: WebKit support'
|
|
'ffmpeg'
|
|
'gdal'
|
|
'glew'
|
|
'hdf5'
|
|
'jsoncpp'
|
|
'lz4'
|
|
'mariadb'
|
|
'netcdf'
|
|
'proj'
|
|
'unixodbc')
|
|
source=("http://www.vtk.org/files/release/${pkgver%.*}/VTK-${pkgver}.tar.gz"
|
|
"http://www.vtk.org/files/release/${pkgver%.*}/VTKData-${pkgver}.tar.gz"
|
|
"http://www.vtk.org/files/release/${pkgver%.*}/VTKLargeData-${pkgver}.tar.gz")
|
|
options=(staticlibs)
|
|
sha512sums=('7ab38042f6d94d1580125b3a68a6d17cdc3de925d0e886ebfc8c414adfba1438f5783d896a4cd1bb7e15462450107ab5773a3a749195b357f062e91d5c410060'
|
|
'6c20cfb9dda9d64c27946693f22357f38699d2ff014c2f33e3b05573935eaf3b7a4e30a8cf5747772a6dafe39c20e90b78a0267620ff6b6d5b487edf8ef4f975'
|
|
'9966b8474c22c2fb23a51e0411f06bc4f33e4233535d0b4875a87731c6c95e2c10c97565dc0e6af2af6c7ed7d5e5de171eddf9678cc4235a329cdaf36a021dd4')
|
|
|
|
prepare() {
|
|
mkdir build
|
|
}
|
|
|
|
build() {
|
|
cd build
|
|
|
|
# flags to enable using system libs
|
|
local cmake_system_flags=""
|
|
# TODO: try to use system provided XDMF2, XDMF3, GL2PS
|
|
# VTK fails to compile with recent netcdf-cxx package, VTK should be ported to the latest API
|
|
# VTK does not work with XDMF2 compiled from git. TODO: make vtk compatible with system XDMF library.
|
|
# libharu needs to be patched, see https://github.com/libharu/libharu/pull/157
|
|
# Note: VTK explicitly disables system GLEW dependency, it uses embedded sources with modifications
|
|
# system gl2ps is not used because of http://www.vtk.org/Bug/view.php?id=16083
|
|
for lib in EXPAT FREETYPE JPEG PNG TIFF ZLIB LIBXML2 OGGTHEORA TWISTED ZOPE SIX AUTOBAHN MPI4PY JSONCPP GLEW HDF HDF5 TXAIO HYPERLINK CONSTANTLY INCREMENTAL LZ4 NETCDF; do
|
|
cmake_system_flags+="-DVTK_USE_SYSTEM_${lib}:BOOL=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:BOOL=ON \
|
|
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
|
|
-DBUILD_DOCUMENTATION:BOOL=OFF \
|
|
-DDOXYGEN_KEEP_TEMP:BOOL=ON \
|
|
-DDOCUMENTATION_HTML_HELP:BOOL=OFF \
|
|
-DDOCUMENTATION_HTML_TARZ:BOOL=OFF \
|
|
-DBUILD_EXAMPLES:BOOL=ON \
|
|
-DXDMF_STATIC_AND_SHARED=OFF \
|
|
-DVTK_USE_FFMPEG_ENCODER:BOOL=ON \
|
|
-DVTK_USE_SYSTEM_LIBPROJ4:BOOL=OFF \
|
|
-DVTK_BUILD_ALL_MODULES:BOOL=ON \
|
|
-DVTK_USE_LARGE_DATA:BOOL=ON \
|
|
-DVTK_QT_VERSION:STRING="5" \
|
|
-DVTK_WRAP_JAVA:BOOL=ON \
|
|
-DVTK_WRAP_PYTHON:BOOL=ON \
|
|
-DVTK_WRAP_TCL:BOOL=ON \
|
|
-DCMAKE_CXX_FLAGS="-D__STDC_CONSTANT_MACROS" \
|
|
-DVTK_PYTHON_VERSION="3" \
|
|
-DVTK_CUSTOM_LIBRARY_SUFFIX="" \
|
|
-DVTK_INSTALL_INCLUDE_DIR:PATH=include/vtk \
|
|
-DVTK_INSTALL_TCL_DIR=/usr/lib/tcl${_tkver}/vtk/ \
|
|
${cmake_system_flags} \
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
|
|
make
|
|
}
|
|
|
|
package() {
|
|
cd build
|
|
|
|
make DESTDIR="${pkgdir}" install
|
|
# remove xdmf cmake config file
|
|
rm -rf "${pkgdir}/usr/XdmfConfig.cmake"
|
|
|
|
# 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 "${srcdir}/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"
|
|
}
|