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