]> git.pld-linux.org Git - packages/squid.git/blob - squid.spec
- added macros in /etc/logrotate.d
[packages/squid.git] / squid.spec
1 # TODO:
2 # - SECURITY: http://securitytracker.com/alerts/2004/Sep/1011214.html
3 #
4 # Conditional build:
5 %bcond_with     combined_log    # enables apache-like combined log format
6 #
7 Summary:        SQUID Internet Object Cache
8 Summary(es):    proxy/cache para www/ftp/gopher
9 Summary(pl):    Uniwersalny proxy-cache server
10 Summary(pt_BR): Cache Squid de objetos Internet
11 Summary(ru):    Squid - ËÜÛ ÏÂßÅËÔÏ× Internet
12 Summary(uk):    Squid - ËÅÛ ÏÂ'¤ËԦנInternet
13 Summary(zh_CN): SQUID ¸ßËÙ»º³å´úÀí·þÎñÆ÷
14 Name:           squid
15 Version:        2.5.STABLE6
16 Release:        7
17 Epoch:          7
18 License:        GPL v2
19 Group:          Networking/Daemons
20 Source0:        http://www.squid-cache.org/Versions/v2/2.5/%{name}-%{version}.tar.bz2
21 # Source0-md5:  7fd964ac27b43b613d6b981cc702a29e
22 # http://www.squid-cache.org/Doc/FAQ/FAQ.tar.gz
23 Source1:        %{name}-FAQ.tar.gz
24 # Source1-md5:  cb9a955f8cda9cc166e086fccd412a43
25 Source2:        %{name}.init
26 Source3:        %{name}.sysconfig
27 # http://squid-docs.sourceforge.net/latest/zip-files/book-full-html.zip
28 Source4:        %{name}-book-full-html.zip
29 # Source4-md5:  4f3b6dab1de9cbb847df89d8b417378a
30 Source5:        %{name}.conf.patch
31 Source6:        %{name}.logrotate
32 Source7:        %{name}.pamd
33 # Bug fixes from Squid home page:
34 Patch0:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-ntlm_challengereuse_leak.patch
35 Patch1:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-ntlm_noreuse_leak.patch
36 Patch2:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-client_db_gc.patch
37 Patch3:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-heap_segfault.patch
38 Patch4:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-ntlm_fetch_string.patch
39 Patch5:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-digest_crash.patch
40 Patch6:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-ufs_no_valid_dir.patch
41 Patch7:         http://www.squid-cache.org/Versions/v2/2.5/bugs/squid-2.5.STABLE6-ufs_create_error.patch
42
43 # Other patches:
44 Patch110:       http://www.sed.pl/~mrk/qos/%{name}_hit_miss_mark.patch
45 Patch120:       %{name}-fhs.patch
46 Patch130:       %{name}-location.patch
47 Patch140:       %{name}-domainmatch.patch
48 Patch150:       %{name}-libnsl_fixes.patch
49 Patch170:       %{name}-ac_fix.patch
50 Patch180:       %{name}-crash-on-ENOSPC.patch
51 Patch190:       %{name}-newssl.patch
52 Patch210:       http://piorun.ds.pg.gda.pl/~blues/patches/%{name}-more_FD-new.patch
53 Patch220:       %{name}-empty-referer.patch
54 Patch230:       %{name}-2.5.STABLE4-apache-like-combined-log.patch
55 URL:            http://www.squid-cache.org/
56 BuildRequires:  autoconf
57 BuildRequires:  automake
58 BuildRequires:  cyrus-sasl-devel >= 2.1.0
59 BuildRequires:  findutils
60 BuildRequires:  openldap-devel
61 BuildRequires:  openssl-devel >= 0.9.7d
62 BuildRequires:  pam-devel
63 BuildRequires:  perl-base
64 BuildRequires:  rpmbuild(macros) >= 1.159
65 PreReq:         rc-scripts >= 0.2.0
66 Requires(pre):  /bin/id
67 Requires(pre):  /usr/bin/getgid
68 Requires(pre):  /usr/sbin/groupadd
69 Requires(pre):  /usr/sbin/useradd
70 Requires(post,preun):   /sbin/chkconfig
71 Requires(post): fileutils
72 Requires(post): findutils
73 Requires(post): grep
74 Requires(post): /bin/hostname
75 Requires(postun):       /usr/sbin/groupdel
76 Requires(postun):       /usr/sbin/userdel
77 Provides:       group(squid)
78 Provides:       user(squid)
79 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80
81 %define         _libexecdir     %{_libdir}/%{name}
82 %define         _sysconfdir     /etc/%{name}
83 %define         _cgidir         /home/services/httpd/cgi-bin
84
85 %description
86 Squid is a high-performance proxy caching server for web clients,
87 supporting FTP, gopher, and HTTP data objects. Unlike traditional
88 caching software, Squid handles all requests in a single,
89 non-blocking, I/O-driven process. Squid keeps meta data and especially
90 hot objects cached in RAM, caches DNS lookups, supports non-blocking
91 DNS lookups, and implements negative caching of failed requests. If
92 you are tight on memory, check out the NOVM version of this package.
93 Squid supports SSL, extensive access controls, and full request
94 logging. By using the lightweight Internet Cache Protocol, Squid
95 caches can be arranged in a hierarchy or mesh for additional bandwidth
96 savings. Squid consists of a main server program squid, a Domain Name
97 System lookup program dnsserver, a program for retrieving FTP data
98 ftpget, and some management and client tools. When squid starts up, it
99 spawns a configurable number of dnsserver processes, each of which can
100 perform a single, blocking Domain Name System (DNS) lookup. This
101 reduces the amount of time the cache waits for DNS lookups. Squid is
102 derived from the ARPA-funded Harvest project.
103
104 %description -l es
105 Squid es un servidor proxy con caché de alto desempeño para clientes
106 web, soportando FTP, gopher y HTTP. Diferentemente de softwares
107 tradicionales de caché squid manipula todas las requisiciones en un
108 único proceso sin bloqueos, direccionado a E/S. Mantienen metadatos y
109 objetos frecuentemente pedidos en uno caché en memoria RAM. Hace caché
110 de resoluciones DNS, soporta resoluciones DNS sin bloqueo y implementa
111 un caché negativo de requisiciones que fallen. Si tiene poca memoria
112 da un vistazo en la versión NOVM de este paquete. También soporta SSL,
113 controles extensivos de acceso y registro (log) completo de las
114 requisiciones. Usando el ligero Protocolo de Caches Internet (ICP)
115 puede ser usado en una jerarquía de servidores para mayor ahorro de la
116 banda de comunicación. Está compuesto del programa squid (servidor
117 principal), del programa dnsserver (para resolución DNS), del programa
118 ftpget (para transmisiones ftp) y otras herramientas clientes y para
119 administración. Cuando squid se inicia, dispara un número configurable
120 de procesos dnsserver, cada uno pudiendo ejecutar solamente una
121 resolución DNS con poder de bloquear. Esto reduce el tiempo que el
122 caché espera por resoluciones DNS. Fue derivado del proyecto Harvest,
123 financiado por la ARPA.
124
125 %description -l pl
126 Squid jest wysoce wydajnym serwerem proxy-cache dla przegl±darek WWW,
127 klientów FTP i gopher. Squid przechowuje najczê¶ciej pobierane dane w
128 pamiêci RAM i zapamiêtuje odwo³ania do DNS. Squid oferuje wsparcie dla
129 SSL, rozbudowan± kontrolê dostêpu oraz pe³ne rejestrowanie pobieranych
130 danych. Dziêki u¿yciu protoko³u ICP (Internet Cache Protocol), serwer
131 squid mo¿na ³±czyæ w hierarchiê, zwiêkszaj±c ich efektywno¶æ. Pakiet
132 squid obejmuje: g³ówny program serwera squid, program dostarczaj±cy
133 informacji z DNS dnsserver, program odbieraj±cy dane FTP ftpget, oraz
134 pomocnicze programy do zarz±dzania. Squid wywodzi siê ze
135 sponsorowanego przez ARPA projektu Harvest.
136
137 %description -l pt_BR
138 O Squid é um servidor proxy com cache de alta performance para
139 clientes web, suportando FTP, gopher e HTTP. Diferentemente de
140 softwares tradicionais de cache o squid manipula todas as requisições
141 em um único processo sem bloqueios, direcionado a E/S.
142
143 Mantém meta dados e objetos freqüentemente pedidos num cache em
144 memória RAM. Faz cache de resoluções DNS, suporta resoluções DNS sem
145 bloqueio e implementa um cache negativo de requisições que falharem.
146 Se você tem pouca memória dê uma olhada na versão NOVM deste pacote.
147
148 Também suporta SSL, controles extensivos de acesso e registro (log)
149 completo das requisições. Usando o leve Protocolo de Caches Internet
150 (ICP) ele pode ser usado em uma hierarquia de servidores para maior
151 economia de banda de comunicação.
152
153 Ele consiste do programa squid (servidor principal), do programa
154 dnsserver (para resolução DNS), do programa ftpget (para transmissões
155 ftp) e outras ferramentas clientes e para gerenciamento. Quando o
156 squid é inicializado ele dispara um número configurável de processos
157 dnsserver, cada um podendo executar somente uma resolução DNS
158 bloqueante. Isto reduz o tempo que o cache espera por resoluções DNS.
159
160 Foi derivado do projeto Harvest, financiado pela ARPA.
161
162 %description -l ru
163 Squid - ÜÔÏ ×ÙÓÏËÏÐÒÏÉÚ×ÏÄÉÔÅÌØÎÙÊ ËÜÛÉÒÕÀÝÉÊ ÐÒÏËÓÉ-ÓÅÒ×ÅÒ ÄÌÑ
164 ËÌÉÅÎÔÏ× web, ÐÏÄÄÅÒÖÉ×ÁÀÝÉÊ ÏÂßÅËÔÙ ÄÁÎÎÙÈ ÔÉÐÁ FTP, gopher É HTTP. ÷
165 ÏÔÌÉÞÉÅ ÏÔ ÔÒÁÄÉÃÉÏÎÎÙÈ ËÜÛÉÒÕÀÝÉÈ ÐÒÏÇÒÁÍÍ, Squid ÏÂÒÁÂÁÔÙ×ÁÅÔ ×ÓÅ
166 ÚÁÐÒÏÓÙ ÐÒÉ ÐÏÍÏÝÉ ÏÄÎÏÇÏ ÎÅÂÌÏËÉÒÕÀÝÅÇÏÓÑ, ÕÐÒÁ×ÌÑÅÍÏÇÏ
167 ××ÏÄÏÍ-×Ù×ÏÄÏÍ ÐÒÏÃÅÓÓÁ.
168
169 üÔÏÔ ÐÁËÅÔ ÉÍÅÅÔ ×ÓÔÒÏÅÎÎÕÀ ÐÏÄÄÅÒÖËÕ ÂÁÚÙ ÄÁÎÎÙÈ ÓÅÔÅ×ÙÈ ICMP-ÐÒÏÂ
170 (Netdb).
171
172 %description -l uk
173 Squid - ÃÅ ËÅÛÕÀÞÉÊ ÐÒÏËÓ¦-ÓÅÒ×ÅÒ ÄÌÑ web-Ë̦¤ÎÔ¦×, ÝϠЦÄÔÒÉÍÕ¤
174 ÏÂ'¤ËÔÉ ÄÁÎÉÈ ÔÉÐÕ FTP, gopher ÔÁ HTTP. îÁ ×¦ÄͦÎՠצĠÔÒÁÄÉæÊÎÉÈ
175 ËÅÛÕÀÞÉÈ ÐÒÏÇÒÁÍ, Squid ÏÂÒÏÂÌѤ ×Ó¦ ÚÁÐÉÔÉ ÚÁ ÄÏÐÏÍÏÇÏÀ ÏÄÎÏÇÏ
176 ÎÅÂÌÏËÕÀÞÏÇÏ, ËÅÒÏ×ÁÎÏÇÏ ××ÏÄÏÍ-×É×ÏÄÏÍ ÐÒÏÃÅÓÕ.
177
178 ãÅÊ ÐÁËÅÔ ÍÁ¤ ×ÂÕÄÏ×ÁÎՠЦÄÔÒÉÍËÕ ÂÁÚÉ ÄÁÎÉÈ ÍÅÒÅÖÅ×ÉÈ ICMP-ÐÒÏÂ
179 (Netdb).
180
181 %package cachemgr
182 Summary:        CGI script for Squid management
183 Summary(pl):    Skrypt CGI do zarz±dzania Squidem przez WWW
184 Group:          Networking/Admin
185 Requires:       %{name} = %{epoch}:%{version}-%{release}
186 Requires:       httpd
187
188 %description cachemgr
189 Cachemgr.cgi is a CGI script that allows administrator to chceck
190 various informations about Squid via WWW.
191
192 %description cachemgr -l pl
193 Cachemgr.cgi jest skryptem CGI, który pozwala administratorowi
194 zapoznaæ siê z informacjami o pracy Squida poprzez WWW.
195
196 %package ldap_auth
197 Summary:        LDAP authentication helper for Squid
198 Summary(pl):    Obs³uga uwierzytelniania LDAP dla squida
199 Group:          Networking/Admin
200 Requires:       %{name} = %{epoch}:%{version}-%{release}
201
202 %description ldap_auth
203 This Squid helper allows authentication against LDAP directories using
204 the "simple authentication" (plain-text).
205
206 %description ldap_auth -l pl
207 Pakiet ten pozwala na uwierzytelnianie przez LDAP za pomoc± prostego
208 uwierzytelniania (otwartym tekstem).
209
210 %package pam_auth
211 Summary:        PAM authentication helper for Squid
212 Summary(pl):    Obs³uga uwierzytelniania PAM dla squida
213 Group:          Networking/Admin
214 Requires:       %{name} = %{epoch}:%{version}-%{release}
215 Requires:       pam >= 0.77.3
216
217 %description pam_auth
218 This program authenticates users against a PAM configured
219 authentication service "squid". This allows you to authenticate Squid
220 users to any authentication source for which you have a PAM module.
221
222 %description pam_auth -l pl
223 Program ten pozwala na uwierzytelnianie u¿ytkowników squida w dowolnym
224 ¼ródle posiadaj±cym modu³ PAM.
225
226 %package smb_auth
227 Summary:        SMB authentication helper for Squid
228 Summary(pl):    Obs³uga uwierzytelniania SMB dla squida
229 Group:          Networking/Admin
230 Requires:       %{name} = %{epoch}:%{version}-%{release}
231
232 %description smb_auth
233 This is a proxy authentication module. With smb_auth you can
234 authenticate proxy users against an SMB server like Windows NT or
235 Samba.
236
237 %description smb_auth -l pl
238 To jest modu³ uwierzytelniania proxy. Przy pomocy smb_auth mo¿na
239 uwierzytelniaæ u¿ytkowników proxy na serwerach SMB, jak Windows NT czy
240 Samba.
241
242 %package msnt_auth
243 Summary:        MSNT domain authentication helper for Squid
244 Summary(pl):    Obs³uga uwierzytelniania w domenie MSNT dla squida
245 Group:          Networking/Admin
246 Requires:       %{name} = %{epoch}:%{version}-%{release}
247
248 %description msnt_auth
249 This is an authentication module for the Squid proxy server to
250 authenticate users on an NT domain.
251
252 %description msnt_auth -l pl
253 Jest to modu³ uwierzytelniania proxy, który pozwala na
254 uwierzytelnianie u¿ytkowników proxy w domenie NT.
255
256 %package yp_auth
257 Summary:        YP authentication helper for Squid
258 Summary(pl):    Obs³uga uwierzytelniania YP dla squida
259 Group:          Networking/Admin
260 Requires:       %{name} = %{epoch}:%{version}-%{release}
261
262 %description yp_auth
263 This is an authentication module for the Squid proxy server to
264 authenticate users on YP.
265
266 %description yp_auth -l pl
267 Jest to modu³ uwierzytelniania proxy, który pozwala na
268 uwierzytelnianie u¿ytkowników proxy poprzez YP.
269
270 %package ncsa_auth
271 Summary:        NCSA httpd style authentication helper for Squid
272 Summary(pl):    Obs³uga uwierzytelniania NCSA httpd dla squida
273 Group:          Networking/Admin
274 Requires:       %{name} = %{epoch}:%{version}-%{release}
275
276 %description ncsa_auth
277 This module uses a NCSA httpd style password file for authentication.
278
279 %description ncsa_auth -l pl
280 Modu³ uwierzytelniania proxy u¿ywaj±cy pliku hase³ jak w NCSA httpd.
281
282 %package sasl_auth
283 Summary:        SASL authentication helper for Squid
284 Summary(pl):    Obs³uga uwierzytelniania SASL dla squida
285 Group:          Networking/Admin
286 Requires:       %{name} = %{epoch}:%{version}-%{release}
287
288 %description sasl_auth
289 This is an authentication module for the Squid proxy server to
290 authenticate users via SASL.
291
292 %description sasl_auth -l pl
293 Jest to modu³ uwierzytelniania proxy, który pozwala na
294 uwierzytelnianie u¿ytkowników proxy poprzez SASL.
295
296 %package winbind_auth
297 Summary:        WINBIND authentication helper for Squid
298 Summary(pl):    Obs³uga uwierzytelniania WINBIND dla squida
299 Group:          Networking/Admin
300 Requires:       %{name} = %{epoch}:%{version}-%{release}
301
302 %description winbind_auth
303 This is an authentication module for the Squid proxy server to
304 authenticate users via WINBIND.
305
306 %description winbind_auth -l pl
307 Jest to modu³ uwierzytelniania proxy, który pozwala na
308 uwierzytelnianie u¿ytkowników proxy poprzez WINBIND.
309
310 %package getpwname_auth
311 Summary:        getpwname authentication helper for Squid
312 Summary(pl):    Obs³uga uwierzytelniania getpwname dla squida
313 Group:          Networking/Admin
314 Requires:       %{name} = %{epoch}:%{version}-%{release}
315
316 %description getpwname_auth
317 This is an authentication module for the Squid proxy server to
318 authenticate users using getpwname.
319
320 %description getpwname_auth -l pl
321 Jest to modu³ uwierzytelniania proxy, który pozwala na
322 uwierzytelnianie u¿ytkowników proxy poprzez getpwname.
323
324 %package passwd_auth
325 Summary:        passwd authentication helper for Squid
326 Summary(pl):    Obs³uga uwierzytelniania passwd dla squida
327 Group:          Networking/Admin
328 Requires:       %{name} = %{epoch}:%{version}-%{release}
329
330 %description passwd_auth
331 This is an authentication module for the Squid proxy server to
332 authenticate users with separate passwd file.
333
334 %description passwd_auth -l pl
335 Jest to modu³ uwierzytelniania proxy, który pozwala na
336 uwierzytelnianie u¿ytkowników proxy poprzez oddzielny plik passwd.
337
338 %package ntlm_auth
339 Summary:        NTLM authentication helper for Squid
340 Summary(pl):    Obs³uga uwierzytelniania NTLM dla squida
341 Group:          Networking/Admin
342 Requires:       %{name} = %{epoch}:%{version}-%{release}
343
344 %description ntlm_auth
345 This is an authentication module for the Squid proxy server to
346 authenticate users on NTLM.
347
348 %description ntlm_auth -l pl
349 Jest to modu³ uwierzytelniania proxy, który pozwala na
350 uwierzytelnianie u¿ytkowników proxy poprzez NTLM.
351
352 %package ip_acl
353 Summary:        IP external ACL helper for Squid
354 Summary(pl):    Wsparcie kontroli dostêpu przez IP dla squida
355 Group:          Networking/Admin
356 Requires:       %{name} = %{epoch}:%{version}-%{release}
357
358 %description ip_acl
359 This is an external ACL module for the Squid proxy server to limit
360 access for users based on IP address.
361
362 %description ip_acl -l pl
363 Jest to modu³ kontroli dostêpu (ACL) do proxy, który pozwala na
364 ograniczenie dostêpu u¿ytkowników proxy na podstawie ich adresu IP.
365
366 %package ldap_acl
367 Summary:        LDAP group external ACL helper for Squid
368 Summary(pl):    Wsparcie kontroli dostêpu przez grupy LDAP dla squida
369 Group:          Networking/Admin
370 Requires:       %{name} = %{epoch}:%{version}-%{release}
371
372 %description ldap_acl
373 This is an external ACL module for the Squid proxy server to limit
374 access for users based on LDAP group membership.
375
376 %description ldap_acl -l pl
377 Jest to modu³ kontroli dostêpu (ACL) do proxy, który pozwala na
378 ograniczenie dostêpu u¿ytkowników proxy na podstawie ich
379 przynale¿no¶ci do grup LDAP.
380
381 %package unix_acl
382 Summary:        UNIX group external ACL helper for Squid
383 Summary(pl):    Wsparcie kontroli dostêpu przez grupy UNIX dla squida
384 Group:          Networking/Admin
385 Requires:       %{name} = %{epoch}:%{version}-%{release}
386
387 %description unix_acl
388 This is an external ACL module for the Squid proxy server to limit
389 access for users based on UNIX group membership.
390
391 %description unix_acl -l pl
392 Jest to modu³ kontroli dostêpu (ACL) do proxy, który pozwala na
393 ograniczenie dostêpu u¿ytkowników proxy na podstawie ich
394 przynale¿no¶ci do grup UNIX.
395
396 %package wbinfo_acl
397 Summary:        NT domain group external ACL helper for Squid
398 Summary(pl):    Wsparcie kontroli dostêpu przez grupy w domenie NT dla squida
399 Group:          Networking/Admin
400 Requires:       %{name} = %{epoch}:%{version}-%{release}
401
402 %description wbinfo_acl
403 This is an external ACL module for the Squid proxy server to limit
404 access for users based on NT domain group membership using wbinfo.
405
406 %description wbinfo_acl -l pl
407 Jest to modu³ kontroli dostêpu (ACL) do proxy, który pozwala na
408 ograniczenie dostêpu u¿ytkowników proxy na podstawie ich
409 przynale¿no¶ci do grup w domenie NT przy u¿yciu wbinfo.
410
411 %package winbind_acl
412 Summary:        NT domain group external ACL helper for Squid
413 Summary(pl):    Wsparcie kontroli dostêpu przez grupy w domenie NT dla squida
414 Group:          Networking/Admin
415 Requires:       %{name} = %{epoch}:%{version}-%{release}
416
417 %description winbind_acl
418 This is an external ACL module for the Squid proxy server to limit
419 access for users based on NT domain group membership based on Samba
420 Winbindd from Samba 2.2.4 or greater.
421
422 %description winbind_acl -l pl
423 Jest to modu³ kontroli dostêpu (ACL) do proxy, który pozwala na
424 ograniczenie dostêpu u¿ytkowników proxy na podstawie ich
425 przynale¿no¶ci do grup w domenie NT oparty na Samba Winbindd z pakietu
426 Samba 2.2.4 lub wy¿szego.
427
428 %prep
429 %setup -q -a1 -a4
430
431 # Bug fixes from Squid home page:
432 %patch0 -p1
433 %patch1 -p1
434 %patch2 -p1
435 %patch3 -p1
436 %patch4 -p1
437 %patch5 -p1
438 %patch6 -p1
439 %patch7 -p1
440
441 # Other patches:
442 %patch110 -p1
443 %patch120 -p1
444 %patch130 -p1
445 %patch140 -p1
446 %patch170 -p1
447 %patch180 -p1
448 %patch190 -p1
449 %patch210 -p1
450 %patch220 -p1
451 %{?with_combined_log:%patch230 -p1}
452
453 %build
454 %{__aclocal}
455 %{__autoconf}
456 %{__automake}
457 %configure \
458         --datadir=%{_datadir}/squid \
459         --disable-ipf-transparent \
460         --enable-arp-acl \
461         --enable-auth=yes \
462         --enable-basic-auth-helpers=yes \
463         --enable-cache-digests \
464         --enable-carp \
465         --enable-delay-pools \
466         --enable-digest-auth-helpers=yes \
467         --enable-err-language=English \
468         --enable-external-acl-helpers=yes \
469         --enable-forw-via-db \
470         --enable-htcp \
471         --enable-icmp \
472         --enable-linux-netfilter \
473         --enable-ntlm-auth-helpers=yes \
474         --enable-referer-log \
475         --enable-removal-policies="lru heap" \
476         --enable-ssl \
477         --enable-snmp \
478         --enable-storeio="aufs,coss,diskd,null,ufs" \
479         --enable-underscores \
480         --enable-useragent-log \
481         --enable-x-accelerator-vary \
482         --localstatedir=/var \
483         --sysconfdir=%{_sysconfdir} \
484         --with-pthreads
485
486 %{__make}
487
488 perl -pi -e 's#%{_prefix}/.*bin/perl#%{_bindir}/perl#g' contrib/*
489 perl -pi -e 's#%{_prefix}/.*bin/perl#%{_bindir}/perl#g' scripts/*
490 find helpers/ -type f | xargs perl -pi -e 's#%{_prefix}/.*bin/perl#%{_bindir}/perl#g'
491
492 %install
493 rm -rf $RPM_BUILD_ROOT
494 install -d $RPM_BUILD_ROOT%{_cgidir} \
495         $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,security,sysconfig,logrotate.d} \
496         $RPM_BUILD_ROOT{%{_sbindir},%{_bindir},%{_libexecdir}/contrib} \
497         $RPM_BUILD_ROOT%{_mandir}/man8 \
498         $RPM_BUILD_ROOT%{_datadir}/squid \
499         $RPM_BUILD_ROOT/var/{cache,log{,/archiv}}/squid
500
501 %{__make} install \
502         DESTDIR=$RPM_BUILD_ROOT
503
504 cp -a contrib/*.pl $RPM_BUILD_ROOT%{_libexecdir}/contrib
505 install scripts/*.pl $RPM_BUILD_ROOT%{_libexecdir}
506
507 install %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/squid
508 touch $RPM_BUILD_ROOT/etc/security/blacklist.squid
509
510 mv -f $RPM_BUILD_ROOT%{_libdir}/squid/cachemgr.cgi $RPM_BUILD_ROOT%{_cgidir}
511
512 cd $RPM_BUILD_ROOT/etc/squid
513 cp -f squid.conf{,.default}
514 patch -p0 < %{SOURCE5}
515 cd -
516
517 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/squid
518 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/squid
519 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/squid
520
521 touch $RPM_BUILD_ROOT/var/log/squid/{access,cache,store}.log
522
523 # These two files start squid. They are replaced by /etc/rc.d/init.d script.
524 rm -f $RPM_BUILD_ROOT%{_bindir}/R*
525
526 # dunno why, but manual is not installed
527 mv doc/squid.8 $RPM_BUILD_ROOT%{_mandir}/man8
528
529 # We don't want Makefiles as docs...
530 rm -f doc/Makefile*
531
532 # We don't like message: rpm found unpackaged files ...
533 rm -f $RPM_BUILD_ROOT/etc/squid/msntauth.conf.default \
534         $RPM_BUILD_ROOT/etc/squid/squid.conf.orig
535
536 %clean
537 rm -rf $RPM_BUILD_ROOT
538
539 %pre
540 if [ -n "`/usr/bin/getgid squid`" ]; then
541         if [ "`/usr/bin/getgid squid`" != "91" ]; then
542                 echo "Error: group squid doesn't have gid=91. Correct this before installing squid." 1>&2
543                 exit 1
544         fi
545 else
546         /usr/sbin/groupadd -g 91 squid 1>&2
547 fi
548 if [ -n "`/bin/id -u squid 2>/dev/null`" ]; then
549         if [ "`/bin/id -u squid`" != "91" ]; then
550                 echo "Error: user squid doesn't have uid=91. Correct this before installing squid." 1>&2
551                 exit 1
552         fi
553 else
554         /usr/sbin/useradd -o -u 91 -s /bin/false -g squid \
555                 -c "SQU http caching daemon" -d /var/cache/squid squid 1>&2
556 fi
557 [ -L %{_datadir}/squid/errors ] && rm -rf %{_datadir}/squid/errors || :
558
559 %post
560 if ! grep -q "^visible_hostname" /etc/squid/squid.conf; then
561         echo visible_hostname `/bin/hostname -f` >> /etc/squid/squid.conf
562 fi
563
564 if [ "$1" = "1" ]; then
565         /sbin/chkconfig --add squid
566         echo "Run \"/etc/rc.d/init.d/squid start\" to start squid." >&2
567 else
568         if [ -f /var/lock/subsys/squid ]; then
569                 /etc/rc.d/init.d/squid restart >&2
570         fi
571 fi
572
573 %preun
574 if [ "$1" = "0" ]; then
575         if [ -f /var/lock/subsys/squid ]; then
576                 /etc/rc.d/init.d/squid stop >&2
577         fi
578         /sbin/chkconfig --del squid
579 fi
580
581 %postun
582 if [ "$1" = "0" ]; then
583         %userremove squid
584         %groupremove squid
585 fi
586
587 %files
588 %defattr(644,root,root,755)
589 %doc CONTRIBUTORS COPYRIGHT CREDITS README ChangeLog QUICKSTART RELEASENOTES.html SPONSORS
590 %doc doc/* src/mib.txt FAQ*.html book-full.html
591 %attr(755,root,root) %{_bindir}/squidclient
592 %attr(755,root,root) %{_libexecdir}/diskd
593 # YES, it has to be suid root, it sends ICMP packets.
594 %attr(4754,root,squid) %{_libexecdir}/pinger
595 %attr(755,root,root) %{_libexecdir}/unlinkd
596 %attr(755,root,root) %{_libexecdir}/fakeauth_auth
597 %attr(755,root,root) %{_sbindir}/*
598
599 %attr(755,root,root) %dir %{_sysconfdir}
600
601 %attr(754,root,root) /etc/rc.d/init.d/squid
602 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/squid
603 %attr(640,root,squid) %config(noreplace) /etc/sysconfig/squid
604 %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/squid.conf
605 %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
606 %attr(640,root,root) %{_sysconfdir}/mime.conf.default
607 %attr(640,root,root) %{_sysconfdir}/squid.conf.default
608
609 %dir %{_datadir}/squid
610 %dir %{_datadir}/squid/errors
611 %{_datadir}/squid/icons
612 %{_datadir}/squid/mib.txt
613 %lang(bg) %{_datadir}/squid/errors/Bulgarian
614 %lang(ca) %{_datadir}/squid/errors/Catalan
615 %lang(cs) %{_datadir}/squid/errors/Czech
616 %lang(da) %{_datadir}/squid/errors/Danish
617 %lang(nl) %{_datadir}/squid/errors/Dutch
618 %{_datadir}/squid/errors/English
619 %lang(et) %{_datadir}/squid/errors/Estonian
620 %lang(fi) %{_datadir}/squid/errors/Finnish
621 %lang(fr) %{_datadir}/squid/errors/French
622 %lang(de) %{_datadir}/squid/errors/German
623 %lang(he) %{_datadir}/squid/errors/Hebrew
624 %lang(hu) %{_datadir}/squid/errors/Hungarian
625 %lang(it) %{_datadir}/squid/errors/Italian
626 %lang(ja) %{_datadir}/squid/errors/Japanese
627 %lang(ko) %{_datadir}/squid/errors/Korean
628 %lang(lt) %{_datadir}/squid/errors/Lithuanian
629 %lang(pl) %{_datadir}/squid/errors/Polish
630 %lang(pt) %{_datadir}/squid/errors/Portuguese
631 %lang(ro) %{_datadir}/squid/errors/Romanian
632 %lang(ru) %{_datadir}/squid/errors/Russian-1251
633 %lang(ru) %{_datadir}/squid/errors/Russian-koi8-r
634 %lang(zh_CN) %{_datadir}/squid/errors/Simplify_Chinese
635 %lang(sk) %{_datadir}/squid/errors/Slovak
636 %lang(es) %{_datadir}/squid/errors/Spanish
637 %lang(sr) %{_datadir}/squid/errors/Serbian
638 %lang(sv) %{_datadir}/squid/errors/Swedish
639 %lang(zh_TW) %{_datadir}/squid/errors/Traditional_Chinese
640 %lang(tr) %{_datadir}/squid/errors/Turkish
641
642 %attr(755,root,root) %dir %{_libexecdir}
643 %attr(755,root,root) %{_libexecdir}/*.pl
644 %attr(755,root,root) %{_libexecdir}/contrib
645
646 %attr(770,root,squid) %dir /var/log/archiv/squid
647 %attr(770,root,squid) %dir /var/log/squid
648 %attr(660,root,squid) %ghost /var/log/squid/*
649
650 %attr(770,root,squid) %dir /var/cache/squid
651 %{_mandir}/man8/squid.8*
652
653 %files cachemgr
654 %defattr(644,root,root,755)
655 %attr(755,root,root) %{_cgidir}/*
656
657 %files ldap_auth
658 %defattr(644,root,root,755)
659 %doc helpers/basic_auth/LDAP/README
660 %attr(755,root,root) %{_libexecdir}/%{name}_ldap_auth
661 %attr(644,root,root) %{_mandir}/man8/%{name}_ldap_auth.*
662
663 %files pam_auth
664 %defattr(644,root,root,755)
665 %doc helpers/basic_auth/PAM/pam_auth.c
666 %config(noreplace) /etc/pam.d/squid
667 %config(noreplace) /etc/security/blacklist.squid
668 %attr(755,root,root) %{_libexecdir}/pam_auth
669 %{_mandir}/man8/pam_auth.8*
670
671 %files smb_auth
672 %defattr(644,root,root,755)
673 %doc helpers/basic_auth/SMB/{README,ChangeLog,smb_auth.sh}
674 %doc helpers/basic_auth/multi-domain-NTLM/*
675 %attr(755,root,root) %{_libexecdir}/smb_auth*
676
677 %files msnt_auth
678 %defattr(644,root,root,755)
679 %doc helpers/basic_auth/MSNT/README*
680 %attr(755,root,root) %{_libexecdir}/msnt_auth
681 %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msntauth.conf
682
683 %files yp_auth
684 %defattr(644,root,root,755)
685 %attr(755,root,root) %{_libexecdir}/yp_auth
686
687 %files ncsa_auth
688 %defattr(644,root,root,755)
689 %attr(755,root,root) %{_libexecdir}/ncsa_auth
690
691 %files sasl_auth
692 %defattr(644,root,root,755)
693 %doc helpers/basic_auth/SASL/{README,squid_sasl*}
694 %attr(755,root,root) %{_libexecdir}/sasl_auth
695
696 %files winbind_auth
697 %defattr(644,root,root,755)
698 %attr(755,root,root) %{_libexecdir}/wb_auth
699
700 %files getpwname_auth
701 %defattr(644,root,root,755)
702 %attr(755,root,root) %{_libexecdir}/getpwname_auth
703
704 %files passwd_auth
705 %defattr(644,root,root,755)
706 %attr(755,root,root) %{_libexecdir}/digest_pw_auth
707
708 %files ntlm_auth
709 %defattr(644,root,root,755)
710 %doc helpers/ntlm_auth/no_check/{README*,no_check.pl}
711 %attr(755,root,root) %{_libexecdir}/wb_ntlmauth
712 %attr(755,root,root) %{_libexecdir}/ntlm_auth
713
714 %files ip_acl
715 %defattr(644,root,root,755)
716 %doc helpers/external_acl/ip_user/{README,example*}
717 %attr(755,root,root) %{_libexecdir}/ip_user_check
718
719 %files ldap_acl
720 %defattr(644,root,root,755)
721 %attr(755,root,root) %{_libexecdir}/squid_ldap_group
722 %attr(644,root,root) %{_mandir}/man8/%{name}_ldap_group.*
723
724 %files unix_acl
725 %defattr(644,root,root,755)
726 %doc helpers/external_acl/unix_group/README
727 %attr(755,root,root) %{_libexecdir}/squid_unix_group
728 %attr(644,root,root) %{_mandir}/man8/%{name}_unix_group.*
729
730 %files wbinfo_acl
731 %defattr(644,root,root,755)
732 %attr(755,root,root) %{_libexecdir}/wbinfo_group.pl
733
734 %files winbind_acl
735 %defattr(644,root,root,755)
736 %doc helpers/external_acl/winbind_group/readme.txt
737 %attr(755,root,root) %{_libexecdir}/wb_group
This page took 0.100915 seconds and 4 git commands to generate.