diff options
Diffstat (limited to 'meta/recipes-gnome/librsvg/librsvg_2.56.3.bb')
-rw-r--r-- | meta/recipes-gnome/librsvg/librsvg_2.56.3.bb | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.56.3.bb b/meta/recipes-gnome/librsvg/librsvg_2.56.3.bb new file mode 100644 index 0000000000..4b9aaeecbe --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg_2.56.3.bb | |||
@@ -0,0 +1,78 @@ | |||
1 | SUMMARY = "Library for rendering SVG files" | ||
2 | DESCRIPTION = "A small library to render Scalable Vector Graphics (SVG), \ | ||
3 | associated with the GNOME Project. It renders SVG files to Cairo surfaces. \ | ||
4 | Cairo is the 2D, antialiased drawing library that GNOME uses to draw things to \ | ||
5 | the screen or to generate output for printing." | ||
6 | HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg" | ||
7 | BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues" | ||
8 | |||
9 | LICENSE = "LGPL-2.1-or-later" | ||
10 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ | ||
11 | " | ||
12 | |||
13 | SECTION = "x11/utils" | ||
14 | DEPENDS = "cairo gdk-pixbuf glib-2.0 libxml2 pango python3-docutils-native" | ||
15 | BBCLASSEXTEND = "native nativesdk" | ||
16 | |||
17 | inherit cargo_common gnomebase pixbufcache gobject-introspection rust vala gi-docgen cargo-update-recipe-crates | ||
18 | |||
19 | require ${BPN}-crates.inc | ||
20 | |||
21 | SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \ | ||
22 | " | ||
23 | |||
24 | SRC_URI[archive.sha256sum] = "5a328048a02d014645cd27f61140f4e0b11280fb2c7f2a21864fe0c59ac1ce88" | ||
25 | |||
26 | UPSTREAM_CHECK_REGEX = "librsvg-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)" | ||
27 | |||
28 | # librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles | ||
29 | # so we cannot use cargo class directly, but still need bits and pieces from it | ||
30 | # for cargo to be happy | ||
31 | BASEDEPENDS:append = " cargo-native" | ||
32 | |||
33 | export RUST_BACKTRACE = "full" | ||
34 | export RUSTFLAGS | ||
35 | |||
36 | export RUST_TARGET = "${RUST_HOST_SYS}" | ||
37 | |||
38 | RUSTFLAGS:append:mips = " --cfg crossbeam_no_atomic_64" | ||
39 | RUSTFLAGS:append:mipsel = " --cfg crossbeam_no_atomic_64" | ||
40 | RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64" | ||
41 | RUSTFLAGS:append:riscv32 = " --cfg crossbeam_no_atomic_64" | ||
42 | |||
43 | do_configure[postfuncs] += "cargo_common_do_configure" | ||
44 | |||
45 | inherit rust-target-config | ||
46 | |||
47 | # rust-cross writes the target linker binary into target json definition without any flags. | ||
48 | # This breaks here because the linker isn't going to work without at least knowing where | ||
49 | # the sysroot is. So copy the json to workdir, and patch in the path to wrapper from rust class | ||
50 | # which supplies the needed flags. | ||
51 | do_compile:prepend() { | ||
52 | sed -ie 's,"linker": ".*","linker": "${RUST_TARGET_CC}",g' ${RUST_TARGETS_DIR}/${RUST_HOST_SYS}.json | ||
53 | } | ||
54 | |||
55 | CVE_STATUS[CVE-2018-1000041] = "not-applicable-platform: Issue only applies on Windows" | ||
56 | |||
57 | CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" | ||
58 | |||
59 | PACKAGECONFIG ??= "gdkpixbuf" | ||
60 | PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'vala', '', d)}" | ||
61 | # The gdk-pixbuf loader | ||
62 | PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native" | ||
63 | PACKAGECONFIG[vala] = "--enable-vala,--disable-vala" | ||
64 | |||
65 | do_install:append() { | ||
66 | # Loadable modules don't need .a or .la on Linux | ||
67 | rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la | ||
68 | } | ||
69 | |||
70 | PACKAGES =+ "librsvg-gtk rsvg" | ||
71 | FILES:rsvg = "${bindir}/rsvg* \ | ||
72 | ${datadir}/pixmaps/svg-viewer.svg \ | ||
73 | ${datadir}/themes" | ||
74 | FILES:librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \ | ||
75 | ${datadir}/thumbnailers/librsvg.thumbnailer" | ||
76 | RRECOMMENDS:librsvg-gtk = "gdk-pixbuf-bin" | ||
77 | |||
78 | PIXBUF_PACKAGES = "librsvg-gtk" | ||