[arch-commits] Commit in vtk6/repos (5 files)

Levente Polyak anthraxx at archlinux.org
Fri Dec 22 08:42:06 UTC 2017


    Date: Friday, December 22, 2017 @ 08:42:06
  Author: anthraxx
Revision: 275490

archrelease: copy trunk to staging-x86_64

Added:
  vtk6/repos/staging-x86_64/
  vtk6/repos/staging-x86_64/PKGBUILD
    (from rev 275489, vtk6/trunk/PKGBUILD)
  vtk6/repos/staging-x86_64/ffmpeg3_compat.patch
    (from rev 275489, vtk6/trunk/ffmpeg3_compat.patch)
  vtk6/repos/staging-x86_64/gcc6.patch
    (from rev 275489, vtk6/trunk/gcc6.patch)
  vtk6/repos/staging-x86_64/gdal2.patch
    (from rev 275489, vtk6/trunk/gdal2.patch)

----------------------+
 PKGBUILD             |  136 +++++++++++++++++++++++++++++++++++++++++++++++++
 ffmpeg3_compat.patch |   62 ++++++++++++++++++++++
 gcc6.patch           |   24 ++++++++
 gdal2.patch          |   31 +++++++++++
 4 files changed, 253 insertions(+)

Copied: vtk6/repos/staging-x86_64/PKGBUILD (from rev 275489, vtk6/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD	                        (rev 0)
+++ staging-x86_64/PKGBUILD	2017-12-22 08:42:06 UTC (rev 275490)
@@ -0,0 +1,136 @@
+# Mainteriner: Florian Pritz <bluewind at xinu.at>
+# Contributor: Ray Rashif <schiv at archlinux.org>
+# Contributor: Andrzej Giniewicz <gginiu at gmail.com>
+# Contributor: Thomas Dziedzic < gostrc at gmail >
+
+pkgname=vtk6
+pkgver=6.3.0
+_majorver=6.3
+pkgrel=10
+pkgdesc='A software system for 3D computer graphics, image processing, and visualization. Legacy 6.3 version.'
+arch=('x86_64')
+url='https://www.vtk.org/'
+license=('BSD')
+depends=('gcc-libs' 'gl2ps')
+makedepends=('boost' 'cmake' 'ninja' 'java-environment' 'doxygen' 'gnuplot' 'tk' 'wget' 'python2-matplotlib' 'python2-twisted' 'python2-mpi4py' 'python2-autobahn' 'unixodbc' 'gdal' 'openmpi' 'mariadb' 'glew' 'ffmpeg' 'qt5-base' 'jsoncpp' 'qt5-webkit' 'qt5-tools')
+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'
+            'gdal'
+            'mariadb')
+source=("https://www.vtk.org/files/release/${_majorver}/VTK-${pkgver}.tar.gz"
+        "https://www.vtk.org/files/release/${_majorver}/VTKData-${pkgver}.tar.gz"
+        "https://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
+		ffmpeg3_compat.patch
+        gdal2.patch
+        gcc6.patch)
+options=(staticlibs)
+sha1sums=('452efab1eedf6202f2d9a3362b5f69adfc44edda'
+          '424b138c079a688cd8c52c43d12b54e2f2b06acf'
+          '622a2bd314262961c6d96f2686f96224e8e31de3'
+          '191a9393dc0e2e8c40e5042611102cd5e421dfaa'
+          '1c26fc85939eb95696e52c7ae1bfac3cc0df52b7'
+          'a78177f8dd6dedd9ad189fa12730ec53c7d02508'
+          'c60610e7c8cf0ad93d7c02cbf8a20fc415f59b3e'
+          '0dc5e510a7f522e32484e2e77205c1a9d2c48854')
+
+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
+  patch -Np1 -i "${srcdir}"/ffmpeg3_compat.patch
+  patch -Np1 -i "${srcdir}"/gcc6.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
+  # VTK does not work with XDMF2 compiled from git. TODO: make vtk compatible with system XDMF library. 
+  # Note: VTK explicitly disables system GLEW dependency, it uses embedded sources with modifications
+  for lib in 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=/opt/${pkgname} \
+    -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="5" \
+    -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}" \
+    -GNinja
+
+  ninja
+}
+
+
+package() {
+  cd "${srcdir}/build"
+
+  DESTDIR="${pkgdir}" ninja install
+
+  mkdir -p "$pkgdir/etc/ld.so.conf.d/"
+  printf "%s\n" "/opt/vtk6/lib" > "$pkgdir/etc/ld.so.conf.d/$pkgname.conf"
+
+  # Move the vtk.jar to the arch-specific location
+  install -dv "${pkgdir}/opt/${pkgname}/share/java/vtk"
+  mv -v "${pkgdir}/opt/${pkgname}/lib/vtk.jar" "${pkgdir}/opt/${pkgname}/share/java/vtk"
+  rm -rf "${pkgdir}/opt/${pkgname}/lib/vtk-${_majorver}/java"
+
+  # Install license
+  install -dv "${pkgdir}/opt/${pkgname}/share/licenses/vtk"
+  install -m644 "${srcdir}/VTK-${pkgver}/Copyright.txt" "${pkgdir}/opt/${pkgname}/share/licenses/vtk"
+
+  # Fix path of QtDesigner plugin
+  install -dv "${pkgdir}/opt/${pkgname}/lib/qt5"
+  mv "${pkgdir}"/opt/${pkgname}/plugins "${pkgdir}"/opt/${pkgname}/lib/qt5/plugins
+}

