3 %bcond_without php # don't build PHP extension
4 %bcond_without perl # don't build Perl extension
7 # - register php module
8 # - build/install java ext ?
10 %include /usr/lib/rpm/macros.perl
11 Summary: Common Unix Printing System
12 Summary(pl): Popularny system druku dla Uniksa
13 Summary(pt_BR): Sistema Unix de Impressão
19 Group: Applications/Printing
20 Source0: http://ftp.easysw.com/pub/cups/%{version}/%{name}-%{version}-source.tar.bz2
21 # Source0-md5: 4ce09b1dce09b6b9398af0daae9adf63
22 #Source0: http://ftp.easysw.com/pub/cups/test/%{name}-%{version}%{_suf}-source.tar.bz2
25 Source3: %{name}.logrotate
26 Patch0: %{name}-config.patch
27 Patch1: %{name}-lp-lpr.patch
28 Patch2: %{name}-options.patch
29 Patch3: %{name}-ENCRYPTIONtxt.patch
30 Patch4: %{name}-man_pages_linking.patch
31 Patch5: %{name}-nolibs.patch
32 Patch6: %{name}-nostrip.patch
33 Patch7: %{name}-rpath.patch
34 Patch8: %{name}-gcc34.patch
35 Patch9: %{name}-tmpdir.patch
36 Patch10: %{name}-gcc4.patch
37 Patch11: %{name}-CAN-2005-2097.patch
38 Patch12: %{name}-anonymous_jobs.patch
39 URL: http://www.cups.org/
40 BuildRequires: autoconf
41 BuildRequires: automake
42 BuildRequires: libjpeg-devel
43 BuildRequires: libpng-devel
44 BuildRequires: libstdc++-devel
45 BuildRequires: libtiff-devel
46 BuildRequires: openslp-devel
47 BuildRequires: openssl-devel >= 0.9.7d
48 BuildRequires: pam-devel
49 %{?with_php:BuildRequires: php-devel}
50 BuildRequires: pkgconfig
51 BuildRequires: rpm-perlprov
52 BuildRequires: rpmbuild(macros) >= 1.268
53 Requires(post,preun): /sbin/chkconfig
54 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
55 Requires: pam >= 0.77.3
59 Conflicts: ghostscript < 7.05.4
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62 %define _ulibdir %{_prefix}/lib
65 CUPS provides a portable printing layer for UNIX-based operating
66 systems. It has been developed by Easy Software Products to promote a
67 standard printing solution for all UNIX vendors and users. CUPS
68 provides the System V and Berkeley command-line interfaces. CUPS uses
69 the Internet Printing Protocol ("IPP") as the basis for managing print
70 jobs and queues. The Line Printer Daemon ("LPD") Server Message Block
71 ("SMB"), and AppSocket (a.k.a. JetDirect) protocols are also supported
72 with reduced functionality. CUPS adds network printer browsing and
73 PostScript Printer Description ("PPD") based printing options to
74 support real-world printing under UNIX.
77 CUPS dostarcza standardowy poziom drukowania dla systemów uniksowych.
78 CUPS u¿ywa protoko³u IPP - Internet Printint Protocol jako podstawy do
79 zarz±dzania zadaniami i kolejkami druku.
82 O sistema Unix de impressão (CUPS) fornece uma camada de impressão
83 portável para os sistemas operacionais baseados no UNIX®.
86 Summary: Common Unix Printing System Libraries
87 Summary(pl): Biblioteki dla CUPS
88 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
90 Provides: %{name}-libs = %{epoch}:%{version}-%{release}
95 Common Unix Printing System Libraries.
97 %description lib -l pl
100 %description lib -l pt_BR
101 Bibliotecas CUPS requeridas pelos clientes CUPS.
104 Summary: Common Unix Printing System Clients
105 Summary(pl): Aplikacje klienckie dla CUPS
106 Group: Applications/Printing
107 Provides: %{name}-clients = %{epoch}:%{version}-%{release}
111 Common Unix Printing System Clients.
113 %description clients -l pl
114 Aplikacje klienckie dla CUPS.
117 Summary: Common Unix Printing System Libraries - images manipulation
118 Summary(pl): Biblioteki dla CUPS - obs³uga formatów graficznych
119 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
121 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
124 %description image-lib
125 Common Unix Printing System Libraries - images manupalation.
127 %description image-lib -l pl
128 Biblioteki dla CUPS - obs³uga formatów graficznych.
130 %description image-lib -l pt_BR
131 Bibliotecas CUPS requeridas pelos clientes CUPS.
134 Summary: Common Unix Printing System development files
135 Summary(pl): Popularny System Druku dla Uniksa, pliki nag³ówkowe
136 Summary(pt_BR): Sistema Unix de Impressão - ambiente de desenvolvimento
137 Group: Development/Libraries
138 Requires: %{name}-image-lib = %{epoch}:%{version}-%{release}
139 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
140 Obsoletes: libcups1-devel
143 Common Unix Printing System development files.
145 %description devel -l pl
146 Popularny System Druku dla Uniksa, pliki nag³ówkowe.
148 %description devel -l pt_BR
149 Este pacote é um adicional que contem um ambiente de desenvolvimento
150 para a criação de suporte a novas impressoras e novos serviços ao
154 Summary: Common Unix Printing System static libraries
155 Summary(pl): Popularny System Druku dla Uniksa, biblioteki statyczne
156 Summary(pt_BR): Common Unix Printing System - bibliotecas estáticas
157 Group: Development/Libraries
158 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
161 Common Unix Printing System static libraries.
163 %description static -l pl
164 Popularny System Druku dla Uniksa, biblioteki statyczne.
166 %description static -l pt_BR
167 Bibliotecas estáticas para desenvolvimento de programas que usam as
170 %package -n perl-cups
171 Summary: Perl module for CUPS
172 Summary(pl): Modu³ Perla CUPS
173 Group: Development/Languages/Perl
174 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
176 %description -n perl-cups
177 Perl module for Common Unix Printing System.
179 %description -n perl-cups -l pl
180 Modu³ Perla do Popularnego Systemu Druku dla Uniksa.
183 Summary: PHP module for CUPS
184 Summary(pl): Modu³ PHP CUPS
185 Group: Development/Languages/PHP
186 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
188 %description -n php-cups
189 PHP module for Common Unix Printing System.
191 %description -n php-cups -l pl
192 Modu³ PHP do Popularnego Systemu Druku dla Uniksa.
195 Summary: USB backend for CUPS
196 Summary(pl): Backend USB dla CUPS-a
197 Group: Applications/Printing
198 Requires: %{name} = %{epoch}:%{version}-%{release}
200 %description backend-usb
201 This package allow CUPS printing on USB printers.
203 %description backend-usb -l pl
204 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach USB.
206 %package backend-serial
207 Summary: Serial port backend for CUPS
208 Summary(pl): Backend obs³uguj±cy porty szeregowe dla CUPS-a
209 Group: Applications/Printing
210 Requires: %{name} = %{epoch}:%{version}-%{release}
212 %description backend-serial
213 This package allow CUPS printing on printers connected by serial
216 %description backend-serial -l pl
217 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
218 pod³±czonych do portów szeregowych.
220 %package backend-parallel
221 Summary: Parallel port backend for CUPS
222 Summary(pl): Backend obs³uguj±cy porty równoleg³e dla CUPS-a
223 Group: Applications/Printing
224 Requires: %{name} = %{epoch}:%{version}-%{release}
226 %description backend-parallel
227 This package allow CUPS printing on printers connected by parallel
230 %description backend-parallel -l pl
231 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
232 pod³±czonych do portów równoleg³ych.
255 --libdir=%{_ulibdir} \
256 %{?debug:--enable-debug} \
257 --with-docdir=%{_ulibdir}/%{name}/cgi-bin
260 %{__perl} -pi -e 's#-I\.\.\/\.\.#-I../.. -I../../cups#g' scripting/php/Makefile
261 %{?with_php:%{__make} -C scripting/php}
265 %{__perl} -pi -e 's@-lcups@-L../../cups $1@' Makefile.PL
266 %{__perl} Makefile.PL \
268 OPTIMIZE="%{rpmcflags} -I../.."
269 # avoid rpaths generated by MakeMaker
270 %{__perl} -pi -e 's@LD_RUN_PATH="\$\(LD_RUN_PATH\)" @@' Makefile
277 rm -rf $RPM_BUILD_ROOT
278 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,logrotate.d,security} \
279 $RPM_BUILD_ROOT/var/log/{,archiv/}cups
282 BUILDROOT=$RPM_BUILD_ROOT \
286 if [ "%{_lib}" != "lib" ] ; then
287 install -d $RPM_BUILD_ROOT%{_libdir}
288 mv $RPM_BUILD_ROOT%{_ulibdir}/*.so* $RPM_BUILD_ROOT%{_libdir}
289 mv $RPM_BUILD_ROOT%{_ulibdir}/*.a $RPM_BUILD_ROOT%{_libdir}
293 %{__make} -C scripting/php install \
294 PHPDIR="$RPM_BUILD_ROOT`php-config --extension-dir`"
300 DESTDIR=$RPM_BUILD_ROOT
304 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
305 install %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/%{name}
306 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
308 gzip -9nf $RPM_BUILD_ROOT%{_datadir}/%{name}/model/*.ppd
310 # for internal HTTP browser:
311 cp doc/*.html $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin
312 cp doc/*.css $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin
313 cp doc/images/* $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin/images
315 touch $RPM_BUILD_ROOT/var/log/cups/{access_log,error_log,page_log}
316 touch $RPM_BUILD_ROOT/etc/security/blacklist.cups
318 # check-files cleanup
319 rm -rf $RPM_BUILD_ROOT%{_mandir}/{,es/,fr/}cat?
322 rm -rf $RPM_BUILD_ROOT
325 /sbin/chkconfig --add cups
326 %service cups restart "cups daemon"
329 if [ "$1" = "0" ]; then
331 /sbin/chkconfig --del cups
334 %post lib -p /sbin/ldconfig
335 %postun lib -p /sbin/ldconfig
336 %post image-lib -p /sbin/ldconfig
337 %postun image-lib -p /sbin/ldconfig
340 %defattr(644,root,root,755)
341 #%doc *.gz doc/*.html doc/*.css doc/images
343 %attr(640,root,root) %config %verify(not md5 mtime size) /etc/pam.d/*
344 %attr(754,root,root) /etc/rc.d/init.d/cups
345 %dir %{_sysconfdir}/%{name}
346 %attr(640,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/classes.conf
347 %attr(640,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/cupsd.conf
348 %attr(640,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/printers.conf
349 %attr(640,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.convs
350 %attr(640,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.types
351 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.cups
352 %dir %{_sysconfdir}/%{name}/certs
353 %dir %{_sysconfdir}/%{name}/interfaces
354 %dir %{_sysconfdir}/%{name}/ppd
355 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
356 %attr(4755,lp,root) %{_bindir}/lppasswd
357 %attr(755,root,root) %{_bindir}/cupstestppd
358 %attr(755,root,root) %{_bindir}/disable
359 %attr(755,root,root) %{_bindir}/enable
360 %dir %{_ulibdir}/cups
361 %dir %{_ulibdir}/cups/*
362 %attr(755,root,root) %{_ulibdir}/cups/*/*
363 %exclude %{_ulibdir}/cups/backend/usb
364 %exclude %{_ulibdir}/cups/backend/serial
365 %exclude %{_ulibdir}/cups/backend/parallel
366 %attr(755,root,root) %{_sbindir}/cupsd
368 %{_mandir}/man1/backend.1*
369 %{_mandir}/man1/cupstestppd.1*
370 %{_mandir}/man1/filter.1*
371 %{_mandir}/man1/lppasswd.1*
373 %lang(fr) %{_mandir}/fr/man1/backend.1*
374 %lang(fr) %{_mandir}/fr/man1/cupstestppd.1*
375 %lang(fr) %{_mandir}/fr/man1/filter.1*
376 %lang(fr) %{_mandir}/fr/man1/lppasswd.1*
377 %lang(fr) %{_mandir}/fr/man[58]/*
378 %lang(es) %{_mandir}/es/man1/backend.1*
379 %lang(es) %{_mandir}/es/man1/cupstestppd.1*
380 %lang(es) %{_mandir}/es/man1/filter.1*
381 %lang(es) %{_mandir}/es/man1/lppasswd.1*
382 %lang(es) %{_mandir}/es/man[58]/*
384 %dir %{_datadir}/locale/C
385 %{_datadir}/locale/C/cups_C
386 %lang(be) %{_datadir}/locale/be/cups_be
387 %lang(cs) %{_datadir}/locale/cs/cups_cs
388 %lang(de) %{_datadir}/locale/de/cups_de
389 %{_datadir}/locale/en/cups_en
390 %lang(en_US) %{_datadir}/locale/en_US/cups_en_US
391 %lang(es) %{_datadir}/locale/es/cups_es
392 %lang(fr) %{_datadir}/locale/fr/cups_fr
393 %lang(he) %{_datadir}/locale/he/cups_he
394 %lang(it) %{_datadir}/locale/it/cups_it
396 %dir %lang(ru) %{_datadir}/locale/ru_RU
397 %lang(ru) %{_datadir}/locale/ru_RU/cups_ru_RU
398 %lang(sv) %{_datadir}/locale/sv/cups_sv
399 %lang(uk) %{_datadir}/locale/uk/cups_uk
401 %dir %lang(uk) %{_datadir}/locale/uk_UA
402 %lang(uk) %{_datadir}/locale/uk_UA/cups_uk_UA
403 %lang(zh_CN) %{_datadir}/locale/zh_CN/cups_zh_CN
405 %attr(750,root,logs) %dir /var/log/archiv/cups
406 %attr(750,root,logs) %dir /var/log/cups
407 %attr(640,root,logs) %ghost /var/log/cups/access_log
408 %attr(640,root,logs) %ghost /var/log/cups/error_log
409 %attr(640,root,logs) %ghost /var/log/cups/page_log
412 %defattr(644,root,root,755)
413 %attr(755,root,root) %{_libdir}/libcups.so.*
416 %defattr(644,root,root,755)
417 %attr(644,root,lp) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/client.conf
418 %attr(755,root,root) %{_bindir}/cancel
419 %attr(755,root,root) %{_bindir}/lp
420 %attr(755,root,root) %{_bindir}/lpoptions
421 %attr(755,root,root) %{_bindir}/lpq
422 %attr(755,root,root) %{_bindir}/lpr
423 %attr(755,root,root) %{_bindir}/lprm
424 %attr(755,root,root) %{_bindir}/lpstat
425 %attr(755,root,root) %{_sbindir}/accept
426 %attr(755,root,root) %{_sbindir}/cupsaddsmb
427 %attr(755,root,root) %{_sbindir}/lpadmin
428 %attr(755,root,root) %{_sbindir}/lpc
429 %attr(755,root,root) %{_sbindir}/lpinfo
430 %attr(755,root,root) %{_sbindir}/lpmove
431 %attr(755,root,root) %{_sbindir}/reject
432 %{_mandir}/man1/cancel.1*
433 %{_mandir}/man1/lp.1*
434 %{_mandir}/man1/lpoptions.1*
435 %{_mandir}/man1/lpq.1*
436 %{_mandir}/man1/lpr.1*
437 %{_mandir}/man1/lprm.1*
438 %{_mandir}/man1/lpstat.1*
439 %lang(fr) %{_mandir}/fr/man1/cancel.1*
440 %lang(fr) %{_mandir}/fr/man1/lp.1*
441 %lang(fr) %{_mandir}/fr/man1/lpoptions.1*
442 %lang(fr) %{_mandir}/fr/man1/lpq.1*
443 %lang(fr) %{_mandir}/fr/man1/lpr.1*
444 %lang(fr) %{_mandir}/fr/man1/lprm.1*
445 %lang(fr) %{_mandir}/fr/man1/lpstat.1*
446 %lang(es) %{_mandir}/es/man1/lp.1*
447 %lang(es) %{_mandir}/es/man1/lpoptions.1*
448 %lang(es) %{_mandir}/es/man1/lpq.1*
449 %lang(es) %{_mandir}/es/man1/lpr.1*
450 %lang(es) %{_mandir}/es/man1/lprm.1*
451 %lang(es) %{_mandir}/es/man1/lpstat.1*
454 %defattr(644,root,root,755)
455 %attr(755,root,root) %{_libdir}/libcupsimage.so.*
458 %defattr(644,root,root,755)
459 %attr(755,root,root) %{_bindir}/cups-config
462 %{_mandir}/man1/cups-config*
464 %lang(fr) %{_mandir}/fr/man1/cups-config*
465 %lang(es) %{_mandir}/es/man1/cups-config*
468 %defattr(644,root,root,755)
473 %defattr(644,root,root,755)
474 %{perl_vendorarch}/*.pm
475 %dir %{perl_vendorarch}/auto/CUPS
476 %{perl_vendorarch}/auto/CUPS/*.bs
477 %{perl_vendorarch}/auto/CUPS/autosplit.ix
478 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/*.so
483 %defattr(644,root,root,755)
484 %attr(755,root,root) %(php-config --extension-dir)/*
488 %defattr(644,root,root,755)
489 %attr(755,root,root) %{_ulibdir}/cups/backend/usb
491 %files backend-serial
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_ulibdir}/cups/backend/serial
495 %files backend-parallel
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_ulibdir}/cups/backend/parallel