- Update to version 2.48.3: + Librsvg now requires glib 2.50.0 or later. + rsvg-convert's --background-color option now accepts colors with transparency like #rrggbbaa, rgba(...), hsla(...); the transparency value was ignored before. + Fix arithmetic overflow when rendering to large GdkPixbufs. + Make librsvg build with Rust 1.39 again. + Don't require upcalls into C code for Debian powerpc. - Add check section and run testsuite during build. - Update to version 2.48.2: + Fix linking of the test suite against Harfbuzz. - Update to version 2.48.1: + Fix baseline-shift for simple subscripts/superscripts and absolute offsets. This should fix a lot of Wikimedia images with formulas. + Support images with data: URLs that don't have a MIME-type. This fixes some Open Clip Art images generated by old versions of Adobe Illustrator. + Fix build of the test suite on Windows. + Support running the rsvg_internals tests on Windows. - Update to version 2.48.0: + The following is a summary of changes between 2.46.x and 2.48.0. For full details, please see the 2.47.x release notes below. + This release requires at least Rust 1.39. + New API, rsvg_handle_set_stylesheet(), to set a CSS stylesheet independent of the SVG document. + Support opacity in patterns. + Librsvg's XML parser now supports namespaces (xmlns), and is stricter than before about it. Files may fail to parse if there are attributes or elements with namespace prefixes (e.g. foo:bar instead of plain bar), but without a corresponding namespace declaration (e.g. xmlns:foo="http://example.com/foo"). This may happen especially with incorrectly-written SVGs that use xlink:href or xi:include attributes without the corresponding namespace declarations. If you run into this, just add the following to your toplevel SVG element: <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude"> ^^^^^^^^^ these ones + Librsvg no longer depends on libcroco, and now does all CSS processing using Rust crates from Mozilla Servo. As a result, librsvg can now handle much more complex CSS selectors than before. + Link-time optimization (LTO) is disabled by default on release builds, as this increased build time too much. Downstream distributors may want to turn it back on in the toplevel Cargo.toml. + (CVE-2019-20446) - Librsvg now has limits on the number of loaded XML elements, and the number of referenced elements within an SVG document. This is to mitigate malicious SVGs which try to consume all memory, and those which try to consume an exponential amount of CPU time. + Many bugfixes; please see the 2.47.x release notes below. - Changes from version 2.47.4: + Fix rsvg-convert's multipage PDF output when the zoom option is used. + Do not stop rendering if an <image> element references a nonexistent file. This fixes a number of Open Clipart cases. + Compute the font-size cascade correctly when there are "em" #and "ex" units involved. + Updated the man page for rsvg-convert. - Update to version 2.47.3: + New API, rsvg_handle_set_stylesheet(), to set a CSS stylesheet independent of the SVG document. + Support opacity in patterns. + Move away from the Cairo transform type to our own. + Update the gtk-rs version. - Changes from version 2.47.2: + Handling of the "result", "in", "in2" attributes in filter primitives is slightly stricter now, and spec compliant. + Fix infinite loop when processing CSS sibling combinators. + feImage filters no longer clip their output to integer coordinates. + Documentation for the Rust crate. + Debug logs from RSVG_LOG=1 should now be more legible and contain better information on invalid CSS. + Remove link-time workarounds for Rust pre-1.35. + Unify internal error types to share the CSS code with gnome-shell. + Made handling of XML namespaces more spec-compliant. + Lots of refactoring to start moving away from Cairo internals. - Changes from version 2.47.1: + Librsvg no longer depends on libcroco! It now does all CSS processing using Rust crates from Mozilla Servo; these are also the crates that are in use in recent versions of Firefox. As a result, librsvg can now handle much more complex CSS selectors than before. - Drop pkgconfig(libcroco-0.6) BuildRequires: no longer needed. OBS-URL: https://build.opensuse.org/request/show/793107 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/librsvg?expand=0&rev=170
199 lines
6.2 KiB
RPMSpec
199 lines
6.2 KiB
RPMSpec
#
|
|
# spec file for package librsvg
|
|
#
|
|
# Copyright (c) 2020 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
# Don't forget to update this in baselibs.conf too!
|
|
%define librsvg_sover 2
|
|
|
|
Name: librsvg
|
|
Version: 2.48.3
|
|
Release: 0
|
|
Summary: A Library for Rendering SVG Data
|
|
License: LGPL-2.0-or-later AND GPL-2.0-or-later AND Apache-2.0 AND MIT
|
|
Group: Development/Libraries/C and C++
|
|
URL: https://wiki.gnome.org/Projects/LibRsvg
|
|
Source0: https://download.gnome.org/sources/librsvg/2.48/%{name}-%{version}.tar.xz
|
|
Source99: baselibs.conf
|
|
|
|
BuildRequires: cargo
|
|
BuildRequires: gobject-introspection-devel
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: rust >= 1.39
|
|
BuildRequires: vala
|
|
BuildRequires: pkgconfig(cairo) >= 1.16.0
|
|
BuildRequires: pkgconfig(cairo-png) >= 1.2.0
|
|
BuildRequires: pkgconfig(fontconfig)
|
|
BuildRequires: pkgconfig(freetype2) >= 20.0.14
|
|
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.20
|
|
BuildRequires: pkgconfig(gio-2.0) >= 2.24.0
|
|
BuildRequires: pkgconfig(gio-unix-2.0)
|
|
BuildRequires: pkgconfig(glib-2.0) >= 2.50.0
|
|
BuildRequires: pkgconfig(gmodule-2.0)
|
|
BuildRequires: pkgconfig(gthread-2.0) >= 2.12.0
|
|
BuildRequires: pkgconfig(libxml-2.0) >= 2.9.0
|
|
BuildRequires: pkgconfig(pangocairo) >= 1.38.0
|
|
BuildRequires: pkgconfig(pangoft2) >= 1.38.0
|
|
# Avoid cycle: we do not require the adwaita-icon-theme to be present. libgtk-3.0 requires this for end users
|
|
#!BuildIgnore: adwaita-icon-theme
|
|
|
|
%description
|
|
This package contains a library to render SVG (scalable vector
|
|
graphics) data. This format has been specified by the W3C (see
|
|
http://www.w3c.org).
|
|
|
|
%package -n librsvg-2-%{librsvg_sover}
|
|
Summary: A Library for Rendering SVG Data
|
|
License: LGPL-2.0-or-later AND Apache-2.0 AND MIT
|
|
Group: System/Libraries
|
|
Provides: librsvg2 = %{version}
|
|
Obsoletes: librsvg2 < %{version}
|
|
Provides: librsvg = %{version}
|
|
Obsoletes: librsvg < %{version}
|
|
Obsoletes: rsvg-view <= %{version}
|
|
|
|
%description -n librsvg-2-%{librsvg_sover}
|
|
This package contains a library to render SVG (scalable vector
|
|
graphics) data. This format has been specified by the W3C (see
|
|
http://www.w3c.org).
|
|
|
|
%package -n typelib-1_0-Rsvg-2_0
|
|
Summary: Introspection bindings for librsvg, a SVG render library
|
|
License: LGPL-2.0-or-later
|
|
Group: System/Libraries
|
|
|
|
%description -n typelib-1_0-Rsvg-2_0
|
|
This package contains a library to render SVG (scalable vector
|
|
graphics) data. This format has been specified by the W3C (see
|
|
http://www.w3c.org).
|
|
|
|
This package provides the GObject Introspection bindings for librsvg.
|
|
|
|
%package devel
|
|
Summary: Development files for librsvg, a SVG render library
|
|
License: LGPL-2.0-or-later
|
|
Group: Development/Libraries/C and C++
|
|
Requires: librsvg-2-%{librsvg_sover} = %{version}
|
|
Requires: typelib-1_0-Rsvg-2_0 = %{version}
|
|
Provides: librsvg2-devel = %{version}
|
|
Obsoletes: librsvg2-devel < %{version}
|
|
|
|
%description devel
|
|
This package contains all necessary include files and libraries needed
|
|
to develop applications that require these.
|
|
|
|
%package -n gdk-pixbuf-loader-rsvg
|
|
Summary: A gdk-pixbuf loader for SVG using librsvg
|
|
License: LGPL-2.0-or-later
|
|
Group: System/Libraries
|
|
Supplements: (librsvg-2-%{librsvg_sover} and gdk-pixbuf)
|
|
%{gdk_pixbuf_loader_requires}
|
|
|
|
%description -n gdk-pixbuf-loader-rsvg
|
|
This package contains a library to render SVG (scalable vector
|
|
graphics) data. This format has been specified by the W3C (see
|
|
http://www.w3c.org).
|
|
|
|
This package provides a librsvg-based gdk-pixbuf loader.
|
|
|
|
%package -n rsvg-convert
|
|
Summary: SVG Convert using the GNOME Render SVG library
|
|
License: LGPL-2.0-or-later
|
|
Group: Productivity/Graphics/Viewers
|
|
Conflicts: rsvg-view <= 2.45.7
|
|
|
|
%description -n rsvg-convert
|
|
This package contains a tool to convert SVG (scalable vector
|
|
graphics) data. This format has been specified by the W3C (see
|
|
http://www.w3c.org).
|
|
|
|
%package -n rsvg-thumbnailer
|
|
Summary: SVG thumbnailer using the GNOME Render SVG library
|
|
License: LGPL-2.0-or-later
|
|
Group: Productivity/Graphics/Other
|
|
BuildArch: noarch
|
|
|
|
%description -n rsvg-thumbnailer
|
|
This package contains a thumbnailer to render SVG (scalable vector
|
|
graphics) data.
|
|
|
|
%lang_package
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
|
|
%build
|
|
%configure \
|
|
--disable-static\
|
|
--enable-introspection\
|
|
--enable-vala \
|
|
%{nil}
|
|
%make_build
|
|
|
|
%install
|
|
%make_install
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
|
# %%doc is used to package such contents
|
|
rm -rf %{buildroot}%{_datadir}/doc/%{name}
|
|
%find_lang %{name} %{?no_lang_C}
|
|
|
|
%check
|
|
%make_build check
|
|
|
|
%post -n librsvg-2-%{librsvg_sover} -p /sbin/ldconfig
|
|
%post -n gdk-pixbuf-loader-rsvg
|
|
%{gdk_pixbuf_loader_post}
|
|
|
|
%postun -n librsvg-2-%{librsvg_sover} -p /sbin/ldconfig
|
|
%postun -n gdk-pixbuf-loader-rsvg
|
|
%{gdk_pixbuf_loader_postun}
|
|
|
|
%files -n librsvg-2-%{librsvg_sover}
|
|
%license COPYING.LIB
|
|
%doc NEWS README.md
|
|
%{_libdir}/librsvg-2.so.*
|
|
|
|
%files -n typelib-1_0-Rsvg-2_0
|
|
%{_libdir}/girepository-1.0/Rsvg-2.0.typelib
|
|
|
|
%files -n gdk-pixbuf-loader-rsvg
|
|
%{_libdir}/gdk-pixbuf-2.0/*/loaders/libpixbufloader-svg.so
|
|
|
|
%files -n rsvg-convert
|
|
%{_bindir}/rsvg-convert
|
|
%{_mandir}/man1/rsvg-convert.1%{?ext_man}
|
|
|
|
%files -n rsvg-thumbnailer
|
|
%dir %{_datadir}/thumbnailers
|
|
%{_datadir}/thumbnailers/librsvg.thumbnailer
|
|
|
|
%files devel
|
|
%doc AUTHORS COMPILING.md CONTRIBUTING.md
|
|
%{_includedir}/librsvg-2.0/
|
|
%{_libdir}/librsvg-2.so
|
|
%{_libdir}/pkgconfig/librsvg-2.0.pc
|
|
%{_datadir}/gir-1.0/Rsvg-2.0.gir
|
|
%dir %{_datadir}/vala/vapi
|
|
%{_datadir}/vala/vapi/librsvg-2.0.vapi
|
|
# Own these directories to not depend on gtk-doc while building
|
|
%dir %{_datadir}/gtk-doc
|
|
%dir %{_datadir}/gtk-doc/html
|
|
%doc %{_datadir}/gtk-doc/html/rsvg-2.0
|
|
|
|
%files lang -f %{name}.lang
|
|
|
|
%changelog
|