summaryrefslogtreecommitdiff
path: root/community/synfig
diff options
context:
space:
mode:
authorParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
committerParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
commit415856bdd4f48ab4f2732996f0bae58595092bbe (patch)
treeede2018b591f6dfb477fe9341ba17b9bc000fab9 /community/synfig
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'community/synfig')
-rw-r--r--community/synfig/PKGBUILD28
-rw-r--r--community/synfig/build-fix.patch74
2 files changed, 102 insertions, 0 deletions
diff --git a/community/synfig/PKGBUILD b/community/synfig/PKGBUILD
new file mode 100644
index 000000000..ccf622c00
--- /dev/null
+++ b/community/synfig/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 36102 2010-12-27 10:40:57Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Franco Iacomella <yaco@gnu.org>
+
+pkgname=synfig
+pkgver=0.62.02
+pkgrel=1
+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/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz
+ build-fix.patch)
+md5sums=('e6af1aa9426cf629127d23edbd772f6d'
+ '0e983a00807c6c76c380f4f9918e6724')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ [ $NOEXTRACT -eq 1 ] || patch -p1 <$srcdir/build-fix.patch
+ [ $NOEXTRACT -eq 1 ] || ./configure --prefix=/usr --sysconfdir=/etc --with-libavcodec --with-libdv
+ make
+ make DESTDIR=$pkgdir install
+}
diff --git a/community/synfig/build-fix.patch b/community/synfig/build-fix.patch
new file mode 100644
index 000000000..802046dab
--- /dev/null
+++ b/community/synfig/build-fix.patch
@@ -0,0 +1,74 @@
+diff -wbBur synfig-0.62.01/src/modules/mod_libavcodec/trgt_av.cpp synfig-0.62.01.my/src/modules/mod_libavcodec/trgt_av.cpp
+--- synfig-0.62.01/src/modules/mod_libavcodec/trgt_av.cpp 2010-05-31 18:12:14.000000000 +0000
++++ synfig-0.62.01.my/src/modules/mod_libavcodec/trgt_av.cpp 2010-06-03 15:56:04.000000000 +0000
+@@ -33,6 +33,10 @@
+ # include <config.h>
+ #endif
+
++#include <libavcodec/avcodec.h>
++#include <libavformat/avformat.h>
++#include <libswscale/swscale.h>
++
+ #include "trgt_av.h"
+
+ extern "C"
+@@ -118,14 +122,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-0.62.01/src/modules/mod_png/mptr_png.cpp synfig-0.62.01.my/src/modules/mod_png/mptr_png.cpp
+--- synfig-0.62.01/src/modules/mod_png/mptr_png.cpp 2010-05-31 18:12:14.000000000 +0000
++++ synfig-0.62.01.my/src/modules/mod_png/mptr_png.cpp 2010-06-03 15:43:39.000000000 +0000
+@@ -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 -wbBur synfig-0.62.01/src/synfig/canvas.cpp synfig-0.62.01.my/src/synfig/canvas.cpp
+--- synfig-0.62.01/src/synfig/canvas.cpp 2010-05-31 18:12:14.000000000 +0000
++++ synfig-0.62.01.my/src/synfig/canvas.cpp 2010-06-03 15:47:00.000000000 +0000
+@@ -716,7 +716,7 @@
+ Layer::LooseHandle loose_layer(x);
+
+ add_connection(loose_layer,
+- sigc::connection::connection(
++ sigc::connection(
+ x->signal_added_to_group().connect(
+ sigc::bind(
+ sigc::mem_fun(
+@@ -724,7 +724,7 @@
+ &Canvas::add_group_pair),
+ loose_layer))));
+ add_connection(loose_layer,
+- sigc::connection::connection(
++ sigc::connection(
+ x->signal_removed_from_group().connect(
+ sigc::bind(
+ sigc::mem_fun(
+diff -wbBur synfig-0.62.01/src/synfig/time.cpp synfig-0.62.01.my/src/synfig/time.cpp
+--- synfig-0.62.01/src/synfig/time.cpp 2010-05-31 18:12:14.000000000 +0000
++++ synfig-0.62.01.my/src/synfig/time.cpp 2010-06-03 15:43:39.000000000 +0000
+@@ -1,4 +1,6 @@
++#include <stdio.h>
+ /* === S Y N F I G ========================================================= */
++#include <stdio.h>
+ /*! \file time.cpp
+ ** \brief Template File
+ **