[packages/gtk+4] - updated to 3.94.0 - removed outdated papi patch - added lpr patch (allow building lpr printbackend

qboosh qboosh at pld-linux.org
Fri Oct 26 20:28:17 CEST 2018


commit f97256706dc5ad35b99455d0183831d3a616a620
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Fri Oct 26 20:32:00 2018 +0200

    - updated to 3.94.0
    - removed outdated papi patch
    - added lpr patch (allow building lpr printbackend even if cups printbackend is built)

 gtk+4-lpr.patch  |  11 +++
 gtk+4-papi.patch |  69 ---------------
 gtk+4.spec       | 261 ++++++++++++++++++++++---------------------------------
 3 files changed, 115 insertions(+), 226 deletions(-)
---
diff --git a/gtk+4.spec b/gtk+4.spec
index 283f3d8..1486389 100644
--- a/gtk+4.spec
+++ b/gtk+4.spec
@@ -1,15 +1,15 @@
-# TODO: vulkan+glslc
+# TODO: vulkan+glslc[BR: shaderc]
 #
 # Conditional build:
 %bcond_without	apidocs		# gtk-doc build
-%bcond_without	cloudprint	# cloudprint print backend
-%bcond_without	cups		# CUPS print backend
-%bcond_without	papi		# PAPI print backend
 %bcond_without	broadway	# Broadway target
-%bcond_with	mir		# Mir target
-%bcond_without	vulkan		# Vulkan graphics support
 %bcond_without	wayland		# Wayland target
-%bcond_without	static_libs	# static library build
+%bcond_without	vulkan		# Vulkan graphics support
+%bcond_without	gstreamer	# GStreamer media backend
+%bcond_with	ffmpeg		# FFmpeg media backend
+%bcond_with	cloudproviders	# cloudproviders support
+%bcond_without	cloudprint	# cloudprint print backend
+%bcond_without	cups		# CUPS print backend
 
 Summary:	The GIMP Toolkit
 Summary(cs.UTF-8):	Sada nástrojů pro GIMP
@@ -20,47 +20,47 @@ Summary(it.UTF-8):	Il toolkit per GIMP
 Summary(pl.UTF-8):	GIMP Toolkit
 Summary(tr.UTF-8):	GIMP ToolKit arayüz kitaplığı
 Name:		gtk+4
-Version:	3.90.0
+Version:	3.94.0
 Release:	1
 License:	LGPL v2+
 Group:		X11/Libraries
-Source0:	http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.90/gtk+-%{version}.tar.xz
-# Source0-md5:	38df8442d7a5b96fe02e245c4f03a5e1
-Patch0:		%{name}-papi.patch
+Source0:	http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.94/gtk+-%{version}.tar.xz
+# Source0-md5:	047f05058d3ad6a3bbfcb48d3167099e
+Patch0:		%{name}-lpr.patch
 URL:		http://www.gtk.org/
 BuildRequires:	at-spi2-atk-devel >= 2.6.0
 BuildRequires:	atk-devel >= 1:2.16.0
-BuildRequires:	autoconf >= 2.62
-BuildRequires:	automake >= 1:1.11
 # cairo-gobject + cairo-pdf,cairo-ps,cairo-svg
 BuildRequires:	cairo-gobject-devel >= 1.14.0
 BuildRequires:	colord-devel >= 0.1.9
-%if %{with cups} || %{with papi}
-BuildRequires:	cups-devel >= 1:1.2
+%if %{with cups}
+BuildRequires:	cups-devel >= 1:1.6
 %endif
 BuildRequires:	docbook-dtd412-xml
 BuildRequires:	docbook-style-xsl
 BuildRequires:	fontconfig-devel
+# libavfilter >= 6.47.100, libavformat >= 57.41.100, libavcodec >= 57.48.101, libavutil >= 55.28.100, libswscale >= 4.6.100
+%{?with_ffmpeg:BuildRequires:	ffmpeg-devel >= 3.1.1}
+BuildRequires:	freetype-devel >= 1:2.7.1
 BuildRequires:	gdk-pixbuf2-devel >= 2.31.0
 BuildRequires:	gettext-tools >= 0.19.7
-BuildRequires:	glib2-devel >= 1:2.51.5
+BuildRequires:	glib2-devel >= 1:2.55.0
 BuildRequires:	gobject-introspection-devel >= 1.39.0
 BuildRequires:	graphene-devel >= 1.5.1
+%{?with_gstreamer:BuildRequires:	gstreamer-devel >= 1.12.3}
 %if %{with apidocs}
 BuildRequires:	gtk-doc >= 1.25-2
-BuildRequires:	gtk-doc-automake >= 1.25-2
 %endif
 BuildRequires:	harfbuzz-devel >= 0.9
 %{?with_cloudprint:BuildRequires:	json-glib-devel >= 1.0}
-BuildRequires:	libepoxy-devel >= 1.0
+%{?with_cloudproviders:BuildRequires:	libcloudproviders-devel >= 0.2.5}
+BuildRequires:	libepoxy-devel >= 1.4
 BuildRequires:	libstdc++-devel
 BuildRequires:	libtool >= 2:2.2.6
 BuildRequires:	libxml2-progs >= 1:2.6.31
 BuildRequires:	libxslt-progs >= 1.1.20
-# mirclient >= 0.22.0, mircookie >= 0.17.0
-%{?with_mir:BuildRequires:	mir-devel >= 0.22.0}
-BuildRequires:	pango-devel >= 1:1.38.0
-%{?with_papi:BuildRequires:	papi-devel}
+BuildRequires:	meson >= 0.43.0
+BuildRequires:	pango-devel >= 1:1.41.0
 BuildRequires:	perl-base
 BuildRequires:	pkgconfig
 %{?with_cloudprint:BuildRequires:	rest-devel >= 0.7}
@@ -85,25 +85,27 @@ BuildRequires:	xorg-lib-libXrender-devel
 BuildRequires:	xz
 %{?with_broadway:BuildRequires:	zlib-devel}
 %if %{with wayland}
-BuildRequires:	Mesa-libwayland-egl-devel
 # wayland-client, wayland-cursor, wayland-scanner
-BuildRequires:	wayland-devel >= 1.9.91
-BuildRequires:	wayland-protocols >= 1.7
+BuildRequires:	wayland-devel >= 1.14.91
+BuildRequires:	wayland-egl-devel
+BuildRequires:	wayland-protocols >= 1.12
 BuildRequires:	xorg-lib-libxkbcommon-devel >= 0.2.0
 %endif
 Requires:	xorg-lib-libX11 >= 1.5.0
-Requires(post,postun):	glib2 >= 1:2.51.5
+Requires(post,postun):	glib2 >= 1:2.55.0
 Requires:	atk >= 1:2.16.0
 Requires:	cairo-gobject >= 1.14.0
+Requires:	freetype >= 1:2.7.1
 Requires:	gdk-pixbuf2 >= 2.31.0
-Requires:	glib2 >= 1:2.51.5
+Requires:	glib2 >= 1:2.55.0
 Requires:	graphene >= 1.5.1
-Requires:	libepoxy >= 1.0
-Requires:	pango >= 1:1.38.0
+%{?with_cloudproviders:Requires:	libcloudproviders >= 0.2.5}
+Requires:	libepoxy >= 1.4
+Requires:	pango >= 1:1.41.0
 Requires:	xorg-lib-libXi >= 1.3.0
 Requires:	xorg-lib-libXrandr >= 1.5.0
 %if %{with wayland}
-Requires:	wayland >= 1.9.91
+Requires:	wayland >= 1.14.91
 Requires:	xorg-lib-libxkbcommon >= 0.2.0
 %endif
 # evince is used as gtk-print-preview-command by default
@@ -112,6 +114,7 @@ Suggests:	evince-backend-pdf
 # cups is used by default if gtk+ is built with cups
 Suggests:	%{name}-cups = %{version}-%{release}
 %endif
+Obsoletes:	gtk+4-papi
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		abivers	4.0.0
@@ -170,7 +173,7 @@ Summary:	Utility to update icon cache used by GTK+ library
 Summary(pl.UTF-8):	Narzędzie do uaktualniania cache'a ikon używanego przez bibliotekę GTK+
 Group:		Applications/System
 Requires:	gdk-pixbuf2 >= 2.31.0
-Requires:	glib2 >= 1:2.51.5
+Requires:	glib2 >= 1:2.55.0
 
 %description update-icon-cache
 Utility to update icon cache used by GTK+ library.
@@ -196,10 +199,10 @@ Requires:	atk-devel >= 1:2.16.0
 Requires:	cairo-gobject-devel >= 1.14.0
 Requires:	fontconfig-devel
 Requires:	gdk-pixbuf2-devel >= 2.31.0
-Requires:	glib2-devel >= 1:2.51.5
+Requires:	glib2-devel >= 1:2.55.0
 Requires:	graphene-devel >= 1.5.1
-Requires:	libepoxy-devel >= 1.0
-Requires:	pango-devel >= 1:1.38.0
+Requires:	libepoxy-devel >= 1.4
+Requires:	pango-devel >= 1:1.41.0
 Requires:	shared-mime-info
 Requires:	xorg-lib-libX11-devel >= 1.5.0
 Requires:	xorg-lib-libXcomposite-devel
@@ -211,9 +214,9 @@ Requires:	xorg-lib-libXi-devel
 Requires:	xorg-lib-libXinerama-devel
 Requires:	xorg-lib-libXrandr-devel
 %if %{with wayland}
-Requires:	Mesa-libwayland-egl-devel
-Requires:	wayland-devel >= 1.9.91
-Requires:	wayland-protocols >= 1.7
+Requires:	wayland-devel >= 1.14.91
+Requires:	wayland-egl-devel
+Requires:	wayland-protocols >= 1.12
 Requires:	xorg-lib-libxkbcommon-devel >= 0.2.0
 %endif
 
@@ -254,7 +257,7 @@ Dokumentacja API GTK+.
 Summary:	GTK+ - example programs
 Summary(pl.UTF-8):	GTK+ - programy przykładowe
 Group:		X11/Development/Libraries
-Requires(post,postun):	glib2 >= 1:2.51.5
+Requires(post,postun):	glib2 >= 1:2.55.0
 Requires:	%{name}-devel = %{version}-%{release}
 
 %description examples
@@ -280,6 +283,7 @@ Summary:	CUPS printing module for GTK+
 Summary(pl.UTF-8):	Moduł GTK+ do drukowania przez CUPS
 Group:		X11/Libraries
 Requires:	%{name} = %{version}-%{release}
+Requires:	cups-lib >= 1.6
 
 %description cups
 CUPS printing module for GTK+.
@@ -287,96 +291,42 @@ CUPS printing module for GTK+.
 %description cups -l pl.UTF-8
 Moduł GTK+ do drukowania przez CUPS.
 
-%package papi
-Summary:	PAPI printing module for GTK+
-Summary(pl.UTF-8):	Moduł GTK+ do drukowania przez PAPI
-Group:		X11/Libraries
-Requires:	%{name} = %{version}-%{release}
-Requires:	papi
-
-%description papi
-PAPI printing module for GTK+.
-
-%description papi -l pl.UTF-8
-Moduł GTK+ do drukowania przez PAPI.
-
 %prep
 %setup -q -n gtk+-%{version}
 %patch0 -p1
 
-# for packaging clean examples
-# TODO: add am patch to do it like demos/gtk-demo via some configurable dir
-# NOTE: make install so far installs only demos/gtk-demo
-install -d _examples
-cp -a demos examples _examples
-
-# upstream used too new wayland for make dist in 3.10.6 - force regeneration
-touch gdk/wayland/protocol/gtk-shell.xml
-
 %build
-CPPFLAGS="%{rpmcppflags}%{?with_papi: -I/usr/include/papi}"
-%{?with_apidocs:%{__gtkdocize}}
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-	--disable-silent-rules \
-	%{!?with_cloudprint:--disable-cloudprint} \
-	%{__disable cups} \
-	%{!?with_papi:--disable-papi} \
-	%{?debug:--enable-debug=yes} \
-	%{__enable_disable apidocs gtk-doc} \
-	--enable-man \
-	%{__enable_disable static_libs static} \
-	%{?with_broadway:--enable-broadway-backend} \
-	%{?with_mir:--enable-mir-backend} \
-	%{!?with_vulkan:--disable-vulkan} \
-	%{?with_wayland:--enable-wayland-backend} \
-	--enable-x11-backend \
-	--enable-xinerama \
-	--enable-xkb \
-	--with-html-dir=%{_gtkdocdir}
-
-%{__make} \
-	democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo
+%meson build \
+	%{?with_apidocs:-Ddocumentation=true} \
+	%{?with_broadway:-Dbroadway-backend=true} \
+	%{?with_cloudproviders:-Dcloudproviders=true} \
+	-Dinstall-tests=false \
+	-Dman-pages=true \
+	-Dmedia-backends=%{!?with_ffmpeg:%{!?with_gstreamer:no}}%{?with_ffmpeg:ffmpeg,}%{?with_gstreamer:gstreamer} \
+	-Dprint-backends=file,lpr%{?with_cups:,cups}%{?with_cloudprint:,cloudprint} \
+	%{!?with_vulkan:-Dvulkan=no} \
+	%{!?with_wayland:-Dwayland-backend=false} \
+	-Dxinerama=yes
+
+%meson_build -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/engines
-install -d $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/theming-engines
 
-%{__make} install \
-	democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo \
-	DESTDIR=$RPM_BUILD_ROOT
+%meson_install -C build
 
-touch $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/gtk.immodules
-install -d $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/modules
+install -d $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/{immodules,inspector}
 
 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-cp -a _examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-
-# shut up check-files (static modules and *.la for modules)
-%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/*/*.la \
-	%{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{abivers}/*/*.a}
-
-%if "%{_lib}" != "lib"
-# We need to have 32-bit and 64-bit binaries as they have hardcoded LIBDIR.
-# (needed when multilib is used)
-%{__mv} $RPM_BUILD_ROOT%{_bindir}/gtk4-query-immodules{,%{pqext}}
-%endif
+cp -a demos examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr at ije,sr at ijekavian}
 # unsupported by glibc
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/io
 
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
-
+# gtk40 and gtk40-properties domains
 %find_lang %{name} --all-name
 
