]> git.pld-linux.org Git - packages/boa.git/blob - boa.spec
- BR: automake
[packages/boa.git] / boa.spec
1 #
2 # Conditional build:
3 %bcond_without  ipv6    # IPv4-only version (doesn't require IPv6 in kernel)
4 #
5 Summary:        Boa high speed HTTP server
6 Summary(pl):    Boa - szybki serwer HTTP
7 Name:           boa
8 Version:        0.94.14
9 %define _rc     rc17
10 Release:        0.%{_rc}.3
11 Epoch:          1
12 License:        GPL v2
13 Group:          Networking/Daemons
14 Source0:        http://www.boa.org/%{name}-%{version}%{_rc}.tar.gz
15 # Source0-md5:  d668ef85b3d2df3dc9832555fdce8b70
16 Source1:        %{name}.init
17 Patch0:         %{name}-PLD.patch
18 Patch1:         %{name}-logrotate.patch
19 URL:            http://www.boa.org/
20 BuildRequires:  autoconf
21 BuildRequires:  automake
22 BuildRequires:  flex
23 BuildRequires:  sgml-tools
24 PreReq:         rc-scripts
25 Requires(pre):  /usr/bin/getgid
26 Requires(pre):  /bin/id
27 Requires(pre):  /usr/sbin/groupadd
28 Requires(pre):  /usr/sbin/useradd
29 Requires(postun):       /usr/sbin/groupdel
30 Requires(postun):       /usr/sbin/userdel
31 Requires(post,preun):   /sbin/chkconfig
32 Provides:       httpd
33 Provides:       webserver
34 Obsoletes:      apache
35 Obsoletes:      httpd
36 Obsoletes:      thttpd
37 Obsoletes:      webserver
38 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39
40 %define         _sysconfdir     /etc/httpd
41
42 %description
43 A high speed, lightweight web server (HTTP protocol). Based on direct
44 use of the select(2) system call, it internally multiplexes all
45 connections without forking, for maximum speed and minimum system
46 resource use.
47
48 %description -l pl
49 Niezwykle szybki i wysoko wydajny serwer WWW (protokó³ HTTP). Bazuje
50 na bezpo¶rednim u¿yciu funkcji systemowej select(2) dziêki czemu mo¿e
51 obs³ugiwaæ wiele po³±czeñ równocze¶nie bez fork()owania co w efekcie
52 znacznie zwiêksza szybko¶æ dzia³ania oraz zmniejsza zu¿ycie zasobów
53 systemowych.
54
55 %prep
56 %setup -q -n %{name}-%{version}%{_rc}
57 cp examples/boa.conf .
58 %patch0 -p0
59 %patch1 -p0
60
61 %build
62 cp -f /usr/share/automake/config.sub .
63 CFLAGS="%{rpmcflags} %{?with_ipv6:-DINET6} -DSERVER_ROOT='\"/etc/httpd\"'"
64 %{__autoconf}
65 %configure
66 %{__make}
67 %{__make} -C docs boa.html
68
69 %install
70 rm -rf $RPM_BUILD_ROOT
71 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d/ \
72         $RPM_BUILD_ROOT/var/log/httpd \
73         $RPM_BUILD_ROOT/srv/httpd/{cgi-bin,html} \
74         $RPM_BUILD_ROOT{%{_sbindir},%{_sysconfdir}/conf,%{_mandir}/man8} \
75         $RPM_BUILD_ROOT/etc/logrotate.d
76
77 install src/{boa,boa_indexer} $RPM_BUILD_ROOT%{_sbindir}/
78
79 install src/*.pl $RPM_BUILD_ROOT/srv/httpd/cgi-bin/
80 install examples/* $RPM_BUILD_ROOT/srv/httpd/cgi-bin/
81 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
82
83 install boa.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
84 install contrib/redhat/boa.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
85
86 install docs/boa.8 $RPM_BUILD_ROOT%{_mandir}/man8/
87
88 touch $RPM_BUILD_ROOT/var/log/httpd/{access_log,agent_log,error_log,referer_log}
89
90 %clean
91 rm -rf $RPM_BUILD_ROOT
92
93 %pre
94 if [ -n "`getgid http`" ]; then
95         if [ "`getgid http`" != "51" ]; then
96                 echo "Error: group http doesn't have gid=51. Correct this before installing boa." 1>&2
97                 exit 1
98         fi
99 else
100         echo "Creating group http GID=51"
101         /usr/sbin/groupadd -g 51 -r -f http
102 fi
103 if [ -n "`id -u http 2>/dev/null`" ]; then
104         if [ "`id -u http`" != "51" ]; then
105                 echo "Error: user http doesn't have uid=51. Correct this before installing boa." 1>&2
106                 exit 1
107         fi
108 else
109         echo "Creating user http UID=51"
110         /usr/sbin/useradd -u 51 -r -d /srv/httpd -s /bin/false -c "HTTP User" -g http http 1>&2
111 fi
112
113 %postun
114 if [ "$1" = "0" ]; then
115         echo "Removing user http UID=51"
116         /usr/sbin/userdel http > /dev/null 2>&1
117         echo "Removing group http GID=51"
118         /usr/sbin/groupdel http > /dev/null 2>&1
119 fi
120
121 %post
122 /sbin/chkconfig --add boa
123 if [ -f /var/lock/subsys/boa ]; then
124         /etc/rc.d/init.d/boa restart 1>&2
125 else
126         echo "Run \"/etc/rc.d/init.d/boa start\" to start boa http daemon."
127 fi
128
129 %preun
130 if [ "$1" = "0" ]; then
131         if [ -f /var/lock/subsys/boa ]; then
132                 /etc/rc.d/init.d/boa stop 1>&2
133         fi
134         /sbin/chkconfig --del boa
135 fi
136
137 %files
138 %defattr(644,root,root,755)
139 %doc README ChangeLog docs/*.html docs/*.png
140 %attr(750,root,root) %dir %{_sysconfdir}
141 %attr(640,root,root) %config(noreplace) %{_sysconfdir}/*
142 %attr(640,root,root) %config(noreplace) /etc/logrotate.d/%{name}
143 %dir /srv/httpd
144 %attr(755,root,root) /srv/httpd/html
145 %attr(755,root,root) /srv/httpd/cgi-bin
146 %attr(750,root,root) %dir /var/log/httpd/
147 %attr(640,root,root) %ghost /var/log/httpd/*
148 %attr(755,root,root) %{_sbindir}/*
149 %attr(754,root,root) /etc/rc.d/init.d/%{name}
150 %{_mandir}/man8/*
This page took 0.054057 seconds and 4 git commands to generate.