source: projects/specs/trunk/s/squid/squid-vl.spec @ 12485

Revision 12485, 12.8 KB checked in by tomop, 4 years ago (diff)

updated 4 packages

ethtool-5.8-1

gettext-0.21-1

rsync-3.2.3-1

squid-4.13-1

Line 
1%bcond_with     systemd
2
3%define         base_name       squid
4%define         pkg_epoch       7
5%define         pkg_version     4.13
6%define         pkg_release     1%{?_dist_release}%{?with_systemd:.systemd}
7%define         uid             23
8%define         gid             23
9
10%define _unpackaged_files_terminate_build 1
11
12Summary:        The Squid proxy caching server
13Summary(ja):    Squid ウェブプロキシキャッシュ
14Name:           %{base_name}
15Epoch:          %{pkg_epoch}
16Version:        %{pkg_version}
17Release:        %{pkg_release}
18Group:          servers
19Vendor:         Project Vine
20Distribution:   Vine Linux
21
22License:        GPLv2+
23URL:            http://www.squid-cache.org
24Source0:        http://www.squid-cache.org/Versions/v4/%{base_name}-%{version}.tar.xz
25Source1:        %{base_name}.init
26Source2:        %{base_name}.logrotate
27Source3:        %{base_name}.sysconfig
28Source4:        %{base_name}.pam
29Source5:        %{base_name}.service
30Source6:        cache_swap.sh
31
32Patch1:         0001-config.patch
33Patch2:         0002-location.patch
34Patch3:         0003-perlpath.patch
35
36BuildRoot:      %{_tmppath}/%{base_name}-%{version}-root
37BuildRequires:  openldap-devel pam-devel openssl-devel krb5-devel
38BuildRequires:  cyrus-sasl-devel libcap-devel libdb-devel
39Requires:       bash >= 2.0
40Requires(pre):  shadow-utils
41%if %{with systemd}
42%{?systemd_requires}
43%else
44Requires(post): %{_syssbindir}/chkconfig
45Requires(preun): %{_syssbindir}/chkconfig
46%endif
47
48Conflicts:      squid30
49Obsoletes:      squid-novm
50
51%description
52Squid is a high-performance proxy caching server for Web clients,
53supporting FTP, gopher, and HTTP data objects. Unlike traditional
54caching software, Squid handles all requests in a single,
55non-blocking, I/O-driven process. Squid keeps meta data and especially
56hot objects cached in RAM, caches DNS lookups, supports non-blocking
57DNS lookups, and implements negative caching of failed requests.
58
59Squid consists of a main server program squid, a Domain Name System
60lookup program (dnsserver), a program for retrieving FTP data
61(ftpget), and some management and client tools.
62
63%description -l ja
64Squid はウェブクライアントのための高性能のプロキシキャッシュサーバで、
65FTP, gopher, HTTP データオブジェクトに対応しています。これまでの
66キャッシュソフトウェアと違い、 Squid は全ての要求を、単一の
67ブロックしない I/O ドリブンのプロセスで処理します。 Squid はメタデータや
68ホットなオブジェクトを RAM に保持し、 DNS 問い合わせをキャッシュします。
69ブロック無しの DNS 問い合わせをサポートし、失敗した要求のネガティブ
70キャッシングが実装されています。
71
72Squid は、メインのサーバプログラム squid と、 Domain Name System
73問い合わせプログラム (dnsserver) と、 FTP データを取得するプログラム
74(ftpget) と、いくつかの管理用またはクライアントツールから成ります。
75
76
77%debug_package
78
79
80%prep
81%autosetup -p1
82
83
84%build
85TIRPC_CFLAGS=$(pkg-config --cflags libtirpc)
86TIRPC_LIBS=$(pkg-config --libs libtirpc)
87RPM_OPT_FLAGS="%{optflags} -Wno-stringop-truncation $TIRPC_CFLAGS"
88# added -Wno-cpp for glibc >= 2.30
89CXXFLAGS="$RPM_OPT_FLAGS -fPIC -Wno-cpp"
90CFLAGS="$RPM_OPT_FLAGS -fPIC -Wno-cpp"
91LDFLAGS="$RPM_LD_FLAGS -pie -Wl,-z,relro -Wl,-z,now -Wl,--warn-shared-textrel"
92
93%configure \
94   --libexecdir=%{_libdir}/%{base_name} \
95   --datadir=%{_datadir}/%{base_name} \
96   --sysconfdir=%{_sysconfdir}/%{base_name} \
97   --with-logdir=%{_localstatedir}/log/%{base_name} \
98   --disable-dependency-tracking \
99   --enable-eui \
100   --enable-follow-x-forwarded-for \
101   --enable-arp-acl \
102   --enable-auth \
103   --enable-auth-basic="DB,LDAP,NCSA,NIS,PAM,POP3,SASL,SMB,getpwnam" \
104   --enable-auth-digest="file,LDAP,eDirectory" \
105   --enable-auth-negotiate="kerberos" \
106   --enable-auth-ntlm="SMB_LM,fake" \
107   --enable-external-acl-helpers="LDAP_group,time_quota,session,unix_group,wbinfo_group" \
108   --enable-cache-digests \
109   --enable-cachemgr-hostname=localhost \
110   --enable-delay-pools \
111   --enable-epoll \
112   --enable-icap-client \
113   --enable-ident-lookups \
114   %ifnarch ppc64 ia64 x86_64 s390x
115   --with-large-files \
116   %endif
117   --enable-linux-netfilter \
118   --enable-referer-log \
119   --enable-removal-policies="heap,lru" \
120   --enable-snmp \
121   --enable-ssl \
122   --enable-ssl-crtd \
123   --enable-storeio="aufs,diskd,ufs,rock" \
124   --enable-diskio \
125   --enable-useragent-log \
126   --enable-wccpv2 \
127   --enable-internal-dns \
128   --with-aio \
129   --with-default-user="%{base_name}" \
130   --with-filedescriptors=16384 \
131   --with-dl \
132   --with-openssl \
133   --with-pthreads \
134   --disable-arch-native \
135%if %{with systemd}
136   --with-pidfile='/run/squid.pid' \
137%endif
138   --with-pic
139
140%{__make} \
141    %{?_smp_mflags} \
142    DEFAULT_SWAP_DIR="%{_localstatedir}/cache/%{base_name}"
143
144
145%install
146[ "${RPM_BUILD_ROOT}" != "/" ] && %{__rm} -rf ${RPM_BUILD_ROOT}
147
148%{__make} install \
149    DESTDIR="${RPM_BUILD_ROOT}" \
150    DEFAULT_SWAP_DIR="%{_localstatedir}/cache/%{base_name}"
151
152echo "
153#
154# This is %{_sysconfdir}/httpd/conf.d/%{base_name}.conf
155#
156
157ScriptAlias /Squid/cgi-bin/cachemgr.cgi %{_libdir}/%{base_name}/cachemgr.cgi
158
159# Only allow access from localhost by default
160<Location /Squid/cgi-bin/cachemgr.cgi>
161 order allow,deny
162 allow from localhost.localdomain
163 # Add additional allowed hosts as needed
164 # allow from .example.com
165</Location>" > ${RPM_BUILD_ROOT}/%{base_name}.httpd.tmp
166
167mkdir -p ${RPM_BUILD_ROOT}%{_initdir}
168mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d
169mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
170mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d
171mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d/
172
173%if %{with systemd}
174install -Dpm644 %{SOURCE5} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service
175install -Dpm755 %{SOURCE6} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/cache_swap.sh
176%else
177install -m 755 %{SOURCE1} ${RPM_BUILD_ROOT}%{_initdir}/%{base_name}
178%endif
179install -m 644 %{SOURCE2} ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{base_name}
180install -m 644 %{SOURCE3} ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{base_name}
181install -m 644 %{SOURCE4} ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d/%{base_name}
182install -m 644 ${RPM_BUILD_ROOT}/%{base_name}.httpd.tmp ${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d/%{base_name}.conf
183mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{base_name}
184mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{base_name}
185chmod 644 contrib/url-normalizer.pl contrib/user-agents.pl
186iconv -f ISO88591 -t UTF8 ChangeLog -o ChangeLog.tmp
187mv -f ChangeLog.tmp ChangeLog
188
189# remove unpackaged files from the buildroot
190rm -f ${RPM_BUILD_ROOT}/%{base_name}.httpd.tmp
191
192
193%clean
194[ "${RPM_BUILD_ROOT}" != "/" ] && %{__rm} -rf ${RPM_BUILD_ROOT}
195
196
197%pretrans
198for l in zh-cn zh-tw; do
199  if [ -d /usr/share/squid/errors/$l -a ! -L /usr/share/squid/errors/$l ]; then
200    rm -rf /usr/share/squid/errors/$l
201  fi
202done
203
204%pre
205if ! getent group %{base_name} >/dev/null 2>&1; then
206  /usr/sbin/groupadd -g %{gid} %{base_name}
207fi
208
209if ! getent passwd %{base_name} >/dev/null 2>&1 ; then
210  /usr/sbin/useradd -g %{gid} -u %{uid} -d %{_localstatedir}/cache/%{base_name} -r -s /sbin/nologin %{base_name} >/dev/null 2>&1 || exit 1
211fi
212
213for i in %{_localstatedir}/log/%{base_name} %{_localstatedir}/cache/%{base_name} ; do
214        if [ -d $i ] ; then
215                for adir in `find $i -maxdepth 0 \! -user %{base_name}`; do
216                        chown -R %{base_name}:%{base_name} $adir
217                done
218        fi
219done
220
221exit 0
222
223%post
224%if %{with systemd}
225%systemd_post %{name}.service
226%else
227if ! /sbin/chkconfig %{base_name}; then
228  /sbin/chkconfig --add %{base_name}
229fi
230%endif
231
232%preun
233%if %{with systemd}
234%systemd_preun %{name}.service
235%else
236if [ "$1" -eq "0" -o -x /bin/systemctl ]; then
237  %{_initdir}/%{base_name} stop
238  rm -f %{_localstatedir}/log/%{base_name}/*
239  /sbin/chkconfig --del %{base_name}
240fi
241%endif
242
243%postun
244%if %{with systemd}
245%systemd_postun_with_restart %{name}.service
246%else
247if [ "$1" -gt 1 ]; then
248  %{_initdir}/%{base_name} condrestart
249fi
250%endif
251
252%triggerin -- samba-common
253/usr/sbin/usermod -a -G wbpriv %{base_name} >/dev/null 2>&1 || \
254    chgrp %{base_name} %{_localstatedir}/cache/samba/winbindd_privileged >/dev/null 2>&1 || :
255
256
257%files
258%defattr(-,root,root,-)
259# Directory
260%dir %{_sysconfdir}/%{base_name}/
261%dir %{_libdir}/%{base_name}
262%dir %{_datadir}/%{base_name}
263%attr(0750,%{base_name},%{base_name}) %dir %{_localstatedir}/log/%{base_name}
264%attr(0750,%{base_name},%{base_name}) %dir %{_localstatedir}/cache/%{base_name}
265# Program Files
266%attr(0755,root,root) %{_sbindir}/%{base_name}
267%attr(0755,root,root) %{_bindir}/*
268%attr(0755,root,root) %{_libdir}/%{base_name}/cachemgr.cgi
269%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/basic_*
270%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/digest_*
271%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/diskd
272%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/ext_*
273%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/helper*
274%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/log_*
275%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/negotiate_*
276%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/ntlm_*
277%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/security_*
278%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/storeid_*
279%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/unlinkd
280%attr(4750,root,%{base_name}) %{_libdir}/%{base_name}/url_*
281# Config Files
282%if %{with systemd}
283%attr(0644,root,root) %{_unitdir}/%{base_name}.service
284%dir %{_libexecdir}/%{base_name}
285%attr(0755,root,root) %{_libexecdir}/%{base_name}/*
286%else
287%attr(0755,root,root) %{_initdir}/%{base_name}
288%endif
289%attr(0640,root,%{base_name}) %config(noreplace) %{_sysconfdir}/%{base_name}/%{base_name}.conf
290%attr(0644,root,%{base_name}) %config(noreplace) %{_sysconfdir}/%{base_name}/cachemgr.conf
291%config(noreplace) %{_sysconfdir}/%{base_name}/mime.conf
292%config(noreplace) %{_sysconfdir}/%{base_name}/errorpage.css
293%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/httpd/conf.d/%{base_name}.conf
294%config(noreplace) %{_sysconfdir}/sysconfig/%{base_name}
295%config(noreplace) %{_sysconfdir}/pam.d/%{base_name}
296%config(noreplace) %{_sysconfdir}/logrotate.d/%{base_name}
297# Sample Config Files
298%config %{_sysconfdir}/%{base_name}/%{base_name}.conf.default
299%config %{_sysconfdir}/%{base_name}/cachemgr.conf.default
300%config %{_sysconfdir}/%{base_name}/mime.conf.default
301%config %{_sysconfdir}/%{base_name}/errorpage.css.default
302# Data Files
303%{_datadir}/%{base_name}/*
304# Document Files
305%license COPYING
306%doc README ChangeLog QUICKSTART
307%doc contrib/url-normalizer.pl contrib/user-agents.pl
308%{_mandir}/man8/*
309%{_mandir}/man1/*
310%{_sysconfdir}/%{base_name}/%{base_name}.conf.documented
311
312
313%changelog
314* Fri Sep 04 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.13-1
315- new upstream release.
316
317* Fri Jul 10 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.12-1
318- new upstream release.
319
320* Thu Apr 30 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.11-1
321- new upstream release.
322- added systemd support (disabled as default).
323
324* Mon Feb 10 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.10-1
325- new upstream release.
326
327* Mon Dec 16 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.9-1
328- new upstream release.
329- added "-Wno-cpp" to CFLAGS/CXXFLAGS for glibc >= 2.30.
330
331* Thu Aug 29 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.8-1
332- new upstream release.
333
334* Tue Nov 20 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.4-1
335- new upstream release.
336- update patches.
337
338* Tue Jan 09 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.27-2
339- enabled a build option: --enable-internal-dns.
340
341* Wed Sep 06 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.27-1
342- new upstream release.
343- updated Patch203.
344
345* Wed Jun 29 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.19-1
346- new upstream release.
347
348* Fri Apr 29 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.17-1
349- new upstream release.
350
351* Tue Apr 12 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.16-1
352- new upstream release.
353
354* Thu Jun 18 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.5-1
355- new upstream release.
356
357* Mon Jul  7 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.4.6-1
358- new upstream release.
359
360* Sat Jan 12 2013 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.23-1
361- new upstream release
362
363* Sat Dec 08 2012 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.22-1
364- new upstream release
365
366* Thu Nov 22 2012 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.21-1
367- new upstream release
368
369* Thu Aug 23 2012 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.20-1
370- new upstream release
371
372* Mon Oct 17 2011 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.16-1
373- new upstream release
374- add BuildRequires - libcap-devel
375
376* Fri Jun 10 2011 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.12-2
377- files in libexec moved to libdir
378
379* Tue May 17 2011 Masahiro INOUE <miyabi.-.inoue@nifty.com> 3.1.12-1
380- initial build for Vine Linux
381- This package is based on Vine Linux - squid-3.0.STABLE25-2
Note: See TracBrowser for help on using the repository browser.