Summary: SQUID Internet Object Cache Name: squid Version: 2.2.PRE2 Release: 3 Copyright: GPL Group: Networking/Daemons Source: http://squid.nlanr.net/Squid/v2/squid-%{version}-src.tar.gz Source1: squid-faq-19981218.tar.gz Source2: squid.init Source3: squid.logrotate Patch0: squid-2.1-make.patch Patch1: squid-2.1-config.patch BuildRoot: /var/tmp/squid-root Prereq: /sbin/chkconfig logrotate Obsoletes: squid-novm %description Squid is a high-performance proxy caching server for web clients, supporting FTP, gopher, and HTTP data objects. Unlike traditional caching software, Squid handles all requests in a single, non-blocking, I/O-driven process. Squid keeps meta data and especially hot objects cached in RAM, caches DNS lookups, supports non-blocking DNS lookups, and implements negative caching of failed requests. Squid supports SSL, extensive access controls, and full request logging. By using the lightweight Internet Cache Protocol, Squid caches can be arranged in a hierarchy or mesh for additional bandwidth savings. Squid consists of a main server program squid, a Domain Name System lookup program dnsserver, a program for retrieving FTP data ftpget, and some management and client tools. When squid starts up, it spawns a configurable number of dnsserver processes, each of which can perform a single, blocking Domain Name System (DNS) lookup. This reduces the amount of time the cache waits for DNS lookups. Squid is derived from the ARPA-funded Harvest project. %prep %setup -q -a 1 %patch0 -p1 -b .make %patch1 -p1 -b .config %build CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr \ --exec_prefix=/usr --bindir=/usr/sbin --libexecdir=/usr/lib/squid \ --localstatedir=/var --sysconfdir=/etc/squid --enable-icmp \ --enable-poll --enable-snmp make -f makefile %install rm -rf $RPM_BUILD_ROOT make install \ prefix=$RPM_BUILD_ROOT/usr \ sysconfdir=$RPM_BUILD_ROOT/etc/squid \ localstatedir=$RPM_BUILD_ROOT/var \ bindir=$RPM_BUILD_ROOT/usr/sbin \ libexecdir=$RPM_BUILD_ROOT/usr/lib/squid install -m 4750 src/pinger $RPM_BUILD_ROOT/usr/lib/squid cd errors rm -rf $RPM_BUILD_ROOT/etc/squid/errors mkdir -p $RPM_BUILD_ROOT/usr/lib/squid/errors for i in *; do if [ -d $i ]; then mkdir -p $RPM_BUILD_ROOT/usr/lib/squid/errors/$i install -m 644 $i/* $RPM_BUILD_ROOT/usr/lib/squid/errors/$i fi done ln -s /usr/lib/squid/errors/English $RPM_BUILD_ROOT/etc/squid/errors mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d mkdir -p $RPM_BUILD_ROOT/home/httpd/cgi-bin install -m 755 $RPM_SOURCE_DIR/squid.init $RPM_BUILD_ROOT/etc/rc.d/init.d/squid install -m 644 $RPM_SOURCE_DIR/squid.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/squid mkdir -p $RPM_BUILD_ROOT/home/httpd/cgi-bin mv $RPM_BUILD_ROOT/usr/lib/squid/cachemgr.cgi $RPM_BUILD_ROOT/home/httpd/cgi-bin/ mkdir -p $RPM_BUILD_ROOT/var/log/squid mkdir -p $RPM_BUILD_ROOT/var/spool/squid strip $RPM_BUILD_ROOT/usr/bin/* $RPM_BUILD_ROOT/usr/sbin/* || : strip $RPM_BUILD_ROOT/home/httpd/cgi-bin/* %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %config /etc/squid/squid.conf %config /etc/squid/mime.conf %config /etc/squid/mib.txt /etc/squid/squid.conf.default /etc/squid/mime.conf.default /etc/squid/errors /usr/lib/squid/errors /usr/lib/squid/icons /usr/lib/squid/dnsserver /usr/lib/squid/unlinkd %attr(4750,root,nobody) /usr/lib/squid/pinger /usr/sbin/squid /usr/sbin/client /home/httpd/cgi-bin/cachemgr.cgi %config /etc/rc.d/init.d/squid %config /etc/logrotate.d/squid %doc faq/* README ChangeLog QUICKSTART doc/* %doc contrib/url-normalizer.pl contrib/rredir.* contrib/user-agents.pl %attr(750,nobody,nobody) %dir /var/log/squid %attr(750,nobody,nobody) %dir /var/spool/squid %post /sbin/chkconfig --add squid case "$LANG" in bg*) DIR=Bulgarian ;; cs*) DIR=Czech ;; nl*) DIR=Dutch ;; ea*) DIR=Estonian ;; fr*) DIR=French ;; de*) DIR=German ;; en*) DIR=English ;; hu*) DIR=Hungarian ;; it*) DIR=Italian ;; pl*) DIR=Polish ;; pt*) DIR=Portuguese ;; ru*) DIR=Russian-1251 ;; es*) DIR=Spanish ;; tr*) DIR=Turkish ;; *) DIR=English ;; esac ln -snf /usr/lib/squid/errors/$DIR /etc/squid/errors %postun if [ $1 = 0 ] ; then /sbin/chkconfig --del squid fi %changelog * Wed Feb 10 1999 Bill Nottingham - update to 2.2.PRE2 * Wed Dec 30 1998 Bill Nottingham - cache & log dirs shouldn't be world readable - remove preun script (leave logs & cache @ uninstall) * Tue Dec 29 1998 Bill Nottingham - fix initscript to get cache_dir correct * Fri Dec 18 1998 Bill Nottingham - update to 2.1.PATCH2 - merge in some changes from RHCN version * Sat Oct 10 1998 Cristian Gafton - strip binaries - version 1.1.22 * Sun May 10 1998 Cristian Gafton - don't make packages conflict with each other... * Sat May 02 1998 Cristian Gafton - added a proxy auth patch from Alex deVries - fixed initscripts * Thu Apr 09 1998 Cristian Gafton - rebuilt for Manhattan * Fri Mar 20 1998 Cristian Gafton - upgraded to 1.1.21/1.NOVM.21 * Mon Mar 02 1998 Cristian Gafton - updated the init script to use reconfigure option to restart squid instead of shutdown/restart (both safer and quicker) * Sat Feb 07 1998 Cristian Gafton - upgraded to 1.1.20 - added the NOVM package and tryied to reduce the mess in the spec file * Wed Jan 7 1998 Cristian Gafton - first build against glibc - patched out the use of setresuid(), which is available only on kernels 2.1.44 and later