summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattéo Delabre2018-07-27 15:01:15 -0400
committerMattéo Delabre2018-07-27 15:01:15 -0400
commitec3e239ee6efdd37acc4a67d26e54918cf19e0cc (patch)
tree9faa9f00fd914ce41cd8c6520cdeecc7aa3761ee
parent648067bfd32d21e396ca88e48c48747d0276f9ef (diff)
downloadaur-ec3e239ee6efdd37acc4a67d26e54918cf19e0cc.tar.gz
Patch ETL-1.2.1 to fix building with GCC
New maintainer.
-rw-r--r--.SRCINFO11
-rw-r--r--ETL-1.2.1.patch12
-rw-r--r--PKGBUILD86
3 files changed, 76 insertions, 33 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ec987de4137e..4508100dffb7 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,8 @@
pkgbase = synfigstudio
pkgdesc = Professional vector animation program (GUI)
pkgver = 1.2.1
- pkgrel = 3
- url = http://synfig.org
+ pkgrel = 4
+ url = https://synfig.org
arch = x86_64
license = GPL2
makedepends = openexr
@@ -12,13 +12,16 @@ pkgbase = synfigstudio
makedepends = xorg-fonts-misc
makedepends = xorg-fonts-type1
makedepends = intltool
- makedepends = etl
makedepends = imagemagick
depends = gtkmm3
depends = synfig
depends = sdl_image
- source = http://downloads.sourceforge.net/project/synfig/releases/1.2.1/source/synfigstudio-1.2.1.tar.gz
+ source = https://github.com/synfig/synfig/releases/download/v1.2.1/ETL-1.2.1.tar.gz
+ source = https://github.com/synfig/synfig/releases/download/v1.2.1/synfigstudio-1.2.1.tar.gz
+ source = ETL-1.2.1.patch
+ sha256sums = 754d88c5ddfdef54f27d1e17f62a902eb9f09fbe7ef9aebded34541b4c1700e6
sha256sums = 1a97875e0039895604085649bcd30cf0d6165f4c865299ca13d45d2dfbfab05d
+ sha256sums = 35e218317050430ebae667d26269903ad1c377407b9a75feb48a9138af131cb0
pkgname = synfigstudio
diff --git a/ETL-1.2.1.patch b/ETL-1.2.1.patch
new file mode 100644
index 000000000000..bcf70e00880c
--- /dev/null
+++ b/ETL-1.2.1.patch
@@ -0,0 +1,12 @@
+--- a/ETL/_pen.h 2017-09-08 05:51:26.000000000 -0400
++++ b/ETL/_pen.h 2018-07-27 12:56:43.833337339 -0400
+@@ -136,7 +136,8 @@
+ typedef int value_type;
+ value_type x,y;
+ difference_type(value_type x, value_type y):x(x),y(y) { }
+- value_type &operator[](int i)const { return i?y:x; }
++ const value_type &operator[](int i) const { return i?y:x; }
++ value_type &operator[](int i) { return i?y:x; }
+ };
+
+ protected:
diff --git a/PKGBUILD b/PKGBUILD
index c45e2cc517a2..db483a8670fa 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,44 +1,72 @@
-# $Id: PKGBUILD 272104 2017-12-04 09:50:19Z arojas $
-# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Mattéo Delabre <bonjour@matteodelabre.me>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Franco Iacomella <yaco@gnu.org>
pkgname=synfigstudio
pkgver=1.2.1
-pkgrel=3
+pkgrel=4
pkgdesc="Professional vector animation program (GUI)"
arch=(x86_64)
-url="http://synfig.org"
+url="https://synfig.org"
license=('GPL2')
depends=('gtkmm3' 'synfig' 'sdl_image')
makedepends=('openexr' 'libmagick6' 'xorg-fonts-100dpi' 'xorg-fonts-75dpi'
- 'xorg-fonts-misc' 'xorg-fonts-type1' 'intltool' 'etl' 'imagemagick')
-source=(http://downloads.sourceforge.net/project/synfig/releases/$pkgver/source/synfigstudio-$pkgver.tar.gz)
-sha256sums=('1a97875e0039895604085649bcd30cf0d6165f4c865299ca13d45d2dfbfab05d')
+ 'xorg-fonts-misc' 'xorg-fonts-type1' 'intltool' 'imagemagick')
+source=(
+ "https://github.com/synfig/synfig/releases/download/v$pkgver/ETL-$pkgver.tar.gz"
+ "https://github.com/synfig/synfig/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz"
+ 'ETL-1.2.1.patch')
+sha256sums=(
+ '754d88c5ddfdef54f27d1e17f62a902eb9f09fbe7ef9aebded34541b4c1700e6'
+ '1a97875e0039895604085649bcd30cf0d6165f4c865299ca13d45d2dfbfab05d'
+ '35e218317050430ebae667d26269903ad1c377407b9a75feb48a9138af131cb0')
+
+prepare() {
+ # Fix const-invalid method in ETL 1.2.1 using the patch which is included
+ # in ETL ≥ 1.3.9. This makes building with GCC possible.
+ # (see <https://github.com/synfig/synfig/commit/cb05b072>)
+ cd "$srcdir"/ETL-$pkgver
+ patch -p1 -i "$srcdir"/ETL-1.2.1.patch
+}
build() {
- cd "$srcdir"/synfigstudio-$pkgver
- export PKG_CONFIG_PATH=/usr/lib/ffmpeg0.10/pkgconfig:/usr/lib/imagemagick6/pkgconfig:$PKG_CONFIG_PATH
- [ -f configure ] || { libtoolize --ltdl --copy --force && autoreconf --install --force; }
- [ -f Makefile ] || ./configure --prefix=/usr --sysconfdir=/etc --with-libavcodec --with-libdv
- make
+ # Build a local ETL version
+ cd "$srcdir"/ETL-$pkgver
+ ./configure --prefix="$srcdir/ETL-$pkgver/build"
+ make
+ make install
+
+ # Build Synfig Studio using the local ETL version
+ # (do not use the system-wide one as it probably
+ # contains the bug we want to patch)
+ cd "$srcdir"/$pkgname-$pkgver
+
+ PKG_CONFIG_PATH="/usr/lib/imagemagick6/pkgconfig:/usr/lib/ffmpeg0.10/pkgconfig:$srcdir/ETL-$pkgver" \
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --with-libavcodec \
+ --with-libdv
+
+ make
}
package() {
- cd "$srcdir"/synfigstudio-$pkgver
- make DESTDIR="$pkgdir" install
- rm -f "$pkgdir"/usr/share/pixmaps/$pkgname/*.mng
- install -m644 images/*.png -t "$pkgdir"/usr/share/pixmaps/$pkgname/
-
- rm -f "$pkgdir"/usr/share/mime/XMLnamespaces
- rm -f "$pkgdir"/usr/share/mime/aliases
- rm -f "$pkgdir"/usr/share/mime/generic-icons
- rm -f "$pkgdir"/usr/share/mime/globs
- rm -f "$pkgdir"/usr/share/mime/globs2
- rm -f "$pkgdir"/usr/share/mime/icons
- rm -f "$pkgdir"/usr/share/mime/magic
- rm -f "$pkgdir"/usr/share/mime/mime.cache
- rm -f "$pkgdir"/usr/share/mime/subclasses
- rm -f "$pkgdir"/usr/share/mime/treemagic
- rm -f "$pkgdir"/usr/share/mime/types
- rm -f "$pkgdir"/usr/share/mime/version
+ cd "$srcdir"/$pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ rm -f "$pkgdir"/usr/share/pixmaps/$pkgname/*.mng
+ install -m644 images/*.png -t "$pkgdir"/usr/share/pixmaps/$pkgname/
+
+ rm -f "$pkgdir"/usr/share/mime/XMLnamespaces
+ rm -f "$pkgdir"/usr/share/mime/aliases
+ rm -f "$pkgdir"/usr/share/mime/generic-icons
+ rm -f "$pkgdir"/usr/share/mime/globs
+ rm -f "$pkgdir"/usr/share/mime/globs2
+ rm -f "$pkgdir"/usr/share/mime/icons
+ rm -f "$pkgdir"/usr/share/mime/magic
+ rm -f "$pkgdir"/usr/share/mime/mime.cache
+ rm -f "$pkgdir"/usr/share/mime/subclasses
+ rm -f "$pkgdir"/usr/share/mime/treemagic
+ rm -f "$pkgdir"/usr/share/mime/types
+ rm -f "$pkgdir"/usr/share/mime/version
}