3 # _without_php don't build php extension
4 # _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
20 Group: Applications/Printing
21 Source0: ftp://ftp.easysw.com/pub/%{name}/%{version}%{rcver}/%{name}-%{version}%{rcver}-source.tar.bz2
22 # Source0-md5: 9728a739b65c420cb43e1da8db5cca39
25 Source3: %{name}.logrotate
26 Patch0: %{name}-DESTDIR.patch
27 Patch1: %{name}-config.patch
28 Patch2: %{name}-tmpdir.patch
29 Patch3: %{name}-lp-lpr.patch
30 Patch4: %{name}-options.patch
31 Patch5: %{name}-ENCRYPTIONtxt.patch
32 Patch6: %{name}-man_pages_linking.patch
33 Patch7: %{name}-nolibs.patch
34 Patch8: %{name}-chown.patch
35 Patch9: %{name}-nostrip.patch
36 URL: http://www.cups.org/
37 BuildRequires: autoconf
38 BuildRequires: automake
39 BuildRequires: libjpeg-devel
40 BuildRequires: libpng-devel
41 BuildRequires: libtiff-devel
42 BuildRequires: openslp-devel
43 BuildRequires: openssl-devel >= 0.9.7c
44 BuildRequires: pam-devel
45 %{?!_without_php:BuildRequires: php-devel}
46 BuildRequires: pkgconfig
47 BuildRequires: rpm-perlprov
48 PreReq: %{name}-libs = %{epoch}:%{version}
49 Requires(post,preun): /sbin/chkconfig
50 Requires: pam >= 0.77.3
51 Conflicts: ghostscript < 7.05.4
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57 CUPS provides a portable printing layer for UNIX®-based operating
58 systems. It has been developed by Easy Software Products to promote a
59 standard printing solution for all UNIX vendors and users. CUPS
60 provides the System V and Berkeley command-line interfaces. CUPS uses
61 the Internet Printing Protocol ("IPP") as the basis for managing print
62 jobs and queues. The Line Printer Daemon ("LPD") Server Message Block
63 ("SMB"), and AppSocket (a.k.a. JetDirect) protocols are also supported
64 with reduced functionality. CUPS adds network printer browsing and
65 PostScript Printer Description ("PPD") based printing options to
66 support real-world printing under UNIX.
69 CUPS dostarcza standardowy poziom drukowania dla systemów uniksowych.
70 CUPS u¿ywa protoko³u IPP - Internet Printint Protocol jako podstawy do
71 zarz±dzania zadaniami i kolejkami druku.
74 O sistema Unix de impressão (CUPS) fornece uma camada de impressão
75 portável para os sistemas operacionais baseados no UNIX®.
78 Summary: Common Unix Printing System Libraries
79 Summary(pl): Biblioteki dla CUPS
80 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
82 Provides: %{name}-libs = %{epoch}:%{version}-%{release}
83 Obsoletes: %{name}-libs
87 Common Unix Printing System Libraries.
89 %description lib -l pl
92 %description lib -l pt_BR
93 Bibliotecas CUPS requeridas pelos clientes CUPS.
96 Summary: Common Unix Printing System Clients
97 Summary(pl): Aplikacje klienckie dla CUPS
98 Group: Applications/Printing
99 Provides: %{name}-clients = %{epoch}:%{version}-%{release}
103 Common Unix Printing System Clients.
105 %description clients -l pl
106 Aplikacje klienckie dla CUPS.
109 Summary: Common Unix Printing System Libraries - images manipulation
110 Summary(pl): Biblioteki dla CUPS - obs³uga formatów graficznych
111 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
113 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
116 %description image-lib
117 Common Unix Printing System Libraries - images manupalation.
119 %description image-lib -l pl
120 Biblioteki dla CUPS - obs³uga formatów graficznych.
122 %description image-lib -l pt_BR
123 Bibliotecas CUPS requeridas pelos clientes CUPS.
126 Summary: Common Unix Printing System development files
127 Summary(pl): Popularny System Druku dla Uniksa, pliki nag³ówkowe
128 Summary(pt_BR): Sistema Unix de Impressão - ambiente de desenvolvimento
129 Group: Development/Libraries
130 Requires: %{name}-image-lib = %{epoch}:%{version}
131 Requires: %{name}-lib = %{epoch}:%{version}
132 Obsoletes: libcups1-devel
135 Common Unix Printing System development files.
137 %description devel -l pl
138 Popularny System Druku dla Uniksa, pliki nag³ówkowe.
140 %description devel -l pt_BR
141 Este pacote é um adicional que contem um ambiente de desenvolvimento
142 para a criação de suporte a novas impressoras e novos serviços ao
146 Summary: Common Unix Printing System static libraries
147 Summary(pl): Popularny System Druku dla Uniksa, biblioteki statyczne
148 Summary(pt_BR): Common Unix Printing System - bibliotecas estáticas
149 Group: Development/Libraries
150 Requires: %{name}-devel = %{epoch}:%{version}
153 Common Unix Printing System static libraries.
155 %description static -l pl
156 Popularny System Druku dla Uniksa, biblioteki statyczne.
158 %description static -l pt_BR
159 Bibliotecas estáticas para desenvolvimento de programas que usam as
162 %package -n perl-cups
163 Summary: Perl module for CUPS
164 Summary(pl): Modu³ Perla CUPS
165 Group: Development/Languages/Perl
166 Requires: cups-lib = %{epoch}:%{version}
168 %description -n perl-cups
169 Perl module for Common Unix Printing System.
171 %description -n perl-cups -l pl
172 Modu³ Perla do Popularnego Systemu Druku dla Uniksa.
175 Summary: PHP module for CUPS
176 Summary(pl): Modu³ PHP CUPS
177 Group: Development/Languages/PHP
178 Requires: cups-lib = %{epoch}:%{version}
180 %description -n php-cups
181 PHP module for Common Unix Printing System.
183 %description -n php-cups -l pl
184 Modu³ PHP do Popularnego Systemu Druku dla Uniksa.
187 Summary: USB backend for CUPS
188 Summary(pl): Backend USB dla CUPS-a
189 Group: Applications/Printing
190 Requires: cups = %{epoch}:%{version}
192 %description backend-usb
193 This package allow CUPS printing on USB printers.
195 %description backend-usb -l pl
196 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach USB.
198 %package backend-serial
199 Summary: Serial port backend for CUPS
200 Summary(pl): Backend obs³uguj±cy porty szeregowe dla CUPS-a
201 Group: Applications/Printing
202 Requires: cups = %{epoch}:%{version}
204 %description backend-serial
205 This package allow CUPS printing on printers connected by serial
208 %description backend-serial -l pl
209 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
210 pod³±czonych do portów szeregowych.
212 %package backend-parallel
213 Summary: Parallel port backend for CUPS
214 Summary(pl): Backend obs³uguj±cy porty równoleg³e dla CUPS-a
215 Group: Applications/Printing
216 Requires: cups = %{epoch}:%{version}
218 %description backend-parallel
219 This package allow CUPS printing on printers connected by parallel
222 %description backend-parallel -l pl
223 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
224 pod³±czonych do portów równoleg³ych.
227 %setup -q -n %{name}-%{version}%{rcver}
244 --with-docdir=%{_libdir}/%{name}/cgi-bin
247 perl -pi -e 's#-I\.\.\/\.\.#-I../.. -I../../cups#g' scripting/php/Makefile
248 %{?!_without_php:%{__make} -C scripting/php}
250 %if 0%{?!_without_perl:1}
252 %{__perl} -pi -e 's@-lcups@-L../../cups $1@' Makefile.PL
253 %{__perl} Makefile.PL \
255 OPTIMIZE="%{rpmcflags} -I../.."
256 # avoid rpaths generated by MakeMaker
257 perl -pi -e 's@LD_RUN_PATH="\$\(LD_RUN_PATH\)" @@' Makefile
264 rm -rf $RPM_BUILD_ROOT
265 install -d $RPM_BUILD_ROOT/etc/{{rc.d/init.d,pam.d,logrotate.d},security} \
266 $RPM_BUILD_ROOT/var/log/{,archiv/}cups
269 DESTDIR=$RPM_BUILD_ROOT
271 %if 0%{?!_without_php:1}
272 %{__make} -C scripting/php install \
273 PHPDIR="$RPM_BUILD_ROOT`php-config --extension-dir`"
276 %if 0%{?!_without_perl:1}
279 DESTDIR=$RPM_BUILD_ROOT
283 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
284 install %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/%{name}
285 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
287 # for internal http browser:
288 cp doc/*.html $RPM_BUILD_ROOT%{_libdir}/%{name}/cgi-bin
289 cp doc/*.css $RPM_BUILD_ROOT%{_libdir}/%{name}/cgi-bin
290 cp doc/images/* $RPM_BUILD_ROOT%{_libdir}/%{name}/cgi-bin/images
292 touch $RPM_BUILD_ROOT/var/log/cups/{access_log,error_log,page_log}
293 touch $RPM_BUILD_ROOT/etc/security/blacklist.cups
295 # check-files cleanup
296 rm -rf $RPM_BUILD_ROOT%{_mandir}/{,fr/}cat?
299 rm -rf $RPM_BUILD_ROOT
302 /sbin/chkconfig --add cups
303 if [ -f /var/lock/subsys/cups ]; then
304 /etc/rc.d/init.d/cups restart 1>&2
306 echo "Run \"/etc/rc.d/init.d/cups start\" to start cups daemon."
310 if [ "$1" = "0" ]; then
311 if [ -f /var/lock/subsys/cups ]; then
312 /etc/rc.d/init.d/cups stop 1>&2
314 /sbin/chkconfig --del cups
317 %post lib -p /sbin/ldconfig
318 %postun lib -p /sbin/ldconfig
319 %post image-lib -p /sbin/ldconfig
320 %postun image-lib -p /sbin/ldconfig
323 %defattr(644,root,root,755)
324 #%doc *.gz doc/*.html doc/*.css doc/images
326 %attr(640,root,root) %config %verify(not size mtime md5) /etc/pam.d/*
327 %attr(754,root,root) /etc/rc.d/init.d/cups
328 %dir %{_sysconfdir}/%{name}
329 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/classes.conf
330 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/cupsd.conf
331 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/printers.conf
332 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/*.convs
333 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/*.types
334 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.cups
335 %dir %{_sysconfdir}/%{name}/certs
336 %dir %{_sysconfdir}/%{name}/interfaces
337 %dir %{_sysconfdir}/%{name}/ppd
338 %attr(644,root,root) /etc/logrotate.d/%{name}
339 %attr(4755,lp,root) %{_bindir}/lppasswd
340 %attr(755,root,root) %{_bindir}/cupstestppd
341 %attr(755,root,root) %{_bindir}/disable
342 %attr(755,root,root) %{_bindir}/enable
344 %dir %{_libdir}/cups/*
345 %attr(755,root,root) %{_libdir}/cups/*/*
346 %exclude %{_libdir}/cups/backend/usb
347 %exclude %{_libdir}/cups/backend/serial
348 %exclude %{_libdir}/cups/backend/parallel
349 %attr(755,root,root) %{_sbindir}/cupsd
351 %{_mandir}/man1/backend.1*
352 %{_mandir}/man1/cupstestppd.1*
353 %{_mandir}/man1/filter.1*
354 %{_mandir}/man1/lppasswd.1*
356 %lang(fr) %{_mandir}/fr/man1/backend.1*
357 %lang(fr) %{_mandir}/fr/man1/cupstestppd.1*
358 %lang(fr) %{_mandir}/fr/man1/filter.1*
359 %lang(fr) %{_mandir}/fr/man1/lppasswd.1*
360 %lang(fr) %{_mandir}/fr/man[58]/*
361 %{_datadir}/locale/C/cups_C
362 %lang(be) %{_datadir}/locale/be/cups_be
363 %lang(cs) %{_datadir}/locale/cs/cups_cs
364 %lang(de) %{_datadir}/locale/de/cups_de
365 %{_datadir}/locale/en/cups_en
366 %lang(en_US) %{_datadir}/locale/en_US/cups_en_US
367 %lang(es) %{_datadir}/locale/es/cups_es
368 %lang(fr) %{_datadir}/locale/fr/cups_fr
369 %lang(he) %{_datadir}/locale/he/cups_he
370 %lang(it) %{_datadir}/locale/it/cups_it
371 %lang(ru) %{_datadir}/locale/ru_RU/cups_ru_RU
372 %lang(sv) %{_datadir}/locale/sv/cups_sv
373 %lang(uk) %{_datadir}/locale/uk/cups_uk
374 %lang(uk) %{_datadir}/locale/uk_UA/cups_uk_UA
375 %lang(zh_CN) %{_datadir}/locale/zh_CN/cups_zh_CN
377 %attr(750,root,root) %dir /var/log/archiv/cups
378 %attr(750,root,root) %dir /var/log/cups
379 %attr(640,root,root) %ghost /var/log/cups/access_log
380 %attr(640,root,root) %ghost /var/log/cups/error_log
381 %attr(640,root,root) %ghost /var/log/cups/page_log
384 %defattr(644,root,root,755)
385 %attr(755,root,root) %{_libdir}/libcups.so.*
388 %defattr(644,root,root,755)
389 %attr(644,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/client.conf
390 %attr(755,root,root) %{_bindir}/cancel
391 %attr(755,root,root) %{_bindir}/lp
392 %attr(755,root,root) %{_bindir}/lpoptions
393 %attr(755,root,root) %{_bindir}/lpq
394 %attr(755,root,root) %{_bindir}/lpr
395 %attr(755,root,root) %{_bindir}/lprm
396 %attr(755,root,root) %{_bindir}/lpstat
397 %attr(755,root,root) %{_sbindir}/accept
398 %attr(755,root,root) %{_sbindir}/cupsaddsmb
399 %attr(755,root,root) %{_sbindir}/lpadmin
400 %attr(755,root,root) %{_sbindir}/lpc
401 %attr(755,root,root) %{_sbindir}/lpinfo
402 %attr(755,root,root) %{_sbindir}/lpmove
403 %attr(755,root,root) %{_sbindir}/reject
404 %{_mandir}/man1/cancel.1*
405 %{_mandir}/man1/lp.1*
406 %{_mandir}/man1/lpoptions.1*
407 %{_mandir}/man1/lpq.1*
408 %{_mandir}/man1/lpr.1*
409 %{_mandir}/man1/lprm.1*
410 %{_mandir}/man1/lpstat.1*
411 %lang(fr) %{_mandir}/fr/man1/cancel.1*
412 %lang(fr) %{_mandir}/fr/man1/lp.1*
413 %lang(fr) %{_mandir}/fr/man1/lpoptions.1*
414 %lang(fr) %{_mandir}/fr/man1/lpq.1*
415 %lang(fr) %{_mandir}/fr/man1/lpr.1*
416 %lang(fr) %{_mandir}/fr/man1/lprm.1*
417 %lang(fr) %{_mandir}/fr/man1/lpstat.1*
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/libcupsimage.so.*
424 %defattr(644,root,root,755)
425 %attr(755,root,root) %{_bindir}/cups-config
429 %lang(fr) %{_mandir}/fr/man3/*
432 %defattr(644,root,root,755)
435 %if 0%{?!_without_perl:1}
437 %defattr(644,root,root,755)
438 %{perl_vendorarch}/*.pm
439 %dir %{perl_vendorarch}/auto/CUPS
440 %{perl_vendorarch}/auto/CUPS/*.bs
441 %{perl_vendorarch}/auto/CUPS/autosplit.ix
442 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/*.so
445 %if 0%{?!_without_php:1}
447 %defattr(644,root,root,755)
448 %attr(755,root,root) %(php-config --extension-dir)/*
452 %defattr(644,root,root,755)
453 %attr(755,root,root) %{_libdir}/cups/backend/usb
455 %files backend-serial
456 %defattr(644,root,root,755)
457 %attr(755,root,root) %{_libdir}/cups/backend/serial
459 %files backend-parallel
460 %defattr(644,root,root,755)
461 %attr(755,root,root) %{_libdir}/cups/backend/parallel