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