3 %bcond_without static_libs # static libraries
4 %bcond_without perl # Perl module
5 %bcond_without php # PHP extension
8 Summary: OpenPrinting CUPS filters and backends
9 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting
13 # For a breakdown of the licensing, see COPYING file
14 # GPLv2: filters: commandto*, imagetoraster, pdftops, rasterto*,
15 # imagetopdf, pstopdf, texttopdf
16 # backends: parallel, serial
17 # GPLv2+: filters: gstopxl, textonly, texttops, imagetops
18 # GPLv3: filters: bannertopdf
19 # GPLv3+: filters: urftopdf
20 # LGPLv2+: utils: cups-browsed
21 # MIT: filters: gstoraster, pdftoijs, pdftoopvp, pdftopdf, pdftoraster
22 License: GPL v2, GPL v2+, GPL v3, GPL v3+, LGPL v2+, MIT
23 Group: Applications/Printing
24 Source0: http://www.openprinting.org/download/cups-filters/%{name}-%{version}.tar.xz
25 # Source0-md5: 85c605f82cddfd9990a17f1ffaf51eec
26 Patch0: %{name}-dbus.patch
27 Patch1: %{name}-php.patch
28 URL: http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters
29 BuildRequires: autoconf >= 2.65
30 BuildRequires: automake >= 1:1.11
31 BuildRequires: avahi-devel
32 BuildRequires: avahi-glib-devel
33 BuildRequires: cups-devel >= 1:1.6.0
34 BuildRequires: dbus-devel
35 BuildRequires: fontconfig-devel >= 2.0.0
36 BuildRequires: freetype-devel >= 2
37 # /usr/bin/gs, for features detection
38 %{?with_php:BuildRequires: %{php_name}-devel}
39 BuildRequires: ghostscript
40 BuildRequires: ghostscript-ijs-devel
41 BuildRequires: glib2-devel >= 1:2.30.2
42 BuildRequires: lcms2-devel >= 2
43 BuildRequires: libjpeg-devel
44 BuildRequires: libpng-devel
45 BuildRequires: libstdc++-devel
46 BuildRequires: libtiff-devel
47 BuildRequires: libtool
48 %{?with_perl:BuildRequires: perl-devel}
49 BuildRequires: pkgconfig >= 1:0.20
50 # just for cpp/poppler-version.h
51 BuildRequires: poppler-cpp-devel >= 0.18
52 BuildRequires: poppler-devel >= 0.18
53 # /usr/bin/pdftops, for features detection
54 BuildRequires: poppler-progs >= 0.18
55 BuildRequires: qpdf-devel >= 3.0.2
56 BuildRequires: rpmbuild(macros) >= 1.671
57 BuildRequires: zlib-devel
58 # DejaVuSans.ttf (testing font for test scripts)
59 #BuildRequires: fonts-TTF-DejaVu
60 Requires: %{name}-libs = %{version}-%{release}
61 Requires: cups >= 1:1.6.0
62 Requires: fontconfig >= 2.0.0
64 Requires: poppler-progs >= 0.18
65 Requires: qpdf-libs >= 3.0.2
66 Suggests: fonts-TTF-freefont
71 Provides: cups-filter-foomatic
72 Provides: ghostscript-cups = 9.08
73 Obsoletes: cups-filter-foomatic
74 Obsoletes: foomatic-filters
75 Obsoletes: ghostscript-cups < 9.08
76 Conflicts: cups-backend-hp < 3.13.11-2
77 Conflicts: hplip-ppd < 3.13.11-2
78 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80 %define _cups_serverbin %(/usr/bin/cups-config --serverbin)
83 Contains backends, filters, and other software that was once part of
84 the core CUPS distribution but is no longer maintained by Apple Inc.
85 In addition it contains additional filters developed independently of
86 Apple, especially filters for the PDF-centric printing workflow
87 introduced by OpenPrinting.
89 %description -l pl.UTF-8
90 Ten pakiet zawiera backendy, filtry i inne oprogramowanie, będące
91 kiedyś częścią CUPS-a, ale nie utrzymywane już przez firmę Apple Inc.
92 Dodatkowo pakiet zawiera dodatkowe filtry stworzone niezależnie od
93 Apple'a, w szczególności filtry dla PDF-ocentrycznego obiegu
94 drukowania wprowadzonego przez OpenPrinting.
97 Summary: OpenPrinting CUPS filters and backends - cupsfilters and fontembed libraries
98 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - biblioteki cupsfilters i fontembed
99 # LGPLv2: libcupsfilters
101 License: LGPL v2, MIT
103 Requires: cups-lib >= 1:1.6.0
106 This package provides cupsfilters and fontembed libraries.
108 %description libs -l pl.UTF-8
109 Ten pakiet udostępnia biblioteki cupsfilters i fontembed.
112 Summary: OpenPrinting CUPS filters and backends - development environment
113 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - środowisko programistyczne
114 License: LGPL v2, MIT
115 Group: Development/Libraries
116 Requires: %{name}-libs = %{version}-%{release}
117 Requires: cups-devel >= 1:1.6.0
118 Requires: libjpeg-devel
119 Requires: libpng-devel
120 Requires: libtiff-devel
123 This is the development package for OpenPrinting CUPS filters and
126 %description devel -l pl.UTF-8
127 To jest pakiet programistyczny dla filtrów i backendów CUPS-a z
128 projektu OpenPrinting.
131 Summary: OpenPrinting CUPS filters and backends - static cupsfilters and fontembed libraries
132 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - statyczne biblioteki cupsfilters i fontembed
133 License: LGPL v2, MIT
134 Group: Development/Libraries
135 Requires: %{name}-devel = %{version}-%{release}
138 This package provides static cupsfilters and fontembed libraries.
140 %description static -l pl.UTF-8
141 Ten pakiet udostępnia statyczne biblioteki cupsfilters i fontembed.
143 %package -n cups-browsed
144 Summary: A daemon for browsing the Bonjour broadcasts of shared, remote CUPS printers
145 Summary(pl.UTF-8): Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych drukarek CUPS
146 Group: Applications/Printing
147 Requires(post,preun): /sbin/chkconfig
148 Requires(post,preun,postun): systemd-units
149 Requires: glib2 >= 1:2.30.2
150 Requires: systemd-units >= 38
152 %description -n cups-browsed
153 A daemon for browsing the Bonjour broadcasts of shared, remote CUPS
156 %description -n cups-browsed -l pl.UTF-8
157 Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych
160 %package -n cups-backend-parallel
161 Summary: Parallel port backend for CUPS
162 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty równoległe
163 # must be larger than cups.spec before 1.6.0
165 License: GPL v2 + OpenSSL exception
166 Group: Applications/Printing
167 Requires: cups >= 1:1.6.0
169 %description -n cups-backend-parallel
170 This package allow CUPS printing on printers connected by parallel
173 %description -n cups-backend-parallel -l pl.UTF-8
174 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
175 podłączonych do portów równoległych.
177 %package -n cups-backend-serial
178 Summary: Serial port backend for CUPS
179 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty szeregowe
180 # must be larger than cups.spec before 1.6.0
182 License: GPL v2 + OpenSSL exception
183 Group: Applications/Printing
184 Requires: cups >= 1:1.6.0
186 %description -n cups-backend-serial
187 This package allow CUPS printing on printers connected by serial
190 %description -n cups-backend-serial -l pl.UTF-8
191 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
192 podłączonych do portów szeregowych.
194 %package -n perl-cups
195 Summary: Perl module for CUPS
196 Summary(pl.UTF-8): Moduł Perla CUPS
197 # must be larger than cups.spec before 1.6.0
199 License: GPL v2 + OpenSSL exception
200 Group: Development/Languages/Perl
201 Requires: cups-lib >= 1:1.6.0
203 %description -n perl-cups
204 Perl module for Common Unix Printing System.
206 %description -n perl-cups -l pl.UTF-8
207 Moduł Perla do ogólnego systemu druku dla Uniksa.
209 %package -n %{php_name}-cups
210 Summary: PHP module for CUPS
211 Summary(pl.UTF-8): Moduł PHP CUPS
212 # must be larger than cups.spec before 1.6.0
214 License: GPL v2 + OpenSSL exception
215 Group: Development/Languages/PHP
216 Requires: cups-lib >= 1:1.6.0
217 %{?requires_php_extension}
219 %description -n %{php_name}-cups
220 PHP module for Common Unix Printing System.
222 %description -n %{php_name}-cups -l pl.UTF-8
223 Moduł PHP do ogólnego systemu druku dla Uniksa.
225 # CREATE ANY NEW PACKAGES BEFORE cups-backend-* (EPOCH)
239 --disable-silent-rules \
240 %{!?with_static_libs:--disable-static} \
241 %{?with_php:--with-php} \
242 --with-pdftops=hybrid \
243 --with-rcdir=/etc/rc.d/init.d \
245 --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf
251 %{__perl} Makefile.PL \
253 OPTIMIZE="%{rpmcflags}"
260 rm -rf $RPM_BUILD_ROOT
261 install -d $RPM_BUILD_ROOT%{systemdunitdir}
263 DESTDIR=$RPM_BUILD_ROOT
266 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
267 cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/phpcups.ini << 'EOF'
268 ; Enable phpcups extension module
269 extension=libphpcups.so
272 %{__rm} $RPM_BUILD_ROOT%{php_extensiondir}/libphpcups.la
276 %{__make} -C scripting/perl install \
277 DESTDIR=$RPM_BUILD_ROOT
280 install -p utils/cups-browsed.service $RPM_BUILD_ROOT%{systemdunitdir}
282 # obsoleted by pkg-config
283 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
285 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/cups-filters
286 # Not sure what is this good for.
287 %{__rm} $RPM_BUILD_ROOT%{_bindir}/ttfread
290 rm -rf $RPM_BUILD_ROOT
292 %post libs -p /sbin/ldconfig
293 %postun libs -p /sbin/ldconfig
295 %post -n cups-browsed
296 if [ $1 -eq 1 ] ; then
297 # We can remove this after few releases, it's just for the introduction of cups-browsed.
298 if [ -f %{_sysconfdir}/cups/cups-browsed.conf ]; then
299 echo -e "\n# NOTE: This file is not part of CUPS. You need to start & enable cups-browsed service." >>%{_sysconfdir}/cups/cups-browsed.conf
302 # move BrowsePoll from cupsd.conf to cups-browsed.conf
303 if [ -f %{_sysconfdir}/cups/cupsd.conf ] && grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf; then
304 if ! grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cups-browsed.conf; then
305 echo "# Settings automatically moved from cupsd.conf by RPM package:" >>%{_sysconfdir}/cups/cups-browsed.conf
306 grep -i "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf >> %{_sysconfdir}/cups/cups-browsed.conf || :
308 sed -i -e "s,^BrowsePoll,#BrowsePoll directive moved to cups-browsed.conf\n#BrowsePoll,i" %{_sysconfdir}/cups/cupsd.conf || :
311 /sbin/chkconfig --add cups-browsed
312 %service cups-browsed restart
313 %systemd_post cups-browsed.service
315 %preun -n cups-browsed
316 if [ "$1" = "0" ]; then
317 %service cups-browsed stop
318 /sbin/chkconfig --del cups-browsed
320 %systemd_preun cups-browsed.service
322 %postun -n cups-browsed
326 %defattr(644,root,root,755)
327 %doc AUTHORS COPYING NEWS README
328 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fonts/conf.d/99pdftoopvp.conf
329 %attr(755,root,root) %{_cups_serverbin}/filter/bannertopdf
330 %attr(755,root,root) %{_cups_serverbin}/filter/commandtoescpx
331 %attr(755,root,root) %{_cups_serverbin}/filter/commandtopclx
332 %attr(755,root,root) %{_cups_serverbin}/filter/foomatic-rip
333 %attr(755,root,root) %{_cups_serverbin}/filter/gstopxl
334 %attr(755,root,root) %{_cups_serverbin}/filter/gstoraster
335 %attr(755,root,root) %{_cups_serverbin}/filter/imagetopdf
336 %attr(755,root,root) %{_cups_serverbin}/filter/imagetops
337 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoraster
338 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoijs
339 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoippprinter
340 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoopvp
341 %attr(755,root,root) %{_cups_serverbin}/filter/pdftopdf
342 %attr(755,root,root) %{_cups_serverbin}/filter/pdftops
343 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoraster
344 %attr(755,root,root) %{_cups_serverbin}/filter/pstopdf
345 %attr(755,root,root) %{_cups_serverbin}/filter/rastertoescpx
346 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclx
347 %attr(755,root,root) %{_cups_serverbin}/filter/textonly
348 %attr(755,root,root) %{_cups_serverbin}/filter/texttopdf
349 %attr(755,root,root) %{_cups_serverbin}/filter/texttops
350 %attr(755,root,root) %{_cups_serverbin}/filter/urftopdf
351 %{_datadir}/cups/banners
352 %{_datadir}/cups/charsets
353 %{_datadir}/cups/data/default.pdf
354 %{_datadir}/cups/data/default-testpage.pdf
355 %{_datadir}/cups/data/form_english.pdf
356 %{_datadir}/cups/data/form_english_in.odt
357 %{_datadir}/cups/data/form_russian.pdf
358 %{_datadir}/cups/data/form_russian_in.odt
359 %{_datadir}/cups/data/testprint
360 %{_datadir}/cups/drv/cupsfilters.drv
361 %{_datadir}/cups/mime/cupsfilters.types
362 %{_datadir}/cups/mime/cupsfilters.convs
363 # definitions for drivers; pcl.h is used by cupsfilters.drv
364 %{_datadir}/cups/ppdc/escp.h
365 %{_datadir}/cups/ppdc/pcl.h
366 %{_datadir}/ppd/cupsfilters
367 %{_mandir}/man1/foomatic-rip.1*
370 %defattr(644,root,root,755)
371 %doc fontembed/README
372 %attr(755,root,root) %{_libdir}/libcupsfilters.so.*.*.*
373 %attr(755,root,root) %ghost %{_libdir}/libcupsfilters.so.1
374 %attr(755,root,root) %{_libdir}/libfontembed.so.*.*.*
375 %attr(755,root,root) %ghost %{_libdir}/libfontembed.so.1
378 %defattr(644,root,root,755)
379 %attr(755,root,root) %{_libdir}/libcupsfilters.so
380 %attr(755,root,root) %{_libdir}/libfontembed.so
381 %{_includedir}/cupsfilters
382 %{_includedir}/fontembed
383 %{_pkgconfigdir}/libcupsfilters.pc
384 %{_pkgconfigdir}/libfontembed.pc
387 %defattr(644,root,root,755)
388 %{_libdir}/libcupsfilters.a
389 %{_libdir}/libfontembed.a
391 %files -n cups-browsed
392 %defattr(644,root,root,755)
393 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cups/cups-browsed.conf
394 %attr(755,root,root) %{_sbindir}/cups-browsed
395 %attr(754,root,root) /etc/rc.d/init.d/cups-browsed
396 %{systemdunitdir}/cups-browsed.service
397 %{_mandir}/man5/cups-browsed.conf.5*
398 %{_mandir}/man8/cups-browsed.8*
400 %files -n cups-backend-parallel
401 %defattr(644,root,root,755)
402 %attr(755,root,root) %{_cups_serverbin}/backend/parallel
404 %files -n cups-backend-serial
405 %defattr(644,root,root,755)
406 %attr(755,root,root) %{_cups_serverbin}/backend/serial
410 %defattr(644,root,root,755)
411 %doc scripting/perl/README
412 %{perl_vendorarch}/CUPS.pm
413 %dir %{perl_vendorarch}/auto/CUPS
414 %{perl_vendorarch}/auto/CUPS/CUPS.bs
415 %{perl_vendorarch}/auto/CUPS/autosplit.ix
416 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/CUPS.so
417 %{_mandir}/man3/CUPS.3pm*
421 %files -n %{php_name}-cups
422 %defattr(644,root,root,755)
423 %doc scripting/php/README
424 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini
425 %attr(755,root,root) %{php_extensiondir}/libphpcups.so