Initial import
[profile/ivi/iputils.git] / packaging / iputils.spec
1 Summary: Network monitoring tools including ping
2 Name: iputils
3 Version: 20101006
4 Release: 14%{?dist}
5 License: BSD
6 URL: http://www.skbuff.net/iputils
7 Group: System Environment/Daemons
8
9 Source0: %{name}-s%{version}.tar.bz2
10 Source1: ifenslave.tar.gz
11 Source3: rdisc.initd
12 Source4: rdisc.service
13 Source5: rdisc.sysconfig
14
15 Patch0: iputils-20020927-rh.patch
16 Patch1: iputils-20020124-countermeasures.patch
17 Patch2: iputils-20020927-addrcache.patch
18 Patch3: iputils-20020927-ping-subint.patch
19 Patch4: iputils-ping_cleanup.patch
20 Patch5: iputils-ifenslave.patch
21 Patch6: iputils-20070202-idn.patch
22 Patch7: iputils-20070202-traffic_class.patch
23 Patch8: iputils-20070202-ia64_align.patch
24 Patch9: iputils-20071127-warnings.patch
25 Patch10: iputils-20071127-corr_type.patch
26 Patch11: iputils-20071127-infiniband.patch
27 Patch12: iputils-20100418-convtoint.patch
28 Patch13: iputils-20100418-flowlabel.patch
29 Patch14: iputils-20101006-drop_caps.patch
30 Patch15: iputils-20101006-unused.patch
31 Patch16: iputils-20101006-man.patch
32 Patch17: iputils-20101006-eth.patch
33 Patch18: iputils-20101006-rr.patch
34
35 BuildRequires: docbook-utils perl-SGMLSpm
36 BuildRequires: eglibc-headers
37 BuildRequires: libidn-devel
38 BuildRequires: openssl-devel
39 BuildRequires: libcap-devel
40 Requires(post): /sbin/chkconfig
41 Requires(preun): /sbin/chkconfig
42
43
44 %description
45 The iputils package contains basic utilities for monitoring a network,
46 including ping. The ping command sends a series of ICMP protocol
47 ECHO_REQUEST packets to a specified network host to discover whether
48 the target machine is alive and receiving network traffic.
49
50 %package sysvinit
51 Group: System Environment/Daemons
52 Summary: SysV initscript for rdisc daemon
53 Requires: %{name} = %{version}-%{release}
54 Requires(preun): /sbin/service
55 Requires(postun): /sbin/service
56
57 %description sysvinit
58 The iputils-sysvinit contains SysV initscritps support.
59
60 %prep
61 %setup -q -a 1 -n %{name}-s%{version}
62
63 %patch0 -p1 -b .rh
64 %patch1 -p1 -b .countermeasures
65 %patch2 -p1 -b .addrcache
66 %patch3 -p1 -b .ping-subint
67 %patch4 -p1 -b .cleanup
68 %patch5 -p1 -b .addr
69 %patch6 -p1 -b .idn
70 %patch7 -p1 -b .traffic_class
71 %patch8 -p1 -b .ia64_align
72 %patch9 -p1 -b .warnings
73 %patch10 -p1 -b .corr_type
74 %patch11 -p1 -b .infiniband
75 %patch12 -p1 -b .convtoint
76 %patch13 -p1 -b .flowlabel
77 %patch14 -p1 -b .drop_caps
78 %patch15 -p1 -b .unused
79 %patch16 -p1 -b .man
80 %patch17 -p1 -b .eth
81 %patch18 -p1 -b .rr
82
83 %build
84 %ifarch s390 s390x
85   export CFLAGS="-fPIE"
86 %else
87   export CFLAGS="-fpie"
88 %endif
89 export LDFLAGS="-pie"
90
91 make %{?_smp_mflags} arping clockdiff ping ping6 rdisc tracepath tracepath6
92 gcc -Wall $RPM_OPT_FLAGS ifenslave.c -o ifenslave
93 make -C doc man
94
95 %install
96 rm -rf ${RPM_BUILD_ROOT}
97
98 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
99 mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
100 mkdir -p $RPM_BUILD_ROOT/%{_unitdir}
101 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
102
103 install -c clockdiff            ${RPM_BUILD_ROOT}%{_sbindir}/
104 install -cp arping              ${RPM_BUILD_ROOT}%{_sbindir}/
105 install -cp ping                ${RPM_BUILD_ROOT}%{_bindir}/
106 install -cp ifenslave           ${RPM_BUILD_ROOT}%{_sbindir}/
107 install -cp rdisc               ${RPM_BUILD_ROOT}%{_sbindir}/
108 install -cp ping6               ${RPM_BUILD_ROOT}%{_bindir}/
109 install -cp tracepath           ${RPM_BUILD_ROOT}%{_bindir}/
110 install -cp tracepath6          ${RPM_BUILD_ROOT}%{_bindir}/
111
112 mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
113 ln -sf ../bin/ping6 ${RPM_BUILD_ROOT}%{_sbindir}
114 ln -sf ../bin/tracepath ${RPM_BUILD_ROOT}%{_sbindir}
115 ln -sf ../bin/tracepath6 ${RPM_BUILD_ROOT}%{_sbindir}
116
117 mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man8
118 install -cp doc/clockdiff.8     ${RPM_BUILD_ROOT}%{_mandir}/man8/
119 install -cp doc/arping.8        ${RPM_BUILD_ROOT}%{_mandir}/man8/
120 install -cp doc/ping.8          ${RPM_BUILD_ROOT}%{_mandir}/man8/
121 install -cp doc/rdisc.8         ${RPM_BUILD_ROOT}%{_mandir}/man8/
122 install -cp doc/tracepath.8     ${RPM_BUILD_ROOT}%{_mandir}/man8/
123 install -cp ifenslave.8         ${RPM_BUILD_ROOT}%{_mandir}/man8/
124 ln -s ping.8.gz ${RPM_BUILD_ROOT}%{_mandir}/man8/ping6.8.gz
125 ln -s tracepath.8.gz ${RPM_BUILD_ROOT}%{_mandir}/man8/tracepath6.8.gz
126
127 install -dp ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d
128 install -m 755 -p %SOURCE3 ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d/rdisc
129 install -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/rdisc
130 install -m 644 %SOURCE4 ${RPM_BUILD_ROOT}/%{_unitdir}
131
132 iconv -f ISO88591 -t UTF8 RELNOTES -o RELNOTES.tmp
133 touch -r RELNOTES RELNOTES.tmp
134 mv -f RELNOTES.tmp RELNOTES
135
136 %post
137 %{_bindir}/systemctl daemon-reload >/dev/null 2>&1 || :
138
139 %preun
140 if [ $1 = 0 ]; then
141         /bin/systemctl disable rdisc.service > /dev/null 2>&1 || :
142         /bin/systemctl stop rdisc.service > /dev/null 2>&1 || :
143 fi 
144
145 %postun
146 %{_bindir}/systemctl daemon-reload >/dev/null 2>&1 || :
147
148 if [ "$1" -ge "1" ]; then
149         /bin/systemctl try-restart rdisc.service >/dev/null 2>&1 || :
150 fi
151
152 %triggerun --  %{name} < 20101006-9
153         /sbin/chkconfig --del rdisc >/dev/null 2>&1 || :
154         /bin/systemctl try-restart rdisc.service >/dev/null 2>&1 || :
155
156 %triggerpostun -n %{name}-sysvinit -- %{name} < 20101006-9
157         /sbin/chkconfig --add rdisc >/dev/null 2>&1 || :
158
159 %clean
160 rm -rf ${RPM_BUILD_ROOT}
161
162 %files
163 %defattr(-,root,root,-)
164 %doc RELNOTES README.bonding
165 /%{_unitdir}/rdisc.service
166 %{_sbindir}/clockdiff
167 %{_sbindir}/arping
168 %attr(0755,root,root) %caps(cap_net_raw=ep) %{_bindir}/ping
169 %{_sbindir}/ifenslave
170 %{_sbindir}/rdisc
171 %attr(0755,root,root) %caps(cap_net_raw=ep) %{_bindir}/ping6
172 %{_bindir}/tracepath
173 %{_bindir}/tracepath6
174 %{_sbindir}/ping6
175 %{_sbindir}/tracepath
176 %{_sbindir}/tracepath6
177 %attr(644,root,root) %{_mandir}/man8/*
178 %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/sysconfig/rdisc
179
180 %files sysvinit
181 %{_sysconfdir}/rc.d/init.d/rdisc
182