summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dartiguelongue <eva@gentoo.org>2018-01-29 08:39:17 +0100
committerGilles Dartiguelongue <eva@gentoo.org>2018-01-29 08:45:37 +0100
commit9dafd4f5e7373393f09024ec05693c6844694882 (patch)
tree266480da880a52c4561ec50a4263f85788b4d25d
parenteclass: sync vala.eclass with gentoo repository (diff)
downloadgnome-9dafd4f5.tar.gz
gnome-9dafd4f5.tar.bz2
gnome-9dafd4f5.zip
gnome-base/librsvg: experimental rust based ebuild
While build goes just fine, lots of unit tests are broken and there is no multilib support for now. Requires rust >=1.20 for bundled rust packages.
-rw-r--r--gnome-base/librsvg/Manifest1
-rw-r--r--gnome-base/librsvg/files/librsvg-2.40.12-gtk-optional.patch58
-rw-r--r--gnome-base/librsvg/files/librsvg-2.40.2-vala-out-of-source.patch28
-rw-r--r--gnome-base/librsvg/librsvg-2.42.1.ebuild101
-rw-r--r--gnome-base/librsvg/metadata.xml11
-rw-r--r--profiles/package.mask4
6 files changed, 203 insertions, 0 deletions
diff --git a/gnome-base/librsvg/Manifest b/gnome-base/librsvg/Manifest
new file mode 100644
index 00000000..9aca5955
--- /dev/null
+++ b/gnome-base/librsvg/Manifest
@@ -0,0 +1 @@
+DIST librsvg-2.42.1.tar.xz 5967580 BLAKE2B 362db92cee5d4504636de56731fee992487f803473c7c1c51b82a05692af11653d5e60ac518ea6275fc3be2f6ae3290c51468549931dab719b629d2a82e71821 SHA512 1053598b2460815454b7877cbdbb48caf370628c97850ce352c44b1eab34125ad45743e507cf16cd703a71dc223558ab54918710abf7c3d07982c370052af255
diff --git a/gnome-base/librsvg/files/librsvg-2.40.12-gtk-optional.patch b/gnome-base/librsvg/files/librsvg-2.40.12-gtk-optional.patch
new file mode 100644
index 00000000..b7c5b852
--- /dev/null
+++ b/gnome-base/librsvg/files/librsvg-2.40.12-gtk-optional.patch
@@ -0,0 +1,58 @@
+From 18917f7fd3160afe06019f4b6234aeb78a3fdb4e Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Tue, 19 Nov 2013 16:00:29 +0000
+Subject: [PATCH] configure: add option to enable/disable use of GTK+
+
+Distro packagers like predictability and automatically detected optional
+dependencies are not predicable. Add a --with-gtk3 option (default to "auto")
+for forcibly controlling whether GTK+ will be used or not.
+
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+https://bugzilla.gnome.org/show_bug.cgi?id=712693
+---
+ configure.in | 17 +++++++++++------
+ 1 file changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index f7a89dc..1498f72 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -119,17 +119,22 @@ AC_CHECK_FUNCS(strtok_r)
+ # GTK
+ # ===========================================================================
+
+-PKG_CHECK_MODULES([GTK3],[gtk+-3.0 >= $GTK3_REQUIRED],[have_gtk_3=yes],[have_gtk_3=no])
+-
+ GTK3_BINARY_VERSION=
+
+-if test "$have_gtk_3" = "yes"; then
+- GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
++AC_MSG_CHECKING([whether to use GTK+ 3])
++AC_ARG_WITH([gtk3],
++ [AS_HELP_STRING([--without-gtk3],[Don't build GTK+3 tools (default=auto)])],
++ [],[PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_REQUIRED],[with_gtk3=yes],[with_gtk3=no])])
++AC_MSG_RESULT([$with_gtk3])
++
++if test "$with_gtk3" = "yes"; then
++ PKG_CHECK_MODULES(GTK3, [gtk+-3.0 >= $GTK3_REQUIRED])
++ GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
+ fi
+
+ AC_SUBST([GTK3_BINARY_VERSION])
+
+-AM_CONDITIONAL([HAVE_GTK_3],[test "$have_gtk_3" = "yes"])
++AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk3" = "yes"])
+
+ dnl ===========================================================================
+ dnl GDK-Pixbuf SVG loader
+@@ -305,6 +310,6 @@ librsvg-$VERSION
+ Build introspectable bindings: ${found_introspection}
+ Build Vala bindings: ${enable_vala}
+ Build GdkPixbuf loader: ${enable_pixbuf_loader}
+- GTK+ $GTK3_REQUIRED or later: ${have_gtk_3}
++ GTK 3.0: ${with_gtk3}
+ Build miscellaneous tools: ${build_misc_tools}
+ "
+--
+1.7.10.4 \ No newline at end of file
diff --git a/gnome-base/librsvg/files/librsvg-2.40.2-vala-out-of-source.patch b/gnome-base/librsvg/files/librsvg-2.40.2-vala-out-of-source.patch
new file mode 100644
index 00000000..bda09057
--- /dev/null
+++ b/gnome-base/librsvg/files/librsvg-2.40.2-vala-out-of-source.patch
@@ -0,0 +1,28 @@
+From bf4da5524d50e1068f851bcbe50c8f8ae1948d73 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 18 Jun 2014 09:44:51 +0200
+Subject: [PATCH] build: Fix building .vapi out-of-source.
+
+Rsvg-2.0-custom.vala file resides in $(srcdir), and therefore full path
+needs to be given to vapigen. Otherwise, the build fails when build is
+performed out-of-source.
+---
+ Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index e881100..dc6b0c9 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -257,7 +257,7 @@ VAPIGEN_VAPIS = librsvg-$(RSVG_API_VERSION).vapi
+
+ librsvg_@RSVG_API_VERSION_U@_vapi_DEPS = gio-2.0 cairo
+ librsvg_@RSVG_API_VERSION_U@_vapi_METADATADIRS = $(srcdir)
+-librsvg_@RSVG_API_VERSION_U@_vapi_FILES = Rsvg-$(RSVG_API_VERSION).gir Rsvg-$(RSVG_API_VERSION)-custom.vala
++librsvg_@RSVG_API_VERSION_U@_vapi_FILES = Rsvg-$(RSVG_API_VERSION).gir $(srcdir)/Rsvg-$(RSVG_API_VERSION)-custom.vala
+
+ vapidir = $(datadir)/vala/vapi
+ vapi_DATA = $(VAPIGEN_VAPIS)
+--
+2.0.0
+
diff --git a/gnome-base/librsvg/librsvg-2.42.1.ebuild b/gnome-base/librsvg/librsvg-2.42.1.ebuild
new file mode 100644
index 00000000..43fd2555
--- /dev/null
+++ b/gnome-base/librsvg/librsvg-2.42.1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+GNOME2_EAUTORECONF="yes"
+VALA_USE_DEPEND="vapigen"
+
+inherit gnome2 multilib-minimal vala
+
+DESCRIPTION="Scalable Vector Graphics (SVG) rendering library"
+HOMEPAGE="https://wiki.gnome.org/Projects/LibRsvg"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~arm64 ~sparc ~x86"
+
+IUSE="debug +introspection tools vala"
+REQUIRED_USE="vala? ( introspection )"
+
+RDEPEND="
+ >=dev-libs/glib-2.52.3:2[${MULTILIB_USEDEP}]
+ >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}]
+ >=x11-libs/pango-1.38.0[${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/cargo
+ >=virtual/rust-1.20
+ >=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
+
+PATCHES=(
+ # https://bugzilla.gnome.org/show_bug.cgi?id=653323
+ "${FILESDIR}"/${PN}-2.40.12-gtk-optional.patch
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=731826
+ "${FILESDIR}"/${PN}-2.40.2-vala-out-of-source.patch
+)
+
+src_prepare() {
+ 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 \
+ $(use_enable debug) \
+ $(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
+}
diff --git a/gnome-base/librsvg/metadata.xml b/gnome-base/librsvg/metadata.xml
new file mode 100644
index 00000000..fb664414
--- /dev/null
+++ b/gnome-base/librsvg/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+<use>
+ <flag name="tools">Build svg viewer tool</flag>
+</use>
+</pkgmetadata>
diff --git a/profiles/package.mask b/profiles/package.mask
index 5247ae13..390424ef 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -10,3 +10,7 @@
# Sobhan Mohammadpour <sobhan@gentoo.org> (21 Dec 2017)
# Depends on masked dev-lang/spidermonkey:52
=dev-libs/gjs-1.50.2
+
+# Gilles Dartiguelongue <eva@gentoo.org> (29 Jan 2018)
+# Lots of unittests broken, no multilib support
+>=gnome-base/librsvg-2.41