-%{!?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_gtkdocdir}/{gdk4,gtk4}}
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -384,14 +334,16 @@ rm -rf $RPM_BUILD_ROOT
 /sbin/ldconfig
 %glib_compile_schemas
 umask 022
-%{_bindir}/gtk4-query-immodules%{pqext} --update-cache
+gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/immodules
+gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
 exit 0
 
 %postun
 /sbin/ldconfig
 if [ "$1" != "0" ]; then
 	umask 022
-	%{_bindir}/gtk4-query-immodules%{pqext} --update-cache
+	gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/immodules
+	gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
 else
 	%glib_compile_schemas
 fi
@@ -399,59 +351,70 @@ exit 0
 
 %post examples
 %glib_compile_schemas
+%update_desktop_database
+%update_icon_cache hicolor
 
 %postun examples
 %glib_compile_schemas
+%update_desktop_database
+%update_icon_cache hicolor
+
+%post cloudprint
+umask 022
+gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
+
+%postun cloudprint
+if [ "$1" != "0" ]; then
+	umask 022
+	gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
+fi
+exit 0
+
+%post cups
+umask 022
+gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
+
+%postun cups
+if [ "$1" != "0" ]; then
+	umask 022
+	gio-querymodules %{_libdir}/gtk-4.0/%{abivers}/printbackends
+fi
+exit 0
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc AUTHORS NEWS README
+%doc AUTHORS NEWS README.md
 %{?with_broadway:%attr(755,root,root) %{_bindir}/gtk4-broadwayd}
 %attr(755,root,root) %{_bindir}/gtk4-launch
