summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-gnome/librsvg/librsvg_2.52.0.bb')
-rw-r--r--meta/recipes-gnome/librsvg/librsvg_2.52.0.bb70
1 files changed, 70 insertions, 0 deletions
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
new file mode 100644
index 0000000000..4e3febc6a2
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -0,0 +1,70 @@
1SUMMARY = "Library for rendering SVG files"
2DESCRIPTION = "A small library to render Scalable Vector Graphics (SVG), \
3associated with the GNOME Project. It renders SVG files to Cairo surfaces. \
4Cairo is the 2D, antialiased drawing library that GNOME uses to draw things to \
5the screen or to generate output for printing."
6HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg"
7BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues"
8
9LICENSE = "LGPLv2.1+"
10LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
11 "
12
13SECTION = "x11/utils"
14DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
15BBCLASSEXTEND = "native nativesdk"
16
17inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection rust
18
19SRC_URI += " file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
20 file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \
21"
22
23SRC_URI[archive.sha256sum] = "bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393"
24
25# librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles
26# so we cannot use cargo class directly, but still need bits and pieces from it
27# for cargo to be happy
28BASEDEPENDS:append = " cargo-native"
29
30export RUST_BACKTRACE = "full"
31export RUSTFLAGS
32export RUST_TARGET_PATH
33
34export RUST_TARGET = "${HOST_SYS}"
35
36# rust-cross writes the target linker binary into target json definition without any flags.
37# This breaks here because the linker isn't going to work without at least knowing where
38# the sysroot is. So copy the json to workdir, and patch in the path to wrapper from rust class
39# which supplies the needed flags.
40do_compile:prepend() {
41 cp ${STAGING_LIBDIR_NATIVE}/rustlib/${HOST_SYS}.json ${WORKDIR}
42 cp ${STAGING_LIBDIR_NATIVE}/rustlib/${BUILD_SYS}.json ${WORKDIR}
43 sed -ie 's,"linker": ".*","linker": "${RUST_TARGET_CC}",g' ${WORKDIR}/${HOST_SYS}.json
44 RUST_TARGET_PATH="${WORKDIR}"
45 export RUST_TARGET_PATH
46}
47
48# Issue only on windows
49CVE_CHECK_WHITELIST += "CVE-2018-1000041"
50
51CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
52
53PACKAGECONFIG ??= "gdkpixbuf"
54# The gdk-pixbuf loader
55PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native"
56
57do_install:append() {
58 # Loadable modules don't need .a or .la on Linux
59 rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la
60}
61
62PACKAGES =+ "librsvg-gtk rsvg"
63FILES:rsvg = "${bindir}/rsvg* \
64 ${datadir}/pixmaps/svg-viewer.svg \
65 ${datadir}/themes"
66FILES:librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \
67 ${datadir}/thumbnailers/librsvg.thumbnailer"
68RRECOMMENDS:librsvg-gtk = "gdk-pixbuf-bin"
69
70PIXBUF_PACKAGES = "librsvg-gtk"