3 %bcond_without static_libs # static libraries
4 %bcond_without braille # Braille embossers support
5 %bcond_without perl # Perl module
6 %bcond_without php # PHP extension
11 Summary: OpenPrinting CUPS filters and backends
12 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting
16 # For a breakdown of the licensing, see COPYING file
17 # GPLv2: filters: commandto*, imagetoraster, pdftops, rasterto*,
18 # imagetopdf, pstopdf, texttopdf
19 # backends: parallel, serial
20 # GPLv2+: filters: gstopxl, textonly, texttops, imagetops
21 # GPLv3: filters: bannertopdf
22 # GPLv3+: filters: urftopdf
23 # LGPLv2+: utils: cups-browsed
24 # MIT: filters: gstoraster, pdftoijs, pdftoopvp, pdftopdf, pdftoraster
25 License: GPL v2, GPL v2+, GPL v3, GPL v3+, LGPL v2+, MIT
26 Group: Applications/Printing
27 Source0: http://www.openprinting.org/download/cups-filters/%{name}-%{version}.tar.xz
28 # Source0-md5: 852a18e51051e44a5993012e98e4e7b3
29 Patch0: %{name}-dbus.patch
30 Patch1: %{name}-php.patch
31 Patch2: %{name}-php7.patch
32 Patch3: %{name}-php73.patch
33 Patch4: %{name}-poppler.patch
34 URL: http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters
35 BuildRequires: autoconf >= 2.65
36 BuildRequires: automake >= 1:1.11
37 BuildRequires: avahi-devel
38 BuildRequires: avahi-glib-devel
39 BuildRequires: cups-devel >= 1:1.6.0
40 BuildRequires: dbus-devel
41 BuildRequires: fontconfig-devel >= 2.0.0
42 BuildRequires: freetype-devel >= 2
43 # /usr/bin/gs, for features detection
44 %{?with_php:BuildRequires: %{php_name}-devel}
45 BuildRequires: ghostscript
46 BuildRequires: ghostscript-ijs-devel
47 BuildRequires: glib2-devel >= 1:2.30.2
48 BuildRequires: lcms2-devel >= 2
49 BuildRequires: libjpeg-devel
50 %{?with_braille:BuildRequires: liblouis-devel}
51 BuildRequires: libpng-devel
52 BuildRequires: libstdc++-devel
53 BuildRequires: libtiff-devel
54 BuildRequires: libtool
55 BuildRequires: openldap-devel
56 %{?with_perl:BuildRequires: perl-devel}
57 BuildRequires: pkgconfig >= 1:0.20
58 # just for cpp/poppler-version.h
59 BuildRequires: poppler-cpp-devel >= 0.18
60 BuildRequires: poppler-devel >= 0.72.0
61 # /usr/bin/pdftops, for features detection
62 BuildRequires: poppler-progs >= 0.18
63 BuildRequires: qpdf-devel >= 8.1.0
64 BuildRequires: rpmbuild(macros) >= 1.671
65 BuildRequires: zlib-devel
66 # DejaVuSans.ttf (testing font for test scripts)
67 #BuildRequires: fonts-TTF-DejaVu
68 Requires: %{name}-libs = %{version}-%{release}
71 Requires: cups >= 1:1.6.0
72 Requires: fontconfig >= 2.0.0
76 Requires: poppler-progs >= 0.18
77 Requires: qpdf-libs >= 8.1.0
79 Suggests: fonts-TTF-freefont
80 Provides: cups-filter-foomatic
81 Provides: ghostscript-cups = 9.08
82 Obsoletes: cups-filter-foomatic
83 Obsoletes: foomatic-filters
84 Obsoletes: ghostscript-cups < 9.08
85 Conflicts: cups-backend-hp < 3.13.11-2
86 Conflicts: hplip-ppd < 3.13.11-2
87 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
89 %define _cups_serverbin %(/usr/bin/cups-config --serverbin)
92 Contains backends, filters, and other software that was once part of
93 the core CUPS distribution but is no longer maintained by Apple Inc.
94 In addition it contains additional filters developed independently of
95 Apple, especially filters for the PDF-centric printing workflow
96 introduced by OpenPrinting.
98 %description -l pl.UTF-8
99 Ten pakiet zawiera backendy, filtry i inne oprogramowanie, będące
100 kiedyś częścią CUPS-a, ale nie utrzymywane już przez firmę Apple Inc.
101 Dodatkowo pakiet zawiera dodatkowe filtry stworzone niezależnie od
102 Apple'a, w szczególności filtry dla PDF-ocentrycznego obiegu
103 drukowania wprowadzonego przez OpenPrinting.
106 Summary: OpenPrinting CUPS filters for Braille embossers
107 Summary(pl.UTF-8): Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a
108 Group: Applications/Printing
109 Requires: %{name} = %{version}-%{release}
112 OpenPrinting CUPS filters for Braille embossers.
114 %description braille -l pl.UTF-8
115 Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a.
118 Summary: OpenPrinting CUPS filters and backends - cupsfilters and fontembed libraries
119 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - biblioteki cupsfilters i fontembed
120 # LGPLv2: libcupsfilters
122 License: LGPL v2, MIT
124 Requires: cups-lib >= 1:1.6.0
127 This package provides cupsfilters and fontembed libraries.
129 %description libs -l pl.UTF-8
130 Ten pakiet udostępnia biblioteki cupsfilters i fontembed.
133 Summary: OpenPrinting CUPS filters and backends - development environment
134 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - środowisko programistyczne
135 License: LGPL v2, MIT
136 Group: Development/Libraries
137 Requires: %{name}-libs = %{version}-%{release}
138 Requires: cups-devel >= 1:1.6.0
139 Requires: libjpeg-devel
140 Requires: libpng-devel
141 Requires: libtiff-devel
144 This is the development package for OpenPrinting CUPS filters and
147 %description devel -l pl.UTF-8
148 To jest pakiet programistyczny dla filtrów i backendów CUPS-a z
149 projektu OpenPrinting.
152 Summary: OpenPrinting CUPS filters and backends - static cupsfilters and fontembed libraries
153 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - statyczne biblioteki cupsfilters i fontembed
154 License: LGPL v2, MIT
155 Group: Development/Libraries
156 Requires: %{name}-devel = %{version}-%{release}
159 This package provides static cupsfilters and fontembed libraries.
161 %description static -l pl.UTF-8
162 Ten pakiet udostępnia statyczne biblioteki cupsfilters i fontembed.
164 %package -n cups-browsed
165 Summary: A daemon for browsing the Bonjour broadcasts of shared, remote CUPS printers
166 Summary(pl.UTF-8): Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych drukarek CUPS
167 Group: Applications/Printing
168 Requires(post,preun): /sbin/chkconfig
169 Requires(post,preun,postun): systemd-units
170 Requires: glib2 >= 1:2.30.2
171 Requires: systemd-units >= 38
173 %description -n cups-browsed
174 A daemon for browsing the Bonjour broadcasts of shared, remote CUPS
177 %description -n cups-browsed -l pl.UTF-8
178 Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych
181 %package -n cups-backend-parallel
182 Summary: Parallel port backend for CUPS
183 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty równoległe
184 # must be larger than cups.spec before 1.6.0
186 License: GPL v2 + OpenSSL exception
187 Group: Applications/Printing
188 Requires: cups >= 1:1.6.0
190 %description -n cups-backend-parallel
191 This package allow CUPS printing on printers connected by parallel
194 %description -n cups-backend-parallel -l pl.UTF-8
195 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
196 podłączonych do portów równoległych.
198 %package -n cups-backend-serial
199 Summary: Serial port backend for CUPS
200 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty szeregowe
201 # must be larger than cups.spec before 1.6.0
203 License: GPL v2 + OpenSSL exception
204 Group: Applications/Printing
205 Requires: cups >= 1:1.6.0
207 %description -n cups-backend-serial
208 This package allow CUPS printing on printers connected by serial
211 %description -n cups-backend-serial -l pl.UTF-8
212 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
213 podłączonych do portów szeregowych.
215 %package -n perl-cups
216 Summary: Perl module for CUPS
217 Summary(pl.UTF-8): Moduł Perla CUPS
218 # must be larger than cups.spec before 1.6.0
220 License: GPL v2 + OpenSSL exception
221 Group: Development/Languages/Perl
222 Requires: cups-lib >= 1:1.6.0
224 %description -n perl-cups
225 Perl module for Common Unix Printing System.
227 %description -n perl-cups -l pl.UTF-8
228 Moduł Perla do ogólnego systemu druku dla Uniksa.
230 %package -n %{php_name}-cups
231 Summary: PHP module for CUPS
232 Summary(pl.UTF-8): Moduł PHP CUPS
233 # must be larger than cups.spec before 1.6.0
235 License: GPL v2 + OpenSSL exception
236 Group: Development/Languages/PHP
237 Requires: cups-lib >= 1:1.6.0
238 %{?requires_php_extension}
240 %description -n %{php_name}-cups
241 PHP module for Common Unix Printing System.
243 %description -n %{php_name}-cups -l pl.UTF-8
244 Moduł PHP do ogólnego systemu druku dla Uniksa.
246 # CREATE ANY NEW PACKAGES BEFORE cups-backend-* (EPOCH)
262 %{!?with_braille:--disable-braille} \
266 --disable-silent-rules \
267 %{!?with_static_libs:--disable-static} \
268 %{?with_php:--with-php} \
269 --with-pdftops=hybrid \
270 --with-rcdir=/etc/rc.d/init.d \
272 --with-mutool-path=/usr/bin/mutool \
273 --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf
279 %{__perl} Makefile.PL \
281 OPTIMIZE="%{rpmcflags}"
288 rm -rf $RPM_BUILD_ROOT
289 install -d $RPM_BUILD_ROOT%{systemdunitdir}
291 DESTDIR=$RPM_BUILD_ROOT
294 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
295 cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/phpcups.ini << 'EOF'
296 ; Enable phpcups extension module
297 extension=libphpcups.so
300 %{__rm} $RPM_BUILD_ROOT%{php_extensiondir}/libphpcups.la
304 %{__make} -C scripting/perl install \
305 DESTDIR=$RPM_BUILD_ROOT
308 install -p utils/cups-browsed.service $RPM_BUILD_ROOT%{systemdunitdir}
310 # obsoleted by pkg-config
311 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
313 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/cups-filters
314 # Not sure what is this good for.
315 %{__rm} $RPM_BUILD_ROOT%{_bindir}/ttfread
318 rm -rf $RPM_BUILD_ROOT
320 %post libs -p /sbin/ldconfig
321 %postun libs -p /sbin/ldconfig
323 %post -n cups-browsed
324 if [ "$1" = "1" ]; then
325 # We can remove this after few releases, it's just for the introduction of cups-browsed.
326 if [ -f %{_sysconfdir}/cups/cups-browsed.conf ]; then
327 echo -e "\n# NOTE: This file is not part of CUPS. You need to start & enable cups-browsed service." >>%{_sysconfdir}/cups/cups-browsed.conf
330 # move BrowsePoll from cupsd.conf to cups-browsed.conf
331 if [ -f %{_sysconfdir}/cups/cupsd.conf ] && grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf; then
332 if ! grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cups-browsed.conf; then
333 echo "# Settings automatically moved from cupsd.conf by RPM package:" >>%{_sysconfdir}/cups/cups-browsed.conf
334 grep -i "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf >> %{_sysconfdir}/cups/cups-browsed.conf || :
336 sed -i -e "s,^BrowsePoll,#BrowsePoll directive moved to cups-browsed.conf\n#BrowsePoll,i" %{_sysconfdir}/cups/cupsd.conf || :
339 /sbin/chkconfig --add cups-browsed
340 %service cups-browsed restart
341 %systemd_post cups-browsed.service
343 %preun -n cups-browsed
344 if [ "$1" = "0" ]; then
345 %service cups-browsed stop
346 /sbin/chkconfig --del cups-browsed
348 %systemd_preun cups-browsed.service
350 %postun -n cups-browsed
354 %defattr(644,root,root,755)
355 %doc AUTHORS COPYING NEWS README
356 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fonts/conf.d/99pdftoopvp.conf
357 %attr(755,root,root) %{_bindir}/driverless
358 %attr(755,root,root) %{_bindir}/foomatic-rip
359 %attr(755,root,root) %{_cups_serverbin}/backend/beh
360 %attr(755,root,root) %{_cups_serverbin}/backend/cups-brf
361 %attr(755,root,root) %{_cups_serverbin}/backend/driverless
362 %attr(755,root,root) %{_cups_serverbin}/driver/driverless
363 %attr(755,root,root) %{_cups_serverbin}/filter/bannertopdf
364 %attr(755,root,root) %{_cups_serverbin}/filter/brftopagedbrf
365 %attr(755,root,root) %{_cups_serverbin}/filter/cgmtopdf
366 %attr(755,root,root) %{_cups_serverbin}/filter/cmxtopdf
367 %attr(755,root,root) %{_cups_serverbin}/filter/commandtoescpx
368 %attr(755,root,root) %{_cups_serverbin}/filter/commandtopclx
369 %attr(755,root,root) %{_cups_serverbin}/filter/emftopdf
370 %attr(755,root,root) %{_cups_serverbin}/filter/foomatic-rip
371 %attr(755,root,root) %{_cups_serverbin}/filter/gstopdf
372 %attr(755,root,root) %{_cups_serverbin}/filter/gstopxl
373 %attr(755,root,root) %{_cups_serverbin}/filter/gstoraster
374 %attr(755,root,root) %{_cups_serverbin}/filter/imagetopdf
375 %attr(755,root,root) %{_cups_serverbin}/filter/imagetops
376 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoraster
377 %attr(755,root,root) %{_cups_serverbin}/filter/mupdftoraster
378 %attr(755,root,root) %{_cups_serverbin}/filter/musicxmltobrf
379 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoijs
380 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoopvp
381 %attr(755,root,root) %{_cups_serverbin}/filter/pdftopdf
382 %attr(755,root,root) %{_cups_serverbin}/filter/pdftops
383 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoraster
384 %attr(755,root,root) %{_cups_serverbin}/filter/rastertoescpx
385 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclm
386 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclx
387 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopdf
388 %attr(755,root,root) %{_cups_serverbin}/filter/rastertops
389 %attr(755,root,root) %{_cups_serverbin}/filter/svgtopdf
390 %attr(755,root,root) %{_cups_serverbin}/filter/sys5ippprinter
391 %attr(755,root,root) %{_cups_serverbin}/filter/texttopdf
392 %attr(755,root,root) %{_cups_serverbin}/filter/texttops
393 %attr(755,root,root) %{_cups_serverbin}/filter/texttotext
394 %attr(755,root,root) %{_cups_serverbin}/filter/vectortobrf
395 %attr(755,root,root) %{_cups_serverbin}/filter/vectortopdf
396 %attr(755,root,root) %{_cups_serverbin}/filter/vectortoubrl
397 %attr(755,root,root) %{_cups_serverbin}/filter/wmftopdf
398 %attr(755,root,root) %{_cups_serverbin}/filter/xfigtopdf
399 %{_datadir}/cups/banners/*
400 %{_datadir}/cups/charsets
401 %{_datadir}/cups/data/classified.pdf
402 %{_datadir}/cups/data/confidential.pdf
403 %{_datadir}/cups/data/default.pdf
404 %{_datadir}/cups/data/default-testpage.pdf
405 %{_datadir}/cups/data/form_english.pdf
406 %{_datadir}/cups/data/form_english_in.odt
407 %{_datadir}/cups/data/form_russian.pdf
408 %{_datadir}/cups/data/form_russian_in.odt
409 %{_datadir}/cups/data/secret.pdf
410 %{_datadir}/cups/data/standard.pdf
411 %{_datadir}/cups/data/topsecret.pdf
412 %{_datadir}/cups/data/unclassified.pdf
413 %{_datadir}/cups/data/testprint
414 %{_datadir}/cups/drv/cupsfilters.drv
415 %{_datadir}/cups/drv/generic-ubrl.drv
416 %{_datadir}/cups/mime/cupsfilters.types
417 %{_datadir}/cups/mime/cupsfilters.convs
418 %{_datadir}/cups/mime/cupsfilters-ghostscript.convs
419 %{_datadir}/cups/mime/cupsfilters-mupdf.convs
420 %{_datadir}/cups/mime/cupsfilters-poppler.convs
421 # definitions for drivers; pcl.h is used by cupsfilters.drv
422 %{_datadir}/cups/ppdc/escp.h
423 %{_datadir}/cups/ppdc/pcl.h
424 %{_datadir}/ppd/cupsfilters
425 %{_mandir}/man1/driverless.1*
426 %{_mandir}/man1/foomatic-rip.1*
430 %defattr(644,root,root,755)
431 %attr(755,root,root) %{_cups_serverbin}/filter/brftoembosser
432 %attr(755,root,root) %{_cups_serverbin}/filter/imagetobrf
433 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoubrl
434 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv3
435 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv4
436 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv3
437 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv4
438 %attr(755,root,root) %{_cups_serverbin}/filter/texttobrf
439 %dir %{_datadir}/cups/braille
440 %attr(755,root,root) %{_datadir}/cups/braille/cups-braille.sh
441 %attr(755,root,root) %{_datadir}/cups/braille/index.sh
442 %attr(755,root,root) %{_datadir}/cups/braille/indexv3.sh
443 %attr(755,root,root) %{_datadir}/cups/braille/indexv4.sh
444 %{_datadir}/cups/drv/generic-brf.drv
445 %{_datadir}/cups/drv/indexv3.drv
446 %{_datadir}/cups/drv/indexv4.drv
447 %{_datadir}/cups/mime/braille.convs
448 %{_datadir}/cups/mime/braille.types
449 %{_datadir}/cups/ppdc/braille.defs
450 %{_datadir}/cups/ppdc/fr-braille.po
451 %{_datadir}/cups/ppdc/imagemagick.defs
452 %{_datadir}/cups/ppdc/index.defs
453 %{_datadir}/cups/ppdc/liblouis.defs
454 %{_datadir}/cups/ppdc/liblouis1.defs
455 %{_datadir}/cups/ppdc/liblouis2.defs
456 %{_datadir}/cups/ppdc/liblouis3.defs
457 %{_datadir}/cups/ppdc/liblouis4.defs
458 %{_datadir}/cups/ppdc/media-braille.defs
462 %defattr(644,root,root,755)
463 %doc fontembed/README
464 %attr(755,root,root) %{_libdir}/libcupsfilters.so.*.*.*
465 %attr(755,root,root) %ghost %{_libdir}/libcupsfilters.so.1
466 %attr(755,root,root) %{_libdir}/libfontembed.so.*.*.*
467 %attr(755,root,root) %ghost %{_libdir}/libfontembed.so.1
470 %defattr(644,root,root,755)
471 %attr(755,root,root) %{_libdir}/libcupsfilters.so
472 %attr(755,root,root) %{_libdir}/libfontembed.so
473 %{_includedir}/cupsfilters
474 %{_includedir}/fontembed
475 %{_pkgconfigdir}/libcupsfilters.pc
476 %{_pkgconfigdir}/libfontembed.pc
479 %defattr(644,root,root,755)
480 %{_libdir}/libcupsfilters.a
481 %{_libdir}/libfontembed.a
483 %files -n cups-browsed
484 %defattr(644,root,root,755)
485 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cups/cups-browsed.conf
486 %attr(755,root,root) %{_sbindir}/cups-browsed
487 %attr(755,root,root) %{_cups_serverbin}/backend/implicitclass
488 %attr(754,root,root) /etc/rc.d/init.d/cups-browsed
489 %{systemdunitdir}/cups-browsed.service
490 %{_mandir}/man5/cups-browsed.conf.5*
491 %{_mandir}/man8/cups-browsed.8*
493 %files -n cups-backend-parallel
494 %defattr(644,root,root,755)
495 %attr(755,root,root) %{_cups_serverbin}/backend/parallel
497 %files -n cups-backend-serial
498 %defattr(644,root,root,755)
499 %attr(755,root,root) %{_cups_serverbin}/backend/serial
503 %defattr(644,root,root,755)
504 %doc scripting/perl/README
505 %{perl_vendorarch}/CUPS.pm
506 %dir %{perl_vendorarch}/auto/CUPS
507 %{perl_vendorarch}/auto/CUPS/autosplit.ix
508 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/CUPS.so
509 %{_mandir}/man3/CUPS.3pm*
513 %files -n %{php_name}-cups
514 %defattr(644,root,root,755)
515 %doc scripting/php/README
516 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini
517 %attr(755,root,root) %{php_extensiondir}/libphpcups.so