-%attr(755,root,root) %{_bindir}/gtk4-query-immodules%{pqext}
-%attr(755,root,root) %{_libdir}/libgtk-4.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgtk-4.so.0
+%attr(755,root,root) %{_libdir}/libgtk-4.so.0.9400.0
+# library filename is actual soname as of 3.94.x
+#attr(755,root,root) %ghost %{_libdir}/libgtk-4.so.0.9400.0
 
 %dir %{_libdir}/gtk-4.0
-%dir %{_libdir}/gtk-4.0/modules
 %dir %{_libdir}/gtk-4.0/%{abivers}
-%dir %{_libdir}/gtk-4.0/%{abivers}/engines
-%dir %{_libdir}/gtk-4.0/%{abivers}/theming-engines
 %dir %{_libdir}/gtk-4.0/%{abivers}/immodules
+%dir %{_libdir}/gtk-4.0/%{abivers}/inspector
+%dir %{_libdir}/gtk-4.0/%{abivers}/media
+%if %{with ffmpeg}
+%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/media/libmedia-ffmpeg.so
+%endif
+%if %{with gstreamer}
+%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/media/libmedia-gstreamer.so
+%endif
 %dir %{_libdir}/gtk-4.0/%{abivers}/printbackends
-%ghost %{_libdir}/gtk-4.0/%{abivers}/gtk.immodules
 %attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/printbackends/libprintbackend-file.so
 %attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/printbackends/libprintbackend-lpr.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-am-et.so
