-# TODO: consider -x11 subpackages
#
# Conditional build:
-%bcond_without apidocs # do not build and package API docs
+%bcond_without apidocs # API documentation
%define abiver 2.10.0
-Summary: An image loading and scaling library
-Summary(pl.UTF-8): Biblioteka ładująca i skalująca obrazki
+Summary: GdkPixbuf - an image loading and scaling library
+Summary(pl.UTF-8): GdkPixbuf - biblioteka ładująca i skalująca obrazki
Name: gdk-pixbuf2
-Version: 2.36.3
-Release: 1
+Version: 2.42.6
+Release: 2
License: LGPL v2+
-Group: X11/Libraries
-Source0: http://ftp.gnome.org/pub/GNOME/sources/gdk-pixbuf/2.36/gdk-pixbuf-%{version}.tar.xz
-# Source0-md5: 4624c5397f052f5852adfe3fe9e05379
-Patch0: %{name}-png-nodep.patch
+Group: Libraries
+Source0: https://download.gnome.org/sources/gdk-pixbuf/2.42/gdk-pixbuf-%{version}.tar.xz
+# Source0-md5: 7cd2fdaa3c55e2302316fe36968f7425
URL: https://developer.gnome.org/gdk-pixbuf/
-BuildRequires: autoconf >= 2.63
-BuildRequires: automake >= 1:1.11
BuildRequires: docbook-dtd43-xml
BuildRequires: docbook-style-xsl
BuildRequires: gettext-tools >= 0.19
-BuildRequires: glib2-devel >= 1:2.37.6
+BuildRequires: glib2-devel >= 1:2.56.0
BuildRequires: gobject-introspection-devel >= 0.10.0
-BuildRequires: gtk-doc >= 1.20
-BuildRequires: jasper-devel
+%{?with_apidocs:BuildRequires: gi-docgen >= 2021.1}
BuildRequires: libjpeg-devel
-BuildRequires: libpng-devel
-BuildRequires: libtiff-devel
-BuildRequires: libtool >= 2:2.2.6
+BuildRequires: libpng-devel >= 1.0
+BuildRequires: libtiff-devel >= 4
BuildRequires: libxslt-progs
+BuildRequires: meson >= 0.55.3
+BuildRequires: ninja >= 1.5
BuildRequires: perl-devel
BuildRequires: pkgconfig
-BuildRequires: rpmbuild(macros) >= 1.527
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: shared-mime-info
BuildRequires: tar >= 1:1.22
-BuildRequires: xorg-lib-libX11-devel
BuildRequires: xz
-Requires: glib2 >= 1:2.37.6
+Requires: glib2 >= 1:2.56.0
+Requires: shared-mime-info
Suggests: librsvg >= 2.31
Conflicts: gtk+2 < 2:2.21.3-1
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%package devel
Summary: Header files for gdk-pixbuf library
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki gdk-pixbuf
-Group: X11/Development/Libraries
+Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: glib2-devel >= 1:2.37.6
+Requires: glib2-devel >= 1:2.56.0
Conflicts: gtk+2-devel < 2:2.21.3-1
%description devel
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki gdk-pixbuf.
+%package static
+Summary: Static gdk-pixbuf library
+Summary(pl.UTF-8): Biblioteka statyczna gdk-pixbuf
+Group: Development/Libraries
+Requires: %{name}-devel = %{epoch}:%{version}-%{release}
+
+%description static
+Static gdk-pixbuf library.
+
+%description static -l pl.UTF-8
+Biblioteka statyczna gdk-pixbuf.
+
%package apidocs
Summary: gdk-pixbuf API documentation
Summary(pl.UTF-8): Dokumentacja API biblioteki gdk-pixbuf
Group: Documentation
Conflicts: gtk+2-apidocs < 2:2.21.3-1
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description apidocs
API documentation for gdk-pixbuf library.
%prep
%setup -q -n gdk-pixbuf-%{version}
-%patch0 -p1
%build
-%{__gettextize}
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
- --disable-silent-rules \
- --enable-man \
- %{__enable_disable apidocs gtk-doc} \
- --with-html-dir=%{_gtkdocdir} \
- --with-libjasper \
- --with-x11
-%{__make}
+%meson build \
+ %{?with_apidocs:-Dgtk_doc=true} \
+ -Dinstalled_tests=false
+
+%ninja_build -C build
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -j1 -C build
+
+install -d $RPM_BUILD_ROOT%{_gtkdocdir}
%if "%{_lib}" != "lib"
# We need to have 32-bit and 64-bit binaries as they have hardcoded LIBDIR.
# (needed when multilib is used)
-mv -f $RPM_BUILD_ROOT%{_bindir}/gdk-pixbuf-query-loaders{,%{pqext}}
+%{__mv} $RPM_BUILD_ROOT%{_bindir}/gdk-pixbuf-query-loaders{,%{pqext}}
%endif
-touch $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/%{abiver}/loaders.cache
-
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/%{abiver}/loaders/*.la \
- $RPM_BUILD_ROOT%{_libdir}/libgdk_pixbuf{,_xlib}-2.0.la
+%if %{with apidocs}
+# FIXME: better common place to package gi-docgen genrated docs?
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/doc/gdk-* $RPM_BUILD_ROOT%{_gtkdocdir}
+%endif
-%{!?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_gtkdocdir}}
+touch $RPM_BUILD_ROOT%{_libdir}/gdk-pixbuf-2.0/%{abiver}/loaders.cache
%{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
# not supported by glibc
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc AUTHORS NEWS
+%doc NEWS README.md
%attr(755,root,root) %{_bindir}/gdk-pixbuf-query-loaders%{pqext}
%attr(755,root,root) %{_bindir}/gdk-pixbuf-thumbnailer
%attr(755,root,root) %{_libdir}/libgdk_pixbuf-2.0.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libgdk_pixbuf-2.0.so.0
-%attr(755,root,root) %{_libdir}/libgdk_pixbuf_xlib-2.0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgdk_pixbuf_xlib-2.0.so.0
%dir %{_libdir}/gdk-pixbuf-2.0
%dir %{_libdir}/gdk-pixbuf-2.0/%{abiver}
%ghost %{_libdir}/gdk-pixbuf-2.0/%{abiver}/loaders.cache
%attr(755,root,root) %{_libdir}/gdk-pixbuf-2.0/%{abiver}/loaders/libpixbufloader-*.so
%{_datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer
%{_libdir}/girepository-1.0/GdkPixbuf-2.0.typelib
+%{_libdir}/girepository-1.0/GdkPixdata-2.0.typelib
%{_mandir}/man1/gdk-pixbuf-query-loaders.1*
%files devel
%attr(755,root,root) %{_bindir}/gdk-pixbuf-csource
%attr(755,root,root) %{_bindir}/gdk-pixbuf-pixdata
%attr(755,root,root) %{_libdir}/libgdk_pixbuf-2.0.so
-%attr(755,root,root) %{_libdir}/libgdk_pixbuf_xlib-2.0.so
%{_datadir}/gir-1.0/GdkPixbuf-2.0.gir
+%{_datadir}/gir-1.0/GdkPixdata-2.0.gir
%{_mandir}/man1/gdk-pixbuf-csource.1*
%{_includedir}/gdk-pixbuf-2.0
%{_pkgconfigdir}/gdk-pixbuf-2.0.pc
-%{_pkgconfigdir}/gdk-pixbuf-xlib-2.0.pc
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libgdk_pixbuf-2.0.a
%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/gdk-pixbuf
+%{_gtkdocdir}/gdk-pixdata
%endif