diff options
author | Gilles Dartiguelongue <eva@gentoo.org> | 2018-01-29 08:39:17 +0100 |
---|---|---|
committer | Gilles Dartiguelongue <eva@gentoo.org> | 2018-01-29 08:45:37 +0100 |
commit | 9dafd4f5e7373393f09024ec05693c6844694882 (patch) | |
tree | 266480da880a52c4561ec50a4263f85788b4d25d | |
parent | eclass: sync vala.eclass with gentoo repository (diff) | |
download | gnome-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/Manifest | 1 | ||||
-rw-r--r-- | gnome-base/librsvg/files/librsvg-2.40.12-gtk-optional.patch | 58 | ||||
-rw-r--r-- | gnome-base/librsvg/files/librsvg-2.40.2-vala-out-of-source.patch | 28 | ||||
-rw-r--r-- | gnome-base/librsvg/librsvg-2.42.1.ebuild | 101 | ||||
-rw-r--r-- | gnome-base/librsvg/metadata.xml | 11 | ||||
-rw-r--r-- | profiles/package.mask | 4 |
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 |