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: http://www.openprinting.org/download/cups-filters/%{name}-%{version}.tar.xz
28 # Source0-md5: 69d84e62e0770a481ee00e90bc5155df
29 Patch0: %{name}-dbus.patch
30 Patch1: %{name}-php.patch
31 Patch2: %{name}-php7.patch
32 Patch3: %{name}-php73.patch
33 URL: http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters
34 BuildRequires: autoconf >= 2.65
35 BuildRequires: automake >= 1:1.11
36 BuildRequires: avahi-devel
37 BuildRequires: avahi-glib-devel
38 BuildRequires: cups-devel >= 1:1.6.0
39 BuildRequires: dbus-devel
40 BuildRequires: fontconfig-devel >= 2.0.0
41 BuildRequires: freetype-devel >= 2
42 # /usr/bin/gs, for features detection
43 %{?with_php:BuildRequires: %{php_name}-devel}
44 BuildRequires: ghostscript
45 BuildRequires: ghostscript-ijs-devel
46 BuildRequires: glib2-devel >= 1:2.30.2
47 BuildRequires: lcms2-devel >= 2
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 BuildRequires: pkgconfig >= 1:0.20
57 BuildRequires: poppler-cpp-devel >= 0.19
58 # /usr/bin/pdftops, for features detection
59 BuildRequires: poppler-progs >= 0.19
60 BuildRequires: qpdf-devel >= 8.3.0
61 BuildRequires: rpmbuild(macros) >= 1.671
62 BuildRequires: zlib-devel
63 # DejaVuSans.ttf (testing font for test scripts)
64 #BuildRequires: fonts-TTF-DejaVu
65 Requires: %{name}-libs = %{version}-%{release}
68 Requires: cups >= 1:1.6.0
69 Requires: fontconfig >= 2.0.0
73 Requires: poppler >= 0.19
74 Requires: poppler-progs >= 0.19
75 Requires: qpdf-libs >= 8.3.0
77 Suggests: fonts-TTF-freefont
78 Provides: cups-filter-foomatic
79 Provides: ghostscript-cups = 9.08
80 Obsoletes: cups-filter-foomatic
81 Obsoletes: foomatic-filters
82 Obsoletes: ghostscript-cups < 9.08
83 Conflicts: cups-backend-hp < 3.13.11-2
84 Conflicts: hplip-ppd < 3.13.11-2
85 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
87 %define _cups_serverbin %(/usr/bin/cups-config --serverbin)
90 Contains backends, filters, and other software that was once part of
91 the core CUPS distribution but is no longer maintained by Apple Inc.
92 In addition it contains additional filters developed independently of
93 Apple, especially filters for the PDF-centric printing workflow
94 introduced by OpenPrinting.
96 %description -l pl.UTF-8
97 Ten pakiet zawiera backendy, filtry i inne oprogramowanie, będące
98 kiedyś częścią CUPS-a, ale nie utrzymywane już przez firmę Apple Inc.
99 Dodatkowo pakiet zawiera dodatkowe filtry stworzone niezależnie od
100 Apple'a, w szczególności filtry dla PDF-ocentrycznego obiegu
101 drukowania wprowadzonego przez OpenPrinting.
104 Summary: OpenPrinting CUPS filters for Braille embossers
105 Summary(pl.UTF-8): Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a
106 Group: Applications/Printing
107 Requires: %{name} = %{version}-%{release}
110 OpenPrinting CUPS filters for Braille embossers.
112 %description braille -l pl.UTF-8
113 Filtry CUPS-a z projektu OpenPrinting dla drukarek Braille'a.
116 Summary: OpenPrinting CUPS filters and backends - cupsfilters and fontembed libraries
117 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - biblioteki cupsfilters i fontembed
118 # LGPLv2: libcupsfilters
120 License: LGPL v2, MIT
122 Requires: cups-lib >= 1:1.6.0
125 This package provides cupsfilters and fontembed libraries.
127 %description libs -l pl.UTF-8
128 Ten pakiet udostępnia biblioteki cupsfilters i fontembed.
131 Summary: OpenPrinting CUPS filters and backends - development environment
132 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - środowisko programistyczne
133 License: LGPL v2, MIT
134 Group: Development/Libraries
135 Requires: %{name}-libs = %{version}-%{release}
136 Requires: cups-devel >= 1:1.6.0
137 Requires: libjpeg-devel
138 Requires: libpng-devel
139 Requires: libtiff-devel
142 This is the development package for OpenPrinting CUPS filters and
145 %description devel -l pl.UTF-8
146 To jest pakiet programistyczny dla filtrów i backendów CUPS-a z
147 projektu OpenPrinting.
150 Summary: OpenPrinting CUPS filters and backends - static cupsfilters and fontembed libraries
151 Summary(pl.UTF-8): Filtry i backendy CUPS-a z projektu OpenPrinting - statyczne biblioteki cupsfilters i fontembed
152 License: LGPL v2, MIT
153 Group: Development/Libraries
154 Requires: %{name}-devel = %{version}-%{release}
157 This package provides static cupsfilters and fontembed libraries.
159 %description static -l pl.UTF-8
160 Ten pakiet udostępnia statyczne biblioteki cupsfilters i fontembed.
162 %package -n cups-browsed
163 Summary: A daemon for browsing the Bonjour broadcasts of shared, remote CUPS printers
164 Summary(pl.UTF-8): Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych drukarek CUPS
165 Group: Applications/Printing
166 Requires(post,preun): /sbin/chkconfig
167 Requires(post,preun,postun): systemd-units
168 Requires: glib2 >= 1:2.30.2
169 Requires: systemd-units >= 38
171 %description -n cups-browsed
172 A daemon for browsing the Bonjour broadcasts of shared, remote CUPS
175 %description -n cups-browsed -l pl.UTF-8
176 Demon do przeglądania broadcastów Bonjour współdzielonych, zdalnych
179 %package -n cups-backend-parallel
180 Summary: Parallel port backend for CUPS
181 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty równoległe
182 # must be larger than cups.spec before 1.6.0
184 License: GPL v2 + OpenSSL exception
185 Group: Applications/Printing
186 Requires: cups >= 1:1.6.0
188 %description -n cups-backend-parallel
189 This package allow CUPS printing on printers connected by parallel
192 %description -n cups-backend-parallel -l pl.UTF-8
193 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
194 podłączonych do portów równoległych.
196 %package -n cups-backend-serial
197 Summary: Serial port backend for CUPS
198 Summary(pl.UTF-8): Backend CUPS-a obsługujący porty szeregowe
199 # must be larger than cups.spec before 1.6.0
201 License: GPL v2 + OpenSSL exception
202 Group: Applications/Printing
203 Requires: cups >= 1:1.6.0
205 %description -n cups-backend-serial
206 This package allow CUPS printing on printers connected by serial
209 %description -n cups-backend-serial -l pl.UTF-8
210 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach
211 podłączonych do portów szeregowych.
213 %package -n perl-cups
214 Summary: Perl module for CUPS
215 Summary(pl.UTF-8): Moduł Perla CUPS
216 # must be larger than cups.spec before 1.6.0
218 License: GPL v2 + OpenSSL exception
219 Group: Development/Languages/Perl
220 Requires: cups-lib >= 1:1.6.0
222 %description -n perl-cups
223 Perl module for Common Unix Printing System.
225 %description -n perl-cups -l pl.UTF-8
226 Moduł Perla do ogólnego systemu druku dla Uniksa.
228 %package -n %{php_name}-cups
229 Summary: PHP module for CUPS
230 Summary(pl.UTF-8): Moduł PHP CUPS
231 # must be larger than cups.spec before 1.6.0
233 License: GPL v2 + OpenSSL exception
234 Group: Development/Languages/PHP
235 Requires: cups-lib >= 1:1.6.0
236 %{?requires_php_extension}
238 %description -n %{php_name}-cups
239 PHP module for Common Unix Printing System.
241 %description -n %{php_name}-cups -l pl.UTF-8
242 Moduł PHP do ogólnego systemu druku dla Uniksa.
244 # CREATE ANY NEW PACKAGES BEFORE cups-backend-* (EPOCH)
259 %{!?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
311 # Not sure what is this good for.
312 %{__rm} $RPM_BUILD_ROOT%{_bindir}/ttfread
315 rm -rf $RPM_BUILD_ROOT
317 %post libs -p /sbin/ldconfig
318 %postun libs -p /sbin/ldconfig
320 %post -n cups-browsed
321 if [ "$1" = "1" ]; then
322 # We can remove this after few releases, it's just for the introduction of cups-browsed.
323 if [ -f %{_sysconfdir}/cups/cups-browsed.conf ]; then
324 echo -e "\n# NOTE: This file is not part of CUPS. You need to start & enable cups-browsed service." >>%{_sysconfdir}/cups/cups-browsed.conf
327 # move BrowsePoll from cupsd.conf to cups-browsed.conf
328 if [ -f %{_sysconfdir}/cups/cupsd.conf ] && grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf; then
329 if ! grep -iq "^BrowsePoll" %{_sysconfdir}/cups/cups-browsed.conf; then
330 echo "# Settings automatically moved from cupsd.conf by RPM package:" >>%{_sysconfdir}/cups/cups-browsed.conf
331 grep -i "^BrowsePoll" %{_sysconfdir}/cups/cupsd.conf >> %{_sysconfdir}/cups/cups-browsed.conf || :
333 sed -i -e "s,^BrowsePoll,#BrowsePoll directive moved to cups-browsed.conf\n#BrowsePoll,i" %{_sysconfdir}/cups/cupsd.conf || :
336 /sbin/chkconfig --add cups-browsed
337 %service cups-browsed restart
338 %systemd_post cups-browsed.service
340 %preun -n cups-browsed
341 if [ "$1" = "0" ]; then
342 %service cups-browsed stop
343 /sbin/chkconfig --del cups-browsed
345 %systemd_preun cups-browsed.service
347 %postun -n cups-browsed
351 %defattr(644,root,root,755)
352 %doc AUTHORS COPYING NEWS README
353 %attr(755,root,root) %{_bindir}/driverless
354 %attr(755,root,root) %{_bindir}/foomatic-rip
355 %attr(755,root,root) %{_cups_serverbin}/backend/beh
356 %attr(755,root,root) %{_cups_serverbin}/backend/cups-brf
357 %attr(755,root,root) %{_cups_serverbin}/backend/driverless
358 %attr(755,root,root) %{_cups_serverbin}/driver/driverless
359 %attr(755,root,root) %{_cups_serverbin}/filter/bannertopdf
360 %attr(755,root,root) %{_cups_serverbin}/filter/brftopagedbrf
361 %attr(755,root,root) %{_cups_serverbin}/filter/cgmtopdf
362 %attr(755,root,root) %{_cups_serverbin}/filter/cmxtopdf
363 %attr(755,root,root) %{_cups_serverbin}/filter/commandtoescpx
364 %attr(755,root,root) %{_cups_serverbin}/filter/commandtopclx
365 %attr(755,root,root) %{_cups_serverbin}/filter/emftopdf
366 %attr(755,root,root) %{_cups_serverbin}/filter/foomatic-rip
367 %attr(755,root,root) %{_cups_serverbin}/filter/gstopdf
368 %attr(755,root,root) %{_cups_serverbin}/filter/gstopxl
369 %attr(755,root,root) %{_cups_serverbin}/filter/gstoraster
370 %attr(755,root,root) %{_cups_serverbin}/filter/imagetopdf
371 %attr(755,root,root) %{_cups_serverbin}/filter/imagetops
372 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoraster
373 %attr(755,root,root) %{_cups_serverbin}/filter/mupdftoraster
374 %attr(755,root,root) %{_cups_serverbin}/filter/musicxmltobrf
375 %attr(755,root,root) %{_cups_serverbin}/filter/pdftopdf
376 %attr(755,root,root) %{_cups_serverbin}/filter/pdftops
377 %attr(755,root,root) %{_cups_serverbin}/filter/pdftoraster
378 %attr(755,root,root) %{_cups_serverbin}/filter/rastertoescpx
379 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclm
380 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopclx
381 %attr(755,root,root) %{_cups_serverbin}/filter/rastertopdf
382 %attr(755,root,root) %{_cups_serverbin}/filter/rastertops
383 %attr(755,root,root) %{_cups_serverbin}/filter/svgtopdf
384 %attr(755,root,root) %{_cups_serverbin}/filter/sys5ippprinter
385 %attr(755,root,root) %{_cups_serverbin}/filter/texttopdf
386 %attr(755,root,root) %{_cups_serverbin}/filter/texttops
387 %attr(755,root,root) %{_cups_serverbin}/filter/texttotext
388 %attr(755,root,root) %{_cups_serverbin}/filter/vectortobrf
389 %attr(755,root,root) %{_cups_serverbin}/filter/vectortopdf
390 %attr(755,root,root) %{_cups_serverbin}/filter/vectortoubrl
391 %attr(755,root,root) %{_cups_serverbin}/filter/wmftopdf
392 %attr(755,root,root) %{_cups_serverbin}/filter/xfigtopdf
393 %{_datadir}/cups/banners/*
394 %{_datadir}/cups/charsets
395 %{_datadir}/cups/data/classified.pdf
396 %{_datadir}/cups/data/confidential.pdf
397 %{_datadir}/cups/data/default.pdf
398 %{_datadir}/cups/data/default-testpage.pdf
399 %{_datadir}/cups/data/form_english.pdf
400 %{_datadir}/cups/data/form_english_in.odt
401 %{_datadir}/cups/data/form_russian.pdf
402 %{_datadir}/cups/data/form_russian_in.odt
403 %{_datadir}/cups/data/secret.pdf
404 %{_datadir}/cups/data/standard.pdf
405 %{_datadir}/cups/data/topsecret.pdf
406 %{_datadir}/cups/data/unclassified.pdf
407 %{_datadir}/cups/data/testprint
408 %{_datadir}/cups/drv/cupsfilters.drv
409 %{_datadir}/cups/drv/generic-ubrl.drv
410 %{_datadir}/cups/mime/cupsfilters.types
411 %{_datadir}/cups/mime/cupsfilters.convs
412 %{_datadir}/cups/mime/cupsfilters-ghostscript.convs
413 %{_datadir}/cups/mime/cupsfilters-mupdf.convs
414 %{_datadir}/cups/mime/cupsfilters-poppler.convs
415 # definitions for drivers; pcl.h is used by cupsfilters.drv
416 %{_datadir}/cups/ppdc/escp.h
417 %{_datadir}/cups/ppdc/pcl.h
418 %{_datadir}/ppd/cupsfilters
419 %{_mandir}/man1/driverless.1*
420 %{_mandir}/man1/foomatic-rip.1*
424 %defattr(644,root,root,755)
425 %attr(755,root,root) %{_cups_serverbin}/filter/brftoembosser
426 %attr(755,root,root) %{_cups_serverbin}/filter/imagetobrf
427 %attr(755,root,root) %{_cups_serverbin}/filter/imagetoubrl
428 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv3
429 %attr(755,root,root) %{_cups_serverbin}/filter/imageubrltoindexv4
430 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv3
431 %attr(755,root,root) %{_cups_serverbin}/filter/textbrftoindexv4
432 %attr(755,root,root) %{_cups_serverbin}/filter/texttobrf
433 %dir %{_datadir}/cups/braille
434 %attr(755,root,root) %{_datadir}/cups/braille/cups-braille.sh
435 %attr(755,root,root) %{_datadir}/cups/braille/index.sh
436 %attr(755,root,root) %{_datadir}/cups/braille/indexv3.sh
437 %attr(755,root,root) %{_datadir}/cups/braille/indexv4.sh
438 %{_datadir}/cups/drv/generic-brf.drv
439 %{_datadir}/cups/drv/indexv3.drv
440 %{_datadir}/cups/drv/indexv4.drv
441 %{_datadir}/cups/mime/braille.convs
442 %{_datadir}/cups/mime/braille.types
443 %{_datadir}/cups/ppdc/braille.defs
444 %{_datadir}/cups/ppdc/fr-braille.po
445 %{_datadir}/cups/ppdc/imagemagick.defs
446 %{_datadir}/cups/ppdc/index.defs
447 %{_datadir}/cups/ppdc/liblouis.defs
448 %{_datadir}/cups/ppdc/liblouis1.defs
449 %{_datadir}/cups/ppdc/liblouis2.defs
450 %{_datadir}/cups/ppdc/liblouis3.defs
451 %{_datadir}/cups/ppdc/liblouis4.defs
452 %{_datadir}/cups/ppdc/media-braille.defs
456 %defattr(644,root,root,755)
457 %doc fontembed/README
458 %attr(755,root,root) %{_libdir}/libcupsfilters.so.*.*.*
459 %attr(755,root,root) %ghost %{_libdir}/libcupsfilters.so.1
460 %attr(755,root,root) %{_libdir}/libfontembed.so.*.*.*
461 %attr(755,root,root) %ghost %{_libdir}/libfontembed.so.1
464 %defattr(644,root,root,755)
465 %attr(755,root,root) %{_libdir}/libcupsfilters.so
466 %attr(755,root,root) %{_libdir}/libfontembed.so
467 %{_includedir}/cupsfilters
468 %{_includedir}/fontembed
469 %{_pkgconfigdir}/libcupsfilters.pc
470 %{_pkgconfigdir}/libfontembed.pc
473 %defattr(644,root,root,755)
474 %{_libdir}/libcupsfilters.a
475 %{_libdir}/libfontembed.a
477 %files -n cups-browsed
478 %defattr(644,root,root,755)
479 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cups/cups-browsed.conf
480 %attr(755,root,root) %{_sbindir}/cups-browsed
481 %attr(755,root,root) %{_cups_serverbin}/backend/implicitclass
482 %attr(754,root,root) /etc/rc.d/init.d/cups-browsed
483 %{systemdunitdir}/cups-browsed.service
484 %{_mandir}/man5/cups-browsed.conf.5*
485 %{_mandir}/man8/cups-browsed.8*
487 %files -n cups-backend-parallel
488 %defattr(644,root,root,755)
489 %attr(755,root,root) %{_cups_serverbin}/backend/parallel
491 %files -n cups-backend-serial
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_cups_serverbin}/backend/serial
497 %defattr(644,root,root,755)
498 %doc scripting/perl/README
499 %{perl_vendorarch}/CUPS.pm
500 %dir %{perl_vendorarch}/auto/CUPS
501 %{perl_vendorarch}/auto/CUPS/autosplit.ix
502 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/CUPS.so
503 %{_mandir}/man3/CUPS.3pm*
507 %files -n %{php_name}-cups
508 %defattr(644,root,root,755)
509 %doc scripting/php/README
510 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini
511 %attr(755,root,root) %{php_extensiondir}/libphpcups.so