]> git.pld-linux.org Git - packages/dhcp.git/blob - dhcp.spec
96d18583d8b7249eaf9e9af965966a4a3d54986c
[packages/dhcp.git] / dhcp.spec
1 #
2 # Conditional build:
3 %bcond_with     ldap    # with support for ldap storage
4 #
5 %define _rc     rc3
6 Summary:        DHCP Server
7 Summary(es):    Servidor DHCP
8 Summary(pl):    Serwer DHCP
9 Summary(pt_BR): Servidor DHCP (Protocolo de configuração dinâmica de hosts)
10 Name:           dhcp
11 Version:        3.0.2
12 Release:        0.%{_rc}.1
13 Epoch:          3
14 Vendor:         ISC
15 License:        distributable
16 Group:          Networking/Daemons
17 Source0:        ftp://ftp.isc.org/isc/dhcp/%{name}-%{version}%{_rc}.tar.gz
18 # Source0-md5:  7c5dd4587d0236275ddf026750513131
19 Source1:        %{name}.init
20 Source2:        %{name}-relay.init
21 Source3:        %{name}-relay.sysconfig
22 Source4:        %{name}d.conf.sample
23 Source5:        %{name}.sysconfig
24 Patch0:         %{name}-if_buffer_size.patch
25 Patch1:         %{name}-ldap.patch
26 Patch2:         %{name}-ldap1.patch
27 Patch3:         %{name}-gcc343-fix.patch
28 URL:            http://www.isc.org/sw/dhcp/
29 BuildRequires:  groff
30 %{?with_ldap:BuildRequires:     openldap-devel}
31 PreReq:         rc-scripts >= 0.2.0
32 Requires(post,preun):   /sbin/chkconfig
33 Requires(post): fileutils
34 Provides:       dhcpd
35 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
37 %description
38 DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
39 individual devices on an IP network to get their own network
40 configuration information (IP address, subnetmask, broadcast address,
41 etc.) from a DHCP server. The overall purpose of DHCP is to make it
42 easier to administer a large network.
43
44 %description -l es
45 DHCP permite que hosts en una red TCP/IP soliciten y tengan sus
46 direcciones IP alocadas dinámicamente, permite también descubrir
47 información sobre la red en que están conectados. BOOTP provee una
48 funcionalidad similar, con ciertas restricciones. Este servidor
49 también las atiende.
50
51 %description -l pl
52 Serwer DHCP (Dynamic Host Configuration Protocol).
53
54 DHCP to protokó³ pozwalaj±cy urz±dzeniom pracuj±cym w sieci IP na
55 pobieranie ich konfiguracji IP (adresu, maski podsieci, adresu
56 rozg³oszeniowego itp.) z serwera DHCP. U³atwia on administrowanie
57 du¿ymi sieciami IP.
58
59 %description -l pt_BR
60 DHCP permite que hosts numa rede TCP/IP requisitem e tenham seus
61 endereços IP alocados dinamicamente, permite também descobrir
62 informações sobre a rede em que estão conectados. BOOTP provê uma
63 funcionalidade similar, com certas restrições. Este servidor também
64 atende aquelas requisições. Esta versão é ainda considerada um
65 software BETA.
66
67 %package client
68 Summary:        DHCP Client
69 Summary(pl):    Klient DHCP
70 Group:          Networking/Daemons
71 Requires(post): fileutils
72 Obsoletes:      pump
73 Obsoletes:      dhclient
74
75 %description client
76 Dynamic Host Configuration Protocol Client.
77
78 %description client -l pl
79 Klient DHCP (Dynamic Host Configuration Protocol).
80
81 %package relay
82 Summary:        DHCP Relay Agent
83 Summary(pl):    Agent przekazywania informacji DHCP
84 Group:          Networking/Daemons
85 PreReq:         rc-scripts >= 0.2.0
86 Requires(post,preun):   /sbin/chkconfig
87 Requires(post): fileutils
88
89 %description relay
90 Dhcp relay is a relay agent for DHCP packets. It is used on a subnet
91 with DHCP clients to "relay" their requests to a subnet that has a
92 DHCP server on it. Because DHCP packets can be broadcast, they will
93 not be routed off of the local subnet. The DHCP relay takes care of
94 this for the client.
95
96 %description relay -l pl
97 Agent przekazywania DHCP (Dynamic Host Configuration Protocol) miêdzy
98 podsieciami. Poniewa¿ komunikaty DHCP mog± byæ przekazywane w formie
99 rozg³oszeniowej, bez tego agenta nie zostan± przerutowane do innej
100 podsieci.
101
102 %package devel
103 Summary:        DHCP development includes and libs
104 Summary(pl):    Pliki nag³ówkowe i biblioteki dla oprogramowania DHCP
105 Group:          Development/Libraries
106
107 %description devel
108 Includes OMAPI and dhcptl libraries.
109
110 OMAPI is an programming layer designed for controlling remote
111 applications, and for querying them for their state. It is currently
112 used by the ISC DHCP server.
113
114 The dhcpctl set of functions provide an API that can be used to
115 communicate with and manipulate a running ISC DHCP server.
116
117 %description devel -l pl
118 Zawiera biblioteki OMAPI oraz dhcpctl.
119
120 OMAPI to warstwa programowa stworzona do kontroli zdalnych aplikacji i
121 odpytywania o ich stan. Aktualnie jest u¿ywana przez serwer ISC DHCP.
122
123 dhcpctl to zbiór funkcji tworz±cych API, które mo¿e byæ u¿ywane do
124 komunikacji z dzia³aj±cym serwerem ISC DHCP i jego kontroli.
125
126 %prep
127 %setup -q -n %{name}-%{version}%{_rc}
128 install %{SOURCE4} .
129 %patch0 -p1
130 %{?with_ldap:%patch1 -p1}
131 %{?with_ldap:%patch2 -p1}
132 %patch3 -p1
133
134 cd doc
135 echo "dhcpd complies with the following RFCs:" > rfc-compliance
136 ls rfc*.txt >> rfc-compliance
137 rm -f rfc*.txt
138 cd ..
139
140 %build
141 # Notice: this is not autoconf configure!!!!!!!
142 #         do not change it to %%configure
143 ./configure
144
145 %{__make} \
146         COPTS="%{rpmcflags} \
147         -D_PATH_DHCPD_DB=\\\"/var/lib/%{name}/dhcpd.leases\\\" \
148         -D_PATH_DHCLIENT_DB=\\\"/var/lib/%{name}/dhclient.leases\\\"" \
149         DEBUG="" VARDB="/var/lib/%{name}"
150
151 %install
152 rm -rf $RPM_BUILD_ROOT
153 install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_bindir},%{_mandir}/man{5,8}} \
154         $RPM_BUILD_ROOT{/var/lib/%{name},%{_sysconfdir}/{rc.d/init.d,sysconfig}}
155
156 %{__make} install \
157         DESTDIR=$RPM_BUILD_ROOT \
158         CLIENTBINDIR=/sbin \
159         BINDIR=%{_sbindir} \
160         LIBDIR=%{_libdir} \
161         INCDIR=%{_includedir} \
162         ADMMANDIR=%{_mandir}/man8 \
163         ADMMANEXT=.8 \
164         FFMANDIR=%{_mandir}/man5 \
165         LIBMANDIR=%{_mandir}/man3 \
166         LIBMANEXT=.3 \
167         USRMANDIR=%{_mandir}/man1 \
168         USRMANEXT=.1 \
169         VARDB=/var/lib/%{name} \
170         FFMANEXT=.5
171
172 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcpd
173 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcp-relay
174 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/dhcp-relay
175 install %{SOURCE4} $RPM_BUILD_ROOT/etc/dhcpd.conf
176 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/dhcpd
177
178 mv $RPM_BUILD_ROOT%{_mandir}/man3/omshell.3 \
179         $RPM_BUILD_ROOT%{_mandir}/man1/omshell.1
180
181 install client/scripts/linux $RPM_BUILD_ROOT%{_sbindir}/dhclient-script
182
183 touch $RPM_BUILD_ROOT/var/lib/%{name}/{dhcpd,dhclient}.leases
184
185 %clean
186 rm -rf $RPM_BUILD_ROOT
187
188 %post
189 /sbin/chkconfig --add dhcpd
190 touch /var/lib/%{name}/dhcpd.leases
191
192 if [ ! -d /var/lib/dhcp ]; then
193         install -d /var/lib/dhcp
194 fi
195
196 if [ -f /var/lock/subsys/dhcpd ]; then
197         /etc/rc.d/init.d/dhcpd restart >&2
198 else
199         echo "Run \"/etc/rc.d/init.d/dhcpd start\" to start dhcpd daemon."
200 fi
201
202 %preun
203 if [ "$1" = "0" ];then
204         if [ -f /var/lock/subsys/dhcpd ]; then
205                 /etc/rc.d/init.d/dhcpd stop >&2
206         fi
207         /sbin/chkconfig --del dhcpd
208 fi
209
210 %post client
211 if [ -d /var/lib/dhcp ]; then
212         install -d /var/lib/dhcp
213 fi
214
215 %post relay
216 /sbin/chkconfig --add dhcp-relay
217 if [ -f /var/lock/subsys/dhcrelay ]; then
218         mv -f /var/lock/subsys/dhcrelay /var/lock/subsys/dhcp-relay
219 fi
220 if [ -f /var/lock/subsys/dhcp-relay ]; then
221         /etc/rc.d/init.d/dhcp-relay restart >&2
222 else
223         echo "Run \"/etc/rc.d/init.d/dhcp-relay start\" to start dhcrelay daemon."
224 fi
225
226 %preun relay
227 if [ "$1" = "0" ];then
228         if [ -f /var/lock/subsys/dhcp-relay ]; then
229                 /etc/rc.d/init.d/dhcp-relay stop >&2
230         fi
231         /sbin/chkconfig --del dhcp-relay
232 fi
233
234 %triggerpostun -- dhcp < 3.0
235 if [ `grep ddns-update-style /etc/dhcpd.conf` = "" ]; then
236         umask 027
237         echo "ddns-update-style none;" > /etc/dhcpd.conf.tmp
238         echo "" >> /etc/dhcpd.conf.tmp
239         cat /etc/dhcpd.conf >>/etc/dhcpd.conf.tmp
240         mv -f /etc/dhcpd.conf.tmp /etc/dhcpd.conf
241 fi
242
243 %files
244 %defattr(644,root,root,755)
245 %doc doc/* README RELNOTES dhcpd.conf.sample
246 %{?with_ldap:%doc contrib/*}
247 %{_mandir}/man1/*
248 %{_mandir}/man5/dhcp*
249 %{_mandir}/man8/dhcp*
250 %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/dhcpd
251 %config(noreplace) %verify(not size mtime md5) /etc/dhcpd.conf
252 %attr(755,root,root) %{_bindir}/*
253 %attr(755,root,root) %{_sbindir}/dhcpd
254 %attr(754,root,root) /etc/rc.d/init.d/dhcpd
255 %attr(750,root,root) %dir /var/lib/%{name}
256 %ghost /var/lib/%{name}/dhcpd.leases
257
258 %files client
259 %defattr(644,root,root,755)
260 %attr(755,root,root) /sbin/dhclient
261 %attr(755,root,root) /sbin/dhclient-script
262 %{_mandir}/man[58]/dhclient*
263 %ghost /var/lib/%{name}/dhclient.leases
264
265 %files relay
266 %defattr(644,root,root,755)
267 %{_mandir}/man8/dhcrelay*
268 %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/dhcp-relay
269 %attr(755,root,root) %{_sbindir}/dhcrelay
270 %attr(754,root,root) /etc/rc.d/init.d/dhcp-relay
271
272 %files devel
273 %defattr(644,root,root,755)
274 %{_mandir}/man3/*
275 %{_libdir}/*.a
276 %{_includedir}/*
This page took 0.037905 seconds and 3 git commands to generate.