summaryrefslogtreecommitdiff
path: root/community-testing/synfig
diff options
context:
space:
mode:
Diffstat (limited to 'community-testing/synfig')
-rw-r--r--community-testing/synfig/PKGBUILD41
-rw-r--r--community-testing/synfig/build-fix.patch43
-rw-r--r--community-testing/synfig/ffmpeg-0.8.patch60
3 files changed, 144 insertions, 0 deletions
diff --git a/community-testing/synfig/PKGBUILD b/community-testing/synfig/PKGBUILD
new file mode 100644
index 000000000..2c324912d
--- /dev/null
+++ b/community-testing/synfig/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 58018 2011-11-05 11:40:57Z ibiru $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Franco Iacomella <yaco@gnu.org>
+
+pkgname=synfig
+pkgver=0.63.02
+pkgrel=2
+pkgdesc="Professional vector animation program (CLI renderer only)"
+arch=(i686 x86_64)
+url="http://synfig.org"
+license=('GPL2')
+depends=('libxml++' 'libsigc++2.0' 'etl' 'imagemagick' 'ffmpeg' 'fontconfig' 'libpng'
+ 'libtiff' 'libdv' 'libmng')
+optdepends=('openexr' 'libsigc++')
+conflicts=('synfig-core')
+replaces=('synfig-core')
+options=(!libtool)
+source=(http://downloads.sourceforge.net/project/synfig/synfig/$pkgver/synfig-$pkgver.tar.gz
+ build-fix.patch ffmpeg-0.8.patch)
+md5sums=('4286d5e1887275107d760d1b678aec24'
+ '2de5e74159a38e4b1788c20d4c4b6f68')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ [ -f configure ] || { libtoolize --ltdl --copy --force && autoreconf --install --force; }
+ [ -f Makefile ] || ./configure --prefix=/usr --sysconfdir=/etc --with-libavcodec --with-libdv
+ patch -p1 -i $srcdir/build-fix.patch
+ patch -Np1 -i $srcdir/ffmpeg-0.8.patch
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ make DESTDIR=$pkgdir install
+}
+md5sums=('4286d5e1887275107d760d1b678aec24'
+ '2de5e74159a38e4b1788c20d4c4b6f68'
+ 'f1f22b1ce2c13e25d5eb51a664a9551f')
+md5sums=('4286d5e1887275107d760d1b678aec24'
+ '2de5e74159a38e4b1788c20d4c4b6f68'
+ 'ebf41046097cfd778dee9a9854561dae')
diff --git a/community-testing/synfig/build-fix.patch b/community-testing/synfig/build-fix.patch
new file mode 100644
index 000000000..9124a517a
--- /dev/null
+++ b/community-testing/synfig/build-fix.patch
@@ -0,0 +1,43 @@
+diff -wbBur synfig-core/src/modules/mod_libavcodec/trgt_av.cpp synfig-core.my/src/modules/mod_libavcodec/trgt_av.cpp
+--- synfig-core/src/modules/mod_libavcodec/trgt_av.cpp 2011-06-05 13:04:07.000000000 +0400
++++ synfig-core.my/src/modules/mod_libavcodec/trgt_av.cpp 2011-06-14 14:32:49.000000000 +0400
+@@ -31,6 +31,10 @@
+ # include <config.h>
+ #endif
+
++#include <libavcodec/avcodec.h>
++#include <libavformat/avformat.h>
++#include <libswscale/swscale.h>
++
+ #include "trgt_av.h"
+
+ extern "C"
+@@ -116,14 +120,14 @@
+ picture = avcodec_alloc_frame();
+ if (!picture)
+ return NULL;
+- size = avpicture_get_size(pix_fmt, width, height);
++ size = avpicture_get_size((enum ::PixelFormat)pix_fmt, width, height);
+ picture_buf = (uint8_t *)malloc(size);
+ if (!picture_buf) {
+ av_free(picture);
+ return NULL;
+ }
+ avpicture_fill((AVPicture *)picture, picture_buf,
+- pix_fmt, width, height);
++ (enum ::PixelFormat)pix_fmt, width, height);
+ return picture;
+ }
+
+diff -wbBur synfig-core/src/modules/mod_png/mptr_png.cpp synfig-core.my/src/modules/mod_png/mptr_png.cpp
+--- synfig-core/src/modules/mod_png/mptr_png.cpp 2011-06-05 13:04:07.000000000 +0400
++++ synfig-core.my/src/modules/mod_png/mptr_png.cpp 2011-06-14 14:32:49.000000000 +0400
+@@ -309,7 +309,7 @@
+ float b=gamma().b_U8_to_F32((unsigned char)png_ptr->palette[row_pointers[y][x]].blue);
+ float a=1.0;
+ if(info_ptr->valid & PNG_INFO_tRNS)
+- a = (float)(unsigned char)png_ptr->trans[row_pointers[y][x]]*(1.0/255.0);
++ a = (float)(unsigned char)png_ptr->trans_alpha[row_pointers[y][x]]*(1.0/255.0);
+ surface_buffer[y][x]=Color(
+ r,
+ g,
diff --git a/community-testing/synfig/ffmpeg-0.8.patch b/community-testing/synfig/ffmpeg-0.8.patch
new file mode 100644
index 000000000..4ba40fff2
--- /dev/null
+++ b/community-testing/synfig/ffmpeg-0.8.patch
@@ -0,0 +1,60 @@
+diff -aur synfig-0.63.02/src/modules/mod_libavcodec/trgt_av.cpp synfig-0.63.02.new/src/modules/mod_libavcodec/trgt_av.cpp
+--- synfig-0.63.02/src/modules/mod_libavcodec/trgt_av.cpp 2011-09-29 10:51:41.000000000 +0200
++++ synfig-0.63.02.new/src/modules/mod_libavcodec/trgt_av.cpp 2011-10-31 16:39:03.000000000 +0100
+@@ -441,7 +441,7 @@
+ if( context->coded_frame )
+ pkt.pts = context->coded_frame->pts;
+ if( context->coded_frame && context->coded_frame->key_frame)
+- pkt.flags |= PKT_FLAG_KEY;
++ pkt.flags |= AV_PKT_FLAG_KEY;
+
+ //kluge for raw picture format (they said they'd fix)
+ if (formatc->oformat->flags & AVFMT_RAWPICTURE)
+@@ -463,7 +463,7 @@
+ if( context->coded_frame )
+ pkt.pts = context->coded_frame->pts;
+ if( context->coded_frame && context->coded_frame->key_frame)
+- pkt.flags |= PKT_FLAG_KEY;
++ pkt.flags |= AV_PKT_FLAG_KEY;
+
+ ret = av_write_frame(formatc, &pkt);
+
+@@ -567,17 +567,17 @@
+ if (typestring)
+ {
+ //formatptr guess_format(type, filename, MIME type)
+- format = guess_format(typestring,NULL,NULL);
++ format = av_guess_format(typestring,NULL,NULL);
+ }
+ else
+ {
+- format = guess_format(NULL, filename, NULL);
++ format = av_guess_format(NULL, filename, NULL);
+ }
+
+ if(!format)
+ {
+ synfig::warning("Unable to Guess the output, defaulting to mpeg");
+- format = guess_format("mpeg", NULL, NULL);
++ format = av_guess_format("mpeg", NULL, NULL);
+ }
+
+ if(!format)
+@@ -753,7 +753,7 @@
+
+ context = st->codec;
+ context->codec_id = (CodecID)codec_id;
+- context->codec_type = CODEC_TYPE_VIDEO;
++ context->codec_type = AVMEDIA_TYPE_VIDEO;
+
+ //PARAMETERS MUST BE PASSED IN SOMEHOW (ANOTHER FUNCTION PARAMETER???)
+
+@@ -800,7 +800,7 @@
+
+ context = stream->codec;
+ context->codec_id = (CodecID)codec_id;
+- context->codec_type = CODEC_TYPE_AUDIO;
++ context->codec_type = AVMEDIA_TYPE_AUDIO;
+
+ /* put sample parameters */
+ context->bit_rate = 64000;