packages: gtk+3/gtk+3.spec, gtk+3/gtk+3-papi.patch (NEW) - added papi patch...

qboosh qboosh at pld-linux.org
Fri Dec 23 21:56:32 CET 2011


Author: qboosh                       Date: Fri Dec 23 20:56:32 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- added papi patch, build papi backend (with bcond)

---- Files affected:
packages/gtk+3:
   gtk+3.spec (1.48 -> 1.49) , gtk+3-papi.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/gtk+3/gtk+3.spec
diff -u packages/gtk+3/gtk+3.spec:1.48 packages/gtk+3/gtk+3.spec:1.49
--- packages/gtk+3/gtk+3.spec:1.48	Wed Dec 21 18:22:19 2011
+++ packages/gtk+3/gtk+3.spec	Fri Dec 23 21:56:27 2011
@@ -1,9 +1,9 @@
 # $Revision$, $Date$
-# TODO: papi print backend?
 #
 # Conditional build:
 %bcond_without	apidocs		# disable gtk-doc
 %bcond_without	cups		# disable CUPS support
+%bcond_without	papi		# disable PAPI support
 %bcond_without	static_libs	# don't build static library
 #
 Summary:	The GIMP Toolkit
@@ -21,13 +21,16 @@
 Group:		X11/Libraries
 Source0:	http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.2/gtk+-%{version}.tar.xz
 # Source0-md5:	b4edcc69e39159dd7be17828249afb46
+Patch0:		%{name}-papi.patch
 URL:		http://www.gtk.org/
 BuildRequires:	atk-devel >= 1:2.1.5
 BuildRequires:	autoconf >= 2.62
 BuildRequires:	automake >= 1:1.11
 BuildRequires:	cairo-gobject-devel >= 1.10.0
 BuildRequires:	colord-devel >= 0.1.9
-%{?with_cups:BuildRequires:	cups-devel}
+%if %{with cups} || %{with papi}
+BuildRequires:	cups-devel
+%endif
 BuildRequires:	docbook-dtd412-xml
 BuildRequires:	docbook-style-xsl
 BuildRequires:	gdk-pixbuf2-devel >= 2.23.5
@@ -40,6 +43,7 @@
 BuildRequires:	libxml2-progs >= 1:2.6.31
 BuildRequires:	libxslt-progs >= 1.1.20
 BuildRequires:	pango-devel >= 1:1.29.0
+%{?with_papi:BuildRequires:	papi-devel}
 BuildRequires:	perl-base
 BuildRequires:	pkgconfig
 BuildRequires:	rpm-pythonprov
@@ -224,8 +228,22 @@
 %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
@@ -234,6 +252,7 @@
 cp -a demos examples _examples
 
 %build
+CPPFLAGS="%{rpmcppflags}%{?with_papi: -I/usr/include/papi}"
 %{?with_apidocs:%{__gtkdocize}}
 %{__libtoolize}
 %{__aclocal} -I m4
@@ -243,6 +262,7 @@
 %configure \
 	--disable-silent-rules \
 	%{__disable cups} \
+	%{!?with_papi:--disable-papi} \
 	%{?debug:--enable-debug=yes} \
 	%{__enable_disable apidocs gtk-doc} \
 	--enable-man \
@@ -409,12 +429,21 @@
 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-cups.so
 %endif
 
+%if %{with papi}
+%files papi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-papi.so
+%endif
+
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <feedback at pld-linux.org>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.49  2011/12/23 20:56:27  qboosh
+- added papi patch, build papi backend (with bcond)
+
 Revision 1.48  2011/12/21 17:22:19  kiesiu
 - updated to 3.2.3
 - cups-auth patch applied upstream

================================================================
Index: packages/gtk+3/gtk+3-papi.patch
diff -u /dev/null packages/gtk+3/gtk+3-papi.patch:1.1
--- /dev/null	Fri Dec 23 21:56:32 2011
+++ packages/gtk+3/gtk+3-papi.patch	Fri Dec 23 21:56:27 2011
@@ -0,0 +1,89 @@
+--- 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
+@@ -352,7 +352,7 @@
+   const gchar *title;
+   char *prtnm = NULL;
+   GtkPrintDuplex val;
+-  papi_status_t pstatus = NULL;
++  papi_status_t pstatus = PAPI_OK;
+   papi_attribute_t **attrs = NULL;
+   papi_job_ticket_t *ticket = NULL;
+   
+@@ -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);
+ 
+ }
+ 
+--- gtk+-3.2.3/modules/printbackends/papi/Makefile.am.orig	2011-11-07 19:47:37.000000000 +0100
++++ gtk+-3.2.3/modules/printbackends/papi/Makefile.am	2011-12-23 19:55:00.277588009 +0100
+@@ -16,7 +16,7 @@
+ 	$(top_builddir)/gtk/libgtk-3.la	\
+ 	$(GTK_DEP_LIBS)
+ 
+-backenddir = $(libdir)/gtk-2.0/$(GTK_BINARY_VERSION)/printbackends
++backenddir = $(libdir)/gtk-3.0/$(GTK_BINARY_VERSION)/printbackends
+ 
+ backend_LTLIBRARIES = libprintbackend-papi.la
+ 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/gtk+3/gtk+3.spec?r1=1.48&r2=1.49&f=u



More information about the pld-cvs-commit mailing list