Copied: vtk6/repos/staging-x86_64/ffmpeg3_compat.patch (from rev 275489, vtk6/trunk/ffmpeg3_compat.patch)
===================================================================
--- staging-x86_64/ffmpeg3_compat.patch	                        (rev 0)
+++ staging-x86_64/ffmpeg3_compat.patch	2017-12-22 08:42:06 UTC (rev 275490)
@@ -0,0 +1,62 @@
+diff --git a/IO/FFMPEG/vtkFFMPEGWriter.cxx b/IO/FFMPEG/vtkFFMPEGWriter.cxx
+index d3fd421..294b421 100644
+--- a/IO/FFMPEG/vtkFFMPEGWriter.cxx
++++ b/IO/FFMPEG/vtkFFMPEGWriter.cxx
+@@ -191,11 +191,11 @@ int vtkFFMPEGWriterInternal::Start()
+   c->height = this->Dim[1];
+   if (this->Writer->GetCompression())
+     {
+-    c->pix_fmt = PIX_FMT_YUVJ422P;
++    c->pix_fmt = AV_PIX_FMT_YUVJ422P;
+     }
+   else
+     {
+-    c->pix_fmt = PIX_FMT_BGR24;
++    c->pix_fmt = AV_PIX_FMT_BGR24;
+     }
+ 
+   //to do playback at actual recorded rate, this will need more work see also below
+@@ -274,13 +274,13 @@ int vtkFFMPEGWriterInternal::Start()
+ #endif
+ 
+   //for the output of the writer's input...
+-  this->rgbInput = avcodec_alloc_frame();
++  this->rgbInput = av_frame_alloc();
+   if (!this->rgbInput)
+     {
+     vtkGenericWarningMacro (<< "Could not make rgbInput avframe." );
+     return 0;
+     }
+-  int RGBsize = avpicture_get_size(PIX_FMT_RGB24, c->width, c->height);
++  int RGBsize = avpicture_get_size(AV_PIX_FMT_RGB24, c->width, c->height);
+   unsigned char *rgb = (unsigned char *)av_malloc(sizeof(unsigned char) * RGBsize);
+   if (!rgb)
+     {
+@@ -288,10 +288,10 @@ int vtkFFMPEGWriterInternal::Start()
+     return 0;
+     }
+   //The rgb buffer should get deleted when this->rgbInput is.
+-  avpicture_fill((AVPicture *)this->rgbInput, rgb, PIX_FMT_RGB24, c->width, c->height);
++  avpicture_fill((AVPicture *)this->rgbInput, rgb, AV_PIX_FMT_RGB24, c->width, c->height);
+ 
+   //and for the output to the codec's input.
+-  this->yuvOutput = avcodec_alloc_frame();
++  this->yuvOutput = av_frame_alloc();
+   if (!this->yuvOutput)
+     {
+     vtkGenericWarningMacro (<< "Could not make yuvOutput avframe." );
+@@ -349,12 +349,12 @@ int vtkFFMPEGWriterInternal::Write(vtkImageData *id)
+   //convert that to YUV for input to the codec
+ #ifdef VTK_FFMPEG_HAS_IMG_CONVERT
+   img_convert((AVPicture *)this->yuvOutput, cc->pix_fmt,
+-              (AVPicture *)this->rgbInput, PIX_FMT_RGB24,
++              (AVPicture *)this->rgbInput, AV_PIX_FMT_RGB24,
+               cc->width, cc->height);
+ #else
+   //convert that to YUV for input to the codec
+   SwsContext* convert_ctx = sws_getContext(
+-    cc->width, cc->height, PIX_FMT_RGB24,
++    cc->width, cc->height, AV_PIX_FMT_RGB24,
+     cc->width, cc->height, cc->pix_fmt,
+     SWS_BICUBIC, NULL, NULL, NULL);
+ 

Copied: vtk6/repos/staging-x86_64/gcc6.patch (from rev 275489, vtk6/trunk/gcc6.patch)
===================================================================
--- staging-x86_64/gcc6.patch	                        (rev 0)
+++ staging-x86_64/gcc6.patch	2017-12-22 08:42:06 UTC (rev 275490)
@@ -0,0 +1,24 @@
+diff -Naur a/CMake/GenerateExportHeader.cmake b/CMake/GenerateExportHeader.cmake
+--- a/CMake/GenerateExportHeader.cmake	2016-05-07 10:25:47.104258276 +0200
++++ b/CMake/GenerateExportHeader.cmake	2016-05-07 10:26:51.085595051 +0200
+@@ -166,7 +166,7 @@
+     execute_process(COMMAND ${CMAKE_C_COMPILER} ARGS --version
+       OUTPUT_VARIABLE _gcc_version_info
+       ERROR_VARIABLE _gcc_version_info)
+-    string(REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
++    string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+       _gcc_version "${_gcc_version_info}")
+     # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
+     # patch level, handle this here:
+diff -Naur a/CMake/vtkCompilerExtras.cmake b/CMake/vtkCompilerExtras.cmake
+--- a/CMake/vtkCompilerExtras.cmake	2016-05-07 10:25:47.104258276 +0200
++++ b/CMake/vtkCompilerExtras.cmake	2016-05-07 10:27:20.496204378 +0200
+@@ -32,7 +32,7 @@
+     OUTPUT_VARIABLE _gcc_version_info
+     ERROR_VARIABLE _gcc_version_info)
+ 
+-  string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
++  string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+     _gcc_version "${_gcc_version_info}")
+   if(NOT _gcc_version)
+     string (REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"

Copied: vtk6/repos/staging-x86_64/gdal2.patch (from rev 275489, vtk6/trunk/gdal2.patch)
===================================================================
--- staging-x86_64/gdal2.patch	                        (rev 0)
+++ staging-x86_64/gdal2.patch	2017-12-22 08:42:06 UTC (rev 275490)
@@ -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;



More information about the arch-commits mailing list