]> git.pld-linux.org Git - packages/librsvg.git/blobdiff - librsvg.spec
up to 2.54.0
[packages/librsvg.git] / librsvg.spec
index 7b27a0bf2b2cdb4f50f8b9445add7b794327437c..6ac4754e6963033d54e37e60112b0ba4088e529c 100644 (file)
@@ -1,60 +1,70 @@
 #
 # Conditional build
-%bcond_without apidocs         # disable gtk-doc
-%bcond_without gtk2            # legacy gtk+2 support
-%bcond_without libcroco        # build without CSS support through libcroco
-%bcond_without static_libs     # don't build static library
-#
-
-%define                ver     2.36
-%define                pver    4
+%bcond_without static_libs     # static library
+%bcond_without vala            # Vala API (vala up to 0.38.x already contains librsvg-2.0.vapi)
 
+%define                mver    2.54
+%define                pver    0
 Summary:       A Raph's Library for Rendering SVG Data
 Summary(pl.UTF-8):     Biblioteka Raph's SVG do renderowania danych SVG
 Summary(pt_BR.UTF-8):  Biblioteca SVG
 Summary(ru.UTF-8):     SVG библиотека
 Summary(uk.UTF-8):     SVG бібліотека
 Name:          librsvg
-Version:       %{ver}.%{pver}
+Version:       %{mver}.%{pver}
 Release:       1
 Epoch:         1
 License:       LGPL v2+
 Group:         X11/Libraries
-Source0:       http://ftp.gnome.org/pub/GNOME/sources/librsvg/%{ver}/%{name}-%{version}.tar.xz
-# Source0-md5: 3c94524c8ccf668e30b236f409239f54
+Source0:       https://download.gnome.org/sources/librsvg/%{mver}/%{name}-%{version}.tar.xz
+# Source0-md5: 22328b7922ab04836959f669ecef1ea7
 Source1:       rsvg
-URL:           http://librsvg.sourceforge.net/
-BuildRequires: autoconf
+Patch0:                x32.patch
+URL:           https://wiki.gnome.org/Projects/LibRsvg
+BuildRequires: autoconf >= 2.69
 BuildRequires: automake >= 1:1.9
-BuildRequires: cairo-devel >= 1.2.0
-BuildRequires: docbook-dtd412-xml
-BuildRequires: gdk-pixbuf2-devel >= 2.0
-BuildRequires: glib2-devel >= 1:2.24.0
+BuildRequires: cairo-devel >= 1.16.0
+BuildRequires: cairo-gobject-devel >= 1.16.0
+BuildRequires: cargo
+BuildRequires: docbook-dtd43-xml
+BuildRequires: docutils
+BuildRequires: fontconfig-devel
+# pkgconfig(freetype) >= 20.0.14
+BuildRequires: freetype-devel >= 1:2.8
+BuildRequires: gdk-pixbuf2-devel >= 2.20
+BuildRequires: gi-docgen
+BuildRequires: glib2-devel >= 1:2.50.0
 BuildRequires: gobject-introspection-devel >= 0.10.8
-%{?with_gtk2:BuildRequires:    gtk+2-devel >= 2:2.16.0}
-BuildRequires: gtk+3-devel >= 3.0.0
-%{?with_apidocs:BuildRequires: gtk-doc >= 1.13}
-%{?with_apidocs:BuildRequires: gtk-doc-automake >= 1.13}
-%{?with_libcroco:BuildRequires:        libcroco-devel >= 0.6.1}
+BuildRequires: harfbuzz-devel >= 2.0.0
+BuildRequires: libcroco-devel >= 0.6.1
 BuildRequires: libtool >= 2:2.0
-BuildRequires: libxml2-devel >= 1:2.7.0
-BuildRequires: pango-devel >= 1:1.16.0
+BuildRequires: libxml2-devel >= 1:2.9.0
+BuildRequires: pango-devel >= 1:1.48.11
 BuildRequires: pkgconfig
+BuildRequires: rpm-build >= 4.6
 BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: rust >= 1.52
 BuildRequires: sed >= 4.0
 BuildRequires: tar >= 1:1.22
+%{?with_vala:BuildRequires:    vala >= 2:0.18}
 BuildRequires: xz
 Requires(post,postun): /sbin/ldconfig
