3 %bcond_without static_libs # static libraries
4 %bcond_without braille # Braille embossers support
5 %bcond_without perl # Perl module
6 %bcond_with 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, pdftopdf, pdftoraster
25 License: GPL v2, GPL v2+, GPL v3, GPL v3+, LGPL v2+, MIT
26 Group: Applications/Printing
27 Source0: https://www.openprinting.org/download/cups-filters/%{name}-%{version}.tar.xz
28 # Source0-md5: 24bed15110499fd652d65d6baab85ca6
29 Patch0: %{name}-php.patch
30 Patch1: %{name}-php7.patch
31 Patch2: %{name}-php73.patch
32 URL: http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters
33 BuildRequires: autoconf >= 2.65
34 BuildRequires: automake >= 1:1.11
35 BuildRequires: avahi-devel
36 BuildRequires: avahi-glib-devel
37 BuildRequires: cups-devel >= 1:1.6.0
38 BuildRequires: dbus-devel
39 BuildRequires: fontconfig-devel >= 2.0.0
40 BuildRequires: fonts-TTF-DejaVu
41 BuildRequires: freetype-devel >= 2
42 BuildRequires: gettext-tools >= 0.18.3
43 # /usr/bin/gs, for features detection
44 BuildRequires: ghostscript
45 BuildRequires: glib2-devel >= 1:2.30.2
46 BuildRequires: lcms2-devel >= 2
47 BuildRequires: libexif-devel
48 BuildRequires: libjpeg-devel
49 %{?with_braille:BuildRequires: liblouis-devel}
50 BuildRequires: libpng-devel
51 BuildRequires: libstdc++-devel >= 6:4.7
52 BuildRequires: libtiff-devel
53 BuildRequires: libtool
54 BuildRequires: openldap-devel
55 %{?with_perl:BuildRequires: perl-devel}
56 %{?with_php:BuildRequires: %{php_name}-devel}
57 BuildRequires: pkgconfig >= 1:0.20
58 BuildRequires: poppler-cpp-devel >= 0.19
59 # /usr/bin/pdftops, for features detection
60 BuildRequires: poppler-progs >= 0.19
61 BuildRequires: qpdf-devel >= 8.3.0
62 BuildRequires: rpmbuild(macros) >= 1.671
63 BuildRequires: tar >= 1:1.22
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 >= 0.19
77 Requires: poppler-progs >= 0.19
78 Requires: qpdf-libs >= 8.3.0
80 Suggests: fonts-TTF-freefont
81 Provides: cups-filter-foomatic
82 Provides: ghostscript-cups = 9.08
83 Obsoletes: cups-filter-foomatic
84 Obsoletes: foomatic-filters
85 Obsoletes: ghostscript-cups < 9.08
86 Conflicts: cups-backend-hp < 3.13.11-2
87 Conflicts: hplip-ppd < 3.13.11-2
88 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
90 %define _cups_serverbin %(/usr/bin/cups-config --serverbin)
93 Contains backends, filters, and other software that was once part of
94 the core CUPS distribution but is no longer maintained by Apple Inc.
95 In addition it contains additional filters developed independently of
96 Apple, especially filters for the PDF-centric printing workflow
97 introduced by OpenPrinting.
99 %description -l pl.UTF-8
100 Ten pakiet zawiera backendy, filtry i inne oprogramowanie, będące
101 kiedyś częścią CUPS-a, ale nie utrzymywane już przez firmę Apple Inc.
102 Dodatkowo pakiet zawiera dodatkowe filtry stworzone niezależnie od
103 Apple'a, w szczególności filtry dla PDF-ocentrycznego obiegu
104 drukowania wprowadzonego przez OpenPrinting.
107 Summary: OpenPrinting CUPS filters for Braille embossers
108 Summary(pl.UTF-8): Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a
109 Group: Applications/Printing
110 Requires: %{name} = %{version}-%{release}
113 OpenPrinting CUPS filters for Braille embossers.
115 %description braille -l pl.UTF-8
116 Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a.
119 Summary: OpenPrinting CUPS filters and backends - cupsfilters and fontembed libraries
120 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - biblioteki cupsfilters i fontembed
121 # LGPLv2: libcupsfilters
123 License: LGPL v2, MIT
125 Requires: cups-lib >= 1:1.6.0
128 This package provides cupsfilters and fontembed libraries.
130 %description libs -l pl.UTF-8
131 Ten pakiet udostępnia biblioteki cupsfilters i fontembed.
134 Summary: OpenPrinting CUPS filters and backends - development environment
135 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - środowisko programistyczne
136 License: LGPL v2, MIT
137 Group: Development/Libraries
138 Requires: %{name}-libs = %{version}-%{release}
139 Requires: cups-devel >= 1:1.6.0
140 Requires: libjpeg-devel
141 Requires: libpng-devel
142 Requires: libtiff-devel
145 This is the development package for OpenPrinting CUPS filters and
148 %description devel -l pl.UTF-8
149 To jest pakiet programistyczny dla filtrów i backendów CUPS-a z
150 projektu OpenPrinting.
153 Summary: OpenPrinting CUPS filters and backends - static cupsfilters and fontembed libraries
154 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - statyczne biblioteki cupsfilters i fontembed
155 License: LGPL v2, MIT
156 Group: Development/Libraries
157 Requires: %{name}-devel = %{version}-%{release}
160 This package provides static cupsfilters and fontembed libraries.
162 %description static -l pl.UTF-8
163 Ten pakiet udostępnia statyczne biblioteki cupsfilters i fontembed.
165 %package -n cups-browsed
166 Summary: A daemon for browsing the Bonjour broadcasts of shared, remote CUPS printers
167 Summary(pl.UTF-8): Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych drukarek CUPS
168 Group: Applications/Printing
169 Requires(post,preun): /sbin/chkconfig
170 Requires(post,preun,postun): systemd-units
171 Requires: glib2 >= 1:2.30.2
172 Requires: systemd-units >= 38
174 %description -n cups-browsed
175 A daemon for browsing the Bonjour broadcasts of shared, remote CUPS
178 %description -n cups-browsed -l pl.UTF-8
179 Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych
182 %package -n cups-backend-parallel
183 Summary: Parallel port backend for CUPS
184 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty równoległe
185 # must be larger than cups.spec before 1.6.0
187 License: GPL v2 + OpenSSL exception
188 Group: Applications/Printing
189 Requires: cups >= 1:1.6.0
191 %description -n cups-backend-parallel
192 This package allow CUPS printing on printers connected by parallel
195 %description -n cups-backend-parallel -l pl.UTF-8
196 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
197 podłączonych do portów równoległych.
199 %package -n cups-backend-serial
200 Summary: Serial port backend for CUPS
201 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty szeregowe
202 # must be larger than cups.spec before 1.6.0
204 License: GPL v2 + OpenSSL exception
205 Group: Applications/Printing
206 Requires: cups >= 1:1.6.0
208 %description -n cups-backend-serial
209 This package allow CUPS printing on printers connected by serial
212 %description -n cups-backend-serial -l pl.UTF-8
213 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
214 podłączonych do portów szeregowych.
216 %package -n perl-cups
217 Summary: Perl module for CUPS
218 Summary(pl.UTF-8): Moduł Perla CUPS
219 # must be larger than cups.spec before 1.6.0
221 License: GPL v2 + OpenSSL exception
222 Group: Development/Languages/Perl
223 Requires: cups-lib >= 1:1.6.0
225 %description -n perl-cups
226 Perl module for Common Unix Printing System.
228 %description -n perl-cups -l pl.UTF-8
229 Moduł Perla do ogólnego systemu druku dla Uniksa.
231 %package -n %{php_name}-cups
232 Summary: PHP module for CUPS
233 Summary(pl.UTF-8): Moduł PHP CUPS
234 # must be larger than cups.spec before 1.6.0
236 License: GPL v2 + OpenSSL exception
237 Group: Development/Languages/PHP
238 Requires: cups-lib >= 1:1.6.0
239 %{?requires_php_extension}
241 %description -n %{php_name}-cups
242 PHP module for Common Unix Printing System.
244 %description -n %{php_name}-cups -l pl.UTF-8
245 Moduł PHP do ogólnego systemu druku dla Uniksa.
247 # CREATE ANY NEW PACKAGES BEFORE cups-backend-* (EPOCH)
261 %{!?with_braille:--disable-braille} \
263 --disable-silent-rules \
264 %{!?with_static_libs:--disable-static} \
265 %{?with_php:--with-php} \
266 --with-pdftops=hybrid \
267 --with-rcdir=/etc/rc.d/init.d \
269 --with-mutool-path=/usr/bin/mutool \
270 --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf
276 %{__perl} Makefile.PL \
278 OPTIMIZE="%{rpmcflags}"
285 rm -rf $RPM_BUILD_ROOT
286 install -d $RPM_BUILD_ROOT%{systemdunitdir}
288 DESTDIR=$RPM_BUILD_ROOT
291 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
292 cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/phpcups.ini << 'EOF'
293 ; Enable phpcups extension module
294 extension=libphpcups.so
297 %{__rm} $RPM_BUILD_ROOT%{php_extensiondir}/libphpcups.la
301 %{__make} -C scripting/perl install \
302 DESTDIR=$RPM_BUILD_ROOT
305 install -p utils/cups-browsed.service $RPM_BUILD_ROOT%{systemdunitdir}
307 # obsoleted by pkg-config
308 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
310 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/cups-filters
313 rm -rf $RPM_BUILD_ROOT
315 %post libs -p /sbin/ldconfig
316 %postun libs -p /sbin/ldconfig
318 %post -n cups-browsed
319 if [ "$1" = "1" ]; then
320 # We can remove this after few releases, it's just for the introduction of cups-browsed.
321 if [ -f %{_sysconfdir}/cups/cups-browsed.conf ]; then
322 echo -e "\n# NOTE: This file is not part of CUPS. You need to start & enable cups-browsed service." >>%{_sysconfdir}/cups/cups-browsed.conf
325 # move BrowsePoll from cupsd.conf to cups-browsed.conf
326 if [ -f %{_sysconfdir}/cups/cupsd.conf ] && grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf; then
327 if ! grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cups-browsed.conf; then
328 echo "# Settings automatically moved from cupsd.conf by RPM package:" >>%{_sysconfdir}/cups/cups-browsed.conf
329 grep -i "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf >> %{_sysconfdir}/cups/cups-browsed.conf || :
331 sed -i -e "s,^BrowsePoll,#BrowsePoll directive moved to cups-browsed.conf\n#BrowsePoll,i" %{_sysconfdir}/cups/cupsd.conf || :
334 /sbin/chkconfig --add cups-browsed
335 %service cups-browsed restart
336 %systemd_post cups-browsed.service
338 %preun -n cups-browsed
339 if [ "$1" = "0" ]; then
340 %service cups-browsed stop
341 /sbin/chkconfig --del cups-browsed
343 %systemd_preun cups-browsed.service
345 %postun -n cups-browsed
349 %defattr(644,root,root,755)
350 %doc AUTHORS COPYING NEWS README
351 %attr(755,root,root) %{_bindir}/driverless
352 %attr(755,root,root) %{_bindir}/driverless-fax
353 %attr(755,root,root) %{_bindir}/foomatic-rip
354 %attr(700,root,root) %{_cups_serverbin}/backend/beh
355 %attr(700,root,root) %{_cups_serverbin}/backend/cups-brf
356 %attr(700,root,root) %{_cups_serverbin}/backend/driverless
357 %attr(700,root,root) %{_cups_serverbin}/backend/driverless-fax
358 %attr(700,root,root) %{_cups_serverbin}/backend/implicitclass
359 %attr(755,root,root) %{_cups_serverbin}/driver/driverless
360 %attr(755,root,root) %{_cups_serverbin}/driver/driverless-fax
361 %attr(755,root,root) %{_cups_serverbin}/filter/bannertopdf
362 %attr(755,root,root) %{_cups_serverbin}/filter/brftopagedbrf
363 %attr(755,root,root) %{_cups_serverbin}/filter/cgmtopdf
364 %attr(755,root,root) %{_cups_serverbin}/filter/cmxtopdf
365 %attr(755,root,root) %{_cups_serverbin}/filter/commandtoescpx
366 %attr(755,root,root) %{_cups_serverbin}/filter/commandtopclx
367 %attr(755,root,root) %{_cups_serverbin}/filter/emftopdf
368 %attr(755,root,root) %{_cups_serverbin}/filter/foomatic-rip
369 %attr(755,root,root) %{_cups_serverbin}/filter/gstopdf
370 %attr(755,root,root) %{_cups_serverbin}/filter/gstopxl
371 %attr(755,root,root) %{_cups_serverbin}/filter/gstoraster
372 %attr(755,root,root) %{_cups_serverbin}/filter/imagetopdf
373 %attr(755,root,root) %{_cups_serverbin}/filter/imagetops
374 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoraster
375 %attr(755,root,root) %{_cups_serverbin}/filter/mupdftoraster
376 %attr(755,root,root) %{_cups_serverbin}/filter/musicxmltobrf
377 %attr(755,root,root) %{_cups_serverbin}/filter/pdftopdf
378 %attr(755,root,root) %{_cups_serverbin}/filter/pdftops
379 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoraster
380 %attr(755,root,root) %{_cups_serverbin}/filter/rastertoescpx
381 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclm
382 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclx
383 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopdf
384 %attr(755,root,root) %{_cups_serverbin}/filter/rastertops
385 %attr(755,root,root) %{_cups_serverbin}/filter/svgtopdf
386 %attr(755,root,root) %{_cups_serverbin}/filter/sys5ippprinter
387 %attr(755,root,root) %{_cups_serverbin}/filter/texttopdf
388 %attr(755,root,root) %{_cups_serverbin}/filter/texttops
389 %attr(755,root,root) %{_cups_serverbin}/filter/texttotext
390 %attr(755,root,root) %{_cups_serverbin}/filter/vectortobrf
391 %attr(755,root,root) %{_cups_serverbin}/filter/vectortopdf
392 %attr(755,root,root) %{_cups_serverbin}/filter/vectortoubrl
393 %attr(755,root,root) %{_cups_serverbin}/filter/wmftopdf
394 %attr(755,root,root) %{_cups_serverbin}/filter/xfigtopdf
395 %{_datadir}/cups/banners/*
396 %{_datadir}/cups/charsets
397 %{_datadir}/cups/data/classified.pdf
398 %{_datadir}/cups/data/confidential.pdf
399 %{_datadir}/cups/data/default.pdf
400 %{_datadir}/cups/data/default-testpage.pdf
401 %{_datadir}/cups/data/form_english.pdf
402 %{_datadir}/cups/data/form_english_in.odt
403 %{_datadir}/cups/data/form_russian.pdf
404 %{_datadir}/cups/data/form_russian_in.odt
405 %{_datadir}/cups/data/secret.pdf
406 %{_datadir}/cups/data/standard.pdf
407 %{_datadir}/cups/data/topsecret.pdf
408 %{_datadir}/cups/data/unclassified.pdf
409 %{_datadir}/cups/data/testprint
410 %{_datadir}/cups/drv/cupsfilters.drv
411 %{_datadir}/cups/drv/generic-ubrl.drv
412 %{_datadir}/cups/mime/cupsfilters.types
413 %{_datadir}/cups/mime/cupsfilters.convs
414 %{_datadir}/cups/mime/cupsfilters-ghostscript.convs
415 %{_datadir}/cups/mime/cupsfilters-mupdf.convs
416 %{_datadir}/cups/mime/cupsfilters-poppler.convs
417 # definitions for drivers; pcl.h is used by cupsfilters.drv
418 %{_datadir}/cups/ppdc/escp.h
419 %{_datadir}/cups/ppdc/pcl.h
420 %{_datadir}/ppd/cupsfilters
421 %{_mandir}/man1/driverless.1*
422 %{_mandir}/man1/foomatic-rip.1*
426 %defattr(644,root,root,755)
427 %attr(755,root,root) %{_cups_serverbin}/filter/brftoembosser
428 %attr(755,root,root) %{_cups_serverbin}/filter/imagetobrf
429 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoubrl
430 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv3
431 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv4
432 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv3
433 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv4
434 %attr(755,root,root) %{_cups_serverbin}/filter/texttobrf
435 %dir %{_datadir}/cups/braille
436 %attr(755,root,root) %{_datadir}/cups/braille/cups-braille.sh
437 %attr(755,root,root) %{_datadir}/cups/braille/index.sh
438 %attr(755,root,root) %{_datadir}/cups/braille/indexv3.sh
439 %attr(755,root,root) %{_datadir}/cups/braille/indexv4.sh
440 %{_datadir}/cups/drv/generic-brf.drv
441 %{_datadir}/cups/drv/indexv3.drv
442 %{_datadir}/cups/drv/indexv4.drv
443 %{_datadir}/cups/mime/braille.convs
444 %{_datadir}/cups/mime/braille.types
445 %{_datadir}/cups/ppdc/braille.defs
446 %{_datadir}/cups/ppdc/fr-braille.po
447 %{_datadir}/cups/ppdc/imagemagick.defs
448 %{_datadir}/cups/ppdc/index.defs
449 %{_datadir}/cups/ppdc/liblouis.defs
450 %{_datadir}/cups/ppdc/liblouis1.defs
451 %{_datadir}/cups/ppdc/liblouis2.defs
452 %{_datadir}/cups/ppdc/liblouis3.defs
453 %{_datadir}/cups/ppdc/liblouis4.defs
454 %{_datadir}/cups/ppdc/media-braille.defs
458 %defattr(644,root,root,755)
459 %doc fontembed/README
460 %attr(755,root,root) %{_libdir}/libcupsfilters.so.*.*.*
461 %attr(755,root,root) %ghost %{_libdir}/libcupsfilters.so.1
462 %attr(755,root,root) %{_libdir}/libfontembed.so.*.*.*
463 %attr(755,root,root) %ghost %{_libdir}/libfontembed.so.1
466 %defattr(644,root,root,755)
467 %attr(755,root,root) %{_libdir}/libcupsfilters.so
468 %attr(755,root,root) %{_libdir}/libfontembed.so
469 %{_includedir}/cupsfilters
470 %{_includedir}/fontembed
471 %{_pkgconfigdir}/libcupsfilters.pc
472 %{_pkgconfigdir}/libfontembed.pc
474 %if %{with static_libs}
476 %defattr(644,root,root,755)
477 %{_libdir}/libcupsfilters.a
478 %{_libdir}/libfontembed.a
481 %files -n cups-browsed
482 %defattr(644,root,root,755)
483 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cups/cups-browsed.conf
484 %attr(755,root,root) %{_sbindir}/cups-browsed
485 %attr(754,root,root) /etc/rc.d/init.d/cups-browsed
486 %{systemdunitdir}/cups-browsed.service
487 %{_mandir}/man5/cups-browsed.conf.5*
488 %{_mandir}/man8/cups-browsed.8*
490 %files -n cups-backend-parallel
491 %defattr(644,root,root,755)
492 %attr(700,root,root) %{_cups_serverbin}/backend/parallel
494 %files -n cups-backend-serial
495 %defattr(644,root,root,755)
496 %attr(700,root,root) %{_cups_serverbin}/backend/serial
500 %defattr(644,root,root,755)
501 %doc scripting/perl/README
502 %{perl_vendorarch}/CUPS.pm
503 %dir %{perl_vendorarch}/auto/CUPS
504 %{perl_vendorarch}/auto/CUPS/autosplit.ix
505 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/CUPS.so
506 %{_mandir}/man3/CUPS.3pm*
510 %files -n %{php_name}-cups
511 %defattr(644,root,root,755)
512 %doc scripting/php/README
513 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini
514 %attr(755,root,root) %{php_extensiondir}/libphpcups.so