summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorsaxonbeta2015-10-28 14:12:32 -0600
committersaxonbeta2015-10-28 14:12:32 -0600
commit711cec5dd1f396d39febbdb76fef59508bb19d19 (patch)
treeb58d869dea914c1a77425f3ba0288f53aaa4deef
downloadaur-711cec5dd1f396d39febbdb76fef59508bb19d19.tar.gz
Initial commit
-rw-r--r--.SRCINFO63
-rw-r--r--PKGBUILD129
-rw-r--r--find-libxml2.patch42
-rw-r--r--gdal2.patch31
-rw-r--r--remove-vtkxdmf3.patch40
5 files changed, 305 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..bf7b8f3d3c91
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,63 @@
+pkgbase = vtk-qt4
+ pkgdesc = A software system for 3D computer graphics, image processing, and visualization. Linked against QT4
+ pkgver = 6.3.0
+ pkgrel = 2
+ url = http://www.vtk.org/
+ arch = i686
+ arch = x86_64
+ license = BSD
+ makedepends = boost
+ makedepends = cmake
+ makedepends = java-environment
+ makedepends = doxygen
+ makedepends = gnuplot
+ makedepends = tk
+ makedepends = wget
+ makedepends = python2-matplotlib
+ makedepends = python2-twisted
+ makedepends = python2-mpi4py
+ makedepends = python2-autobahn
+ makedepends = unixodbc
+ makedepends = gdal
+ makedepends = openmpi
+ makedepends = mariadb
+ makedepends = glew
+ makedepends = gl2ps
+ depends = boost-libs
+ depends = ffmpeg
+ depends = qtwebkit
+ depends = lesstif
+ depends = jsoncpp
+ optdepends = python2: python bindings
+ optdepends = java-runtime: java bindings
+ optdepends = tk: tcl bindings
+ optdepends = gnuplot: plotting tools
+ optdepends = graphviz: drawing tools
+ optdepends = python2-matplotlib: for Matplotlib rendering
+ optdepends = python2-twisted: for vtkWeb
+ optdepends = python2-autobahn: for vtkWeb
+ optdepends = openmpi: OpenMPI support
+ optdepends = python2-mpi4py: OpenMPI python support
+ optdepends = unixodbc
+ optdepends = glew
+ optdepends = gl2ps
+ optdepends = gdal
+ optdepends = mariadb
+ provides = vtk
+ conflicts = vtk
+ options = staticlibs
+ source = http://www.vtk.org/files/release/6.3/VTK-6.3.0.tar.gz
+ source = http://www.vtk.org/files/release/6.3/VTKData-6.3.0.tar.gz
+ source = http://www.vtk.org/files/release/6.3/VTKLargeData-6.3.0.tar.gz
+ source = remove-vtkxdmf3.patch::https://github.com/nschloe/VTK/commit/a98527dfe9ce23beebf386fab07caef99b911ede.patch
+ source = find-libxml2.patch::https://github.com/nschloe/VTK/commit/6216f98a7124e12a2c1cefd113347f94b51f3c51.patch
+ source = gdal2.patch
+ sha1sums = 452efab1eedf6202f2d9a3362b5f69adfc44edda
+ sha1sums = 424b138c079a688cd8c52c43d12b54e2f2b06acf
+ sha1sums = 622a2bd314262961c6d96f2686f96224e8e31de3
+ sha1sums = f8c9270941707a296ff5e0ea3c73a1f0407c6f9b
+ sha1sums = baa807e4495219b3104b6245ca79b8f33ff299db
+ sha1sums = c60610e7c8cf0ad93d7c02cbf8a20fc415f59b3e
+
+pkgname = vtk-qt4
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..7e39a08cd4c0
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,129 @@
+# $Id$
+# Maintainer: Ray Rashif <schiv@archlinux.org>
+# Contributor: Andrzej Giniewicz <gginiu@gmail.com>
+# Contributor: Thomas Dziedzic < gostrc at gmail >
+
+# TODO: for Qt5 see FS#43007
+
+pkgname=vtk-qt4
+pkgver=6.3.0
+_majorver=6.3
+pkgrel=2
+pkgdesc='A software system for 3D computer graphics, image processing, and visualization. Linked against QT4'
+arch=('i686' 'x86_64')
+url='http://www.vtk.org/'
+license=('BSD')
+provides=(vtk)
+conflicts=(vtk)
+depends=('boost-libs' 'ffmpeg' 'qtwebkit' 'lesstif' 'jsoncpp')
+makedepends=('boost' 'cmake' 'java-environment' 'doxygen' 'gnuplot' 'tk' 'wget' 'python2-matplotlib' 'python2-twisted' 'python2-mpi4py' 'python2-autobahn' 'unixodbc' 'gdal' 'openmpi' 'mariadb' 'glew' 'gl2ps')
+optdepends=('python2: python bindings'
+ 'java-runtime: java bindings'
+ 'tk: tcl bindings'
+ 'gnuplot: plotting tools'
+ 'graphviz: drawing tools'
+ 'python2-matplotlib: for Matplotlib rendering'
+ 'python2-twisted: for vtkWeb'
+ 'python2-autobahn: for vtkWeb'
+ 'openmpi: OpenMPI support'
+ 'python2-mpi4py: OpenMPI python support'
+ 'unixodbc'
+ 'glew'
+ 'gl2ps'
+ 'gdal'
+ 'mariadb')
+source=("http://www.vtk.org/files/release/${_majorver}/VTK-${pkgver}.tar.gz"
+ "http://www.vtk.org/files/release/${_majorver}/VTKData-${pkgver}.tar.gz"
+ "http://www.vtk.org/files/release/${_majorver}/VTKLargeData-${pkgver}.tar.gz"
+ # https://github.com/Kitware/VTK/pull/21
+ remove-vtkxdmf3.patch::https://github.com/nschloe/VTK/commit/a98527dfe9ce23beebf386fab07caef99b911ede.patch
+ find-libxml2.patch::https://github.com/nschloe/VTK/commit/6216f98a7124e12a2c1cefd113347f94b51f3c51.patch
+ gdal2.patch)
+options=(staticlibs)
+sha1sums=('452efab1eedf6202f2d9a3362b5f69adfc44edda'
+ '424b138c079a688cd8c52c43d12b54e2f2b06acf'
+ '622a2bd314262961c6d96f2686f96224e8e31de3'
+ 'f8c9270941707a296ff5e0ea3c73a1f0407c6f9b'
+ 'baa807e4495219b3104b6245ca79b8f33ff299db'
+ 'c60610e7c8cf0ad93d7c02cbf8a20fc415f59b3e')
+
+prepare() {
+ cd "${srcdir}"/VTK-$pkgver
+
+ # fix compilation errors:
+ patch -Np1 -i "${srcdir}"/remove-vtkxdmf3.patch
+ patch -Np1 -i "${srcdir}"/find-libxml2.patch
+ patch -Np1 -i "${srcdir}"/gdal2.patch
+
+ sed -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \
+ -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
+ -e "s|#![ ]*/bin/env python$|#!/usr/bin/env python2|" \
+ -i $(find . -name '*.py')
+}
+
+build() {
+ cd "${srcdir}"
+ rm -rf build
+ mkdir build
+ cd build
+
+ # to help cmake find java
+ export JAVA_HOME=/usr/lib/jvm/default
+
+ # flags to enable using system libs
+ local cmake_system_flags=""
+ # TODO: try to use system provided XDMF2, XDMF3, LIBPROJ4 NETCDF
+ # VTK fails to compile with recent netcdf-cxx package, VTK should be ported to the latest API
+ for lib in HDF5 EXPAT FREETYPE JPEG PNG TIFF ZLIB LIBXML2 OGGTHEORA TWISTED ZOPE SIX AUTOBAHN MPI4PY JSONCPP GLEW GL2PS; do
+ cmake_system_flags+="-DVTK_USE_SYSTEM_${lib}:BOOL=ON "
+ done
+
+ # flags to use python2 instead of python which is 3.x.x on archlinux
+ local cmake_system_python_flags="-DPYTHON_EXECUTABLE:PATH=/usr/bin/python2 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python2.7 -DPYTHON_LIBRARY:PATH=/usr/lib/libpython2.7.so"
+
+ cmake \
+ -Wno-dev \
+ -DCMAKE_SKIP_RPATH=ON \
+ -DBUILD_SHARED_LIBS:BOOL=ON \
+ -DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
+ -DBUILD_DOCUMENTATION:BOOL=ON \
+ -DDOCUMENTATION_HTML_HELP:BOOL=ON \
+ -DDOCUMENTATION_HTML_TARZ:BOOL=ON \
+ -DBUILD_EXAMPLES:BOOL=ON \
+ -DVTK_USE_FFMPEG_ENCODER:BOOL=ON \
+ -DVTK_BUILD_ALL_MODULES:BOOL=ON \
+ -DVTK_USE_LARGE_DATA:BOOL=ON \
+ -DVTK_QT_VERSION:STRING="4" \
+ -DVTK_WRAP_JAVA:BOOL=ON \
+ -DVTK_WRAP_PYTHON:BOOL=ON \
+ -DVTK_WRAP_TCL:BOOL=ON \
+ -DCMAKE_CXX_FLAGS="-D__STDC_CONSTANT_MACROS" \
+ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \
+ -DVTK_INSTALL_INCLUDE_DIR:PATH=include/vtk \
+ ${cmake_system_flags} \
+ ${cmake_system_python_flags} \
+ -DCMAKE_BUILD_TYPE=Release \
+ "${srcdir}/VTK-$pkgver"
+
+ make
+}
+
+package() {
+ cd "${srcdir}/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-${_majorver}/java"
+
+ # Install license
+ install -dv "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -m644 "${srcdir}/VTK-$pkgver/Copyright.txt" "${pkgdir}/usr/share/licenses/${pkgname}"
+
+ # Fix path of QtDesigner plugin
+ install -dv "${pkgdir}/usr/lib/qt4"
+ mv "$pkgdir"/usr/plugins "$pkgdir"/usr/lib/qt4/plugins
+}
+
diff --git a/find-libxml2.patch b/find-libxml2.patch
new file mode 100644
index 000000000000..a382a0fdb757
--- /dev/null
+++ b/find-libxml2.patch
@@ -0,0 +1,42 @@
+From 6216f98a7124e12a2c1cefd113347f94b51f3c51 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nico=20Schl=C3=B6mer?= <nico.schloemer@gmail.com>
+Date: Thu, 18 Jun 2015 13:30:30 +0200
+Subject: [PATCH] clarify logic for finding libxml2 in xdmf3
+
+---
+ ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt | 21 ++++++++++-----------
+ 1 file changed, 10 insertions(+), 11 deletions(-)
+
+diff --git a/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt b/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
+index 241fa0a..15955b7 100644
+--- a/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
++++ b/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
+@@ -93,18 +93,17 @@ if(HDF5_FOUND)
+ endif()
+
+
+-set(LIBXML2_LIBRARIES ${vtklibxml2_LIBRARIES})
+-set(LIBXML2_INCLUDE_DIR ${vtklibxml2_INCLUDE_DIRS})
+-set(LIBXML2_FOUND TRUE)
+-find_package(LibXml2 REQUIRED)
+-if(LIBXML2_FOUND)
+- include_directories(${LIBXML2_INCLUDE_DIR})
+- get_filename_component(LIBXML2_ROOT "${LIBXML2_INCLUDE_DIR}/../" REALPATH)
+- set(LIBXML2_BINARY_DIRS ${LIBXML2_ROOT}/bin)
+- set(LIBXML2_BINARY_DIRS ${LIBXML2_BINARY_DIRS} PARENT_SCOPE)
+- set(XDMF_LIBRARIES ${XDMF_LIBRARIES} ${LIBXML2_LIBRARIES})
+- set(XDMF_BINARIES ${XDMF_BINARIES} ${LIBXML2_BINARY_DIRS})
++find_package(LibXml2)
++if(NOT LIBXML2_FOUND)
++ set(LIBXML2_LIBRARIES ${vtklibxml2_LIBRARIES})
++ set(LIBXML2_INCLUDE_DIR ${vtklibxml2_INCLUDE_DIRS})
+ endif()
++include_directories(${LIBXML2_INCLUDE_DIR})
++get_filename_component(LIBXML2_ROOT "${LIBXML2_INCLUDE_DIR}/../" REALPATH)
++set(LIBXML2_BINARY_DIRS ${LIBXML2_ROOT}/bin)
++set(LIBXML2_BINARY_DIRS ${LIBXML2_BINARY_DIRS} PARENT_SCOPE)
++set(XDMF_LIBRARIES ${XDMF_LIBRARIES} ${LIBXML2_LIBRARIES})
++set(XDMF_BINARIES ${XDMF_BINARIES} ${LIBXML2_BINARY_DIRS})
+
+ # Perform compile-time checks and generate XdmfCoreConfig.hpp
+
diff --git a/gdal2.patch b/gdal2.patch
new file mode 100644
index 000000000000..36c33ee14caf
--- /dev/null
+++ b/gdal2.patch
@@ -0,0 +1,31 @@
+diff --git a/IO/GDAL/vtkGDALVectorReader.cxx b/IO/GDAL/vtkGDALVectorReader.cxx
+index 86854a0..a0e234a 100644
+--- a/IO/GDAL/vtkGDALVectorReader.cxx
++++ b/IO/GDAL/vtkGDALVectorReader.cxx
+@@ -44,7 +44,7 @@ class vtkGDALVectorReader::Internal
+ public:
+ Internal( const char* srcName, int srcMode, int appendFeatures, int addFeatIds )
+ {
+- this->Source = OGRSFDriverRegistrar::Open( srcName, srcMode, &this->Driver );
++ this->Source = (GDALDataset*) OGROpen( srcName, srcMode, NULL );
+ if ( ! this->Source )
+ {
+ this->LastError = CPLGetLastErrorMsg();
+@@ -61,7 +61,7 @@ public:
+ {
+ if ( this->Source )
+ {
+- OGRDataSource::DestroyDataSource( this->Source );
++ GDALClose( (GDALDatasetH) this->Source );
+ }
+ }
+
+@@ -304,7 +304,7 @@ public:
+ return nCells;
+ }
+
+- OGRDataSource* Source;
++ GDALDataset* Source;
+ OGRSFDriver* Driver;
+ const char* LastError;
+ int LayerIdx;
diff --git a/remove-vtkxdmf3.patch b/remove-vtkxdmf3.patch
new file mode 100644
index 000000000000..9f49f77e9098
--- /dev/null
+++ b/remove-vtkxdmf3.patch
@@ -0,0 +1,40 @@
+From a98527dfe9ce23beebf386fab07caef99b911ede Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nico=20Schl=C3=B6mer?= <nico.schloemer@gmail.com>
+Date: Thu, 18 Jun 2015 13:25:14 +0200
+Subject: [PATCH] remove superfluous vtkxdmf3_LINK_DEPENDS from Xdmf3 link line
+
+This caused VTK-compiled HDF5 and LibXML2 libraries to appear on the link line
+even if VTK_USE_SYSTEM_{HDF5,LIBXML2} was on, immediately resulting in a link
+error of the type
+```
+/usr/bin/ld: cannot find -lvtkhdf5
+/usr/bin/ld: cannot find -lvtklibxml2
+```
+This commit fixes things by simply removing vtkxdmf3_LINK_DEPENDS from the link
+line. The dependencies are already taken care of.
+---
+ ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt b/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
+index ff045a6..241fa0a 100644
+--- a/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
++++ b/ThirdParty/xdmf3/vtkxdmf3/core/CMakeLists.txt
+@@ -8,7 +8,7 @@ include(CheckCXXSourceCompiles)
+ include(SetUpVersion)
+ include(TestBigEndian)
+
+-if(VERSION_CONTROL_AUTOUPDATE OR
++if(VERSION_CONTROL_AUTOUPDATE OR
+ NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/XdmfVersion.hpp)
+ VersionCreate("Xdmf" "2" "XDMFCORE_EXPORT" "XdmfCore.hpp")
+ endif()
+@@ -154,7 +154,7 @@ set(XdmfCoreSources
+ add_library(XdmfCore ${LIBTYPE} ${XdmfCoreSources})
+ link_directories(${XDMF_LIBRARY_DIRS})
+
+-target_link_libraries(XdmfCore ${XDMF_LIBRARIES} ${vtkxdmf3_LINK_DEPENDS})
++target_link_libraries(XdmfCore ${XDMF_LIBRARIES})
+ vtk_target_install(XdmfCore)
+
+ if(WIN32)