]> git.pld-linux.org Git - packages/cups.git/blob - cups.spec
1be1b359907e0be9f58685dbebd95fa0462bd5df
[packages/cups.git] / cups.spec
1 #
2 # Conditional build:
3 %bcond_without php      # don't build php extension
4 %bcond_without perl     # don't build perl extension
5 #
6 # TODO:
7 # - register php module
8 # - build/install java ext ?
9 # - perl BRs
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
14 Name:           cups
15 Version:        1.1.21
16 Release:        1
17 Epoch:          1
18 License:        GPL/LGPL
19 Group:          Applications/Printing
20 Source0:        http://ftp.easysw.com/pub/%{name}/%{version}/%{name}-%{version}-source.tar.bz2
21 # Source0-md5:  54e9b0d9c0bdb45b956f88c14793ef65
22 Source1:        %{name}.init
23 Source2:        %{name}.pamd
24 Source3:        %{name}.logrotate
25 Patch1:         %{name}-config.patch
26 Patch2:         %{name}-tmpdir.patch
27 Patch3:         %{name}-lp-lpr.patch
28 Patch4:         %{name}-options.patch
29 Patch5:         %{name}-ENCRYPTIONtxt.patch
30 Patch6:         %{name}-man_pages_linking.patch
31 Patch7:         %{name}-nolibs.patch
32 Patch9:         %{name}-nostrip.patch
33 Patch10:        %{name}-rpath.patch
34 Patch11:        %{name}-gcc34.patch
35 URL:            http://www.cups.org/
36 BuildRequires:  autoconf
37 BuildRequires:  automake
38 BuildRequires:  libjpeg-devel
39 BuildRequires:  libpng-devel
40 BuildRequires:  libtiff-devel
41 BuildRequires:  openslp-devel
42 BuildRequires:  openssl-devel >= 0.9.7d
43 BuildRequires:  pam-devel
44 %{?with_php:BuildRequires:      php-devel}
45 BuildRequires:  pkgconfig
46 BuildRequires:  rpm-perlprov
47 PreReq:         %{name}-libs = %{epoch}:%{version}-%{release}
48 Requires(post,preun):   /sbin/chkconfig
49 Requires:       pam >= 0.77.3
50 Conflicts:      ghostscript < 7.05.4
51 Obsoletes:      lpr
52 Obsoletes:      LPRng
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 %define         _ulibdir        %{_prefix}/lib
56
57 %description
58 CUPS provides a portable printing layer for UNIX®-based operating
59 systems. It has been developed by Easy Software Products to promote a
60 standard printing solution for all UNIX vendors and users. CUPS
61 provides the System V and Berkeley command-line interfaces. CUPS uses
62 the Internet Printing Protocol ("IPP") as the basis for managing print
63 jobs and queues. The Line Printer Daemon ("LPD") Server Message Block
64 ("SMB"), and AppSocket (a.k.a. JetDirect) protocols are also supported
65 with reduced functionality. CUPS adds network printer browsing and
66 PostScript Printer Description ("PPD") based printing options to
67 support real-world printing under UNIX.
68
69 %description -l pl
70 CUPS dostarcza standardowy poziom drukowania dla systemów uniksowych.
71 CUPS u¿ywa protoko³u IPP - Internet Printint Protocol jako podstawy do
72 zarz±dzania zadaniami i kolejkami druku.
73
74 %description -l pt_BR
75 O sistema Unix de impressão (CUPS) fornece uma camada de impressão
76 portável para os sistemas operacionais baseados no UNIX®.
77
78 %package lib
79 Summary:        Common Unix Printing System Libraries
80 Summary(pl):    Biblioteki dla CUPS
81 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
82 Group:          Libraries
83 Provides:       %{name}-libs = %{epoch}:%{version}-%{release}
84 Obsoletes:      %{name}-libs
85 Obsoletes:      libcups1
86
87 %description lib
88 Common Unix Printing System Libraries.
89
90 %description lib -l pl
91 Biblioteki dla CUPS.
92
93 %description lib -l pt_BR
94 Bibliotecas CUPS requeridas pelos clientes CUPS.
95
96 %package clients
97 Summary:        Common Unix Printing System Clients
98 Summary(pl):    Aplikacje klienckie dla CUPS
99 Group:          Applications/Printing
100 Provides:       %{name}-clients = %{epoch}:%{version}-%{release}
101 Conflicts:      LPRng
102
103 %description clients
104 Common Unix Printing System Clients.
105
106 %description clients -l pl
107 Aplikacje klienckie dla CUPS.
108
109 %package image-lib
110 Summary:        Common Unix Printing System Libraries - images manipulation
111 Summary(pl):    Biblioteki dla CUPS - obs³uga formatów graficznych
112 Summary(pt_BR): Sistema Unix de Impressão - bibliotecas para uso em clientes cups
113 Group:          Libraries
114 Requires:       %{name}-lib = %{epoch}:%{version}-%{release}
115 Obsoletes:      libcups1
116
117 %description image-lib
118 Common Unix Printing System Libraries - images manupalation.
119
120 %description image-lib -l pl
121 Biblioteki dla CUPS - obs³uga formatów graficznych.
122
123 %description image-lib -l pt_BR
124 Bibliotecas CUPS requeridas pelos clientes CUPS.
125
126 %package devel
127 Summary:        Common Unix Printing System development files
128 Summary(pl):    Popularny System Druku dla Uniksa, pliki nag³ówkowe
129 Summary(pt_BR): Sistema Unix de Impressão - ambiente de desenvolvimento
130 Group:          Development/Libraries
131 Requires:       %{name}-image-lib = %{epoch}:%{version}-%{release}
132 Requires:       %{name}-lib = %{epoch}:%{version}-%{release}
133 Obsoletes:      libcups1-devel
134
135 %description devel
136 Common Unix Printing System development files.
137
138 %description devel -l pl
139 Popularny System Druku dla Uniksa, pliki nag³ówkowe.
140
141 %description devel -l pt_BR
142 Este pacote é um adicional que contem um ambiente de desenvolvimento
143 para a criação de suporte a novas impressoras e novos serviços ao
144 CUPS.
145
146 %package static
147 Summary:        Common Unix Printing System static libraries
148 Summary(pl):    Popularny System Druku dla Uniksa, biblioteki statyczne
149 Summary(pt_BR): Common Unix Printing System - bibliotecas estáticas
150 Group:          Development/Libraries
151 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
152
153 %description static
154 Common Unix Printing System static libraries.
155
156 %description static -l pl
157 Popularny System Druku dla Uniksa, biblioteki statyczne.
158
159 %description static -l pt_BR
160 Bibliotecas estáticas para desenvolvimento de programas que usam as
161 bibliotecas do CUPS.
162
163 %package -n perl-cups
164 Summary:        Perl module for CUPS
165 Summary(pl):    Modu³ Perla CUPS
166 Group:          Development/Languages/Perl
167 Requires:       %{name}-lib = %{epoch}:%{version}-%{release}
168
169 %description -n perl-cups
170 Perl module for Common Unix Printing System.
171
172 %description -n perl-cups -l pl
173 Modu³ Perla do Popularnego Systemu Druku dla Uniksa.
174
175 %package -n php-cups
176 Summary:        PHP module for CUPS
177 Summary(pl):    Modu³ PHP CUPS
178 Group:          Development/Languages/PHP
179 Requires:       %{name}-lib = %{epoch}:%{version}-%{release}
180
181 %description -n php-cups
182 PHP module for Common Unix Printing System.
183
184 %description -n php-cups -l pl
185 Modu³ PHP do Popularnego Systemu Druku dla Uniksa.
186
187 %package backend-usb
188 Summary:        USB backend for CUPS
189 Summary(pl):    Backend USB dla CUPS-a
190 Group:          Applications/Printing
191 Requires:       %{name} = %{epoch}:%{version}-%{release}
192
193 %description backend-usb
194 This package allow CUPS printing on USB printers.
195
196 %description backend-usb -l pl
197 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach USB.
198
199 %package backend-serial
200 Summary:        Serial port backend for CUPS
201 Summary(pl):    Backend obs³uguj±cy porty szeregowe dla CUPS-a
202 Group:          Applications/Printing
203 Requires:       %{name} = %{epoch}:%{version}-%{release}
204
205 %description backend-serial
206 This package allow CUPS printing on printers connected by serial
207 ports.
208
209 %description backend-serial -l pl
210 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
211 pod³±czonych do portów szeregowych.
212
213 %package backend-parallel
214 Summary:        Parallel port backend for CUPS
215 Summary(pl):    Backend obs³uguj±cy porty równoleg³e dla CUPS-a
216 Group:          Applications/Printing
217 Requires:       %{name} = %{epoch}:%{version}-%{release}
218
219 %description backend-parallel
220 This package allow CUPS printing on printers connected by parallel
221 ports.
222
223 %description backend-parallel -l pl
224 Ten pakiet umo¿liwia drukowanie z poziomu CUPS-a na drukarkach
225 pod³±czonych do portów równoleg³ych.
226
227 %prep
228 %setup -q -n %{name}-%{version}
229 %patch1 -p1
230 # wtf?
231 #%patch2 -p1
232 %patch3 -p1
233 %patch4 -p1
234 %patch5 -p1
235 %patch6 -p1
236 %patch7 -p1
237 %patch9 -p1
238 %patch10 -p1
239 %patch11 -p1
240
241 %build
242 %{__aclocal}
243 %{__autoconf}
244 %configure \
245         --libdir=%{_ulibdir} \
246         --with-docdir=%{_ulibdir}/%{name}/cgi-bin
247 %{__make}
248
249 perl -pi -e 's#-I\.\.\/\.\.#-I../.. -I../../cups#g' scripting/php/Makefile
250 %{?with_php:%{__make} -C scripting/php}
251
252 %if %{with perl}
253 cd scripting/perl
254 %{__perl} -pi -e 's@-lcups@-L../../cups $1@' Makefile.PL
255 %{__perl} Makefile.PL \
256         INSTALLDIRS=vendor \
257         OPTIMIZE="%{rpmcflags} -I../.."
258 # avoid rpaths generated by MakeMaker
259 perl -pi -e 's@LD_RUN_PATH="\$\(LD_RUN_PATH\)" @@' Makefile
260
261 %{__make}
262 cd ../..
263 %endif
264
265 %install
266 rm -rf $RPM_BUILD_ROOT
267 install -d $RPM_BUILD_ROOT/%{_sysconfdir}/{{rc.d/init.d,pam.d,logrotate.d},security} \
268         $RPM_BUILD_ROOT/var/log/{,archiv/}cups
269
270 %{__make} install \
271         BUILDROOT=$RPM_BUILD_ROOT \
272         CUPS_USER=$(id -u) \
273         CUPS_GROUP=$(id -g)
274
275 if [ "%{_lib}" != "lib" ] ; then
276         install -d $RPM_BUILD_ROOT%{_libdir}
277         mv $RPM_BUILD_ROOT%{_ulibdir}/*.so* $RPM_BUILD_ROOT%{_libdir}
278         mv $RPM_BUILD_ROOT%{_ulibdir}/*.a $RPM_BUILD_ROOT%{_libdir}
279 fi
280
281 %if %{with php}
282 %{__make} -C scripting/php install \
283         PHPDIR="$RPM_BUILD_ROOT`php-config --extension-dir`"
284 %endif
285
286 %if %{with perl}
287 cd scripting/perl
288 %{__make} install \
289         DESTDIR=$RPM_BUILD_ROOT
290 cd ../..
291 %endif
292
293 install %{SOURCE1}      $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d/%{name}
294 install %{SOURCE2}      $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d/%{name}
295 install %{SOURCE3}      $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/%{name}
296
297 gzip -9nf $RPM_BUILD_ROOT/%{_datadir}/%{name}/model/*.ppd
298
299 # for internal http browser:
300 cp doc/*.html   $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin
301 cp doc/*.css    $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin
302 cp doc/images/* $RPM_BUILD_ROOT%{_ulibdir}/%{name}/cgi-bin/images
303
304 touch $RPM_BUILD_ROOT/var/log/cups/{access_log,error_log,page_log}
305 touch $RPM_BUILD_ROOT/%{_sysconfdir}/security/blacklist.cups
306
307 # check-files cleanup
308 rm -rf $RPM_BUILD_ROOT%{_mandir}/{,fr/}cat?
309
310 %clean
311 rm -rf $RPM_BUILD_ROOT
312
313 %post
314 /sbin/chkconfig --add cups
315 if [ -f /var/lock/subsys/cups ]; then
316         /etc/rc.d/init.d/cups restart 1>&2
317 else
318         echo "Run \"/etc/rc.d/init.d/cups start\" to start cups daemon."
319 fi
320
321 %preun
322 if [ "$1" = "0" ]; then
323         if [ -f /var/lock/subsys/cups ]; then
324                 /etc/rc.d/init.d/cups stop 1>&2
325         fi
326         /sbin/chkconfig --del cups
327 fi
328
329 %post   lib -p /sbin/ldconfig
330 %postun lib -p /sbin/ldconfig
331 %post   image-lib -p /sbin/ldconfig
332 %postun image-lib -p /sbin/ldconfig
333
334 %files
335 %defattr(644,root,root,755)
336 #%doc *.gz doc/*.html doc/*.css doc/images
337 %doc *.txt
338 %attr(640,root,root) %config %verify(not size mtime md5) /etc/pam.d/*
339 %attr(754,root,root) /etc/rc.d/init.d/cups
340 %dir %{_sysconfdir}/%{name}
341 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/classes.conf
342 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/cupsd.conf
343 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/printers.conf
344 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/*.convs
345 %attr(640,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/*.types
346 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.cups
347 %dir %{_sysconfdir}/%{name}/certs
348 %dir %{_sysconfdir}/%{name}/interfaces
349 %dir %{_sysconfdir}/%{name}/ppd
350 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/%{name}
351 %attr(4755,lp,root) %{_bindir}/lppasswd
352 %attr(755,root,root) %{_bindir}/cupstestppd
353 %attr(755,root,root) %{_bindir}/disable
354 %attr(755,root,root) %{_bindir}/enable
355 %dir %{_ulibdir}/cups
356 %dir %{_ulibdir}/cups/*
357 %attr(755,root,root) %{_ulibdir}/cups/*/*
358 %exclude %{_ulibdir}/cups/backend/usb
359 %exclude %{_ulibdir}/cups/backend/serial
360 %exclude %{_ulibdir}/cups/backend/parallel
361 %attr(755,root,root) %{_sbindir}/cupsd
362 %{_datadir}/cups
363 %{_mandir}/man1/backend.1*
364 %{_mandir}/man1/cupstestppd.1*
365 %{_mandir}/man1/filter.1*
366 %{_mandir}/man1/lppasswd.1*
367 %{_mandir}/man[58]/*
368 %lang(fr) %{_mandir}/fr/man1/backend.1*
369 %lang(fr) %{_mandir}/fr/man1/cupstestppd.1*
370 %lang(fr) %{_mandir}/fr/man1/filter.1*
371 %lang(fr) %{_mandir}/fr/man1/lppasswd.1*
372 %lang(fr) %{_mandir}/fr/man[58]/*
373 %{_datadir}/locale/C/cups_C
374 %lang(be) %{_datadir}/locale/be/cups_be
375 %lang(cs) %{_datadir}/locale/cs/cups_cs
376 %lang(de) %{_datadir}/locale/de/cups_de
377 %{_datadir}/locale/en/cups_en
378 %lang(en_US) %{_datadir}/locale/en_US/cups_en_US
379 %lang(es) %{_datadir}/locale/es/cups_es
380 %lang(fr) %{_datadir}/locale/fr/cups_fr
381 %lang(he) %{_datadir}/locale/he/cups_he
382 %lang(it) %{_datadir}/locale/it/cups_it
383 %lang(ru) %{_datadir}/locale/ru_RU/cups_ru_RU
384 %lang(sv) %{_datadir}/locale/sv/cups_sv
385 %lang(uk) %{_datadir}/locale/uk/cups_uk
386 %lang(uk) %{_datadir}/locale/uk_UA/cups_uk_UA
387 %lang(zh_CN) %{_datadir}/locale/zh_CN/cups_zh_CN
388 /var/spool/cups
389 %attr(750,root,root) %dir /var/log/archiv/cups
390 %attr(750,root,root) %dir /var/log/cups
391 %attr(640,root,root) %ghost /var/log/cups/access_log
392 %attr(640,root,root) %ghost /var/log/cups/error_log
393 %attr(640,root,root) %ghost /var/log/cups/page_log
394
395 %files lib
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_libdir}/libcups.so.*
398
399 %files clients
400 %defattr(644,root,root,755)
401 %attr(644,root,lp) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/client.conf
402 %attr(755,root,root) %{_bindir}/cancel
403 %attr(755,root,root) %{_bindir}/lp
404 %attr(755,root,root) %{_bindir}/lpoptions
405 %attr(755,root,root) %{_bindir}/lpq
406 %attr(755,root,root) %{_bindir}/lpr
407 %attr(755,root,root) %{_bindir}/lprm
408 %attr(755,root,root) %{_bindir}/lpstat
409 %attr(755,root,root) %{_sbindir}/accept
410 %attr(755,root,root) %{_sbindir}/cupsaddsmb
411 %attr(755,root,root) %{_sbindir}/lpadmin
412 %attr(755,root,root) %{_sbindir}/lpc
413 %attr(755,root,root) %{_sbindir}/lpinfo
414 %attr(755,root,root) %{_sbindir}/lpmove
415 %attr(755,root,root) %{_sbindir}/reject
416 %{_mandir}/man1/cancel.1*
417 %{_mandir}/man1/lp.1*
418 %{_mandir}/man1/lpoptions.1*
419 %{_mandir}/man1/lpq.1*
420 %{_mandir}/man1/lpr.1*
421 %{_mandir}/man1/lprm.1*
422 %{_mandir}/man1/lpstat.1*
423 %lang(fr) %{_mandir}/fr/man1/cancel.1*
424 %lang(fr) %{_mandir}/fr/man1/lp.1*
425 %lang(fr) %{_mandir}/fr/man1/lpoptions.1*
426 %lang(fr) %{_mandir}/fr/man1/lpq.1*
427 %lang(fr) %{_mandir}/fr/man1/lpr.1*
428 %lang(fr) %{_mandir}/fr/man1/lprm.1*
429 %lang(fr) %{_mandir}/fr/man1/lpstat.1*
430
431 %files image-lib
432 %defattr(644,root,root,755)
433 %attr(755,root,root) %{_libdir}/libcupsimage.so.*
434
435 %files devel
436 %defattr(644,root,root,755)
437 %attr(755,root,root) %{_bindir}/cups-config
438 %{_includedir}/cups
439 %{_libdir}/lib*.so
440 %{_mandir}/man1/cups-config*
441 %{_mandir}/man3/*
442 %lang(fr) %{_mandir}/fr/man1/cups-config*
443
444 %files static
445 %defattr(644,root,root,755)
446 %{_libdir}/*.a
447
448 %if %{with perl}
449 %files -n perl-cups
450 %defattr(644,root,root,755)
451 %{perl_vendorarch}/*.pm
452 %dir %{perl_vendorarch}/auto/CUPS
453 %{perl_vendorarch}/auto/CUPS/*.bs
454 %{perl_vendorarch}/auto/CUPS/autosplit.ix
455 %attr(755,root,root) %{perl_vendorarch}/auto/CUPS/*.so
456 %endif
457
458 %if %{with php}
459 %files -n php-cups
460 %defattr(644,root,root,755)
461 %attr(755,root,root) %(php-config --extension-dir)/*
462 %endif
463
464 %files backend-usb
465 %defattr(644,root,root,755)
466 %attr(755,root,root) %{_ulibdir}/cups/backend/usb
467
468 %files backend-serial
469 %defattr(644,root,root,755)
470 %attr(755,root,root) %{_ulibdir}/cups/backend/serial
471
472 %files backend-parallel
473 %defattr(644,root,root,755)
474 %attr(755,root,root) %{_ulibdir}/cups/backend/parallel
This page took 0.058412 seconds and 3 git commands to generate.