Summary: The Internet Systems Consortium (ISC) DHCP server Name: dhcp %define version 4.2.3 Version: %{version} Release: P2 Group: System Environment/Daemons Source: /usr/local/src/RPM/SOURCES/dhcp-%{version}.tar.gz BuildRoot: /var/tmp/dhcp-%{version}-root License: GPL %description Dhcp includes the DHCP server which is used for dynamically configuring hosts on a network. Host configuration items such as IP address, name servers, domain name, etc. can all be retrieved from the DHCP server by a DHCP client. This eases the burden of network wide configuration by putting all of the configuration into one place. %package client Summary: A DHCP client Group: System Environment/Configuration %description client Dhcp client is a DHCP client for various UNIX operating systems. It allows a UNIX machine to obtain it's networking parameters from a DHCP server. %package relay Summary: A DHCP relay Group: System Environment/Daemons %description relay Dhcp relay is a relay agent for DHCP packets. It is used on a subnet with DHCP clients to "relay" their requests to a subnet that has a DHCP server on it. Because DHCP packets can be broadcast, they will not be routed off of the local subnet. The DHCP relay takes care of this for the client. %package devel Summary: Development headers and libraries for the dhcpctl API Group: Development/Libraries %description devel Dhcp devel contains all of the libraries and headers for developing with the dhcpctl API. %prep %setup -q -n dhcp-%{version} # do some file editing #egrep "VARRUN #ETC #VARDB" site.conf | sed -e 's/ *=/=/g' -e 's/= */=/g' > vars #. ./vars cat << EOF >> includes/site.h #define _PATH_DHCPD_PID "/var/run/dhcpd.pid" #define _PATH_DHCPD_DB "/etc/dhcp/dhcpd.leases" #define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" EOF ./configure --with-nsupdate --sysconfdir=/etc/dhcp %build make %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/usr/local/sbin make DESTDIR="$RPM_BUILD_ROOT" install %ifos linux mkdir -p ${RPM_BUILD_ROOT}/etc/rc.d/{init,rc0,rc1,rc2,rc3,rc4,rc5,rc6}.d install -m 755 contrib/linux.init ${RPM_BUILD_ROOT}/etc/rc.d/init.d/dhcpd %else %ifos solaris mkdir -p ${RPM_BUILD_ROOT}/etc/init.d sed -e s'|@PREFIX@|%{_prefix}|g' < contrib/solaris.init > ${RPM_BUILD_ROOT}/etc/init.d/dhcpd chmod 755 ${RPM_BUILD_ROOT}/etc/init.d/dhcpd %endif %endif # strip binaries and libraries strip $RPM_BUILD_ROOT%{_prefix}/sbin/* || : for i in `find $RPM_BUILD_ROOT/ -type 'f' -perm '+a=x' ! -name 'lib*so*'`; do file $i |grep -q "not stripped" && strip $i done %post %ifos linux /sbin/chkconfig --add dhcpd /etc/rc.d/init.d/dhcpd start %else %ifos solaris ln /etc/init.d/dhcpd /etc/rc2.d/S90dhcpd ln /etc/init.d/dhcpd /etc/rc0.d/K30dhcpd /etc/init.d/dhcpd start %else echo "Unknown O/S. You will need to manually configure your\nsystem" echo "to start the DHCP server on system startup." %endif %endif %preun if [ $1 = 0 ]; then %ifos linux /etc/rc.d/init.d/dhcpd stop /sbin/chkconfig --del dhcpd %else %ifos solaris /etc/init.d/dhcpd stop rm /etc/rc2.d/S90dhcpd rm /etc/rc0.d/K30dhcpd %else echo "Unknown O/S. You will need to manually clean up the DHCP" echo "server startup\n in your system startup environment." %endif %endif fi %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) #%doc COPYRIGHT DOCUMENTATION ISC-LICENSE CHANGES README RELNOTES doc/* %{_prefix}/sbin/dhcpd #%{_prefix}/man/cat1m/dhcpd.1m #%{_prefix}/man/cat4/dhcpd.conf.4 #%{_prefix}/man/cat4/dhcpd.leases.4 #%{_prefix}/man/cat4/dhcp-options.4 #%{_prefix}/man/cat4/dhcp-eval.4 #%{_prefix}/man/cat4/dhcp-contrib.4 /usr/bin/omshell /etc/dhcp/dhclient.conf /etc/dhcp/dhcpd.conf /usr/share/man/man1/omshell.1.gz /usr/share/man/man3/dhcpctl.3.gz /usr/share/man/man3/omapi.3.gz /usr/share/man/man5/dhclient.conf.5.gz /usr/share/man/man5/dhclient.leases.5.gz /usr/share/man/man5/dhcp-eval.5.gz /usr/share/man/man5/dhcp-options.5.gz /usr/share/man/man5/dhcpd.conf.5.gz /usr/share/man/man5/dhcpd.leases.5.gz /usr/share/man/man8/dhclient-script.8.gz /usr/share/man/man8/dhclient.8.gz /usr/share/man/man8/dhcpd.8.gz /usr/share/man/man8/dhcrelay.8.gz %ifos linux %config /etc/rc.d/init.d/dhcpd %else %ifos solaris %config /etc/init.d/dhcpd %endif %endif %files devel #%{_prefix}/man/cat3 %{_prefix}/lib %{_prefix}/include %files client #%{_prefix}/etc/dhcp/dhclient-script %{_prefix}/sbin/dhclient #%{_prefix}/man/cat1m/dhclient.1m #%{_prefix}/man/cat1m/dhclient-script.1m #%{_prefix}/man/cat4/dhclient.conf.4 #%{_prefix}/man/cat4/dhclient.leases.4 %files relay %{_prefix}/sbin/dhcrelay #%{_prefix}/man/cat1m/dhcrelay.1m %changelog * Fri Oct 1 1999 Brian J. Murrell - write a spec file for dhcpd