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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.30