summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-libs/gegl
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-libs/gegl')
-rw-r--r--media-libs/gegl/Manifest2
-rw-r--r--media-libs/gegl/files/0.1.6-ffmpeg.patch33
-rw-r--r--media-libs/gegl/files/gegl-0.0.22-locale_h.diff10
-rw-r--r--media-libs/gegl/files/gegl-0.1.8-cve-2012-4433-4757cdf7.patch74
-rw-r--r--media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-1e92e523.patch68
-rw-r--r--media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-4757cdf7.patch70
-rw-r--r--media-libs/gegl/files/gegl-0.2.0-ffmpeg-0.11.diff57
-rw-r--r--media-libs/gegl/files/gegl-0.2.0-g_log_domain.patch25
-rw-r--r--media-libs/gegl/files/gegl-0.2.0-introspection-version.patch31
-rw-r--r--media-libs/gegl/files/gegl-doubledestdir.diff12
-rw-r--r--media-libs/gegl/files/replace-imgconvert-by-swsscale.patch58
-rw-r--r--media-libs/gegl/gegl-0.2.0-r2.ebuild154
-rw-r--r--media-libs/gegl/gegl-0.3.0.ebuild182
-rw-r--r--media-libs/gegl/gegl-9999.ebuild182
-rw-r--r--media-libs/gegl/metadata.xml14
15 files changed, 972 insertions, 0 deletions
diff --git a/media-libs/gegl/Manifest b/media-libs/gegl/Manifest
new file mode 100644
index 000000000000..c9bb6efb732f
--- /dev/null
+++ b/media-libs/gegl/Manifest
@@ -0,0 +1,2 @@
+DIST gegl-0.2.0.tar.bz2 7502040 SHA256 df2e6a0d9499afcbc4f9029c18d9d1e0dd5e8710a75e17c9b1d9a6480dd8d426 SHA512 16ef3f6852fd8efef2b6468a754342a2d003f2c2bef468d9465a448e6c89dedb8e791570f073a9faed05218a7c94c6c418eaa0f3abeadfb3e6b88d766ab792c8 WHIRLPOOL 74e9c18b095526b1d053f0700b3c3776197a5c1066cb77adb7c83f154aae9087319f7b7f0379fb9e895a5ef3ac62ebf05e2158c1d18180bafcef41dff096c01d
+DIST gegl-0.3.0.tar.bz2 5463571 SHA256 f0fec8f2e7b8835979d3cf4e38b05d41bb79f68dc80cf899a846484da693bbf7 SHA512 ff758df4689b0fa8f5e16ebcea32a7fe77bccfef70efc20d10669ce5139a70ec3533e78227fd4798812b31ac1ca5081b9d1d701a7449bf75356f879ece5fadd6 WHIRLPOOL 4827d6e40025c36d4ef869b5856f4def1e93cc195757f430cfd2980742ce6b37c79833283d17ec51e93b569a144548aaf7021854b9bcdb241b90049b1321a99b
diff --git a/media-libs/gegl/files/0.1.6-ffmpeg.patch b/media-libs/gegl/files/0.1.6-ffmpeg.patch
new file mode 100644
index 000000000000..51fb95d28c18
--- /dev/null
+++ b/media-libs/gegl/files/0.1.6-ffmpeg.patch
@@ -0,0 +1,33 @@
+diff -urN gegl-0.1.6.old//operations/external/ff-load.c gegl-0.1.6/operations/external/ff-load.c
+--- gegl-0.1.6.old//operations/external/ff-load.c 2011-01-24 19:03:30.000000000 -0300
++++ gegl-0.1.6/operations/external/ff-load.c 2011-05-04 09:59:48.910379742 -0300
+@@ -69,17 +69,17 @@
+ {
+ switch (err)
+ {
+- case AVERROR_NUMEXPECTED:
++ case AVERROR(EDOM):
+ g_warning ("%s: Incorrect image filename syntax.\n"
+ "Use '%%d' to specify the image number:\n"
+ " for img1.jpg, img2.jpg, ..., use 'img%%d.jpg';\n"
+ " for img001.jpg, img002.jpg, ..., use 'img%%03d.jpg'.\n",
+ filename);
+ break;
+- case AVERROR_INVALIDDATA:
++ case AVERROR(EINVAL):
+ g_warning ("%s: Error while parsing header\n", filename);
+ break;
+- case AVERROR_NOFMT:
++ case AVERROR(EILSEQ):
+ g_warning ("%s: Unknown format\n", filename);
+ break;
+ default:
+@@ -278,7 +278,7 @@
+ for (i = 0; i< p->ic->nb_streams; i++)
+ {
+ AVCodecContext *c = p->ic->streams[i]->codec;
+- if (c->codec_type == CODEC_TYPE_VIDEO)
++ if (c->codec_type == AVMEDIA_TYPE_VIDEO)
+ {
+ p->video_st = p->ic->streams[i];
+ p->video_stream = i;
diff --git a/media-libs/gegl/files/gegl-0.0.22-locale_h.diff b/media-libs/gegl/files/gegl-0.0.22-locale_h.diff
new file mode 100644
index 000000000000..a4a9707fc24b
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.0.22-locale_h.diff
@@ -0,0 +1,10 @@
+--- gegl-0.0.22/gegl/gegl-init.c 2008-12-31 02:38:59.000000000 +0100
++++ gegl-0.0.22-1/gegl/gegl-init.c 2009-01-14 22:21:41.000000000 +0100
+@@ -26,6 +26,7 @@
+ #include <glib/gi18n-lib.h>
+
+ #include <stdlib.h>
++#include <locale.h>
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
diff --git a/media-libs/gegl/files/gegl-0.1.8-cve-2012-4433-4757cdf7.patch b/media-libs/gegl/files/gegl-0.1.8-cve-2012-4433-4757cdf7.patch
new file mode 100644
index 000000000000..7bda5b065c0a
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.1.8-cve-2012-4433-4757cdf7.patch
@@ -0,0 +1,74 @@
+From 3d3b1559cb34bc862f145c9880d156f6f2fe7b5f Mon Sep 17 00:00:00 2001
+From: Sebastian Pipping <sebastian@pipping.org>
+Date: Sat, 17 Nov 2012 16:22:21 +0100
+Subject: [PATCH] ppm-load: CVE-2012-4433: add plausibility checks for header
+ fields
+
+"Port" of 4757cdf73d3675478d645a3ec8250ba02168a230 by Nils Philippsen from GEGL 0.2.0 to 0.1.8
+---
+ operations/external/ppm-load.c | 33 ++++++++++++++++++++++++++++-----
+ 1 file changed, 28 insertions(+), 5 deletions(-)
+
+diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c
+index 6db6e5a..2d4f0ca 100644
+--- a/operations/external/ppm-load.c
++++ b/operations/external/ppm-load.c
+@@ -36,6 +36,7 @@ gegl_chant_file_path (path, _("File"), "", _("Path of file to load."))
+ #include "gegl-chant.h"
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <errno.h>
+
+ typedef enum {
+ PIXMAP_ASCII = 51,
+@@ -44,8 +45,8 @@ typedef enum {
+
+ typedef struct {
+ map_type type;
+- gint width;
+- gint height;
++ glong width;
++ glong height;
+ gsize numsamples; /* width * height * channels */
+ gsize bpc; /* bytes per channel */
+ guchar *data;
+@@ -82,11 +83,33 @@ ppm_load_read_header(FILE *fp,
+ }
+
+ /* Get Width and Height */
+- img->width = strtol (header,&ptr,0);
+- img->height = atoi (ptr);
++ errno = 0;
++ img->width = strtol (header,&ptr,10);
++ if (errno)
++ {
++ g_warning ("Error reading width: %s", strerror(errno));
++ return FALSE;
++ }
++ else if (img->width < 0)
++ {
++ g_warning ("Error: width is negative");
++ return FALSE;
++ }
++
++ img->height = strtol (ptr,&ptr,10);
++ if (errno)
++ {
++ g_warning ("Error reading height: %s", strerror(errno));
++ return FALSE;
++ }
++ else if (img->width < 0)
++ {
++ g_warning ("Error: height is negative");
++ return FALSE;
++ }
+
+ retval = fgets (header,MAX_CHARS_IN_ROW,fp);
+- maxval = strtol (header,&ptr,0);
++ maxval = strtol (header,&ptr,10);
+
+ if ((maxval != 255) && (maxval != 65535))
+ {
+--
+1.7.12.4
+
diff --git a/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-1e92e523.patch b/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-1e92e523.patch
new file mode 100644
index 000000000000..0babb0f41c1b
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-1e92e523.patch
@@ -0,0 +1,68 @@
+From 1e92e5235ded0415d555aa86066b8e4041ee5a53 Mon Sep 17 00:00:00 2001
+From: Nils Philippsen <nils@redhat.com>
+Date: Tue, 16 Oct 2012 14:58:27 +0000
+Subject: ppm-load: CVE-2012-4433: don't overflow memory allocation
+
+Carefully selected width/height values could cause the size of a later
+allocation to overflow, resulting in a buffer much too small to store
+the data which would then written beyond its end.
+---
+diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c
+index efe6d56..3d6bce7 100644
+--- a/operations/external/ppm-load.c
++++ b/operations/external/ppm-load.c
+@@ -84,7 +84,6 @@ ppm_load_read_header(FILE *fp,
+ /* Get Width and Height */
+ img->width = strtol (header,&ptr,0);
+ img->height = atoi (ptr);
+- img->numsamples = img->width * img->height * CHANNEL_COUNT;
+
+ fgets (header,MAX_CHARS_IN_ROW,fp);
+ maxval = strtol (header,&ptr,0);
+@@ -109,6 +108,16 @@ ppm_load_read_header(FILE *fp,
+ g_warning ("%s: Programmer stupidity error", G_STRLOC);
+ }
+
++ /* Later on, img->numsamples is multiplied with img->bpc to allocate
++ * memory. Ensure it doesn't overflow. */
++ if (!img->width || !img->height ||
++ G_MAXSIZE / img->width / img->height / CHANNEL_COUNT < img->bpc)
++ {
++ g_warning ("Illegal width/height: %ld/%ld", img->width, img->height);
++ return FALSE;
++ }
++ img->numsamples = img->width * img->height * CHANNEL_COUNT;
++
+ return TRUE;
+ }
+
+@@ -229,12 +238,24 @@ process (GeglOperation *operation,
+ if (!ppm_load_read_header (fp, &img))
+ goto out;
+
+- rect.height = img.height;
+- rect.width = img.width;
+-
+ /* Allocating Array Size */
++
++ /* Should use g_try_malloc(), but this causes crashes elsewhere because the
++ * error signalled by returning FALSE isn't properly acted upon. Therefore
++ * g_malloc() is used here which aborts if the requested memory size can't be
++ * allocated causing a controlled crash. */
+ img.data = (guchar*) g_malloc (img.numsamples * img.bpc);
+
++ /* No-op without g_try_malloc(), see above. */
++ if (! img.data)
++ {
++ g_warning ("Couldn't allocate %" G_GSIZE_FORMAT " bytes, giving up.", ((gsize)img.numsamples * img.bpc));
++ goto out;
++ }
++
++ rect.height = img.height;
++ rect.width = img.width;
++
+ switch (img.bpc)
+ {
+ case 1:
+--
+cgit v0.9.0.2
diff --git a/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-4757cdf7.patch b/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-4757cdf7.patch
new file mode 100644
index 000000000000..f78557f5772a
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.2.0-cve-2012-4433-4757cdf7.patch
@@ -0,0 +1,70 @@
+From 4757cdf73d3675478d645a3ec8250ba02168a230 Mon Sep 17 00:00:00 2001
+From: Nils Philippsen <nils@redhat.com>
+Date: Tue, 16 Oct 2012 14:56:40 +0000
+Subject: ppm-load: CVE-2012-4433: add plausibility checks for header fields
+
+Refuse values that are non-decimal, negative or overflow the target
+type.
+---
+diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c
+index 3d6bce7..465096d 100644
+--- a/operations/external/ppm-load.c
++++ b/operations/external/ppm-load.c
+@@ -36,6 +36,7 @@ gegl_chant_file_path (path, _("File"), "", _("Path of file to load."))
+ #include "gegl-chant.h"
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <errno.h>
+
+ typedef enum {
+ PIXMAP_ASCII = 51,
+@@ -44,8 +45,8 @@ typedef enum {
+
+ typedef struct {
+ map_type type;
+- gint width;
+- gint height;
++ glong width;
++ glong height;
+ gsize numsamples; /* width * height * channels */
+ gsize bpc; /* bytes per channel */
+ guchar *data;
+@@ -82,11 +83,33 @@ ppm_load_read_header(FILE *fp,
+ }
+
+ /* Get Width and Height */
+- img->width = strtol (header,&ptr,0);
+- img->height = atoi (ptr);
++ errno = 0;
++ img->width = strtol (header,&ptr,10);
++ if (errno)
++ {
++ g_warning ("Error reading width: %s", strerror(errno));
++ return FALSE;
++ }
++ else if (img->width < 0)
++ {
++ g_warning ("Error: width is negative");
++ return FALSE;
++ }
++
++ img->height = strtol (ptr,&ptr,10);
++ if (errno)
++ {
++ g_warning ("Error reading height: %s", strerror(errno));
++ return FALSE;
++ }
++ else if (img->width < 0)
++ {
++ g_warning ("Error: height is negative");
++ return FALSE;
++ }
+
+ fgets (header,MAX_CHARS_IN_ROW,fp);
+- maxval = strtol (header,&ptr,0);
++ maxval = strtol (header,&ptr,10);
+
+ if ((maxval != 255) && (maxval != 65535))
+ {
+--
+cgit v0.9.0.2
diff --git a/media-libs/gegl/files/gegl-0.2.0-ffmpeg-0.11.diff b/media-libs/gegl/files/gegl-0.2.0-ffmpeg-0.11.diff
new file mode 100644
index 000000000000..8e9a328524c3
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.2.0-ffmpeg-0.11.diff
@@ -0,0 +1,57 @@
+From 97067622352e58f86a24851dacb1f5daa0762897 Mon Sep 17 00:00:00 2001
+From: nick black <nick.black@sprezzatech.com>
+Date: Fri, 14 Dec 2012 04:11:16 +0000
+Subject: port gegl forward to libav 54
+
+---
+diff --git a/operations/external/ff-load.c b/operations/external/ff-load.c
+index 442ec5f..75d26e9 100644
+--- a/operations/external/ff-load.c
++++ b/operations/external/ff-load.c
+@@ -137,7 +137,7 @@ ff_cleanup (GeglChantO *o)
+ if (p->enc)
+ avcodec_close (p->enc);
+ if (p->ic)
+- av_close_input_file (p->ic);
++ avformat_close_input(&p->ic);
+ if (p->lavc_frame)
+ av_free (p->lavc_frame);
+
+@@ -216,9 +216,9 @@ decode_frame (GeglOperation *operation,
+ {
+ do
+ {
+- if (av_read_packet (p->ic, &p->pkt) < 0)
++ if (av_read_frame (p->ic, &p->pkt) < 0)
+ {
+- fprintf (stderr, "av_read_packet failed for %s\n",
++ fprintf (stderr, "av_read_frame failed for %s\n",
+ o->path);
+ return -1;
+ }
+@@ -271,12 +271,12 @@ prepare (GeglOperation *operation)
+ gint err;
+
+ ff_cleanup (o);
+- err = av_open_input_file (&p->ic, o->path, NULL, 0, NULL);
++ err = avformat_open_input(&p->ic, o->path, NULL, 0);
+ if (err < 0)
+ {
+ print_error (o->path, err);
+ }
+- err = av_find_stream_info (p->ic);
++ err = avformat_find_stream_info (p->ic, NULL);
+ if (err < 0)
+ {
+ g_warning ("ff-load: error finding stream info for %s", o->path);
+@@ -312,7 +312,7 @@ prepare (GeglOperation *operation)
+ if (p->codec->capabilities & CODEC_CAP_TRUNCATED)
+ p->enc->flags |= CODEC_FLAG_TRUNCATED;
+
+- if (avcodec_open (p->enc, p->codec) < 0)
++ if (avcodec_open2 (p->enc, p->codec, NULL) < 0)
+ {
+ g_warning ("error opening codec %s", p->enc->codec->name);
+ return;
+--
+cgit v0.9.1
diff --git a/media-libs/gegl/files/gegl-0.2.0-g_log_domain.patch b/media-libs/gegl/files/gegl-0.2.0-g_log_domain.patch
new file mode 100644
index 000000000000..cdb42b2ca5f2
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.2.0-g_log_domain.patch
@@ -0,0 +1,25 @@
+From deaa974528ac1f4099d091a333214b1a50147243 Mon Sep 17 00:00:00 2001
+From: Sebastian Pipping <sebastian@pipping.org>
+Date: Wed, 1 May 2013 00:39:42 +0200
+Subject: [PATCH] Prevent double escaping / error "stray ‘\’ in program"
+
+---
+ gegl/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+), 0 deletion(-)
+
+diff --git a/gegl/Makefile.am b/gegl/Makefile.am
+index 43010ce..fd046d2 100644
+--- a/gegl/Makefile.am
++++ b/gegl/Makefile.am
+@@ -119,7 +119,8 @@ INCLUDES = $(AM_CFLAGS) $(AM_CPPFLAGS)
+
+ Gegl-@GEGL_API_VERSION@.gir: libgegl-@GEGL_API_VERSION@.la Makefile
+ Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_INCLUDES = GObject-2.0 GLib-2.0 Babl-0.1
+ Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_CFLAGS = $(INCLUDES)
++INTROSPECTION_SCANNER_ENV = CFLAGS="${CFLAGS} "-D'G_LOG_DOMAIN="GEGL-"__FILE__' # No extra backslashes here!
+ Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_LIBS = libgegl-@GEGL_API_VERSION@.la
+ Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_FILES = $(introspection_sources)
+ INTROSPECTION_GIRS += Gegl-@GEGL_API_VERSION@.gir
+--
+1.8.1.5
+
diff --git a/media-libs/gegl/files/gegl-0.2.0-introspection-version.patch b/media-libs/gegl/files/gegl-0.2.0-introspection-version.patch
new file mode 100644
index 000000000000..1ac28dc62964
--- /dev/null
+++ b/media-libs/gegl/files/gegl-0.2.0-introspection-version.patch
@@ -0,0 +1,31 @@
+From 35469116fbf0b398d748f8116e4dcc8bdaee12c7 Mon Sep 17 00:00:00 2001
+From: Jon Nordby <jononor@gmail.com>
+Date: Thu, 12 Apr 2012 12:10:05 +0000
+Subject: gobject-introspection: Fix build after 0.2.x version bump
+
+Remove hardcoding of version numbers so that this does
+not happen again.
+---
+(limited to 'gegl/Makefile.am')
+
+diff --git a/gegl/Makefile.am b/gegl/Makefile.am
+index aef4c33..43010ce 100644
+--- a/gegl/Makefile.am
++++ b/gegl/Makefile.am
+@@ -118,10 +118,10 @@ introspection_sources = \
+ INCLUDES = $(AM_CFLAGS) $(AM_CPPFLAGS)
+
+ Gegl-@GEGL_API_VERSION@.gir: libgegl-@GEGL_API_VERSION@.la Makefile
+-Gegl_0_1_gir_INCLUDES = GObject-2.0 GLib-2.0 Babl-0.1
+-Gegl_0_1_gir_CFLAGS = $(INCLUDES)
+-Gegl_0_1_gir_LIBS = libgegl-@GEGL_API_VERSION@.la
+-Gegl_0_1_gir_FILES = $(introspection_sources)
++Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_INCLUDES = GObject-2.0 GLib-2.0 Babl-0.1
++Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_CFLAGS = $(INCLUDES)
++Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_LIBS = libgegl-@GEGL_API_VERSION@.la
++Gegl_@GEGL_MAJOR_VERSION@_@GEGL_MINOR_VERSION@_gir_FILES = $(introspection_sources)
+ INTROSPECTION_GIRS += Gegl-@GEGL_API_VERSION@.gir
+
+ girdir = $(datadir)/gir-1.0
+--
+cgit v0.9.1
diff --git a/media-libs/gegl/files/gegl-doubledestdir.diff b/media-libs/gegl/files/gegl-doubledestdir.diff
new file mode 100644
index 000000000000..8a9bf33461c9
--- /dev/null
+++ b/media-libs/gegl/files/gegl-doubledestdir.diff
@@ -0,0 +1,12 @@
+diff -Naur gegl-0.1.6/docs/Makefile.am gegl-0.1.6-1//docs/Makefile.am
+--- gegl-0.1.6/docs/Makefile.am 2010-10-08 18:51:41.000000000 +0200
++++ gegl-0.1.6-1//docs/Makefile.am 2011-02-16 20:05:30.458043758 +0100
+@@ -6,7 +6,7 @@
+ # is very small, and should probably be documented in a tutorial.
+ #
+
+-gtkdochtmldir = $(DESTDIR)$(datadir)/gtk-doc/html/gegl
++gtkdochtmldir = $(datadir)/gtk-doc/html/gegl
+
+ HTML_FILES = \
+ operations.html \
diff --git a/media-libs/gegl/files/replace-imgconvert-by-swsscale.patch b/media-libs/gegl/files/replace-imgconvert-by-swsscale.patch
new file mode 100644
index 000000000000..2cf5601e1665
--- /dev/null
+++ b/media-libs/gegl/files/replace-imgconvert-by-swsscale.patch
@@ -0,0 +1,58 @@
+Index: gegl-0.0.22/operations/workshop/external/ff-save.c
+===================================================================
+--- gegl-0.0.22.orig/operations/workshop/external/ff-save.c
++++ gegl-0.0.22/operations/workshop/external/ff-save.c
+@@ -19,6 +19,8 @@
+ #include "config.h"
+ #include <glib/gi18n-lib.h>
+
++#include <libswscale/swscale.h>
++
+
+ #ifdef GEGL_CHANT_PROPERTIES
+
+@@ -640,6 +642,7 @@ write_video_frame (GeglChantO *op,
+ int out_size, ret;
+ AVCodecContext *c;
+ AVFrame *picture_ptr;
++ struct SwsContext *img_convert_ctx;
+
+ c = st->codec;
+
+@@ -649,10 +652,22 @@ write_video_frame (GeglChantO *op,
+ to the codec pixel format if needed */
+ fill_yuv_image (op, p->tmp_picture, p->frame_count, c->width,
+ c->height);
+- /* FIXME: img_convert is deprecated. Update code to use sws_scale(). */
++ /* FIXME: img_convert is deprecated. Update code to use sws_scale().
+ img_convert ((AVPicture *) p->picture, c->pix_fmt,
+ (AVPicture *) p->tmp_picture, PIX_FMT_RGB24,
+ c->width, c->height);
++ */
++ img_convert_ctx = sws_getContext(c->width, c->height, c->pix_fmt,
++ c->width, c->height, PIX_FMT_RGB24,
++ SWS_BICUBIC, NULL, NULL, NULL);
++
++ if (img_convert_ctx == NULL)
++ fprintf(stderr, "ff_save: Cannot initialize conversion context.");
++ else
++ {
++ sws_scale(img_convert_ctx, p->tmp_picture->data, p->tmp_picture->linesize,
++ 0, c->height, p->picture->data, p->picture->linesize);
++ }
+ }
+ else
+ {
+Index: gegl-0.0.22/operations/workshop/external/Makefile.am
+===================================================================
+--- gegl-0.0.22.orig/operations/workshop/external/Makefile.am
++++ gegl-0.0.22/operations/workshop/external/Makefile.am
+@@ -21,7 +21,7 @@ endif
+ if HAVE_AVFORMAT
+ ops += ff_save.la
+ ff_save_la_SOURCES = ff-save.c
+-ff_save_la_LIBADD = $(op_libs) $(AVFORMAT_LIBS)
++ff_save_la_LIBADD = $(op_libs) $(AVFORMAT_LIBS) -lswscale
+ ff_save_la_CFLAGS = $(AVFORMAT_CFLAGS)
+ endif
+
diff --git a/media-libs/gegl/gegl-0.2.0-r2.ebuild b/media-libs/gegl/gegl-0.2.0-r2.ebuild
new file mode 100644
index 000000000000..243b7e25bd69
--- /dev/null
+++ b/media-libs/gegl/gegl-0.2.0-r2.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WANT_AUTOMAKE=1.11 # see bug 471990, comment 3
+# vala and introspection support is broken, bug #468208
+#VALA_MIN_API_VERSION=0.14
+#VALA_USE_DEPEND=vapigen
+
+inherit versionator gnome2-utils eutils autotools #vala
+
+DESCRIPTION="A graph based image processing framework"
+HOMEPAGE="http://www.gegl.org/"
+SRC_URI="ftp://ftp.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.bz2"
+
+LICENSE="|| ( GPL-3 LGPL-3 )"
+SLOT="0"
+KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+
+IUSE="cairo debug ffmpeg jpeg jpeg2k lensfun libav cpu_flags_x86_mmx openexr png raw sdl cpu_flags_x86_sse svg umfpack" # +introspection vala
+
+RDEPEND="
+ >=media-libs/babl-0.1.10
+ >=dev-libs/glib-2.28:2
+ >=x11-libs/gdk-pixbuf-2.18:2
+ x11-libs/pango
+ sys-libs/zlib
+ cairo? ( x11-libs/cairo )
+ ffmpeg? (
+ libav? ( media-video/libav:0= )
+ !libav? ( media-video/ffmpeg:0= )
+ )
+ jpeg? ( virtual/jpeg:0 )
+ jpeg2k? ( >=media-libs/jasper-1.900.1 )
+ openexr? ( media-libs/openexr )
+ png? ( media-libs/libpng:0 )
+ raw? ( =media-libs/libopenraw-0.0.9 )
+ sdl? ( media-libs/libsdl )
+ svg? ( >=gnome-base/librsvg-2.14:2 )
+ umfpack? ( sci-libs/umfpack )
+ lensfun? ( >=media-libs/lensfun-0.2.5 )
+"
+# >=media-libs/babl-0.1.10[introspection?]
+# introspection? ( >=dev-libs/gobject-introspection-0.10
+# >=dev-python/pygobject-2.26:2 )
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.40.1
+ dev-lang/perl
+ virtual/pkgconfig
+ >=sys-devel/libtool-2.2
+"
+# vala? ( $(vala_depend) )"
+
+DOCS=( ChangeLog INSTALL README NEWS )
+
+src_prepare() {
+ # https://bugs.gentoo.org/show_bug.cgi?id=442016
+ epatch "${FILESDIR}/${P}-cve-2012-4433-1e92e523.patch"
+ epatch "${FILESDIR}/${P}-cve-2012-4433-4757cdf7.patch"
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=416587
+ epatch "${FILESDIR}/${P}-introspection-version.patch"
+
+ epatch "${FILESDIR}/${P}-ffmpeg-0.11.diff"
+ # fix OSX loadable module filename extension
+ sed -i -e 's/\.dylib/.bundle/' configure.ac || die
+ # don't require Apple's OpenCL on versions of OSX that don't have it
+ if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -le 9 ]] ; then
+ sed -i -e 's/#ifdef __APPLE__/#if 0/' gegl/opencl/* || die
+ fi
+
+ epatch "${FILESDIR}"/${P}-g_log_domain.patch
+ eautoreconf
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=468248
+ local deps_file="${PN}/${PN}-$(get_version_component_range 1-2).deps"
+ [[ -f "${deps_file}" ]] || touch "${deps_file}"
+
+# use vala && vala_src_prepare
+}
+
+src_configure() {
+ # never enable altering of CFLAGS via profile option
+ # libspiro: not in portage main tree
+ # disable documentation as the generating is bit automagic
+ # if anyone wants to work on it just create bug with patch
+
+ # Also please note that:
+ #
+ # - Some auto-detections are not patched away since the docs are
+ # not built (--disable-docs, lack of --enable-gtk-doc) and these
+ # tools affect re-generation of docs, only
+ # (e.g. ruby, asciidoc, dot (of graphviz), enscript)
+ #
+ # - Parameter --with-exiv2 compiles a noinst-app only, no use
+ #
+ # - Parameter --disable-workshop disables any use of Lua, effectivly
+ #
+ # - v4l support does not work with our media-libs/libv4l-0.8.9,
+ # upstream bug at https://bugzilla.gnome.org/show_bug.cgi?id=654675
+ #
+ # - There are two checks for dot, one controllable by --with(out)-graphviz
+ # which toggles HAVE_GRAPHVIZ that is not used anywhere. Yes.
+ #
+ # So that's why USE="exif graphviz lua v4l" got resolved. More at:
+ # https://bugs.gentoo.org/show_bug.cgi?id=451136
+ #
+ econf \
+ --disable-silent-rules \
+ --disable-profile \
+ --without-libspiro \
+ --disable-docs --disable-workshop \
+ --with-pango --with-gdk-pixbuf \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable debug) \
+ $(use_with cairo) \
+ $(use_with cairo pangocairo) \
+ --without-exiv2 \
+ $(use_with ffmpeg libavformat) \
+ --without-graphviz \
+ $(use_with jpeg libjpeg) \
+ $(use_with jpeg2k jasper) \
+ --without-lua \
+ $(use_with openexr) \
+ $(use_with png libpng) \
+ $(use_with raw libopenraw) \
+ $(use_with sdl) \
+ $(use_with svg librsvg) \
+ $(use_with umfpack) \
+ --without-libv4l \
+ $(use_with lensfun) \
+ --disable-introspection \
+ --without-vala
+# $(use_enable introspection) \
+# $(use_with vala)
+}
+
+src_test() {
+ gnome2_environment_reset # sandbox issues
+ default
+}
+
+src_compile() {
+ gnome2_environment_reset # sandbox issues (bug #396687)
+ default
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete
+}
diff --git a/media-libs/gegl/gegl-0.3.0.ebuild b/media-libs/gegl/gegl-0.3.0.ebuild
new file mode 100644
index 000000000000..bbb271ef0aa3
--- /dev/null
+++ b/media-libs/gegl/gegl-0.3.0.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+# vala and introspection support is broken, bug #468208
+VALA_MIN_API_VERSION=0.20
+VALA_USE_DEPEND=vapigen
+
+inherit versionator gnome2-utils eutils autotools python-any-r1 vala
+
+if [[ ${PV} == *9999* ]]; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://git.gnome.org/gegl"
+ SRC_URI=""
+else
+ SRC_URI="http://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.bz2"
+ KEYWORDS="alpha ~amd64 arm hppa ~ia64 ~mips ppc ppc64 sparc ~x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A graph based image processing framework"
+HOMEPAGE="http://www.gegl.org/"
+
+LICENSE="|| ( GPL-3 LGPL-3 )"
+SLOT="0.3"
+
+IUSE="cairo cpu_flags_x86_mmx cpu_flags_x86_sse debug ffmpeg +introspection jpeg jpeg2k lcms lensfun libav openexr png raw sdl svg test umfpack vala v4l webp"
+REQUIRED_IUSE="vala? ( introspection )"
+
+RDEPEND="
+ >=dev-libs/glib-2.36:2
+ dev-libs/json-glib
+ >=media-libs/babl-0.1.12
+ sys-libs/zlib
+ >=x11-libs/gdk-pixbuf-2.18:2
+ x11-libs/pango
+
+ cairo? ( x11-libs/cairo )
+ ffmpeg? (
+ libav? ( media-video/libav:0= )
+ !libav? ( media-video/ffmpeg:0= )
+ )
+ introspection? ( >=dev-libs/gobject-introspection-1.32 )
+ jpeg? ( virtual/jpeg:0= )
+ jpeg2k? ( >=media-libs/jasper-1.900.1 )
+ lcms? ( >=media-libs/lcms-2.2:2 )
+ lensfun? ( >=media-libs/lensfun-0.2.5 )
+ openexr? ( media-libs/openexr )
+ png? ( media-libs/libpng:0= )
+ raw? ( =media-libs/libopenraw-0.0.9 )
+ sdl? ( media-libs/libsdl )
+ svg? ( >=gnome-base/librsvg-2.14:2 )
+ umfpack? ( sci-libs/umfpack )
+ v4l? ( >=media-libs/libv4l-1.0.1 )
+ webp? ( media-libs/libwebp )
+"
+DEPEND="${RDEPEND}
+ >=dev-util/gtk-doc-am-1
+ >=dev-util/intltool-0.40.1
+ dev-lang/perl
+ virtual/pkgconfig
+ >=sys-devel/libtool-2.2
+ test? ( introspection? (
+ $(python_gen_any_dep '>=dev-python/pygobject-3.2[${PYTHON_USEDEP}]') ) )
+ vala? ( $(vala_depend) )
+"
+
+pkg_setup() {
+ use test && use introspection && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # FIXME: the following should be proper patch sent to upstream
+ # fix OSX loadable module filename extension
+ sed -i -e 's/\.dylib/.bundle/' configure.ac || die
+ # don't require Apple's OpenCL on versions of OSX that don't have it
+ if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -le 9 ]] ; then
+ sed -i -e 's/#ifdef __APPLE__/#if 0/' gegl/opencl/* || die
+ fi
+
+ #epatch "${FILESDIR}"/${P}-g_log_domain.patch
+
+ # commit 7c78497b : tests that use gegl.png are broken on non-amd64
+ sed -e '/clones.xml/d' \
+ -e '/composite-transform.xml/d' \
+ -i tests/compositions/Makefile.am || die
+
+ # commit 11a283ab : test-image-compare needs >=babl-0.1.13 (not released yet)
+ # for the new CIE conversions
+ sed -e '/test-image-compare/d' \
+ -i tests/simple/Makefile.am || die
+
+ # Skip broken test with >=dev-python/pygobject-3.14
+ sed -e '/test_buffer/ i\ @unittest.skip("broken")\' \
+ -i tests/python/test-gegl-format.py || die
+
+ epatch_user
+ eautoreconf
+
+ use vala && vala_src_prepare
+}
+
+src_configure() {
+ # never enable altering of CFLAGS via profile option
+ # libspiro: not in portage main tree
+ # disable documentation as the generating is bit automagic
+ # if anyone wants to work on it just create bug with patch
+
+ # Also please note that:
+ #
+ # - Some auto-detections are not patched away since the docs are
+ # not built (--disable-docs, lack of --enable-gtk-doc) and these
+ # tools affect re-generation of docs, only
+ # (e.g. ruby, asciidoc, dot (of graphviz), enscript)
+ #
+ # - Parameter --with-exiv2 compiles a noinst-app only, no use
+ #
+ # - Parameter --disable-workshop disables any use of Lua, effectivly
+ #
+ # - v4l support does not work with our media-libs/libv4l-0.8.9,
+ # upstream bug at https://bugzilla.gnome.org/show_bug.cgi?id=654675
+ #
+ # - There are two checks for dot, one controllable by --with(out)-graphviz
+ # which toggles HAVE_GRAPHVIZ that is not used anywhere. Yes.
+ #
+ # So that's why USE="exif graphviz lua v4l" got resolved. More at:
+ # https://bugs.gentoo.org/show_bug.cgi?id=451136
+ #
+ econf \
+ --disable-docs \
+ --disable-profile \
+ --disable-silent-rules \
+ --disable-workshop \
+ --program-suffix=-${SLOT} \
+ --with-gdk-pixbuf \
+ --with-pango \
+ --without-libspiro \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable debug) \
+ $(use_with cairo) \
+ $(use_with cairo pangocairo) \
+ --without-exiv2 \
+ $(use_with ffmpeg libavformat) \
+ --without-graphviz \
+ $(use_with jpeg libjpeg) \
+ $(use_with jpeg2k jasper) \
+ $(use_with lcms) \
+ $(use_with lensfun) \
+ --without-lua \
+ $(use_with openexr) \
+ $(use_with png libpng) \
+ $(use_with raw libopenraw) \
+ $(use_with sdl) \
+ $(use_with svg librsvg) \
+ $(use_with umfpack) \
+ $(use_with v4l libv4l) \
+ $(use_with v4l libv4l2) \
+ $(use_enable introspection) \
+ $(use_with vala) \
+ $(use_with webp)
+}
+
+src_test() {
+ gnome2_environment_reset # sandbox issues
+ default
+}
+
+src_compile() {
+ gnome2_environment_reset # sandbox issues (bug #396687)
+ default
+
+ [[ ${PV} == *9999* ]] && emake ./ChangeLog # "./" prevents "Circular ChangeLog <- ChangeLog dependency dropped."
+}
+
+src_install() {
+ default
+ prune_libtool_files --all
+}
diff --git a/media-libs/gegl/gegl-9999.ebuild b/media-libs/gegl/gegl-9999.ebuild
new file mode 100644
index 000000000000..59a46cd16d71
--- /dev/null
+++ b/media-libs/gegl/gegl-9999.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+# vala and introspection support is broken, bug #468208
+VALA_MIN_API_VERSION=0.20
+VALA_USE_DEPEND=vapigen
+
+inherit versionator gnome2-utils eutils autotools python-any-r1 vala
+
+if [[ ${PV} == *9999* ]]; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://git.gnome.org/gegl"
+ SRC_URI=""
+else
+ SRC_URI="http://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A graph based image processing framework"
+HOMEPAGE="http://www.gegl.org/"
+
+LICENSE="|| ( GPL-3 LGPL-3 )"
+SLOT="0.3"
+
+IUSE="cairo cpu_flags_x86_mmx cpu_flags_x86_sse debug ffmpeg +introspection jpeg jpeg2k lcms lensfun libav openexr png raw sdl svg test umfpack vala v4l webp"
+REQUIRED_IUSE="vala? ( introspection )"
+
+RDEPEND="
+ >=dev-libs/glib-2.36:2
+ dev-libs/json-glib
+ >=media-libs/babl-0.1.12
+ sys-libs/zlib
+ >=x11-libs/gdk-pixbuf-2.18:2
+ x11-libs/pango
+
+ cairo? ( x11-libs/cairo )
+ ffmpeg? (
+ libav? ( media-video/libav:0= )
+ !libav? ( media-video/ffmpeg:0= )
+ )
+ introspection? ( >=dev-libs/gobject-introspection-1.32 )
+ jpeg? ( virtual/jpeg:0= )
+ jpeg2k? ( >=media-libs/jasper-1.900.1 )
+ lcms? ( >=media-libs/lcms-2.2:2 )
+ lensfun? ( >=media-libs/lensfun-0.2.5 )
+ openexr? ( media-libs/openexr )
+ png? ( media-libs/libpng:0= )
+ raw? ( =media-libs/libopenraw-0.0.9 )
+ sdl? ( media-libs/libsdl )
+ svg? ( >=gnome-base/librsvg-2.14:2 )
+ umfpack? ( sci-libs/umfpack )
+ v4l? ( >=media-libs/libv4l-1.0.1 )
+ webp? ( media-libs/libwebp )
+"
+DEPEND="${RDEPEND}
+ >=dev-util/gtk-doc-am-1
+ >=dev-util/intltool-0.40.1
+ dev-lang/perl
+ virtual/pkgconfig
+ >=sys-devel/libtool-2.2
+ test? ( introspection? (
+ $(python_gen_any_dep '>=dev-python/pygobject-3.2[${PYTHON_USEDEP}]') ) )
+ vala? ( $(vala_depend) )
+"
+
+pkg_setup() {
+ use test && use introspection && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # FIXME: the following should be proper patch sent to upstream
+ # fix OSX loadable module filename extension
+ sed -i -e 's/\.dylib/.bundle/' configure.ac || die
+ # don't require Apple's OpenCL on versions of OSX that don't have it
+ if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -le 9 ]] ; then
+ sed -i -e 's/#ifdef __APPLE__/#if 0/' gegl/opencl/* || die
+ fi
+
+ #epatch "${FILESDIR}"/${P}-g_log_domain.patch
+
+ # commit 7c78497b : tests that use gegl.png are broken on non-amd64
+ sed -e '/clones.xml/d' \
+ -e '/composite-transform.xml/d' \
+ -i tests/compositions/Makefile.am || die
+
+ # commit 11a283ab : test-image-compare needs >=babl-0.1.13 (not released yet)
+ # for the new CIE conversions
+ sed -e '/test-image-compare/d' \
+ -i tests/simple/Makefile.am || die
+
+ # Skip broken test with >=dev-python/pygobject-3.14
+ sed -e '/test_buffer/ i\ @unittest.skip("broken")\' \
+ -i tests/python/test-gegl-format.py || die
+
+ epatch_user
+ eautoreconf
+
+ use vala && vala_src_prepare
+}
+
+src_configure() {
+ # never enable altering of CFLAGS via profile option
+ # libspiro: not in portage main tree
+ # disable documentation as the generating is bit automagic
+ # if anyone wants to work on it just create bug with patch
+
+ # Also please note that:
+ #
+ # - Some auto-detections are not patched away since the docs are
+ # not built (--disable-docs, lack of --enable-gtk-doc) and these
+ # tools affect re-generation of docs, only
+ # (e.g. ruby, asciidoc, dot (of graphviz), enscript)
+ #
+ # - Parameter --with-exiv2 compiles a noinst-app only, no use
+ #
+ # - Parameter --disable-workshop disables any use of Lua, effectivly
+ #
+ # - v4l support does not work with our media-libs/libv4l-0.8.9,
+ # upstream bug at https://bugzilla.gnome.org/show_bug.cgi?id=654675
+ #
+ # - There are two checks for dot, one controllable by --with(out)-graphviz
+ # which toggles HAVE_GRAPHVIZ that is not used anywhere. Yes.
+ #
+ # So that's why USE="exif graphviz lua v4l" got resolved. More at:
+ # https://bugs.gentoo.org/show_bug.cgi?id=451136
+ #
+ econf \
+ --disable-docs \
+ --disable-profile \
+ --disable-silent-rules \
+ --disable-workshop \
+ --program-suffix=-${SLOT} \
+ --with-gdk-pixbuf \
+ --with-pango \
+ --without-libspiro \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable debug) \
+ $(use_with cairo) \
+ $(use_with cairo pangocairo) \
+ --without-exiv2 \
+ $(use_with ffmpeg libavformat) \
+ --without-graphviz \
+ $(use_with jpeg libjpeg) \
+ $(use_with jpeg2k jasper) \
+ $(use_with lcms) \
+ $(use_with lensfun) \
+ --without-lua \
+ $(use_with openexr) \
+ $(use_with png libpng) \
+ $(use_with raw libopenraw) \
+ $(use_with sdl) \
+ $(use_with svg librsvg) \
+ $(use_with umfpack) \
+ $(use_with v4l libv4l) \
+ $(use_with v4l libv4l2) \
+ $(use_enable introspection) \
+ $(use_with vala) \
+ $(use_with webp)
+}
+
+src_test() {
+ gnome2_environment_reset # sandbox issues
+ default
+}
+
+src_compile() {
+ gnome2_environment_reset # sandbox issues (bug #396687)
+ default
+
+ [[ ${PV} == *9999* ]] && emake ./ChangeLog # "./" prevents "Circular ChangeLog <- ChangeLog dependency dropped."
+}
+
+src_install() {
+ default
+ prune_libtool_files --all
+}
diff --git a/media-libs/gegl/metadata.xml b/media-libs/gegl/metadata.xml
new file mode 100644
index 000000000000..93d122d4a6f3
--- /dev/null
+++ b/media-libs/gegl/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>sping@gentoo.org</email>
+</maintainer>
+<use>
+ <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg> for introspection.</flag>
+ <flag name="lensfun">Enable support for <pkg>media-libs/lensfun</pkg>.</flag>
+ <flag name="umfpack">Enable sparse solving via <pkg>sci-libs/umfpack</pkg>.</flag>
+ <flag name="vala">Enable bindings for <pkg>dev-lang/vala</pkg></flag>
+ <flag name="webp">Enable support for <pkg>media-libs/libwebp</pkg></flag>
+</use>
+</pkgmetadata>