-%{?with_broadway:%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-broadway.so}
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-cedilla.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-cyrillic-translit.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-inuktitut.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-ipa.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-multipress.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-thai.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-ti-er.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-ti-et.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-viqr.so
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/immodules/im-xim.so
 %{_libdir}/girepository-1.0/Gdk-4.0.typelib
 %{_libdir}/girepository-1.0/GdkX11-4.0.typelib
 %{_libdir}/girepository-1.0/Gsk-4.0.typelib
 %{_libdir}/girepository-1.0/Gtk-4.0.typelib
 
-%dir %{_sysconfdir}/gtk-4.0
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gtk-4.0/im-multipress.conf
 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml
 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.Debug.gschema.xml
+%{_datadir}/glib-2.0/schemas/org.gtk.Settings.EmojiChooser.gschema.xml
 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml
-%dir %{_datadir}/themes/Default/gtk-4.0
-%{_datadir}/themes/Default/gtk-4.0/gtk-keys.css
-%dir %{_datadir}/themes/Emacs
-%dir %{_datadir}/themes/Emacs/gtk-4.0
-%{_datadir}/themes/Emacs/gtk-4.0/gtk-keys.css
 %{?with_broadway:%{_mandir}/man1/gtk4-broadwayd.1*}
 %{_mandir}/man1/gtk4-launch.1*