-Requires(post,postun): gdk-pixbuf2 >= 2.0
-Requires:      cairo >= 1.2.0
-Requires:      gdk-pixbuf2 >= 2.0
-Requires:      glib2 >= 1:2.24.0
-%{?with_libcroco:Requires:     libcroco >= 0.6.1}
-Requires:      libxml2 >= 1:2.7.0
-Requires:      pango >= 1:1.16.0
-Obsoletes:     browser-plugin-librsvg
-Obsoletes:     librsvg0
-Obsoletes:     mozilla-plugin-rsvg
+Requires:      cairo-gobject >= 1.16.0
+Requires:      freetype >= 1:2.8
+Requires:      gdk-pixbuf2 >= 2.20
+Requires:      glib2 >= 1:2.50.0
+Requires:      harfbuzz >= 2.0.0
+Requires:      libcroco >= 0.6.1
+Requires:      libxml2 >= 1:2.9.0
+Requires:      pango >= 1:1.48.11
+Obsoletes:     browser-plugin-librsvg < 1:2.15
+Obsoletes:     librsvg-gtk+2 < 1:2.40
+Obsoletes:     librsvg-gtk+3 < 1:2.46
+Obsoletes:     librsvg0 < 2
+Obsoletes:     mozilla-plugin-rsvg < 1:2.16.1
+# rust archs
+ExclusiveArch: %{x8664} %{ix86} x32 aarch64 armv6hl armv7hl armv7hnl
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # see gdk-pixbuf2.spec for source of these ifdefs
@@ -87,14 +97,14 @@ Summary(ru.UTF-8):  Библиотечные линки и файлы загол
 Summary(uk.UTF-8):     Бібліотечні лінки та файли заголовків для розробки з librsvg
 Group:         X11/Development/Libraries
 Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      cairo-devel >= 1.2.0
-Requires:      gdk-pixbuf2-devel >= 2.0
-Requires:      glib2-devel >= 1:2.24.0
-Requires:      gtk+3-devel >= 3.0.0
-%{?with_libcroco:Requires:     libcroco-devel >= 0.6.1}
-Requires:      libxml2-devel >= 1:2.7.0
-Requires:      pango-devel >= 1:1.16.0
-Obsoletes:     librsvg0-devel
+Requires:      cairo-gobject-devel >= 1.16.0
+Requires:      freetype-devel >= 1:2.8
+Requires:      gdk-pixbuf2-devel >= 2.20
+Requires:      glib2-devel >= 1:2.50.0
+Requires:      libcroco-devel >= 0.6.1
+Requires:      libxml2-devel >= 1:2.9.0
+Requires:      pango-devel >= 1:1.48.11
+Obsoletes:     librsvg0-devel < 2
 
 %description devel
 This package provides the necessary development libraries and include
@@ -139,6 +149,7 @@ Summary:    librsvg API documentation
 Summary(pl.UTF-8):     Dokumentacja API biblioteki librsvg
 Group:         Documentation
 Requires:      gtk-doc-common
+BuildArch:     noarch
 
 %description apidocs
 librsvg API documentation.
@@ -146,59 +157,43 @@ librsvg API documentation.
 %description apidocs -l pl.UTF-8
 Dokumentacja API biblioteki librsvg.
 
-%package gtk+2
-Summary:       librsvg/GTK+2 based SVG theme engine and viewer
-Summary(pl.UTF-8):     Silnik motywów oraz przeglądarka plików SVG oparte na bibliotekach librsvg/GTK+2
-Group:         X11/Libraries
-Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      gtk+2 >= 2:2.16.0
-
-%description gtk+2
-librsvg/GTK+2 based SVG theme engine and viewer.
-
-%description gtk+2 -l pl.UTF-8
-Silnik motywów oraz przeglądarka plików SVG oparte na bibliotekach
-librsvg/GTK+2.
-
-%package gtk+3
-Summary:       librsvg/GTK+3 based SVG theme and viewer
-Summary(pl.UTF-8):     Motyw i przeglądarka plików SVG oparte na bibliotekach librsvg/GTK+3
-Group:         X11/Libraries
-Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      gtk+3 >= 3.0.0
+%package -n vala-librsvg
+Summary:       Vala API for librsvg library
+Summary(pl.UTF-8):     API języka Vala do biblioteki librsvg
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
+Requires:      vala >= 2:0.40
+BuildArch:     noarch
 
