Blob Blame History Raw
%define alpha        e
%define pound_user   pound
%define pound_group  pound
%define pound_home   %{_localstatedir}/lib/pound

Name:        Pound
Version:     2.4
Release:     0.2.%{alpha}%{?dist}
Summary:     Reverse proxy and load balancer

Group:       System Environment/Daemons
License:     GPLv3
URL:         http://www.apsis.ch/pound
BuildRoot:   %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)


BuildRequires: openssl-devel, pcre-devel

# tcmalloc doesn't exist on ppc yet (#238390)
%ifnarch ppc ppc64
BuildRequires: google-perftools-devel
%endif

Requires(pre):    %{_sbindir}/useradd
Requires(pre):    %{_sbindir}/groupadd
Requires(post):   /sbin/chkconfig
Requires(preun):  /sbin/chkconfig, /sbin/service
Requires(postun): /sbin/service

Source0:  http://www.apsis.ch/pound/%{name}-%{version}%{alpha}.tgz
Source1:  pound.init
Source2:  pound.cfg
Patch0:   pound-remove-owner.patch

%description
The Pound program is a reverse proxy, load balancer and
HTTPS front-end for Web server(s). Pound was developed
to enable distributing the load among several Web-servers
and to allow for a convenient SSL wrapper for those Web
servers that do not offer it natively. Pound is distributed
under the GPL - no warranty, it's free to use, copy and
give away

%prep
%setup -q -n %{name}-%{version}%{alpha}
%patch0 -p1 -b .remove-owner

%build
%configure
make %{?_smp_mflags}

%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}

%{__install} -d %{buildroot}%{pound_home}
%{__install} -p -D -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/pound
%{__install} -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pound.cfg 

mkdir -p %{buildroot}%{_sysconfdir}/pki/tls/certs
touch %{buildroot}%{_sysconfdir}/pki/tls/certs/pound.pem

%clean
rm -rf %{buildroot}

%pre
%{_sbindir}/groupadd -f -r %{pound_group}
id %{pound_user} >/dev/null 2>&1 || \
    %{_sbindir}/useradd -r -g %{pound_group} -d %{pound_home} -s /sbin/nologin \
    -c "Pound user" %{pound_user}

%post
/sbin/chkconfig --add pound

# generate dummy certificate
exec > /dev/null 2> /dev/null
if [ ! -f %{_sysconfdir}/pki/tls/certs/pound.pem ] ; then
pushd %{_sysconfdir}/pki/tls/certs
umask 077
cat << EOF | make pound.pem
--
SomeState
SomeCity
Pound Example Certificate
SomeOrganizationalUnit
localhost.localdomain
root@localhost.localdomain
EOF
chown root:pound pound.pem
chmod 640 pound.pem
popd
fi
exit 0

%preun
if [ $1 = 0 ]; then
    /sbin/service pound stop >/dev/null 2>&1
    /sbin/chkconfig --del pound
fi

%postun
if [ $1 -ge 1 ] ; then
    /sbin/service pound condrestart > /dev/null 2>&1 || :
fi

%files
%defattr(-,root,root,-)
%doc CHANGELOG FAQ GPL.txt README
%{_mandir}/man8/pound.8*
%{_mandir}/man8/poundctl.8*
%{_sbindir}/pound
%{_sbindir}/poundctl
%{_initrddir}/pound
%config(noreplace) %{_sysconfdir}/pound.cfg
%ghost %config(noreplace) %{_sysconfdir}/pki/tls/certs/pound.pem
%attr(-,%{pound_user},%{pound_group}) %dir %{pound_home}

%changelog
* Wed Dec 05 2007 Release Engineering <rel-eng at fedoraproject dot org> - 2.4-0.2
- Rebuild for deps

* Sun Dec 01 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.4.0-1e
- Update to experimental version 2.4e
* Thu Aug 16 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.4.0-1d
- Update to experimental version 2.4d
- Upstream changed license to GPLv3
* Wed Jun 04 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.4.0-1c
- Upstream released new version
* Sat May 26 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.4.0-2b
- Disable linking with tcmalloc on ppc (#238390)
* Fri May 25 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.4-0.1b
- Update to experimental version 2.4b
- Better handling of user creation
- Build with tcmalloc for increased performance
* Wed Apr 11 2007 Ruben Kerkhof <ruben@rubenkerkhof.com> 2.3-1
- Update to 2.3
* Thu Apr 05 2007 <ruben@rubenkerkhof.com> 2.2.8-1
- Sync with upstream
* Mon Mar 12 2007 <ruben@rubenkerkhof.com> 2.2.7-1
- Sync with upstream
* Sun Mar 04 2007 <ruben@rubenkerkhof.com> 2.2.6-1
- Sync with upstream
* Wed Feb 21 2007 <ruben@rubenkerkhof.com> 2.2.5-1
- Sync with upstream
* Sat Feb 10 2007 <ruben@rubenkerkhof.com> 2.2.4-1
- Sync with upstream
* Sat Jan 20 2007 <ruben@rubenkerkhof.com> 2.2.3-1
- Fix problems in bad 2.2.2 release
* Mon Jan 15 2007 <ruben@rubenkerkhof.com> 2.2.2-1
- Sync with upstream
* Wed Jan 03 2007 <ruben@rubenkerkhof.com> 2.2.1-1
- Sync with new beta release from upstream
* Sun Dec 17 2006 <ruben@rubenkerkhof.com> 2.2-2
- Fixed empty debuginfo rpm (bz 219942)
* Sat Dec 16 2006 <ruben@rubenkerkhof.com> 2.2-1
- Sync with upstream
* Sat Dec 09 2006 <ruben@rubenkerkhof.com> 2.1.8-1
- Sync with upstream
* Thu Dec 07 2006 <ruben@rubenkerkhof.com> 2.1.7-1
- Sync with upstream
* Wed Nov 08 2006 <ruben@rubenkerkhof.com> 2.1.6-2
- Changed hardcoded paths into rpmmacros
* Mon Nov 06 2006 <ruben@rubenkerkhof.com> 2.1.6-1
- Synced with upstream version
- Changed Summary
- Added an init script
- Added pound.cfg with an example configuration
- Added pound user and group
- A self-signed ssl certificate is created in %%post
* Fri Nov 03 2006 <ruben@rubenkerkhof.com> 2.1.5-1
- initial version