/[packages]/cauldron/dhcp/current/SPECS/dhcp.spec
ViewVC logotype

Contents of /cauldron/dhcp/current/SPECS/dhcp.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 678730 - (show annotations) (download)
Tue Sep 16 15:35:57 2014 UTC (9 years, 7 months ago) by umeabot
File size: 12077 byte(s)
Mageia 5 Mass Rebuild
1 %define _catdir /var/cache/man
2
3 %define major_version 4.3.1
4 %define patch_version %{nil}
5
6 Name: dhcp
7 Epoch: 3
8 Version: %{major_version}%{patch_version}
9 Release: %mkrel 3
10 Summary: The ISC DHCP (Dynamic Host Configuration Protocol) server/relay agent/client
11 License: Distributable
12 Group: System/Servers
13 URL: http://www.isc.org/software/dhcp
14 Source0: ftp://ftp.isc.org/isc/%{name}/%{major_version}%{patch_version}/%{name}-%{major_version}%{patch_version}.tar.gz
15 Source1: ftp://ftp.isc.org/isc/%{name}/%{major_version}%{patch_version}/%{name}-%{major_version}%{patch_version}.tar.gz.sha512.asc
16 Source2: dhcpd.conf
17 Source4: dhcp-dynamic-dns-examples.tar.bz2
18 Source7: dhcpreport.pl
19 Source8: dhcpd-chroot.sh
20 # (eugeni) dhclient-exit-hooks script
21 Source9: dhclient-exit-hooks
22 Source11: dhclient-hook-static-routes
23 Source10: draft-ietf-dhc-ldap-schema-01.txt
24 Source12: dhcpd.service
25 Source14: dhcpd6.service
26 Source16: dhcrelay.service
27 Source17: dhcpd.tmpfiles
28 Source18: dhclient.tmpfiles
29 Source19: dhcrelay.tmpfiles
30 # mageia patches
31 Patch100: dhcp-4.2.2-ifup.patch
32 Patch101: dhcp-4.2.2-fix-format-errors.patch
33 # prevents needless deassociation, working around mdv bug #43441
34 Patch102: dhcp-4.1.1-prevent_wireless_deassociation.patch
35 Patch103: dhcp-4.2.5-P1-man.patch
36 # fedora patches
37 Patch7: dhcp-4.2.0-default-requested-options.patch
38 Patch8: dhcp-4.2.2-xen-checksum.patch
39 Patch15: dhcp-4.2.2-missing-ipv6-not-fatal.patch
40 Patch17: dhcp-4.2.0-add_timeout_when_NULL.patch
41 Patch18: dhcp-4.3.0-64_bit_lease_parse.patch
42 BuildRequires: groff-for-man
43 BuildRequires: openldap-devel
44 Requires(post): rpm-helper >= 0.24.8-1
45 Requires(preun): rpm-helper >= 0.24.8-1
46
47 %description
48 DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
49 individual devices on an IP network to get their own network configuration
50 information (IP address, subnetmask, broadcast address, etc.) from a DHCP
51 server. The overall purpose of DHCP is to make it easier to administer a
52 large network. The dhcp package includes the DHCP server and a DHCP relay
53 agent. You will also need to install the dhcp-client or dhcpcd package,
54 or pump or dhcpxd, which provides the DHCP client daemon, on client machines.
55
56 If you want the DHCP server and/or relay, you will also need to install the
57 dhcp-server and/or dhcp-relay packages.
58
59 %package common
60 Summary: The ISC DHCP (Dynamic Host Configuration Protocol) server
61 Group: System/Servers
62
63 %description common
64 DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
65 individual devices on an IP network to get their own network
66 configuration information (IP address, subnetmask, broadcast address,
67 etc.) from a DHCP server. The overall purpose of DHCP is to make it
68 easier to administer a large network. The dhcp package includes the
69 DHCP server and a DHCP relay agent.
70
71 You will also need to install the dhcp-client or dhcpcd package, or pump or
72 dhcpxd, which provides the DHCP client daemon, on client machines. If you
73 want the DHCP server and/or relay, you will also need to install the
74 dhcp-server and/or dhcp-relay packages.
75
76 %package doc
77 Summary: Documentation about the ISC DHCP server/client
78 Group: System/Servers
79
80 %description doc
81 This package contains RFC/API/protocol documentation about the ISC
82 DHCP server and client.
83
84 DHCP (Dynamic Host Configuration Protocol) is a protocol which allows
85 individual devices on an IP network to get their own network
86 configuration information (IP address, subnetmask, broadcast address,
87 etc.) from a DHCP server. The overall purpose of DHCP is to make it
88 easier to administer a large network. The dhcp package includes the
89 DHCP server and a DHCP relay agent.
90
91 %package server
92 Summary: The ISC DHCP (Dynamic Host Configuration Protocol) server
93 Group: System/Servers
94 Requires: dhcp-common = %{epoch}:%{version}-%{release}
95 Requires(post): systemd >= %{systemd_required_version}
96 Requires(post): rpm-helper >= 0.24.8-1
97 Requires(preun): rpm-helper >= 0.24.8-1
98
99 %description server
100 DHCP server is the Internet Software Consortium (ISC) DHCP server for various
101 UNIX operating systems. It allows a UNIX mac hine to serve DHCP requests from
102 the network.
103
104 You should install dhcp-server if you want to set up a DHCP server on your
105 network. You will also need to install the base dhcp package.
106
107 %package client
108 Summary: The ISC DHCP (Dynamic Host Configuration Protocol) client
109 Group: System/Servers
110 Requires: dhcp-common = %{epoch}:%{version}-%{release}
111 Requires(post): systemd >= %{systemd_required_version}
112 # dhclient-exit-hooks was in server package
113 Conflicts: dhcp-server < 4.3.1-2
114
115 %description client
116 DHCP client is the Internet Software Consortium (ISC) DHCP client for various
117 UNIX operating systems. It allows a UNIX mac hine to obtain it's networking
118 parameters from a DHCP server.
119
120 You should install dhcp-client if you want to use the ISC DHCP client instead
121 of the Red Hat DHCP client, pump, or dhcpcd, or dhcpxd. You will also need to
122 install the base dhcp package.
123
124 %package relay
125 Summary: The ISC DHCP (Dynamic Host Configuration Protocol) relay
126 Group: System/Servers
127 Requires: dhcp-common = %{epoch}:%{version}-%{release}
128 Requires(post): systemd >= %{systemd_required_version}
129 Requires(post): rpm-helper >= 0.24.8-1
130 Requires(preun): rpm-helper >= 0.24.8-1
131
132 %description relay
133 DHCP relay is the Internet Software Consortium (ISC) relay agent for DHCP
134 packets. It is used on a subnet with DHCP clients to "relay" their requests
135 to a subnet that has a DHCP server on it. Because DHCP packets can be
136 broadcast, they will not be routed off of the local subnet. The DHCP relay
137 takes care of this for the client. You will need to set the environment
138 variable SERVERS and optionally OPTIONS in /etc/sysconfig/dhcrelay before
139 starting the server.
140
141 %package devel
142 Summary: Development headers and libraries for the dhcpctl API
143 Group: Development/Other
144 Requires: dhcp-common = %{epoch}:%{version}-%{release}
145
146 %description devel
147 DHCP devel contains all of the libraries and headers for developing with the
148 Internet Software Consortium (ISC) dhcpctl API.
149
150 %prep
151 %setup -q -n %{name}-%{major_version}%{patch_version}
152 %patch100 -p1 -b .ifup
153 %patch101 -p1 -b .format_not_a_string_literal_and_no_format_arguments
154 %patch102 -p1 -b .prevent_wireless_deassociation
155 %patch103 -p1 -b .man
156
157 # Add NIS domain, NIS servers, NTP servers, interface-mtu and domain-search
158 # to the list of default requested DHCP options
159 %patch7 -p1 -b .requested
160 # Handle Xen partial UDP checksums
161 %patch8 -p1 -b .xen
162 # If the ipv6 kernel module is missing, do not segfault
163 # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #19367])
164 %patch15 -p1 -b .noipv6
165 # Handle cases in add_timeout() where the function is called with a NULL
166 # value for the 'when' parameter
167 %patch17 -p1 -b .dracut
168 # Ensure 64-bit platforms parse lease file dates & times correctly
169 %patch18 -p1 -b .64-bit_lease_parse
170
171 install -m0644 %{SOURCE10} doc
172
173 %build
174 %serverbuild
175 %configure2_5x --enable-paranoia --enable-early-chroot \
176 --with-ldapcrypto \
177 --with-srv-lease-file=%{_var}/lib/dhcpd/dhcpd.leases \
178 --with-srv6-lease-file=%{_var}/lib/dhcpd/dhcpd6.leases \
179 --with-cli-lease-file=%{_var}/lib/dhclient/dhclient.leases \
180 --with-cli6-lease-file=%{_var}/lib/dhclient/dhclient6.leases \
181 --with-srv-pid-file=/run/dhcpd/dhcpd.pid \
182 --with-srv6-pid-file=/run/dhcpd/dhcpd6.pid \
183 --with-cli-pid-file=/run/dhclient/dhclient.pid \
184 --with-cli6-pid-file=/run/dhclient/dhclient6.pid \
185 --with-relay-pid-file=/run/dhcrelay/dhcrelay.pid
186 %make
187
188 %install
189 %makeinstall_std
190
191 # Install correct dhclient-script
192 install -d %{buildroot}/sbin
193 mv %{buildroot}%{_sbindir}/dhclient %{buildroot}/sbin/dhclient
194 install -m 755 client/scripts/linux %{buildroot}/sbin/dhclient-script
195
196 install -d %{buildroot}%{_unitdir}
197 install -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/dhcpd.service
198 install -m 644 %{SOURCE14} %{buildroot}%{_unitdir}/dhcpd6.service
199 install -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/dhcrelay.service
200
201 install -D -p -m 644 %{SOURCE17} %{buildroot}%{_tmpfilesdir}/dhcpd.conf
202 install -D -p -m 644 %{SOURCE18} %{buildroot}%{_tmpfilesdir}/dhclient.conf
203 install -D -p -m 644 %{SOURCE19} %{buildroot}%{_tmpfilesdir}/dhcrelay.conf
204
205 install -m 755 %{SOURCE7} %{SOURCE8} %{buildroot}%{_sbindir}
206 install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}
207 install -m 755 contrib/ldap/dhcpd-conf-to-ldap %{buildroot}%{_sbindir}
208
209 # install exit-hooks script to /etc/
210 install -m 755 %{SOURCE9} %{buildroot}%{_sysconfdir}
211 install -d %{buildroot}%{_sysconfdir}/dhclient-exit-hooks.d
212 install -m 755 %{SOURCE11} %{buildroot}%{_sysconfdir}/dhclient-exit-hooks.d/static-routes.sh
213
214 install -d %{buildroot}%{_sysconfdir}/sysconfig
215 cat > %{buildroot}%{_sysconfdir}/sysconfig/dhcpd <<EOF
216 # You can set here various option for dhcpd
217
218 # Which configuration file to use.
219 # CONFIGFILE="/etc/dhcpd.conf"
220
221 # Where to store the lease state information.
222 # LEASEFILE="/var/lib/dhcpd/dhcpd.leases"
223
224 # Define INTERFACES to limit which network interfaces dhcpd listens on.
225 # The default null value causes dhcpd to listen on all interfaces.
226 #INTERFACES=""
227
228 # Define OPTIONS with any other options to pass to the dhcpd server.
229 # See dhcpd(8) for available options and syntax.
230 OPTIONS="-q"
231 EOF
232
233 install -d %{buildroot}%{_var}/lib/dhcpd
234 touch %{buildroot}%{_var}/lib/dhcpd/dhcpd.leases
235 install -d %{buildroot}%{_var}/lib/dhclient
236 touch %{buildroot}%{_var}/lib/dhclient/dhclient.leases
237
238 cat > %{buildroot}%{_sysconfdir}/sysconfig/dhcrelay <<EOF
239 # Define SERVERS with a list of one or more DHCP servers where
240 # DHCP packets are to be relayed to and from. This is mandatory.
241 #SERVERS="10.11.12.13 10.9.8.7"
242 SERVERS=""
243
244 # Define OPTIONS with any other options to pass to the dhcrelay server.
245 # See dhcrelay(8) for available options and syntax.
246 #OPTIONS="-q -i eth0 -i eth1"
247 OPTIONS="-q"
248 EOF
249
250 find . -type d -exec chmod 0755 {} \;
251 find . -type f -exec chmod 0644 {} \;
252
253 rm -rf doc/ja_JP.eucJP
254
255 # remove empty files
256 find -size 0 |grep ldap | xargs rm -rf
257
258 # remove unwanted file
259 rm -f %{buildroot}%{_sysconfdir}/dhclient.conf.example
260 rm -f %{buildroot}%{_sysconfdir}/dhcpd.conf.example
261 rm -f %{buildroot}%{_libdir}/*.a
262
263 %pre server
264 %_pre_useradd dhcpd /dev/null /bin/false
265
266 %post server
267 %_post_service dhcpd
268 %_tmpfilescreate dhcpd
269 # New dhcpd lease file
270 if [ ! -f %{_var}/lib/dhcpd/dhcpd.leases ]; then
271 touch %{_var}/lib/dhcpd/dhcpd.leases
272 fi
273
274 %preun server
275 %_preun_service dhcpd
276
277 %post relay
278 %_post_service dhcrelay
279 %_tmpfilescreate dhcrelay
280
281 %preun relay
282 %_preun_service dhcrelay
283
284 %post client
285 touch %{_var}/lib/dhclient/dhclient.leases
286 %_tmpfilescreate dhclient
287
288 %postun client
289 rm -rf %{_var}/lib/dhclient/dhclient.leases
290
291 %files common
292 %doc README contrib/ldap/README.ldap RELNOTES
293 %doc contrib/3.0b1-lease-convert
294 %{_mandir}/man5/dhcp-options.5*
295
296 %files doc
297 %doc doc/*
298
299 %files server
300 %doc server/dhcpd.conf.example tests/failover contrib/ldap/dhcp.schema
301 %{_unitdir}/dhcpd.service
302 %{_unitdir}/dhcpd6.service
303 %{_tmpfilesdir}/dhcpd.conf
304 %config(noreplace) %{_sysconfdir}/dhcpd.conf
305 %config(noreplace) %{_sysconfdir}/sysconfig/dhcpd
306 %{_sbindir}/dhcpd
307 %{_sbindir}/dhcpreport.pl
308 %{_sbindir}/dhcpd-conf-to-ldap
309 %{_sbindir}/dhcpd-chroot.sh
310 %{_bindir}/omshell
311 %{_mandir}/man1/omshell.1*
312 %{_mandir}/man3/omapi.3*
313 %{_mandir}/man5/dhcpd.conf.5*
314 %{_mandir}/man5/dhcpd.leases.5*
315 %{_mandir}/man5/dhcp-eval.5*
316 %{_mandir}/man8/dhcpd.8*
317 %dir %{_var}/lib/dhcpd
318 %config(noreplace) %ghost %{_var}/lib/dhcpd/dhcpd.leases
319
320 %files relay
321 %{_unitdir}/dhcrelay.service
322 %{_tmpfilesdir}/dhcrelay.conf
323 %config(noreplace) %{_sysconfdir}/sysconfig/dhcrelay
324 %{_sbindir}/dhcrelay
325 %{_mandir}/man8/dhcrelay.8*
326
327 %files client
328 %doc client/dhclient.conf.example
329 %{_sysconfdir}/dhclient-exit-hooks
330 %{_sysconfdir}/dhclient-exit-hooks.d
331 %attr (0755,root,root) /sbin/dhclient-script
332 %{_tmpfilesdir}/dhclient.conf
333 /sbin/dhclient
334 %{_mandir}/man5/dhclient.conf.5*
335 %{_mandir}/man5/dhclient.leases.5*
336 %{_mandir}/man8/dhclient.8*
337 %{_mandir}/man8/dhclient-script.8*
338 %dir %{_var}/lib/dhclient
339 %config(noreplace) %ghost %{_var}/lib/dhclient/dhclient.leases
340
341 %files devel
342 %{_includedir}/*
343 %{_mandir}/man3/*

  ViewVC Help
Powered by ViewVC 1.1.30