]>
Commit | Line | Data |
---|---|---|
4040e9ea FCE |
1 | %{!?release: %define release 1} |
2 | %{!?with_sqllite: %define with_sqlite 1} | |
3 | %{!?with_docs: %define with_docs 1} | |
4 | %{!?with_crash: %define with_crash 0} | |
5 | %{!?with_bundled_elfutils: %define with_bundled_elfutils 0} | |
6 | %{!?elfutils_version: %define elfutils_version 0.127} | |
1074f79d | 7 | |
a2c9eba7 | 8 | Name: systemtap |
bc44995a DS |
9 | # for version, see also configure.ac |
10 | Version: 0.7.1 | |
1074f79d | 11 | Release: %{release}%{?dist} |
7d838f63 | 12 | Summary: Instrumentation System |
7d838f63 | 13 | Group: Development/System |
6a1cd8a7 | 14 | License: GPLv2+ |
a2c9eba7 | 15 | URL: http://sourceware.org/systemtap/ |
47b0655b | 16 | Source: ftp://sourceware.org/pub/%{name}/releases/%{name}-%{version}.tar.gz |
a2c9eba7 | 17 | |
37b99e78 | 18 | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) |
a2c9eba7 RM |
19 | |
20 | Requires: kernel >= 2.6.9-11 | |
98aab489 | 21 | BuildRequires: libcap-devel |
a87d23e3 | 22 | %if %{with_sqlite} |
c3a3c0c9 | 23 | BuildRequires: sqlite-devel |
d8c3d602 WC |
24 | Requires: sqlite |
25 | %endif | |
a87d23e3 | 26 | %if %{with_crash} |
d2995e6f | 27 | BuildRequires: crash-devel zlib-devel |
1e0716d3 | 28 | %endif |
4698b0a8 FCE |
29 | # Requires: kernel-devel |
30 | # or is that kernel-smp-devel? kernel-hugemem-devel? | |
aab2b35f | 31 | Requires: gcc make |
9ae6172f | 32 | # Suggest: kernel-debuginfo |
a63a95dc | 33 | Requires: systemtap-runtime = %{version}-%{release} |
7d838f63 | 34 | |
a87d23e3 | 35 | %if %{with_bundled_elfutils} |
7d838f63 MH |
36 | Source1: elfutils-%{elfutils_version}.tar.gz |
37 | Patch1: elfutils-portability.patch | |
38 | %define setup_elfutils -a1 | |
a2c9eba7 RM |
39 | %else |
40 | BuildRequires: elfutils-devel >= %{elfutils_version} | |
7d838f63 | 41 | %endif |
a87d23e3 DS |
42 | %if %{with_crash} |
43 | Requires: crash | |
44 | %endif | |
7d838f63 | 45 | |
465e8fbf FCE |
46 | %if %{with_docs} |
47 | BuildRequires: /usr/bin/latex /usr/bin/dvips /usr/bin/ps2pdf latex2html | |
48 | %endif | |
49 | ||
7d838f63 | 50 | %description |
a2c9eba7 RM |
51 | SystemTap is an instrumentation system for systems running Linux 2.6. |
52 | Developers can write instrumentation to collect data on the operation | |
53 | of the system. | |
7d838f63 | 54 | |
a63a95dc DS |
55 | %package runtime |
56 | Summary: Instrumentation System Runtime | |
57 | Group: Development/System | |
6a1cd8a7 | 58 | License: GPLv2+ |
a63a95dc DS |
59 | URL: http://sourceware.org/systemtap/ |
60 | Requires: kernel >= 2.6.9-11 | |
378a5245 | 61 | Requires(pre): shadow-utils |
a63a95dc DS |
62 | |
63 | %description runtime | |
64 | SystemTap runtime is the runtime component of an instrumentation | |
65 | system for systems running Linux 2.6. Developers can write | |
66 | instrumentation to collect data on the operation of the system. | |
67 | ||
8f3c45cc FCE |
68 | %package testsuite |
69 | Summary: Instrumentation System Testsuite | |
70 | Group: Development/System | |
71 | License: GPLv2+ | |
72 | URL: http://sourceware.org/systemtap/ | |
0fda8ffb | 73 | Requires: systemtap dejagnu |
8f3c45cc FCE |
74 | |
75 | %description testsuite | |
76 | The testsuite allows testing of the entire SystemTap toolchain | |
77 | without having to rebuild from sources. | |
78 | ||
d9d14e20 DB |
79 | %package client |
80 | Summary: Instrumentation System Client | |
81 | Group: Development/System | |
82 | License: GPLv2+ | |
83 | URL: http://sourceware.org/systemtap/ | |
84 | Requires: systemtap-runtime = %{version}-%{release} | |
85 | Requires: avahi-tools nc mktemp grep sed tar which coreutils util-linux-ng | |
86 | ||
87 | %description client | |
88 | SystemTap client is the client component of an instrumentation | |
89 | system for systems running Linux 2.6. Developers can write | |
90 | instrumentation to collect data on the operation of the system. | |
91 | ||
92 | %package server | |
93 | Summary: Instrumentation System Server | |
94 | Group: Development/System | |
95 | License: GPLv2+ | |
96 | URL: http://sourceware.org/systemtap/ | |
97 | Requires: systemtap | |
98 | Requires: avahi-tools nc net-tools gawk mktemp grep sed tar coreutils util-linux-ng | |
99 | ||
100 | %description server | |
101 | SystemTap server is the server component of an instrumentation | |
102 | system for systems running Linux 2.6. Developers can write | |
103 | instrumentation to collect data on the operation of the system. | |
104 | ||
7d838f63 | 105 | %prep |
a2c9eba7 RM |
106 | %setup -q %{?setup_elfutils} |
107 | ||
a87d23e3 | 108 | %if %{with_bundled_elfutils} |
7d838f63 MH |
109 | cd elfutils-%{elfutils_version} |
110 | %patch1 -p1 | |
a2c9eba7 RM |
111 | sleep 1 |
112 | find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch | |
113 | sleep 1 | |
114 | find . \( -name configure -o -name config.h.in \) -print | xargs touch | |
7d838f63 MH |
115 | cd .. |
116 | %endif | |
117 | ||
118 | %build | |
a2c9eba7 | 119 | |
a87d23e3 | 120 | %if %{with_bundled_elfutils} |
7d838f63 | 121 | # Build our own copy of elfutils. |
4d9087fc | 122 | %define elfutils_config --with-elfutils=elfutils-%{elfutils_version} |
a2c9eba7 RM |
123 | |
124 | # We have to prevent the standard dependency generation from identifying | |
125 | # our private elfutils libraries in our provides and requires. | |
126 | %define _use_internal_dependency_generator 0 | |
127 | %define filter_eulibs() /bin/sh -c "%{1} | sed '/libelf/d;/libdw/d;/libebl/d'" | |
128 | %define __find_provides %{filter_eulibs /usr/lib/rpm/find-provides} | |
129 | %define __find_requires %{filter_eulibs /usr/lib/rpm/find-requires} | |
4dbd685d RM |
130 | |
131 | # This will be needed for running stap when not installed, for the test suite. | |
132 | %define elfutils_mflags LD_LIBRARY_PATH=`pwd`/lib-elfutils | |
7d838f63 MH |
133 | %endif |
134 | ||
9921a199 | 135 | # Enable/disable the sqlite coverage testing support |
a87d23e3 | 136 | %if %{with_sqlite} |
9921a199 DS |
137 | %define sqlite_config --enable-sqlite |
138 | %else | |
139 | %define sqlite_config --disable-sqlite | |
d8c3d602 WC |
140 | %endif |
141 | ||
a87d23e3 DS |
142 | # Enable/disable the crash extension |
143 | %if %{with_crash} | |
144 | %define crash_config --enable-crash | |
145 | %else | |
146 | %define crash_config --disable-crash | |
147 | %endif | |
148 | ||
465e8fbf FCE |
149 | %if %{with_docs} |
150 | %define docs_config --enable-docs | |
151 | %else | |
152 | %define docs_config --disable-docs | |
153 | %endif | |
154 | ||
155 | ||
156 | ||
157 | %configure %{?elfutils_config} %{sqlite_config} %{crash_config} %{docs_config} | |
a2c9eba7 | 158 | make %{?_smp_mflags} |
2a4b42eb | 159 | |
ec4d1558 MW |
160 | %install |
161 | rm -rf ${RPM_BUILD_ROOT} | |
162 | make DESTDIR=$RPM_BUILD_ROOT install | |
163 | ||
c256c4a6 MW |
164 | # We want the examples in the special doc dir, not the build install dir. |
165 | # We build it in place and then move it away so it doesn't get installed | |
166 | # twice. rpm can specify itself where the (versioned) docs go with the | |
167 | # %doc directive. | |
ec4d1558 MW |
168 | mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/examples examples |
169 | ||
d2995e6f FCE |
170 | # Fix paths in the example & testsuite scripts |
171 | find examples testsuite -type f -name '*.stp' -print0 | xargs -0 sed -i -r -e '1s@^#!.+stap@#!%{_bindir}/stap@' | |
7d838f63 | 172 | |
c63a6b9d | 173 | # To avoid perl dependency, make perl sample script non-executable |
164567d1 | 174 | #chmod -x examples/samples/kmalloc-top |
c63a6b9d | 175 | |
8f3c45cc | 176 | # Because "make install" may install staprun with mode 04111, the |
98aab489 DS |
177 | # post-processing programs rpmbuild runs won't be able to read it. |
178 | # So, we change permissions so that they can read it. We'll set the | |
179 | # permissions back to 04111 in the %files section below. | |
180 | chmod 755 $RPM_BUILD_ROOT%{_bindir}/staprun | |
181 | ||
8f3c45cc FCE |
182 | # Copy over the testsuite |
183 | cp -rp testsuite $RPM_BUILD_ROOT%{_datadir}/systemtap | |
184 | ||
4040e9ea | 185 | %if %{with_docs} |
7fe437e6 | 186 | # We want the manuals in the special doc dir, not the generic doc install dir. |
c256c4a6 MW |
187 | # We build it in place and then move it away so it doesn't get installed |
188 | # twice. rpm can specify itself where the (versioned) docs go with the | |
189 | # %doc directive. | |
7fe437e6 MW |
190 | mkdir docs.installed |
191 | mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/*.pdf docs.installed/ | |
4040e9ea | 192 | %endif |
7fe437e6 | 193 | |
7d838f63 MH |
194 | %clean |
195 | rm -rf ${RPM_BUILD_ROOT} | |
196 | ||
378a5245 | 197 | %pre runtime |
efc4bf9a DS |
198 | getent group stapdev >/dev/null || groupadd -r stapdev |
199 | getent group stapusr >/dev/null || groupadd -r stapusr | |
200 | exit 0 | |
98aab489 | 201 | |
7d838f63 MH |
202 | %files |
203 | %defattr(-,root,root) | |
a2c9eba7 | 204 | |
94cfa802 | 205 | %doc README AUTHORS NEWS COPYING examples |
465e8fbf | 206 | %if %{with_docs} |
7fe437e6 | 207 | %doc docs.installed/*.pdf |
465e8fbf | 208 | %endif |
a2c9eba7 RM |
209 | |
210 | %{_bindir}/stap | |
4dbd685d | 211 | %{_mandir}/man1/* |
ba4a90fd | 212 | %{_mandir}/man5/* |
a2c9eba7 | 213 | |
bcdfb17d DS |
214 | %dir %{_datadir}/%{name} |
215 | %{_datadir}/%{name}/runtime | |
216 | %{_datadir}/%{name}/tapset | |
a2c9eba7 | 217 | |
a87d23e3 | 218 | %if %{with_bundled_elfutils} || %{with_crash} |
7d838f63 | 219 | %dir %{_libdir}/%{name} |
a87d23e3 DS |
220 | %endif |
221 | %if %{with_bundled_elfutils} | |
8f3c45cc | 222 | %{_libdir}/%{name}/lib*.so* |
7d838f63 | 223 | %endif |
a87d23e3 DS |
224 | %if %{with_crash} |
225 | %{_libdir}/%{name}/staplog.so* | |
226 | %endif | |
a2c9eba7 | 227 | |
a87d23e3 | 228 | %files runtime |
a63a95dc | 229 | %defattr(-,root,root) |
98aab489 | 230 | %attr(4111,root,root) %{_bindir}/staprun |
bcdfb17d | 231 | %{_libexecdir}/%{name} |
d9d14e20 | 232 | %{_mandir}/man8/staprun.8 |
be168105 DS |
233 | |
234 | %doc README AUTHORS NEWS COPYING | |
7d838f63 | 235 | |
8f3c45cc FCE |
236 | %files testsuite |
237 | %defattr(-,root,root) | |
bcdfb17d | 238 | %{_datadir}/%{name}/testsuite |
8f3c45cc | 239 | |
d9d14e20 DB |
240 | %files client |
241 | %defattr(-,root,root) | |
242 | %{_bindir}/stap-client | |
243 | %{_bindir}/stap-find-servers | |
244 | %{_mandir}/man8/stap-server.8 | |
245 | ||
246 | %files server | |
247 | %defattr(-,root,root) | |
248 | %{_bindir}/stap-server | |
249 | %{_bindir}/stap-serverd | |
250 | %{_bindir}/stap-start-server | |
251 | %{_bindir}/stap-find-servers | |
252 | %{_bindir}/stap-find-or-start-server | |
253 | %{_bindir}/stap-stop-server | |
254 | %{_mandir}/man8/stap-server.8 | |
8f3c45cc | 255 | |
7d838f63 | 256 | %changelog |
cfaa068c FCE |
257 | * Tue Jul 15 2008 Frank Ch. Eigler <fche@redhat.com> - 0.7-1 |
258 | - Upstream release. | |
259 | ||
d2995e6f FCE |
260 | * Fri Feb 1 2008 Frank Ch. Eigler <fche@redhat.com> - 0.6.1-3 |
261 | - Add zlib-devel to buildreq; missing from crash-devel | |
262 | - Process testsuite .stp files for #!stap->#!/usr/bin/stap | |
263 | ||
bfe2b4ab | 264 | * Fri Jan 18 2008 Frank Ch. Eigler <fche@redhat.com> - 0.6.1-1 |
1e0716d3 FCE |
265 | - Add crash-devel buildreq to build staplog.so crash(8) module. |
266 | - Many robustness & functionality improvements: | |
267 | ||
47b0655b WC |
268 | * Wed Dec 5 2007 Will Cohen <wcohen@redhat.com> - 0.6-2 |
269 | - Correct Source to point to location contain code. | |
270 | ||
98aab489 DS |
271 | * Thu Aug 9 2007 David Smith <dsmith@redhat.com> - 0.6-1 |
272 | - Bumped version, added libcap-devel BuildRequires. | |
273 | ||
d8c3d602 WC |
274 | * Wed Jul 11 2007 Will Cohen <wcohen@redhat.com> - 0.5.14-2 |
275 | - Fix Requires and BuildRequires for sqlite. | |
276 | ||
c1edaa30 FCE |
277 | * Tue Jul 2 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.14-1 |
278 | - Many robustness improvements: 1117, 1134, 1305, 1307, 1570, 1806, | |
279 | 2033, 2116, 2224, 2339, 2341, 2406, 2426, 2438, 2583, 3037, | |
280 | 3261, 3282, 3331, 3428 3519, 3545, 3625, 3648, 3880, 3888, 3911, | |
281 | 3952, 3965, 4066, 4071, 4075, 4078, 4081, 4096, 4119, 4122, 4127, | |
282 | 4146, 4171, 4179, 4183, 4221, 4224, 4254, 4281, 4319, 4323, 4326, | |
283 | 4329, 4332, 4337, 4415, 4432, 4444, 4445, 4458, 4467, 4470, 4471, | |
284 | 4518, 4567, 4570, 4579, 4589, 4609, 4664 | |
285 | ||
aa384dcd FCE |
286 | * Mon Mar 26 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.13-1 |
287 | - An emergency / preliminary refresh, mainly for compatibility | |
288 | with 2.6.21-pre kernels. | |
2a4b42eb | 289 | |
31982bd2 FCE |
290 | * Mon Jan 1 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.12-1 |
291 | - Many changes, see NEWS file. | |
292 | ||
a63a95dc DS |
293 | * Tue Sep 26 2006 David Smith <dsmith@redhat.com> - 0.5.10-1 |
294 | - Added 'systemtap-runtime' subpackage. | |
295 | ||
d65d6b27 RM |
296 | * Wed Jul 19 2006 Roland McGrath <roland@redhat.com> - 0.5.9-1 |
297 | - PRs 2669, 2913 | |
298 | ||
c1d6a343 RM |
299 | * Fri Jun 16 2006 Roland McGrath <roland@redhat.com> - 0.5.8-1 |
300 | - PRs 2627, 2520, 2228, 2645 | |
301 | ||
f6291560 | 302 | * Fri May 5 2006 Frank Ch. Eigler <fche@redhat.com> - 0.5.7-1 |
6f231a27 FCE |
303 | - PRs 2511 2453 2307 1813 1944 2497 2538 2476 2568 1341 2058 2220 2437 |
304 | 1326 2014 2599 2427 2438 2465 1930 2149 2610 2293 2634 2506 2433 | |
305 | ||
611010bf RM |
306 | * Tue Apr 4 2006 Roland McGrath <roland@redhat.com> - 0.5.5-1 |
307 | - Many changes, affected PRs include: 2068, 2293, 1989, 2334, | |
308 | 1304, 2390, 2425, 953. | |
309 | ||
be9923ac FCE |
310 | * Wed Feb 1 2006 Frank Ch. Eigler <fche@redhat.com> - 0.5.4-1 |
311 | - PRs 1916, 2205, 2142, 2060, 1379 | |
312 | ||
db6a8a10 RM |
313 | * Mon Jan 16 2006 Roland McGrath <roland@redhat.com> - 0.5.3-1 |
314 | - Many changes, affected PRs include: 2056, 1144, 1379, 2057, | |
315 | 2060, 1972, 2140, 2148 | |
316 | ||
dcf0c541 RM |
317 | * Mon Dec 19 2005 Roland McGrath <roland@redhat.com> - 0.5.2-1 |
318 | - Fixed build with gcc 4.1, various tapset changes. | |
319 | ||
4d9087fc RM |
320 | * Wed Dec 7 2005 Roland McGrath <roland@redhat.com> - 0.5.1-1 |
321 | - elfutils update, build changes | |
322 | ||
e94c050c | 323 | * Fri Dec 02 2005 Frank Ch. Eigler <fche@redhat.com> - 0.5-1 |
7d9e8974 FCE |
324 | - Many fixes and improvements: 1425, 1536, 1505, 1380, 1329, 1828, 1271, |
325 | 1339, 1340, 1345, 1837, 1917, 1903, 1336, 1868, 1594, 1564, 1276, 1295 | |
326 | ||
ae65ed5c RM |
327 | * Mon Oct 31 2005 Roland McGrath <roland@redhat.com> - 0.4.2-1 |
328 | - Many fixes and improvements: PRs 1344, 1260, 1330, 1295, 1311, 1368, | |
329 | 1182, 1131, 1332, 1366, 1456, 1271, 1338, 1482, 1477, 1194. | |
330 | ||
66bb48fd RM |
331 | * Wed Sep 14 2005 Roland McGrath <roland@redhat.com> - 0.4.1-1 |
332 | - Many fixes and improvements since 0.2.2; relevant PRs include: | |
333 | 1122, 1134, 1155, 1172, 1174, 1175, 1180, 1186, 1187, 1191, 1193, 1195, | |
334 | 1197, 1205, 1206, 1209, 1213, 1244, 1257, 1258, 1260, 1265, 1268, 1270, | |
335 | 1289, 1292, 1306, 1335, 1257 | |
336 | ||
323904e0 FCE |
337 | * Wed Sep 7 2005 Frank Ch. Eigler <fche@redhat.com> |
338 | - Bump version. | |
339 | ||
03f23d0f | 340 | * Wed Aug 16 2005 Frank Ch. Eigler <fche@redhat.com> |
83ff1cf9 FCE |
341 | - Bump version. |
342 | ||
2205d115 MH |
343 | * Wed Aug 3 2005 Martin Hunt <hunt@redhat.com> - 0.2.2-1 |
344 | - Add directory /var/cache/systemtap | |
345 | - Add stp_check to /usr/libexec/systemtap | |
346 | ||
351e76d3 RM |
347 | * Wed Aug 3 2005 Roland McGrath <roland@redhat.com> - 0.2.1-1 |
348 | - New version 0.2.1, various fixes. | |
349 | ||
4dbd685d RM |
350 | * Fri Jul 29 2005 Roland McGrath <roland@redhat.com> - 0.2-1 |
351 | - New version 0.2, requires elfutils 0.111 | |
352 | ||
a2c9eba7 RM |
353 | * Mon Jul 25 2005 Roland McGrath <roland@redhat.com> |
354 | - Clean up spec file, build bundled elfutils. | |
355 | ||
7d838f63 MH |
356 | * Thu Jul 21 2005 Martin Hunt <hunt@redhat.com> |
357 | - Set Version to use version from autoconf. | |
358 | - Fix up some of the path names. | |
a2c9eba7 RM |
359 | - Add Requires and BuildRequires. |
360 | ||
361 | * Wed Jul 19 2005 Will Cohen <wcohen@redhat.com> | |
7d838f63 | 362 | - Initial creation of RPM. |