-%description gtk+3
-librsvg/GTK+3 based SVG theme and viewer.
+%description -n vala-librsvg
+Vala API for librsvg library.
 
-%description gtk+3 -l pl.UTF-8
-Motyw i przeglądarka plików SVG oparte na bibliotekach librsvg/GTK+3.
+%description -n vala-librsvg -l pl.UTF-8
+API języka Vala do biblioteki librsvg.
 
 %prep
 %setup -q
+%patch0 -p1
 
-%if %{without apidocs}
-echo 'CLEANFILES=' > gtk-doc.make
-echo 'AC_DEFUN([GTK_DOC_CHECK],[])' >> acinclude.m4
+%ifarch x32
+%{__sed} -i -e 's/test "\?x\?\$cross_compiling"\? = "\?x\?yes"\?/true/' configure.ac
 %endif
 
-# vala not ready yet here
-echo 'AC_DEFUN([VAPIGEN_CHECK],[AM_CONDITIONAL([ENABLE_VAPIGEN], [false])])' >> acinclude.m4
-
 %build
-mkdir m4
-%{?with_apidocs:%{__gtkdocize}}
 %{__libtoolize}
-%{__aclocal}
+%{__aclocal} -I m4
 %{__autoconf}
 %{__autoheader}
 %{__automake}
 %configure \
+%ifarch x32
+       RUST_TARGET=x86_64-unknown-linux-gnux32 \
+%endif
+       --enable-introspection \
        --disable-silent-rules \
        %{__enable_disable static_libs static} \
-       %{__enable_disable apidocs gtk-doc} \
-       --enable-introspection \
-       %{__with_without libcroco croco} \
-       --with-html-dir=%{_gtkdocdir}/%{name}
+       %{?with_vala:--enable-vala}
+
 %{__make}
 
 %install
@@ -208,13 +203,16 @@ rm -rf $RPM_BUILD_ROOT
        DESTDIR=$RPM_BUILD_ROOT \
        pkgconfigdir=%{_pkgconfigdir}
 
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/2.*/engines/*.{la,a}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/2.*.*/loaders/*.{la,a}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/2.*.*/loaders/*.la
+%if %{with static_libs}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/2.*.*/loaders/*.a
+%endif
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/librsvg-2.la
 
-%{__ln_s} rsvg-view-3 $RPM_BUILD_ROOT%{_bindir}/rsvg-view
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}
+install -d $RPM_BUILD_ROOT%{_gtkdocdir}
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/doc/librsvg $RPM_BUILD_ROOT%{_gtkdocdir}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -233,14 +231,14 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc ChangeLog AUTHORS NEWS
+%doc AUTHORS NEWS
 %attr(755,root,root) %{_bindir}/rsvg
 %attr(755,root,root) %{_bindir}/rsvg-convert
 %attr(755,root,root) %{_libdir}/librsvg-2.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/librsvg-2.so.2
 %{_libdir}/girepository-1.0/Rsvg-2.0.typelib
 %attr(755,root,root) %{_libdir}/gdk-pixbuf-2.0/2.*.*/loaders/libpixbufloader-svg.so
-%dir %{_datadir}/themes/bubble
+%{_datadir}/thumbnailers/librsvg.thumbnailer
 %{_mandir}/man1/rsvg-convert.1*
 
 %files devel
@@ -256,20 +254,12 @@ fi
 %{_libdir}/librsvg-2.a
 %endif
 
-%if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
 %{_gtkdocdir}/%{name}
-%endif
 
-%if %{with gtk2}
-%files gtk+2
+%if %{with vala}
+%files -n vala-librsvg
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/gtk-2.0/2.*/engines/libsvg.so
-%{_datadir}/themes/bubble/gtk-2.0
+%{_datadir}/vala/vapi/librsvg-2.0.vapi
 %endif
-
-%files gtk+3
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/rsvg-view-3
-%attr(755,root,root) %{_bindir}/rsvg-view
This page took 0.037912 seconds and 4 git commands to generate.