[gimp] fix incomplete backport in poppler-0.17 patch

Nils Philippsen nphilipp at fedoraproject.org
Tue May 3 14:32:49 UTC 2011


commit b3f50dd6e59f3346f8a68595bf2a9b2d69bcc46c
Author: Nils Philippsen <nils at redhat.com>
Date:   Tue May 3 16:30:08 2011 +0200

    fix incomplete backport in poppler-0.17 patch

 .gitignore                     |    1 +
 gimp-2.6.11-poppler-0.17.patch |  585 ++++++++++++++++++++++++++++++++++++++--
 gimp.spec                      |    4 +-
 sources                        |    2 +-
 4 files changed, 573 insertions(+), 19 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 424986b..80484f0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@ gimp-2.6.10.tar.bz2
 gimp-2.6.10-1-autoreconf.patch.bz2
 /gimp-2.6.11.tar.bz2
 /gimp-2.6.11-1-autoreconf.patch.bz2
+/gimp-2.6.11-10-autoreconf.patch.bz2
diff --git a/gimp-2.6.11-poppler-0.17.patch b/gimp-2.6.11-poppler-0.17.patch
index 1513a60..56a8d19 100644
--- a/gimp-2.6.11-poppler-0.17.patch
+++ b/gimp-2.6.11-poppler-0.17.patch
@@ -1,18 +1,18 @@
-From 6d4f36ddc0b7368bceb586781da5128aca17acd9 Mon Sep 17 00:00:00 2001
+From a915dce96f6d7d75ae09ec5355a404f00fc0460e Mon Sep 17 00:00:00 2001
 From: Nils Philippsen <nils at redhat.com>
-Date: Thu, 21 Apr 2011 13:58:05 +0200
+Date: Tue, 3 May 2011 15:58:39 +0200
 Subject: [PATCH] patch: poppler-0.17
 
 Squashed commit of the following:
 
-commit 609bd7e031e109764d4282686882c0c72ff90bc1
+commit ad0adb0862960739f5dd2d699d2c75aee5e204d9
 Author: Mukund Sivaraman <muks at banu.com>
 Date:   Thu Apr 21 13:57:13 2011 +0530
 
     file-pdf-load: Update attribution, removing bogus copyright
     (cherry picked from commit e999122e0b20b6ccd6bde3ce039bb64068fc0019)
 
-commit d1620df71aeb50ca66cfd6388bd36548962cbcd9
+commit b320fff7564fe254454df78c4af00e7da70fc790
 Author: Nils Philippsen <nils at redhat.com>
 Date:   Thu Apr 21 13:52:18 2011 +0200
 
@@ -21,13 +21,9 @@ Date:   Thu Apr 21 13:52:18 2011 +0200
     * fixes issues with poppler 0.17 completely
     * uses new libgimp API to pass surfaces instead of pixbufs
     * uses GTK+ 3 API to convert surfaces to pixbufs where available
-    (cherry picked from commit 7bdadd80ba479d6ff904e276d805e16f6b940ee2)
+    (backported from commit 7bdadd80ba479d6ff904e276d805e16f6b940ee2)
 
-    Conflicts:
-
-    	plug-ins/common/file-pdf.c
-
-commit 595fcccbeef26f312da049513afbbc5c6ceea1fd
+commit 83428bcdc84a08a8b59e9a88cad2288f6a1edf45
 Author: Nils Philippsen <nils at redhat.com>
 Date:   Thu Apr 21 13:38:08 2011 +0200
 
@@ -38,12 +34,517 @@ Date:   Thu Apr 21 13:38:08 2011 +0200
     Conflicts:
 
     	plug-ins/common/file-pdf.c
