]> git.pld-linux.org Git - packages/dhcp.git/blame - dhcp.spec
- updated to 4.0.0; handle ipv6, too
[packages/dhcp.git] / dhcp.spec
CommitLineData
fa424e73
JB
1#
2# Conditional build:
967af251 3%bcond_without ldap # without support for ldap storage
fa424e73 4#
8dc004f7 5Summary: DHCP Server
6e8d2260
ER
6Summary(es.UTF-8): Servidor DHCP
7Summary(pl.UTF-8): Serwer DHCP
8Summary(pt_BR.UTF-8): Servidor DHCP (Protocolo de configuração dinâmica de hosts)
cd3ce1e4 9Name: dhcp
6e6494f3
AM
10Version: 4.0.0
11# don't put int release until all patches are updated/ported(!)
12Release: 0.1
9598ee90 13Epoch: 4
6acbb058 14License: MIT
cd3ce1e4 15Group: Networking/Daemons
cab047e0 16Source0: ftp://ftp.isc.org/isc/dhcp/%{name}-%{version}.tar.gz
6e6494f3 17# Source0-md5: 31d79b27ce4a94089a0b9ce7f72307fa
a4dfcb55 18Source1: %{name}.init
6e6494f3
AM
19Source2: %{name}6.init
20Source3: %{name}-relay.init
21Source4: %{name}.sysconfig
22Source5: %{name}-relay.sysconfig
23Source6: %{name}-libdhcp4client.pc
24Source7: %{name}-dhcp4client.h
25Source8: %{name}-libdhcp4client.make
26Source9: %{name}-libdhcp_control.h
03a6f6c6 27Source10: %{name}.schema
eda193cb 28Patch0: %{name}-dhclient.script.patch
03a6f6c6
AM
29Patch1: %{name}-release-by-ifup.patch
30# from fedora 9-dev
eda193cb 31Patch2: %{name}-ldap.patch
5bf1b3cd
JR
32Patch3: %{name}-client-script-redhat.patch
33Patch4: %{name}-3.0.3-x-option.patch
03a6f6c6 34
5bf1b3cd
JR
35Patch6: %{name}-arg-concat.patch
36Patch7: %{name}-split-VARDB.patch
01b31b42 37Patch8: %{name}-timeouts.patch
8cf9160b 38Patch9: %{name}-options.patch
01b31b42 39Patch10: %{name}-libdhcp4client.patch
8cf9160b 40Patch11: %{name}-prototypes.patch
5ea0fa25 41URL: http://www.isc.org/sw/dhcp/
03a6f6c6
AM
42BuildRequires: autoconf
43BuildRequires: automake
44BuildRequires: libtool
bca716bd 45BuildRequires: groff
01b31b42 46%{?with_ldap:BuildRequires: openldap-devel}
5bf1b3cd 47%{?with_ldap:BuildRequires: openssl-devel}
967af251
JR
48BuildRequires: rpmbuild(macros) >= 1.304
49Requires(post): coreutils
ac30bae3
ER
50Requires(post,preun): /sbin/chkconfig
51Requires: rc-scripts >= 0.2.0
73612d9c 52Provides: dhcpd
bf74a63f 53BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
cd3ce1e4 54
6e6494f3 55%define _sbindir /sbin
967af251
JR
56%define schemadir /usr/share/openldap/schema
57
cd3ce1e4 58%description
0770f14a 59DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
37bec083 60individual devices on an IP network to get their own network
61configuration information (IP address, subnetmask, broadcast address,
62etc.) from a DHCP server. The overall purpose of DHCP is to make it
63easier to administer a large network.
0770f14a 64
39cd54ba 65%description -l es.UTF-8
1f522308 66DHCP permite que hosts en una red TCP/IP soliciten y tengan sus
39cd54ba
JR
67direcciones IP alocadas dinámicamente, permite también descubrir
68información sobre la red en que están conectados. BOOTP provee una
1f522308 69funcionalidad similar, con ciertas restricciones. Este servidor
39cd54ba 70también las atiende.
1f522308 71
39cd54ba 72%description -l pl.UTF-8
b7cc5fa2 73Serwer DHCP (Dynamic Host Configuration Protocol).
cd3ce1e4 74
39cd54ba 75DHCP to protokół pozwalający urządzeniom pracującym w sieci IP na
cd42af6b 76pobieranie ich konfiguracji IP (adresu, maski podsieci, adresu
39cd54ba
JR
77rozgłoszeniowego itp.) z serwera DHCP. Ułatwia on administrowanie
78dużymi sieciami IP.
cd42af6b 79
39cd54ba 80%description -l pt_BR.UTF-8
1f522308 81DHCP permite que hosts numa rede TCP/IP requisitem e tenham seus
39cd54ba
JR
82endereços IP alocados dinamicamente, permite também descobrir
83informações sobre a rede em que estão conectados. BOOTP provê uma
84funcionalidade similar, com certas restrições. Este servidor também
85atende aquelas requisições. Esta versão é ainda considerada um
1f522308 86software BETA.
87
b62eae95 88%package -n openldap-schema-dhcp
967af251
JR
89Summary: LDAP Schema for DHCP Server
90Summary(pl.UTF-8): Schemat LDAP dla serwera DHCP
91Group: Networking/Daemons
92Requires(post,postun): sed >= 4.0
93Requires: openldap-servers
94
b62eae95 95%description -n openldap-schema-dhcp
967af251
JR
96This package contains LDAPv3 schema for use with the DHCP Server.
97
b62eae95 98%description -n openldap-schema-dhcp -l pl.UTF-8
967af251
JR
99Ten pakiet zawiera schemat LDAPv3 do używania z serwerem DHCP.
100
3bb4bab9 101%package client
102Summary: DHCP Client
6e8d2260 103Summary(pl.UTF-8): Klient DHCP
3bb4bab9 104Group: Networking/Daemons
eda193cb
JR
105Requires: coreutils
106Requires: iproute2
107Requires: net-tools
dd3090a5 108Obsoletes: dhclient
3bb4bab9 109
110%description client
0770f14a 111Dynamic Host Configuration Protocol Client.
3bb4bab9 112
39cd54ba 113%description client -l pl.UTF-8
0770f14a 114Klient DHCP (Dynamic Host Configuration Protocol).
3bb4bab9 115
45ef0575 116%package relay
117Summary: DHCP Relay Agent
6e8d2260 118Summary(pl.UTF-8): Agent przekazywania informacji DHCP
45ef0575 119Group: Networking/Daemons
967af251 120Requires(post): coreutils
ac30bae3
ER
121Requires(post,preun): /sbin/chkconfig
122Requires: rc-scripts >= 0.2.0
45ef0575 123
124%description relay
a4dfcb55 125Dhcp relay is a relay agent for DHCP packets. It is used on a subnet
126with DHCP clients to "relay" their requests to a subnet that has a
127DHCP server on it. Because DHCP packets can be broadcast, they will
128not be routed off of the local subnet. The DHCP relay takes care of
129this for the client.
130
39cd54ba
JR
131%description relay -l pl.UTF-8
132Agent przekazywania DHCP (Dynamic Host Configuration Protocol) między
133podsieciami. Ponieważ komunikaty DHCP mogą być przekazywane w formie
134rozgłoszeniowej, bez tego agenta nie zostaną przerutowane do innej
cd42af6b 135podsieci.
45ef0575 136
1d526f5b
JK
137%package devel
138Summary: DHCP development includes and libs
6e8d2260 139Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki dla oprogramowania DHCP
1d526f5b
JK
140Group: Development/Libraries
141
142%description devel
143Includes OMAPI and dhcptl libraries.
144
145OMAPI is an programming layer designed for controlling remote
146applications, and for querying them for their state. It is currently
147used by the ISC DHCP server.
148
149The dhcpctl set of functions provide an API that can be used to
150communicate with and manipulate a running ISC DHCP server.
151
39cd54ba 152%description devel -l pl.UTF-8
1d526f5b
JK
153Zawiera biblioteki OMAPI oraz dhcpctl.
154
155OMAPI to warstwa programowa stworzona do kontroli zdalnych aplikacji i
39cd54ba 156odpytywania o ich stan. Aktualnie jest używana przez serwer ISC DHCP.
1d526f5b 157
39cd54ba
JR
158dhcpctl to zbiór funkcji tworzących API, które może być używane do
159komunikacji z działającym serwerem ISC DHCP i jego kontroli.
1d526f5b 160
c494ae74
PZ
161%package -n libdhcp4client
162Summary: The DHCP client in a library for invocation by other programs
163Summary(pl.UTF-8): Klient DHCP w postaci biblioteki do wykorzystania w innych programach
164Group: Development/Libraries
165
166%description -n libdhcp4client
167Provides the client for the DHCP protocol.
168
169%description -n libdhcp4client -l pl.UTF-8
170Ten pakiet zawiera klienta protokołu DHCP.
171
172%package -n libdhcp4client-devel
173Summary: Header files for development with the DHCP client library
174Summary(pl.UTF-8): Pliki nagłówkowe do programowania z użyciem biblioteki klienckiej DHCP
175Group: Development/Libraries
6acbb058 176License: GPL v2+
c494ae74
PZ
177Requires: libdhcp4client = %{epoch}:%{version}-%{release}
178
179%description -n libdhcp4client-devel
180Header files for development with the DHCP client library.
181
182%description -n libdhcp4client-devel -l pl.UTF-8
183Pliki nagłówkowe do programowania z użyciem biblioteki klienckiej DHCP.
184
185%package -n libdhcp4client-static
186Summary: Static DHCP client library
187Summary(pl.UTF-8): Statyczna biblioteka kliencka DHCP
188Group: Development/Libraries
189Requires: libdhcp4client-devel = %{epoch}:%{version}-%{release}
190
191%description -n libdhcp4client-static
192Static DHCP client library.
193
194%description -n libdhcp4client-static -l pl.UTF-8
195Statyczna biblioteka kliencka DHCP.
196
cd3ce1e4 197%prep
cab047e0 198%setup -q
6e6494f3
AM
199# CHECK ME
200#%patch0 -p1
03a6f6c6 201%patch1 -p1
5deae13f 202%{?with_ldap:%patch2 -p1}
eda193cb 203# These two patches are required for dhcdbd to function
5bf1b3cd 204%patch3 -p1
03a6f6c6 205# CHECK ME, NO IDEA
6e6494f3 206#%patch4 -p1
74b36fbe 207%patch6 -p1
03a6f6c6 208# CHECK ME, NO IDEA
6e6494f3 209#%patch7 -p1
c494ae74 210%patch8 -p1
6e6494f3 211# CHECK ME
03a6f6c6
AM
212%patch9 -p1
213%patch10 -p1
8cf9160b 214%patch11 -p1
c494ae74
PZ
215
216sed 's/@DHCP_VERSION@/'%{version}'/' < %{SOURCE5} > libdhcp4client.pc
217mkdir -p libdhcp4client
6e6494f3
AM
218cp %{SOURCE7} libdhcp4client/dhcp4client.h
219cp %{SOURCE8} libdhcp4client/Makefile.dist
220cp %{SOURCE9} includes/isc-dhcp/libdhcp_control.h
4b8d2654 221
0770f14a 222%build
03a6f6c6
AM
223%{__libtoolize}
224%{__aclocal}
225%{__autoconf}
226%{__autoheader}
227%{__automake}
228CFLAGS="%{rpmcflags} -fPIC"
6e6494f3
AM
229%configure \
230 --enable-dhcpv6 \
231 --with-srv-lease-file="/var/lib/%{name}/dhcpd.leases" \
232 --with-cli-lease-file="/var/lib/dhclient/dhclient.leases"
233%{__make}
cd3ce1e4 234
235%install
236rm -rf $RPM_BUILD_ROOT
6e6494f3 237install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig},%{schemadir},%{_pkgconfigdir},/var/lib/{%{name},dhclient}}
cd3ce1e4 238
771aee8c 239%{__make} install \
6e6494f3 240 DESTDIR=$RPM_BUILD_ROOT
967af251 241
cd3ce1e4 242install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcpd
6e6494f3
AM
243install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcpd6
244install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/dhcp-relay
245install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/dhcpd
246install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/dhcp-relay
cd3ce1e4 247
967af251
JR
248install server/dhcpd.conf $RPM_BUILD_ROOT%{_sysconfdir}
249%if %{with ldap}
03a6f6c6 250install %{SOURCE10} $RPM_BUILD_ROOT%{schemadir}
967af251 251%endif
1d526f5b 252
967af251 253touch $RPM_BUILD_ROOT%{_sysconfdir}/dhclient.conf
9da55644 254
b0caeee3
JR
255touch $RPM_BUILD_ROOT/var/lib/%{name}/dhcpd.leases
256touch $RPM_BUILD_ROOT/var/lib/dhclient/dhclient.leases
3bb4bab9 257
c494ae74
PZ
258install libdhcp4client.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libdhcp4client.pc
259
82fbb222
JB
260%clean
261rm -rf $RPM_BUILD_ROOT
262
cd3ce1e4 263%post
3a01d42c 264/sbin/chkconfig --add dhcpd
6e6494f3 265/sbin/chkconfig --add dhcpd6
d6a3364d 266touch /var/lib/%{name}/dhcpd.leases
30c45ada 267%service dhcpd restart "dhcpd daemon"
6e6494f3 268%service dhcpd6 restart "dhcpd IPv6 daemon"
cd3ce1e4 269
208108e2
JB
270%preun
271if [ "$1" = "0" ];then
30c45ada 272 %service dhcpd stop
6e6494f3 273 %service dhcpd6 stop
208108e2 274 /sbin/chkconfig --del dhcpd
6e6494f3 275 /sbin/chkconfig --del dhcpd6
208108e2
JB
276fi
277
6acbb058
JB
278%triggerpostun -- dhcp < 3.0
279if [ "`grep ddns-update-style /etc/dhcpd.conf`" = "" ]; then
280 umask 027
281 echo "ddns-update-style none;" > /etc/dhcpd.conf.tmp
282 echo "" >> /etc/dhcpd.conf.tmp
283 cat /etc/dhcpd.conf >>/etc/dhcpd.conf.tmp
284 mv -f /etc/dhcpd.conf.tmp /etc/dhcpd.conf
285fi
286
b62eae95 287%post -n openldap-schema-dhcp
967af251
JR
288%openldap_schema_register %{schemadir}/dhcp.schema -d core
289%service -q ldap restart
290
b62eae95 291%postun -n openldap-schema-dhcp
967af251
JR
292if [ "$1" = "0" ]; then
293 %openldap_schema_unregister %{schemadir}/dhcp.schema
294 %service -q ldap restart
295fi
296
208108e2 297%post client
b0caeee3
JR
298if [ -f /var/lib/dhcp/dhclient.leases.rpmsave ]; then
299 mv /var/lib/dhcp/dhclient.leases.rpmsave /var/lib/dhclient/dhclient.leases
208108e2
JB
300fi
301
7940deed 302%post relay
3a01d42c 303/sbin/chkconfig --add dhcp-relay
3a01d42c 304if [ -f /var/lock/subsys/dhcrelay ]; then
30c45ada 305 mv -f /var/lock/subsys/{dhcrelay,dhcp-relay}
3a01d42c 306fi
30c45ada 307%service dhcp-relay restart "dhcrelay daemon"
7940deed 308
7940deed 309%preun relay
3a01d42c 310if [ "$1" = "0" ];then
30c45ada 311 %service dhcp-relay stop
3a01d42c 312 /sbin/chkconfig --del dhcp-relay
313fi
7940deed 314
6acbb058
JB
315%post -n libdhcp4client -p /sbin/ldconfig
316%postun -n libdhcp4client -p /sbin/ldconfig
b7f7d94b 317
cd3ce1e4 318%files
319%defattr(644,root,root,755)
6acbb058 320%doc doc/* README RELNOTES server/dhcpd.conf LICENSE contrib/ms2isc
ac30bae3
ER
321%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dhcpd
322%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dhcpd.conf
967af251 323%attr(755,root,root) %{_bindir}/omshell
cd3ce1e4 324%attr(755,root,root) %{_sbindir}/dhcpd
d3d402da 325%attr(754,root,root) /etc/rc.d/init.d/dhcpd
6e6494f3 326%attr(754,root,root) /etc/rc.d/init.d/dhcpd6
d6a3364d
JR
327%attr(750,root,root) %dir /var/lib/%{name}
328%ghost /var/lib/%{name}/dhcpd.leases
6acbb058
JB
329%{_mandir}/man1/omshell.1*
330%{_mandir}/man5/dhcp-eval.5*
331%{_mandir}/man5/dhcp-options.5*
332%{_mandir}/man5/dhcpd.conf.5*
333%{_mandir}/man5/dhcpd.leases.5*
334%{_mandir}/man8/dhcpd.8*
3bb4bab9 335
967af251 336%if %{with ldap}
b62eae95 337%files -n openldap-schema-dhcp
967af251 338%defattr(644,root,root,755)
6acbb058 339%{schemadir}/dhcp.schema
967af251
JR
340%endif
341
3bb4bab9 342%files client
ccf64540 343%defattr(644,root,root,755)
967af251
JR
344%doc contrib/sethostname.sh
345%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dhclient.conf
3bb4bab9 346%attr(755,root,root) /sbin/dhclient
6e6494f3 347#%attr(755,root,root) /sbin/dhclient-script
6acbb058
JB
348%{_mandir}/man5/dhclient.conf.5*
349%{_mandir}/man5/dhclient.leases.5*
350%{_mandir}/man8/dhclient.8*
351%{_mandir}/man8/dhclient-script.8*
b0caeee3
JR
352%attr(750,root,root) %dir /var/lib/dhclient
353%ghost /var/lib/dhclient/dhclient.leases
45ef0575 354
355%files relay
356%defattr(644,root,root,755)
ac30bae3 357%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dhcp-relay
45ef0575 358%attr(755,root,root) %{_sbindir}/dhcrelay
3ac86cff 359%attr(754,root,root) /etc/rc.d/init.d/dhcp-relay
6acbb058 360%{_mandir}/man8/dhcrelay.8*
1d526f5b
JK
361
362%files devel
363%defattr(644,root,root,755)
6acbb058 364%{_libdir}/libdhcpctl.a
6e6494f3 365%{_libdir}/libdst.a
6acbb058 366%{_libdir}/libomapi.a
6e6494f3 367%{_includedir}/dhcpctl
6acbb058
JB
368%{_includedir}/isc-dhcp
369%{_includedir}/omapip
370%{_mandir}/man3/dhcpctl.3*
371%{_mandir}/man3/omapi.3*
c494ae74 372
03a6f6c6
AM
373%files -n libdhcp4client
374%defattr(644,root,root,755)
375%attr(755,root,root) %{_libdir}/libdhcp4client-*.so.*
c494ae74 376
03a6f6c6
AM
377%files -n libdhcp4client-devel
378%defattr(644,root,root,755)
379%attr(755,root,root) %{_libdir}/libdhcp4client.so
380%{_pkgconfigdir}/libdhcp4client.pc
381%{_libdir}/libdhcp4client.la
c494ae74 382
03a6f6c6
AM
383%files -n libdhcp4client-static
384%defattr(644,root,root,755)
385%{_libdir}/libdhcp4client.a
This page took 0.145017 seconds and 4 git commands to generate.