-%{_mandir}/man1/gtk4-query-immodules.1*
 
 %files update-icon-cache
 %defattr(644,root,root,755)
@@ -462,21 +425,16 @@ exit 0
 
 %files devel
 %defattr(644,root,root,755)
-%doc ChangeLog
 %attr(755,root,root) %{_bindir}/gtk4-builder-tool
 %attr(755,root,root) %{_bindir}/gtk4-query-settings
 %attr(755,root,root) %{_libdir}/libgtk-4.so
 %{_includedir}/gtk-4.0
-%{_pkgconfigdir}/gail-4.0.pc
 %{_pkgconfigdir}/gtk+-4.0.pc
 %{_pkgconfigdir}/gtk+-unix-print-4.0.pc
 %{_pkgconfigdir}/gtk+-x11-4.0.pc
 %if %{with broadway}
 %{_pkgconfigdir}/gtk+-broadway-4.0.pc
 %endif
-%if %{with mir}
-%{_pkgconfigdir}/gtk+-mir-4.0.pc
-%endif
 %if %{with wayland}
 %{_pkgconfigdir}/gtk+-wayland-4.0.pc
 %endif
@@ -490,12 +448,6 @@ exit 0
 %{_mandir}/man1/gtk4-builder-tool.1*
 %{_mandir}/man1/gtk4-query-settings.1*
 
-%if %{with static_libs}
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libgtk-4.a
-%endif
-
 %if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
@@ -511,7 +463,8 @@ exit 0
 %attr(755,root,root) %{_bindir}/gtk4-icon-browser
 %attr(755,root,root) %{_bindir}/gtk4-widget-factory
 %{_datadir}/glib-2.0/schemas/org.gtk.Demo.gschema.xml