+
+commit e51f6274e69c88f2ac269da7ae9cf6ff6ac6e1b3
+Author: Nils Philippsen <nils at redhat.com>
+Date:   Tue May 3 15:52:00 2011 +0200
+
+    libgimp: add gimp_layer_new_from_surface()
+
+    and to enable that, make libgimp depend on Cairo.
+
+    backported from:
+
+        commit 374dd50c43cca559a4888224f8fd6322fb26115d
+        Author: Michael Natterer <mitch at gimp.org>
+        Date:   Wed Apr 20 23:58:00 2011 +0200
+
+            libgimp: add gimp_layer_new_from_surface()
+
+            and to enable that, make libgimp depend on Cairo.
 ---
- plug-ins/common/file-pdf.c |  370 +++++++++++++++++++++++++++++++++++++-------
- 1 files changed, 310 insertions(+), 60 deletions(-)
+ configure.in                    |    2 +
+ gimp.pc.in                      |    2 +-
+ libgimp/Makefile.am             |    2 +-
+ libgimp/gimp.h                  |    1 +
+ libgimp/gimplayer.c             |  211 ++++++++++++++++++++++
+ libgimp/gimplayer.h             |    8 +
+ plug-ins/common/Makefile.am     |   40 ++--
+ plug-ins/common/file-pdf.c      |  368 ++++++++++++++++++++++++++++++++-------
+ plug-ins/common/mkgen.pl        |    2 +-
+ plug-ins/file-faxg3/Makefile.am |    2 +
+ plug-ins/help/Makefile.am       |    2 +
+ 11 files changed, 558 insertions(+), 82 deletions(-)
 
