From 498a4346616c33beac56d48a246cf27fe3812341 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 29 Aug 2012 00:04:41 +0000 Subject: Wed Aug 29 00:04:40 UTC 2012 --- community/vtk/PKGBUILD | 111 +++++++++++++++++++++++++++++++++++++++++ community/vtk/ffmpeg-0.11.diff | 46 +++++++++++++++++ community/vtk/ffmpeg-0.8.diff | 66 ++++++++++++++++++++++++ 3 files changed, 223 insertions(+) create mode 100644 community/vtk/PKGBUILD create mode 100644 community/vtk/ffmpeg-0.11.diff create mode 100644 community/vtk/ffmpeg-0.8.diff (limited to 'community/vtk') diff --git a/community/vtk/PKGBUILD b/community/vtk/PKGBUILD new file mode 100644 index 000000000..4563c8c34 --- /dev/null +++ b/community/vtk/PKGBUILD @@ -0,0 +1,111 @@ +# $Id: PKGBUILD 75604 2012-08-27 13:46:13Z aginiewicz $ +# Maintainer: Andrzej Giniewicz +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: Christofer Bertonha +# Contributor: leepesjee +# Contributor: Olivier Medoc +# Contributor: ignotus +# Contributor: Fabian Moser +# Contributor: djscholl + +pkgname=vtk +pkgver=5.10.0 +pkgrel=2 +pkgdesc='A software system for 3D computer graphics, image processing, and visualization.' +arch=('i686' 'x86_64') +url='http://www.vtk.org/' +license=('BSD') +depends=('libjpeg-turbo' 'boost' 'ffmpeg' 'qt' 'qtwebkit' 'lesstif' 'mysql' 'hdf5') +makedepends=('cmake' 'java-environment' 'doxygen' 'gnuplot' 'mesa' 'python2' 'tk') +optdepends=('python2: python bindings' + 'java-runtime: java bindings' + 'tk: tcl bindings' + 'gnuplot: plotting tools' + 'graphviz: drawing tools') +source=("http://www.vtk.org/files/release/${pkgver:0:4}/vtk-${pkgver}.tar.gz" + "http://www.vtk.org/files/release/${pkgver:0:4}/vtkdata-${pkgver}.tar.gz" + ffmpeg-0.8.diff ffmpeg-0.11.diff) +md5sums=('a0363f78910f466ba8f1bd5ab5437cb9' + '8c4105b221384154421e7a460adc9c0c' + 'e992321c9d1def6034d0fa6607b40c5a' + '81922ea61989e5591135f233a0400694') + +build() { + cd "${srcdir}"/VTK + + # fix compilation error: + patch -Np1 -i "${srcdir}/ffmpeg-0.8.diff" + patch -Np1 -i "${srcdir}/ffmpeg-0.11.diff" + + cd "${srcdir}" + + rm -rf build + mkdir build + cd build + + # flags to enable using system libs + local cmake_system_flags="" + for lib in HDF5 EXPAT FREETYPE JPEG PNG TIFF ZLIB LIBXML2 OGGTHEORA; 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 \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \ + -DVTK_DATA_ROOT:FILEPATH=${srcdir}/VTKData \ + -DBUILD_DOCUMENTATION:BOOL=ON \ + -DDOCUMENTATION_HTML_HELP:BOOL=ON \ + -DDOCUMENTATION_HTML_TARZ:BOOL=ON \ + -DBUILD_EXAMPLES:BOOL=ON \ + -DVTK_USE_HYBRID:BOOL=ON \ + -DVTK_USE_PARALLEL:BOOL=ON \ + -DVTK_USE_PATENTED:BOOL=ON \ + -DVTK_USE_BOOST:BOOL=ON \ + -DVTK_USE_INFOVIS:BOOL=ON \ + -DVTK_USE_GL2PS:BOOL=ON \ + -DVTK_USE_MYSQL:BOOL=ON \ + -DVTK_USE_FFMPEG_ENCODER:BOOL=ON \ + -DVTK_USE_TEXT_ANALYSIS:BOOL=ON \ + -DVTK_WRAP_JAVA:BOOL=ON \ + -DVTK_WRAP_PYTHON:BOOL=ON \ + -DVTK_WRAP_TCL:BOOL=ON \ + -DVTK_PYTHON_SETUP_ARGS:STRING="--root='${pkgdir}'" \ + -DVTK_USE_QT:BOOL=ON \ + -DVTK_INSTALL_QT_PLUGIN_DIR:STRING="/usr/lib/qt/plugins" \ + -DVTK_USE_GUISUPPORT:BOOL=ON \ + -DCMAKE_CXX_FLAGS="-D__STDC_CONSTANT_MACROS" \ + ${cmake_system_flags} \ + ${cmake_system_python_flags} \ + "${srcdir}/VTK" + + 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-${pkgver:0:4}/java/vtk.jar" \ + "${pkgdir}/usr/share/java/vtk" + rm -rf "${pkgdir}/usr/lib/vtk-${pkgver:0:4}/java" + + # Install license + install -dv "${pkgdir}/usr/share/licenses/vtk" + install -m644 "${srcdir}/VTK/Copyright.txt" \ + "${pkgdir}/usr/share/licenses/vtk" + + # Put an entry in /etc/ld.so.conf.d + install -dv "${pkgdir}/etc/ld.so.conf.d" + echo "/usr/lib/vtk-${pkgver:0:4}" > "${pkgdir}/etc/ld.so.conf.d/vtk.conf" + + sed -i -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \ + $(find "${pkgdir}" -name '*.py') +} + diff --git a/community/vtk/ffmpeg-0.11.diff b/community/vtk/ffmpeg-0.11.diff new file mode 100644 index 000000000..af4e230cc --- /dev/null +++ b/community/vtk/ffmpeg-0.11.diff @@ -0,0 +1,46 @@ +--- VTK/IO/vtkFFMPEGWriter.cxx.orig 2012-07-08 13:40:55.000000000 +0200 ++++ VTK/IO/vtkFFMPEGWriter.cxx 2012-07-08 13:59:37.000000000 +0200 +@@ -192,13 +192,6 @@ + c->bit_rate_tolerance = this->Writer->GetBitRateTolerance(); + } + +- //apply the chosen parameters +- if (av_set_parameters(this->avFormatContext, NULL) < 0) +- { +- vtkGenericWarningMacro (<< "Invalid output format parameters." ); +- return 0; +- } +- + //manufacture a codec with the chosen parameters + AVCodec *codec = avcodec_find_encoder(c->codec_id); + if (!codec) +@@ -259,14 +252,14 @@ + + + //Finally, open the file and start it off. +- if (url_fopen(&this->avFormatContext->pb, this->avFormatContext->filename, URL_WRONLY) < 0) ++ if (avio_open(&this->avFormatContext->pb, this->avFormatContext->filename, AVIO_FLAG_WRITE) < 0) + { + vtkGenericWarningMacro (<< "Could not open " << this->Writer->GetFileName() << "." ); + return 0; + } + this->openedFile = 1; + +- av_write_header(this->avFormatContext); ++ avformat_write_header(this->avFormatContext, NULL); + return 1; + } + +@@ -388,11 +381,7 @@ + if (this->openedFile) + { + av_write_trailer(this->avFormatContext); +-#ifdef VTK_FFMPEG_OLD_URL_FCLOSE +- url_fclose(&this->avFormatContext->pb); +-#else +- url_fclose(this->avFormatContext->pb); +-#endif ++ avio_close(this->avFormatContext->pb); + this->openedFile = 0; + } + diff --git a/community/vtk/ffmpeg-0.8.diff b/community/vtk/ffmpeg-0.8.diff new file mode 100644 index 000000000..523919d6f --- /dev/null +++ b/community/vtk/ffmpeg-0.8.diff @@ -0,0 +1,66 @@ +Description: Upstream changes introduced in version 5.6.1-6.1 + This patch has been created by dpkg-source during the package build. + Here's the last changelog entry, hopefully it gives details on why + those changes were made: + . + vtk (5.6.1-6.1) unstable; urgency=low + . + [ Michael Schutte ] + * Non-maintainer upload. + * Remove absolute paths to required libraries from + /usr/lib/vtk-5.6/VTKLibraryDepends.cmake after building, closes: + #506992. Due to the multiarch transition, the original behavior + frequently causes reverse build-deps to FTBFS. This change should + probably be reverted once all required libraries are multiarched. + . + [ Steve M. Robbins ] + * Override lintian diagnostic about embedded libraries ftgl and sqlite. + * IO/vtkFFMPEGWriter.cxx: Applied fix from #638246 to build with libav + 0.7. + . + The person named in the Author field signed this changelog entry. +Author: Steve M. Robbins +Bug-Debian: http://bugs.debian.org/506992 + +--- +The information above should follow the Patch Tagging Guidelines, please +checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here +are templates for supplementary fields that you might want to add: + +Origin: , +Bug: +Bug-Debian: http://bugs.debian.org/ +Bug-Ubuntu: https://launchpad.net/bugs/ +Forwarded: +Reviewed-By: +Last-Update: + +--- vtk-5.6.1.orig/IO/vtkFFMPEGWriter.cxx ++++ vtk-5.6.1/IO/vtkFFMPEGWriter.cxx +@@ -123,7 +123,7 @@ int vtkFFMPEGWriterInternal::Start() + } + + //choose avi media file format +- this->avOutputFormat = guess_format("avi", NULL, NULL); ++ this->avOutputFormat = av_guess_format("avi", NULL, NULL); + if (!this->avOutputFormat) + { + vtkGenericWarningMacro (<< "Could not open the avi media file format."); +@@ -150,7 +150,7 @@ int vtkFFMPEGWriterInternal::Start() + //Set up the codec. + AVCodecContext *c = this->avStream->codec; + c->codec_id = (CodecID)this->avOutputFormat->video_codec; +- c->codec_type = CODEC_TYPE_VIDEO; ++ c->codec_type = AVMEDIA_TYPE_VIDEO; + c->width = this->Dim[0]; + c->height = this->Dim[1]; + c->pix_fmt = PIX_FMT_YUVJ420P; +@@ -329,7 +329,7 @@ int vtkFFMPEGWriterInternal::Write(vtkIm + pkt.stream_index = this->avStream->index; + if (cc->coded_frame->key_frame) //treat keyframes well + { +- pkt.flags |= PKT_FLAG_KEY; ++ pkt.flags |= AV_PKT_FLAG_KEY; + } + pkt.duration = 0; //presentation duration in time_base units or 0 if NA + pkt.pos = -1; //byte position in stream or -1 if NA -- cgit v1.2.3-54-g00ecf