commit:     62750172e957c6832305030dea60113a86f45204
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  3 11:21:22 2016 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Apr  3 12:40:59 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62750172

gnome-base/librsvg: Version bump, fix resizing issues (#575258 by alcyone)

Package-Manager: portage-2.2.28

 gnome-base/librsvg/Manifest                        |   1 +
 .../librsvg/files/librsvg-2.40.15-resize.patch     |  29 ++++++
 gnome-base/librsvg/librsvg-2.40.15.ebuild          | 102 +++++++++++++++++++++
 3 files changed, 132 insertions(+)

diff --git a/gnome-base/librsvg/Manifest b/gnome-base/librsvg/Manifest
index 3ca0c43..e6b127b 100644
--- a/gnome-base/librsvg/Manifest
+++ b/gnome-base/librsvg/Manifest
@@ -1,2 +1,3 @@
 DIST librsvg-2.40.11.tar.xz 539428 SHA256 
611ac0f544debd0c9bf1ef5509c990d218e83dd1d8c83297075c4b29796a2e02 SHA512 
89fc4f94150ab47665ab1b6c26979c8072efe40dd74ff13284598cb63de8594e7cfe4b73a151e54002a4811b5de56b93f5d52215ef0862b994d230fafe04b4fc
 WHIRLPOOL 
7c9a0292faf42dd396a59b38c6900a1b78a254c8bd8c724b5636d506c41934d19c924fbf86c2faab7151c065dd134252b78adfd94940b09acd601ef2dc86a5cc
 DIST librsvg-2.40.13.tar.xz 552900 SHA256 
4d6ea93ec05f5dabe7262d711d246a0a99b2311e215360dd3dcabd6afe3b9804 SHA512 
7549f78d25c3319b5b74803c46cc0d1bd5c53a425b632a5b306eb238080df0da2b4bcefb159064988bd56cb1d69e0c94ecd0a073315acff14abb187ba6d4c788
 WHIRLPOOL 
9113a1ae41a8f2146dd55f9d3a9d47f4f45c7926434d91cf94387ab054b6585371a6d6175699588481f331f0dba98ffccd7597c7792c73d8ba009ce5b1cfa8c8
+DIST librsvg-2.40.15.tar.xz 554608 SHA256 
d9cac4a123eec6e553a26e120979bab7425def9ae7ce7c079eba5e4a45db05f4 SHA512 
1169c02247dbf3d71d3d4bfb1aa2580a4b1e243e1c2c6d1c86aaa09c54c66857b959df4358a1ca6a34ec5fbb34b9529963b993fc978ec1fe401dbc56ac460101
 WHIRLPOOL 
687e9afc6c1c46079fa9005c94ed329ff6f681a9fb784df999efca36ba1fac05a05f3d6413105993ff4af60a62a36b647e2f1335ab1245c621de2ff76ccef479

diff --git a/gnome-base/librsvg/files/librsvg-2.40.15-resize.patch 
b/gnome-base/librsvg/files/librsvg-2.40.15-resize.patch
new file mode 100644
index 0000000..2bb2f7c
--- /dev/null
+++ b/gnome-base/librsvg/files/librsvg-2.40.15-resize.patch
@@ -0,0 +1,29 @@
+--- a/rsvg-convert.c   
++++ a/rsvg-convert.c   
+@@ -137,7 +137,7 @@ main (int argc, char **argv)
+     cairo_surface_t *surface = NULL;
+     cairo_t *cr = NULL;
+     RsvgHandleFlags flags = RSVG_HANDLE_FLAGS_NONE;
+-    RsvgDimensionData dimensions;
++    RsvgDimensionData dimensions, dimensions_orig;
+     FILE *output_file = stdout;
+     char *export_lookup_id;
+ 
+@@ -318,6 +318,7 @@ main (int argc, char **argv)
+ 
+             if (!rsvg_handle_get_dimensions_sub (rsvg, &dimensions, 
export_lookup_id))
+                 g_printerr ("Could not get dimensions for file %s\n", 
args[i]);
++            rsvg_handle_get_dimensions_sub (rsvg, &dimensions_orig, 
export_lookup_id);
+ 
+             /* if both are unspecified, assume user wants to zoom the image 
in at least 1 dimension */
+             if (width == -1 && height == -1) {
+@@ -416,6 +417,9 @@ main (int argc, char **argv)
+             cairo_translate (cr, -pos.x, -pos.y);
+         }
+ 
++        cairo_scale(cr, (double) dimensions.width / dimensions_orig.width,
++                (double) dimensions.height /dimensions_orig.height);
++
+         rsvg_handle_render_cairo_sub (rsvg, cr, export_lookup_id);
+ 
+         g_free (export_lookup_id);

diff --git a/gnome-base/librsvg/librsvg-2.40.15.ebuild 
b/gnome-base/librsvg/librsvg-2.40.15.ebuild
new file mode 100644
index 0000000..af6148b
--- /dev/null
+++ b/gnome-base/librsvg/librsvg-2.40.15.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+VALA_USE_DEPEND="vapigen"
+
+inherit autotools eutils gnome2 multilib-minimal vala
+
+DESCRIPTION="Scalable Vector Graphics (SVG) rendering library"
+HOMEPAGE="https://wiki.gnome.org/Projects/LibRsvg";
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux 
~arm-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris 
~x86-solaris"
+
+IUSE="+introspection vala tools"
+REQUIRED_USE="vala? ( introspection )"
+
+RDEPEND="
+       >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
+       >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}]
+       >=x11-libs/pango-1.36.3[${MULTILIB_USEDEP}]
+       >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}]
+       >=dev-libs/libcroco-0.6.8-r1[${MULTILIB_USEDEP}]
+       >=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,${MULTILIB_USEDEP}]
+       introspection? ( >=dev-libs/gobject-introspection-0.10.8:= )
+       tools? ( >=x11-libs/gtk+-3.10.0:3 )
+"
+DEPEND="${RDEPEND}
+       dev-libs/gobject-introspection-common
+       dev-libs/vala-common
+       >=dev-util/gtk-doc-am-1.13
+       >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+       vala? ( $(vala_depend) )
+"
+# >=gtk-doc-am-1.13, gobject-introspection-common, vala-common needed by 
eautoreconf
+
+src_prepare() {
+       # https://bugzilla.gnome.org/show_bug.cgi?id=653323
+       epatch "${FILESDIR}/${PN}-2.40.12-gtk-optional.patch"
+
+       # https://bugzilla.gnome.org/show_bug.cgi?id=731826
+       epatch "${FILESDIR}/${PN}-2.40.2-vala-out-of-source.patch"
+
+       # https://bugzilla.gnome.org/show_bug.cgi?id=760262
+       epatch "${FILESDIR}/${PN}-2.40.15-resize.patch"
+
+       eautoreconf
+
+       use vala && vala_src_prepare
+       gnome2_src_prepare
+}
+
+multilib_src_configure() {
+       local myconf=()
+
+       # -Bsymbolic is not supported by the Darwin toolchain
+       if [[ ${CHOST} == *-darwin* ]]; then
+               myconf+=( --disable-Bsymbolic )
+       fi
+
+       # --disable-tools even when USE=tools; the tools/ subdirectory is useful
+       # only for librsvg developers
+       ECONF_SOURCE=${S} \
+       gnome2_src_configure \
+               --disable-static \
+               --disable-tools \
+               $(multilib_native_use_enable introspection) \
+               $(multilib_native_use_with tools gtk3) \
+               $(multilib_native_use_enable vala) \
+               --enable-pixbuf-loader \
+               "${myconf[@]}"
+
+       if multilib_is_native_abi; then
+               ln -s "${S}"/doc/html doc/html || die
+       fi
+}
+
+multilib_src_compile() {
+       # causes segfault if set, see bug #411765
+       unset __GL_NO_DSO_FINALIZER
+       gnome2_src_compile
+}
+
+multilib_src_install() {
+       gnome2_src_install
+}
+
+pkg_postinst() {
+       # causes segfault if set, see bug 375615
+       unset __GL_NO_DSO_FINALIZER
+       multilib_foreach_abi gnome2_pkg_postinst
+}
+
+pkg_postrm() {
+       # causes segfault if set, see bug 375615
+       unset __GL_NO_DSO_FINALIZER
+       multilib_foreach_abi gnome2_pkg_postrm
+}

Reply via email to