+diff --git a/configure.in b/configure.in
+index 41400f9..4338a13 100644
+--- a/configure.in
++++ b/configure.in
+@@ -113,8 +113,10 @@ AC_SUBST(GIMP_FULL_NAME)
+ # These are used in the .pc files
+ GLIB_REQUIRED_VERSION=glib_required_version
+ GTK_REQUIRED_VERSION=gtk_required_version
++CAIRO_REQUIRED_VERSION=cairo_required_version
+ AC_SUBST(GLIB_REQUIRED_VERSION)
+ AC_SUBST(GTK_REQUIRED_VERSION)
++AC_SUBST(CAIRO_REQUIRED_VERSION)
+ 
+ # The symbol GIMP_UNSTABLE is defined above for substitution in
+ # Makefiles and conditionally defined here as a preprocessor symbol
+diff --git a/gimp.pc.in b/gimp.pc.in
+index 9d0058a..e61b438 100644
+--- a/gimp.pc.in
++++ b/gimp.pc.in
+@@ -12,6 +12,6 @@ gimplocaledir=@gimplocaledir@
+ Name: GIMP
+ Description: GIMP Library
+ Version: @GIMP_REAL_VERSION@
+-Requires: glib-2.0 >= @GLIB_REQUIRED_VERSION@
++Requires: glib-2.0 >= @GLIB_REQUIRED_VERSION@ cairo >= @CAIRO_REQUIRED_VERSION@
+ Libs: -L${libdir} -lgimp- at GIMP_API_VERSION@ -lgimpmath- at GIMP_API_VERSION@  -lgimpconfig- at GIMP_API_VERSION@ -lgimpcolor- at GIMP_API_VERSION@ -lgimpbase- at GIMP_API_VERSION@ @RT_LIBS@
+ Cflags: -I${includedir}/gimp- at GIMP_API_VERSION@
+diff --git a/libgimp/Makefile.am b/libgimp/Makefile.am
+index f61568d..6912b64 100644
+--- a/libgimp/Makefile.am
++++ b/libgimp/Makefile.am
+@@ -363,7 +363,7 @@ libgimpui_2_0_la_LDFLAGS = \
+ 	$(libgimpui_export_symbols)
+ 
+ libgimpui_2_0_la_LIBADD = $(libgimp) $(libgimpwidgets) $(libgimpcolor) \
+-	 $(libgimpbase) $(libgimpmodule) $(GTK_LIBS) $(RT_LIBS)
++	 $(libgimpbase) $(libgimpmodule) $(CAIRO_LIBS) $(GTK_LIBS) $(RT_LIBS)
+ 
+ libgimpui_2_0_la_DEPENDENCIES = $(gimpui_def) $(libgimp) $(libgimpwidgets) $(libgimpbase)
+ 
+diff --git a/libgimp/gimp.h b/libgimp/gimp.h
+index 156530f..096dc2d 100644
+--- a/libgimp/gimp.h
++++ b/libgimp/gimp.h
+@@ -22,6 +22,7 @@
+ #ifndef __GIMP_H__
+ #define __GIMP_H__
+ 
++#include <cairo.h>
+ #include <glib-object.h>
+ 
+ #include <libgimpbase/gimpbase.h>
+diff --git a/libgimp/gimplayer.c b/libgimp/gimplayer.c
+index 719542a..5bee7c6 100644
+--- a/libgimp/gimplayer.c
++++ b/libgimp/gimplayer.c
+@@ -84,6 +84,217 @@ gimp_layer_copy (gint32  layer_ID)
+ }
+ 
+ /**
++ * GIMP_CAIRO_RGB24_GET_PIXEL:
++ * @s: pointer to the source buffer
++ * @r: red component
++ * @g: green component
++ * @b: blue component
++ *
++ * Gets a single pixel from a Cairo image surface in %CAIRO_FORMAT_RGB24.
++ *
++ * Since: GIMP 2.8
++ **/
++#if G_BYTE_ORDER == G_LITTLE_ENDIAN
++#define GIMP_CAIRO_RGB24_GET_PIXEL(s, r, g, b) \
++  G_STMT_START { (b) = s[0]; (g) = s[1]; (r) = s[2]; } G_STMT_END
++#else
++#define GIMP_CAIRO_RGB24_GET_PIXEL(s, r, g, b) \
++  G_STMT_START { (r) = s[1]; (g) = s[2]; (b) = s[3]; } G_STMT_END
++#endif
++
++/**
++ * GIMP_CAIRO_ARGB32_GET_PIXEL:
++ * @s: pointer to the source buffer
++ * @r: red component, not pre-multiplied
++ * @g: green component, not pre-multiplied
++ * @b: blue component, not pre-multiplied
++ * @a: alpha component
++ *
++ * Gets a single pixel from a Cairo image surface in %CAIRO_FORMAT_ARGB32.
++ *
++ * Since: GIMP 2.8
++ **/
++#if G_BYTE_ORDER == G_LITTLE_ENDIAN
++#define GIMP_CAIRO_ARGB32_GET_PIXEL(s, r, g, b, a) \
++  G_STMT_START {                                   \
++    const guint tb = (s)[0];                       \
++    const guint tg = (s)[1];                       \
++    const guint tr = (s)[2];                       \
++    const guint ta = (s)[3];                       \
++    (r) = (tr << 8) / (ta + 1);                    \
++    (g) = (tg << 8) / (ta + 1);                    \
++    (b) = (tb << 8) / (ta + 1);                    \
++    (a) = ta;                                      \
++  } G_STMT_END
++#else
++#define GIMP_CAIRO_ARGB32_GET_PIXEL(s, r, g, b, a) \
++  G_STMT_START {                                   \
++    const guint ta = (s)[0];                       \
++    const guint tr = (s)[1];                       \
++    const guint tg = (s)[2];                       \
++    const guint tb = (s)[3];                       \
++    (r) = (tr << 8) / (ta + 1);                    \
++    (g) = (tg << 8) / (ta + 1);                    \
++    (b) = (tb << 8) / (ta + 1);                    \
++    (a) = ta;                                      \
++  } G_STMT_END
++#endif
++
++/**
++ * gimp_layer_new_from_surface:
++ * @image_ID:        The RGB image to which to add the layer.
++ * @name:            The layer name.
++ * @cairo_surface_t: A Cairo image surface.
++ * @opacity:         The layer opacity.
++ * @mode:            The layer combination mode.
++ * @progress_start:  start of progress
++ * @progress_end:    end of progress
++ *
++ * Create a new layer from a #cairo_surface_t.
++ *
++ * This procedure creates a new layer from the given
++ * #cairo_surface_t. The image has to be an RGB image and just like
++ * with gimp_layer_new() you will still need to add the layer to it.
++ *
++ * If you pass @progress_end > @progress_start to this function,
++ * gimp_progress_update() will be called for. You have to call
++ * gimp_progress_init() beforehand then.
++ *
++ * Returns: The newly created layer.
++ *
++ * Since: GIMP 2.8
++ */
++gint32
++gimp_layer_new_from_surface (gint32                image_ID,
++                             const gchar          *name,
++                             cairo_surface_t      *surface,
++                             gdouble               opacity,
++                             GimpLayerModeEffects  mode,
++                             gdouble               progress_start,
++                             gdouble               progress_end)
++{
++  GimpDrawable    *drawable;
++  GimpPixelRgn    rgn;
++  const guchar    *pixels;
++  gpointer         pr;
++  gint32           layer;
++  cairo_format_t   format;
++  gint             width;
++  gint             height;
++  gint             rowstride;
++  gdouble          range = progress_end - progress_start;
++  guint            count = 0;
++  guint            done  = 0;
++
++  g_return_val_if_fail (surface != NULL, -1);
++  g_return_val_if_fail (cairo_surface_get_type (surface) ==
++                        CAIRO_SURFACE_TYPE_IMAGE, -1);
++
++  if (gimp_image_base_type (image_ID) != GIMP_RGB)
++    {
++      g_warning ("gimp_layer_new_from_surface() needs an RGB image");
++      return -1;
++    }
++
++  width  = cairo_image_surface_get_width (surface);
++  height = cairo_image_surface_get_height (surface);
++  format = cairo_image_surface_get_format (surface);
++
++  if (format != CAIRO_FORMAT_ARGB32 &&
++      format != CAIRO_FORMAT_RGB24)
++    {
++      g_warning ("gimp_layer_new_from_surface() assumes that surface is RGB");
++      return -1;
++    }
++
++  layer = gimp_layer_new (image_ID, name, width, height,
++                          format == CAIRO_FORMAT_RGB24 ?
++                          GIMP_RGB_IMAGE : GIMP_RGBA_IMAGE,
++                          opacity, mode);
++
++  if (layer == -1)
++    return -1;
++
++  drawable = gimp_drawable_get (layer);
++
++  gimp_pixel_rgn_init (&rgn, drawable, 0, 0, width, height, TRUE, FALSE);
++
++  rowstride = cairo_image_surface_get_stride (surface);
++  pixels    = cairo_image_surface_get_data (surface);
++
++  for (pr = gimp_pixel_rgns_register (1, &rgn);
++       pr != NULL;
++       pr = gimp_pixel_rgns_process (pr))
++    {
++      const guchar *src  = pixels + rgn.y * rowstride + rgn.x * 4;
++      guchar       *dest = rgn.data;
++      gint          y;
++
++      switch (format)
++        {
++        case CAIRO_FORMAT_RGB24:
++          for (y = 0; y < rgn.h; y++)
++            {
++              const guchar *s = src;
++              guchar       *d = dest;
++              gint          w = rgn.w;
++
++              while (w--)
++                {
++                  GIMP_CAIRO_RGB24_GET_PIXEL (s, d[0], d[1], d[2]);
++
++                  s += 4;
++                  d += 3;
++                }
++
++              src  += rowstride;
++              dest += rgn.rowstride;
++            }
++          break;
++
++        case CAIRO_FORMAT_ARGB32:
++          for (y = 0; y < rgn.h; y++)
++            {
++              const guchar *s = src;
++              guchar       *d = dest;
++              gint          w = rgn.w;
++
++              while (w--)
++                {
++                  GIMP_CAIRO_ARGB32_GET_PIXEL (s, d[0], d[1], d[2], d[3]);
++
++                  s += 4;
++                  d += 4;
++                }
++
++              src  += rowstride;
++              dest += rgn.rowstride;
++            }
++          break;
++
++        default:
++          break;
++        }
++
++     if (range > 0.0)
++        {
++          done += rgn.h * rgn.w;
++
++          if (count++ % 32 == 0)
++            gimp_progress_update (progress_start +
++                                  (gdouble) done / (width * height) * range);
++        }
++    }
++
++  if (range > 0.0)
++    gimp_progress_update (progress_end);
++
++  gimp_drawable_detach (drawable);
++
++  return layer;
++}
++
++/**
+  * gimp_layer_get_preserve_trans:
+  * @layer_ID: The layer.
+  *
+diff --git a/libgimp/gimplayer.h b/libgimp/gimplayer.h
+index cbef025..32d9525 100644
+--- a/libgimp/gimplayer.h
++++ b/libgimp/gimplayer.h
+@@ -35,6 +35,14 @@ gint32   gimp_layer_new                (gint32                image_ID,
+                                         gdouble               opacity,
+                                         GimpLayerModeEffects  mode);
+ gint32   gimp_layer_copy               (gint32                layer_ID);
++gint32   gimp_layer_new_from_surface   (gint32                image_ID,
++                                        const gchar          *name,
++                                        cairo_surface_t      *surface,
++                                        gdouble               opacity,
++                                        GimpLayerModeEffects  mode,
++                                        gdouble               progress_start,
++                                        gdouble               progress_end);
++
+ 
+ #ifndef GIMP_DISABLE_DEPRECATED
+ gboolean gimp_layer_get_preserve_trans (gint32                layer_ID);
+diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am
+index d58ecee..612a3e0 100644
+--- a/plug-ins/common/Makefile.am
++++ b/plug-ins/common/Makefile.am
+@@ -250,7 +250,7 @@ animation_optimize_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -279,7 +279,7 @@ antialias_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -324,7 +324,7 @@ blur_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -595,7 +595,7 @@ contrast_normalize_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -624,7 +624,7 @@ contrast_stretch_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -637,7 +637,7 @@ contrast_stretch_hsv_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -666,7 +666,7 @@ crop_auto_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -679,7 +679,7 @@ crop_zealous_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -868,7 +868,7 @@ edge_laplace_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -978,7 +978,7 @@ file_compressor_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -1007,7 +1007,7 @@ file_desktop_link_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -1052,7 +1052,7 @@ file_gif_load_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -1097,7 +1097,7 @@ file_glob_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -1543,7 +1543,7 @@ gradient_map_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -1572,7 +1572,7 @@ guillotine_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -2052,7 +2052,7 @@ rotate_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -2100,7 +2100,7 @@ semi_flatten_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -2289,7 +2289,7 @@ tile_seamless_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -2350,7 +2350,7 @@ value_invert_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
+@@ -2443,7 +2443,7 @@ web_browser_LDADD = \
+ 	$(libgimpconfig)	\
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+-	$(GLIB_LIBS)		\
++	$(GLIB_LIBS) $(CAIRO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+ 
 diff --git a/plug-ins/common/file-pdf.c b/plug-ins/common/file-pdf.c
-index a43b459..ea61092 100644
+index a43b459..ae87a8b 100644
 --- a/plug-ins/common/file-pdf.c
 +++ b/plug-ins/common/file-pdf.c
 @@ -4,6 +4,9 @@
@@ -340,8 +841,7 @@ index a43b459..ea61092 100644
 +                                              progress_start,
 +                                              progress_start + progress_scale);
  
--  gimp_image_add_layer (image, layer, position);
-+  gimp_image_insert_layer (image, layer, -1, position);
+   gimp_image_add_layer (image, layer, position);
  
    return layer;
  }
@@ -520,6 +1020,59 @@ index a43b459..ea61092 100644
  
        g_idle_add (idle_set_thumbnail, idle_data);
  
+diff --git a/plug-ins/common/mkgen.pl b/plug-ins/common/mkgen.pl
+index b0cd786..25ea7a7 100755
+--- a/plug-ins/common/mkgen.pl
++++ b/plug-ins/common/mkgen.pl
+@@ -131,7 +131,7 @@ foreach (sort keys %plugins) {
+     if (exists $plugins{$_}->{ui}) {
+ 	$glib = "\$(GTK_LIBS)"
+     } else {
+-	$glib = "\$(GLIB_LIBS)"
++	$glib = "\$(GLIB_LIBS) \$(CAIRO_LIBS)"
+     }
+ 
+     my $optlib = "";
+diff --git a/plug-ins/file-faxg3/Makefile.am b/plug-ins/file-faxg3/Makefile.am
+index ac61d86..694127f 100644
+--- a/plug-ins/file-faxg3/Makefile.am
++++ b/plug-ins/file-faxg3/Makefile.am
+@@ -25,6 +25,7 @@ file_faxg3_SOURCES = \
+ 
+ INCLUDES = \
+ 	-I$(top_srcdir)	\
++	$(CAIRO_CFLAGS)	\
+ 	$(GLIB_CFLAGS)	\
+ 	-I$(includedir)
+ 
+@@ -34,6 +35,7 @@ LDADD = \
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+ 	$(libgimpmath)		\
++	$(CAIRO_LIBS)		\
+ 	$(GLIB_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
+diff --git a/plug-ins/help/Makefile.am b/plug-ins/help/Makefile.am
+index c5f49ae..b72d368 100644
+--- a/plug-ins/help/Makefile.am
++++ b/plug-ins/help/Makefile.am
+@@ -39,6 +39,7 @@ help_SOURCES = help.c
+ 
+ INCLUDES = \
+ 	-I$(top_srcdir)	\
++	$(CAIRO_CFLAGS)	\
+ 	$(GIO_CFLAGS)	\
+ 	-I$(includedir)
+ 
+@@ -49,6 +50,7 @@ LDADD = \
+ 	$(libgimpcolor)		\
+ 	$(libgimpbase)		\
+ 	$(libgimpmath)		\
++	$(CAIRO_LIBS)		\
+ 	$(GIO_LIBS)		\
+ 	$(RT_LIBS)		\
+ 	$(INTLLIBS)
 -- 
-1.7.4.4
+1.7.5
 
diff --git a/gimp.spec b/gimp.spec
index 07d8064..1dbda11 100644
--- a/gimp.spec
+++ b/gimp.spec
@@ -148,7 +148,7 @@ Patch6:         gimp-2.6.11-pyslice.patch
 # backport: work with poppler-0.17
 Patch7:         gimp-2.6.11-poppler-0.17.patch
 # files changed by autoreconf after applying the above
-Patch10:        gimp-2.6.11-1-autoreconf.patch.bz2
+Patch10:        gimp-2.6.11-10-autoreconf.patch.bz2
 
 %description
 GIMP (GNU Image Manipulation Program) is a powerful image composition and
@@ -505,7 +505,7 @@ fi
 %{_libdir}/gimp/%{interfacever}/plug-ins/help-browser
 
 %changelog
-* Thu Apr 21 2011 Nils Philippsen <nils at redhat.com> - 2:2.6.11-10
+* Tue May 03 2011 Nils Philippsen <nils at redhat.com> - 2:2.6.11-10
 - don't use poppler/gdk_pixbuf API removed in poppler >= 0.17 (#698157)
 
 * Tue Mar 15 2011 Nils Philippsen <nils at redhat.com> - 2:2.6.11-9
diff --git a/sources b/sources
index e02758f..c00486c 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
 bb2939fe13e54fc7255cef5d097bb5dd  gimp-2.6.11.tar.bz2
-ec6d312d1eb222d7f419351d3f611180  gimp-2.6.11-1-autoreconf.patch.bz2
+3b57556ea4f290ed43ef691a052f72a5  gimp-2.6.11-10-autoreconf.patch.bz2


More information about the scm-commits mailing list