-%{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
+%{_datadir}/metainfo/org.gtk.Demo.appdata.xml
+%{_datadir}/metainfo/org.gtk.WidgetFactory.appdata.xml
 %{_desktopdir}/gtk4-demo.desktop
 %{_desktopdir}/gtk4-icon-browser.desktop
 %{_desktopdir}/gtk4-widget-factory.desktop
@@ -536,9 +489,3 @@ exit 0
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/printbackends/libprintbackend-cups.so
 %endif
-
-%if %{with papi}
-%files papi
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/gtk-4.0/%{abivers}/printbackends/libprintbackend-papi.so
-%endif
diff --git a/gtk+4-lpr.patch b/gtk+4-lpr.patch
new file mode 100644
index 0000000..ed0c624
--- /dev/null
+++ b/gtk+4-lpr.patch
@@ -0,0 +1,11 @@
+--- gtk+-3.94.0/modules/printbackends/meson.build.orig	2018-06-26 13:48:16.000000000 +0200
++++ gtk+-3.94.0/modules/printbackends/meson.build	2018-10-26 18:12:34.889346463 +0200
+@@ -73,7 +73,7 @@
+ endif
+ 
+ # Automatic fall-back to the lpr backend
+-if not print_backends.contains('cups')
++if enabled_print_backends.contains('lpr') or not print_backends.contains('cups')
+   print_backends += ['lpr']
+ endif
+ 
diff --git a/gtk+4-papi.patch b/gtk+4-papi.patch
deleted file mode 100644
index 52d7903..0000000
--- a/gtk+4-papi.patch
+++ /dev/null
@@ -1,69 +0,0 @@
---- gtk+-3.2.3/modules/printbackends/papi/gtkprintbackendpapi.c.orig	2011-08-16 04:04:35.000000000 +0200
-+++ gtk+-3.2.3/modules/printbackends/papi/gtkprintbackendpapi.c	2011-12-23 18:55:39.354135443 +0100
-@@ -378,9 +378,9 @@
-   else if (val == GTK_PRINT_DUPLEX_VERTICAL)
-     papiAttributeListAddString (&attrs, PAPI_ATTR_EXCL, "Duplex", "DuplexTumble");
- 
--  if (job->num_copies > 1) 
-+  if (gtk_print_job_get_num_copies(job) > 1) 
-     {
--      papiAttributeListAddInteger (&attrs, PAPI_ATTR_EXCL, "copies", job->num_copies); 
-+      papiAttributeListAddInteger (&attrs, PAPI_ATTR_EXCL, "copies", gtk_print_job_get_num_copies(job)); 
-     }
- 
-   prtnm = strdup (gtk_printer_get_name (GTK_PRINTER(printer)));
-@@ -723,37 +723,40 @@
-   GtkPageSet page_set;
-   double scale;
-   GtkPaperSize *papersize = NULL;
-+  GtkPrintPages print_pages = gtk_print_settings_get_print_pages (settings);
-   char *ppd_paper_name;
- 
--  print_job->print_pages = gtk_print_settings_get_print_pages (settings);
--  print_job->page_ranges = NULL;
--  print_job->num_page_ranges = 0;
-+  gtk_print_job_set_pages(print_job, print_pages);
-+  gtk_print_job_set_page_ranges(print_job, NULL, 0);
-   
--  if (print_job->print_pages == GTK_PRINT_PAGES_RANGES)
--    print_job->page_ranges =
-+  if (print_pages == GTK_PRINT_PAGES_RANGES) {
-+    gint num_page_ranges;
-+    GtkPageRange *page_ranges = 
-       gtk_print_settings_get_page_ranges (settings,
--					  &print_job->num_page_ranges);
-+					  &num_page_ranges);
-+    gtk_print_job_set_page_ranges(print_job, page_ranges, num_page_ranges);
-+  }
-   
--  print_job->collate = gtk_print_settings_get_collate (settings);
--  print_job->reverse = gtk_print_settings_get_reverse (settings);
--  print_job->num_copies = gtk_print_settings_get_n_copies (settings);
-+  gtk_print_job_set_collate(print_job, gtk_print_settings_get_collate (settings));
-+  gtk_print_job_set_reverse(print_job, gtk_print_settings_get_reverse (settings));
-+  gtk_print_job_set_num_copies(print_job, gtk_print_settings_get_n_copies (settings));
-  
-   scale = gtk_print_settings_get_scale (settings);
-   if (scale != 100.0)
--    print_job->scale = scale/100.0;
-+    gtk_print_job_set_scale(print_job, scale/100.0);
- 
-   papersize = gtk_page_setup_get_paper_size (page_setup);
-   ppd_paper_name = gtk_paper_size_get_ppd_name (papersize);
- 
-   page_set = gtk_print_settings_get_page_set (settings);
-   if (page_set == GTK_PAGE_SET_EVEN)
--    print_job->page_set = GTK_PAGE_SET_EVEN;
-+    gtk_print_job_set_page_set(print_job, GTK_PAGE_SET_EVEN);
-   else if (page_set == GTK_PAGE_SET_ODD)
--    print_job->page_set = GTK_PAGE_SET_ODD;
-+    gtk_print_job_set_page_set(print_job, GTK_PAGE_SET_ODD);
-   else
--    print_job->page_set = GTK_PAGE_SET_ALL;
-+    gtk_print_job_set_page_set(print_job, GTK_PAGE_SET_ALL);
- 
--  print_job->rotate_to_orientation = TRUE;
-+  gtk_print_job_set_rotate(print_job, TRUE);
- 
- }
- 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gtk+4.git/commitdiff/f97256706dc5ad35b99455d0183831d3a616a620



More information about the pld-cvs-commit mailing list