librsvg: upgrade to 2.40.0
Add local-m4.patch and install a local vapigen.m4 so that we can autoreconf without needing Vala installed. Refresh build dependencies removing stale recipes and adding libcroco as it's a mandatory dependency now. Explicitly disable Vala, with a patch from upstream until 2.40.1. The GTK+ 2 theme engine has been removed, delete all traces of it. Add a patch to make GTK+ use deterministic, and a disabled PACKAGECONFIG for it. Enable parallel make, as some testing shows that it works fine. Drop librsvg-CVE-2011-3146, merged upstream. Drop doc_Makefile.patch, our gtk-doc.mk isn't buggy and this isn't needed anymore. Merge multiple -dev and -dbg packages into ${PN}-dev and -dbg, and remove the loader module .a and .la files as they are pointless. (From OE-Core rev: ee3e2e5ce15a3bf78c7e9d76d7bf68131f2d3ef7) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
b60666e3a9
commit
852ba6c72f
|
@ -1,19 +0,0 @@
|
|||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Automake complains about using += before setting with =
|
||||
|
||||
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
||||
|
||||
Index: librsvg-2.32.0/doc/Makefile.am
|
||||
===================================================================
|
||||
--- librsvg-2.32.0.orig/doc/Makefile.am 2010-11-24 13:13:28.000000000 -0800
|
||||
+++ librsvg-2.32.0/doc/Makefile.am 2010-11-24 13:13:46.161312119 -0800
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
# Other files to distribute
|
||||
# e.g. EXTRA_DIST += version.xml.in
|
||||
-EXTRA_DIST += \
|
||||
+EXTRA_DIST = \
|
||||
version.xml.in
|
||||
|
||||
# Files not to distribute
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,59 @@
|
|||
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.in
|
||||
+++ b/configure.in
|
||||
@@ -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 3.0: ${have_gtk_3}
|
||||
+ GTK 3.0: ${with_gtk3}
|
||||
Build miscellaenous tools: ${build_misc_tools}
|
||||
"
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
This patch is required to make autoreconf use the local macros (so that it can
|
||||
autoreconf without vala being installed).
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
From 6c3b8eee243204678574e162b7d480f6f83b71e6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Germ=C3=A1n=20Poo-Caama=C3=B1o?= <gpoo@gnome.org>
|
||||
Date: Tue, 29 Oct 2013 13:05:39 -0700
|
||||
Subject: [PATCH] build: Use local macros to detect vala
|
||||
|
||||
Fixes build when vala < 0.19 is present.
|
||||
---
|
||||
Makefile.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index d95f008..e881100 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -3,7 +3,7 @@ SUBDIRS = . gdk-pixbuf-loader tests tools doc
|
||||
NULL =
|
||||
BUILT_SOURCES =
|
||||
|
||||
-ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS}
|
||||
+ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
|
||||
|
||||
lib_LTLIBRARIES = librsvg-@RSVG_API_MAJOR_VERSION@.la
|
||||
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -0,0 +1,96 @@
|
|||
dnl vapigen.m4
|
||||
dnl
|
||||
dnl Copyright 2012 Evan Nemerson
|
||||
dnl
|
||||
dnl This library is free software; you can redistribute it and/or
|
||||
dnl modify it under the terms of the GNU Lesser General Public
|
||||
dnl License as published by the Free Software Foundation; either
|
||||
dnl version 2.1 of the License, or (at your option) any later version.
|
||||
dnl
|
||||
dnl This library is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
dnl Lesser General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU Lesser General Public
|
||||
dnl License along with this library; if not, write to the Free Software
|
||||
dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# VAPIGEN_CHECK([VERSION], [API_VERSION], [FOUND-INTROSPECTION], [DEFAULT])
|
||||
# --------------------------------------
|
||||
# Check vapigen existence and version
|
||||
#
|
||||
# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation
|
||||
AC_DEFUN([VAPIGEN_CHECK],
|
||||
[
|
||||
AC_BEFORE([GOBJECT_INTROSPECTION_CHECK],[$0])
|
||||
AC_BEFORE([GOBJECT_INTROSPECTION_REQUIRE],[$0])
|
||||
|
||||
AC_ARG_ENABLE([vala],
|
||||
[AS_HELP_STRING([--enable-vala[=@<:@no/auto/yes@:>@]],[build Vala bindings @<:@default=]ifelse($4,,auto,$4)[@:>@])],,[
|
||||
AS_IF([test "x$4" = "x"], [
|
||||
enable_vala=auto
|
||||
], [
|
||||
enable_vala=$4
|
||||
])
|
||||
])
|
||||
|
||||
AS_CASE([$enable_vala], [no], [enable_vala=no],
|
||||
[yes], [
|
||||
AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [
|
||||
AC_MSG_ERROR([Vala bindings require GObject Introspection])
|
||||
])
|
||||
], [auto], [
|
||||
AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [
|
||||
enable_vala=no
|
||||
])
|
||||
], [
|
||||
AC_MSG_ERROR([Invalid argument passed to --enable-vala, should be one of @<:@no/auto/yes@:>@])
|
||||
])
|
||||
|
||||
AS_IF([test "x$2" = "x"], [
|
||||
vapigen_pkg_name=vapigen
|
||||
], [
|
||||
vapigen_pkg_name=vapigen-$2
|
||||
])
|
||||
AS_IF([test "x$1" = "x"], [
|
||||
vapigen_pkg="$vapigen_pkg_name"
|
||||
], [
|
||||
vapigen_pkg="$vapigen_pkg_name >= $1"
|
||||
])
|
||||
|
||||
PKG_PROG_PKG_CONFIG
|
||||
|
||||
PKG_CHECK_EXISTS([$vapigen_pkg], [
|
||||
AS_IF([test "$enable_vala" = "auto"], [
|
||||
enable_vala=yes
|
||||
])
|
||||
], [
|
||||
AS_CASE([$enable_vala], [yes], [
|
||||
AC_MSG_ERROR([$vapigen_pkg not found])
|
||||
], [auto], [
|
||||
enable_vala=no
|
||||
])
|
||||
])
|
||||
|
||||
AC_MSG_CHECKING([for vala])
|
||||
|
||||
AS_CASE([$enable_vala],
|
||||
[yes], [
|
||||
VAPIGEN=`$PKG_CONFIG --variable=vapigen vapigen`
|
||||
VAPIGEN_MAKEFILE=`$PKG_CONFIG --variable=datadir vapigen`/vala/Makefile.vapigen
|
||||
AS_IF([test "x$2" = "x"], [
|
||||
VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen`
|
||||
], [
|
||||
VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir_versioned vapigen`
|
||||
])
|
||||
])
|
||||
|
||||
AC_MSG_RESULT([$enable_vala])
|
||||
|
||||
AC_SUBST([VAPIGEN])
|
||||
AC_SUBST([VAPIGEN_VAPIDIR])
|
||||
AC_SUBST([VAPIGEN_MAKEFILE])
|
||||
|
||||
AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$enable_vala" = "xyes")
|
||||
])
|
|
@ -1,58 +0,0 @@
|
|||
DESCRIPTION = "Library for rendering SVG files"
|
||||
HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
|
||||
LICENSE = "LGPLv2+"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
|
||||
file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6"
|
||||
|
||||
SECTION = "x11/utils"
|
||||
DEPENDS = "cairo glib-2.0 gdk-pixbuf fontconfig freetype libxml2 pango"
|
||||
DEPENDS += "gdk-pixbuf-native"
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
PR = "r12"
|
||||
|
||||
inherit autotools pkgconfig gnomebase gtk-doc pixbufcache
|
||||
|
||||
SRC_URI += "file://doc_Makefile.patch \
|
||||
file://librsvg-CVE-2011-3146.patch \
|
||||
"
|
||||
|
||||
SRC_URI[archive.md5sum] = "4b00d0fee130c936644892c152f42db7"
|
||||
SRC_URI[archive.sha256sum] = "91b98051f352fab8a6257688d6b2fd665b4648ed66144861f2f853ccf876d334"
|
||||
|
||||
EXTRA_OECONF = "--without-svgz"
|
||||
|
||||
PACKAGECONFIG ??= "croco gdkpixbuf"
|
||||
|
||||
# Support embedded CSS stylesheets (recommended upstream)
|
||||
PACKAGECONFIG[croco] = "--with-croco,--without-croco,libcroco"
|
||||
# gdk-pixbuf loader
|
||||
PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader"
|
||||
# GTK+ 2 theme engine
|
||||
PACKAGECONFIG[gtk] = "--enable-gtk-theme,--disable-gtk-theme,gtk+"
|
||||
|
||||
PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg"
|
||||
FILES_${PN} = "${libdir}/*.so.*"
|
||||
FILES_${PN}-staticdev += "${libdir}/gdk-pixbuf-2.0/*.a ${libdir}/gdk-pixbuf-2.0/*/*/*.a \
|
||||
${libdir}/gtk-2.0/*.a ${libdir}/gtk-2.0/*/*/*.a"
|
||||
FILES_rsvg = "${bindir}/rsvg \
|
||||
${bindir}/rsvg-view \
|
||||
${bindir}/rsvg-convert \
|
||||
${datadir}/pixmaps/svg-viewer.svg \
|
||||
${datadir}/themes"
|
||||
FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so ${libdir}/gdk-pixbuf-2.0/*/*/*.so"
|
||||
FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.la \
|
||||
${libdir}/gtk-2.0/*/*/*.la \
|
||||
${libdir}/gdk-pixbuf-2.0/*.la \
|
||||
${libdir}/gdk-pixbuf-2.0/*/*/*.la"
|
||||
FILES_librsvg-gtk-dbg += "${libdir}/gdk-pixbuf-2.0/.debug \
|
||||
${libdir}/gdk-pixbuf-2.0/*/*/.debug \
|
||||
${libdir}/gtk-2.0/.debug \
|
||||
${libdir}/gtk-2.0/*/*/.debug"
|
||||
|
||||
PIXBUF_PACKAGES = "librsvg-gtk"
|
||||
PARALLEL_MAKE = ""
|
||||
|
||||
PIXBUFCACHE_SYSROOT_DEPS_append_class-native = " harfbuzz-native:do_populate_sysroot_setscene pango-native:do_populate_sysroot_setscene icu-native:do_populate_sysroot_setscene"
|
|
@ -0,0 +1,56 @@
|
|||
DESCRIPTION = "Library for rendering SVG files"
|
||||
HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
|
||||
LICENSE = "LGPLv2+"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
|
||||
file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6"
|
||||
|
||||
SECTION = "x11/utils"
|
||||
DEPENDS = "gdk-pixbuf-native cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
inherit autotools pkgconfig gnomebase gtk-doc pixbufcache
|
||||
|
||||
GNOME_COMPRESS_TYPE = "xz"
|
||||
|
||||
SRC_URI += "file://gtk-option.patch \
|
||||
file://local-m4.patch \
|
||||
file://vapigen.m4"
|
||||
|
||||
SRC_URI[archive.md5sum] = "e16a84e9a86a18e5ca6ba95c512db6c6"
|
||||
SRC_URI[archive.sha256sum] = "8f7db31df235813dbd035888035cf862d682e7cc5706c4e7ec05750d3f64a2f9"
|
||||
|
||||
EXTRA_OECONF = "--disable-introspection --disable-vala"
|
||||
|
||||
PACKAGECONFIG ??= "gdkpixbuf"
|
||||
# The gdk-pixbuf loader
|
||||
PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader"
|
||||
# GTK+ test application (rsvg-view)
|
||||
PACKAGECONFIG[gtk] = "--with-gtk3,--without-gtk3,gtk+3"
|
||||
|
||||
# 2.40.1 should ship the tarball with local m4 macros, but until then drop a
|
||||
# vapigen in there so we don't need to build vala to configure.
|
||||
do_configure_prepend() {
|
||||
if test ! -e ${S}/m4/vapigen.m4; then
|
||||
mkdir --parents ${S}/m4
|
||||
mv ${WORKDIR}/vapigen.m4 ${S}/m4/
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_append() {
|
||||
# Loadable modules don't need .a or .la on Linux
|
||||
rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la
|
||||
}
|
||||
|
||||
PACKAGES =+ "librsvg-gtk rsvg"
|
||||
FILES_${PN} = "${libdir}/*.so.*"
|
||||
FILES_${PN}-dbg += "${libdir}/gdk-pixbuf-2.0/*/loaders/.debug"
|
||||
FILES_rsvg = "${bindir}/rsvg* \
|
||||
${datadir}/pixmaps/svg-viewer.svg \
|
||||
${datadir}/themes"
|
||||
FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so"
|
||||
|
||||
PIXBUF_PACKAGES = "librsvg-gtk"
|
||||
|
||||
PIXBUFCACHE_SYSROOT_DEPS_append_class-native = " harfbuzz-native:do_populate_sysroot_setscene pango-native:do_populate_sysroot_setscene icu-native:do_populate_sysroot_setscene"
|
Loading…
Reference in New Issue