Rebase on systemtap-0.6.

This commit is contained in:
William Eden Cohen 2007-12-05 17:16:04 +00:00
parent 32e19e8a34
commit 0fc2adf76e
3 changed files with 72 additions and 26 deletions

View File

@ -1 +1 @@
systemtap-0.5.14.tar.gz systemtap-0.6.tar.gz

View File

@ -1 +1 @@
18b705a7364d174f86f09ecb465f547d systemtap-0.5.14.tar.gz e5867fa00f9ec177f8c73cee3fe15687 systemtap-0.6.tar.gz

View File

@ -1,20 +1,24 @@
# Release number for rpm build. Stays at 1 for new PACKAGE_VERSION increases. # Release number for rpm build. Stays at 1 for new PACKAGE_VERSION increases.
%define release 1 %define release 1
# Version number of oldest elfutils release that works with systemtap. # Version number of oldest elfutils release that works with systemtap.
%define elfutils_version 0.128 %define elfutils_version 0.127
# Set bundled_elfutils to 0 on systems that have %{elfutils_version} or newer. # Set bundled_elfutils to 0 on systems that have %{elfutils_version} or newer.
%if 0%{?fedora} %if 0%{?fedora}
%define bundled_elfutils 1 %define bundled_elfutils 1
%define sqlite 0
%if "%fedora" >= "6" %if "%fedora" >= "6"
%define bundled_elfutils 0 %define bundled_elfutils 0
%define sqlite 1
%endif %endif
%endif %endif
%if 0%{?rhel} %if 0%{?rhel}
%define bundled_elfutils 1 %define bundled_elfutils 1
%if "%rhel" >= "6" %define sqlite 0
%if "%rhel" >= "5"
%define bundled_elfutils 0 %define bundled_elfutils 0
%define sqlite 1
%endif %endif
%endif %endif
@ -24,30 +28,37 @@
%define bundled_elfutils 1 %define bundled_elfutils 1
%endif %endif
%if 0%{!?sqlite:1}
# Yo! DO NOT TOUCH THE FOLLOWING LINE.
# You can use rpmbuild --define "sqlite 1" for a build of your own.
%define sqlite 0
%endif
Name: systemtap Name: systemtap
Version: 0.5.14 Version: 0.6
Release: %{release}%{?dist} Release: %{release}%{?dist}
Summary: Instrumentation System Summary: Instrumentation System
Group: Development/System Group: Development/System
License: GPL License: GPLv2+
URL: http://sourceware.org/systemtap/ URL: http://sourceware.org/systemtap/
Source: ftp://sourceware.org/pub/%{name}/%{name}-%{version}.tar.gz Source: ftp://sourceware.org/pub/%{name}/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: kernel >= 2.6.9-11 Requires: kernel >= 2.6.9-11
BuildRequires: glib2-devel >= 2.0.0 BuildRequires: libcap-devel
# make check # make check
BuildRequires: dejagnu BuildRequires: dejagnu
%if %{sqlite}
BuildRequires: sqlite-devel BuildRequires: sqlite-devel
Requires: glib2 >= 2.0.0 Requires: sqlite
%endif
# Requires: kernel-devel # Requires: kernel-devel
# or is that kernel-smp-devel? kernel-hugemem-devel? # or is that kernel-smp-devel? kernel-hugemem-devel?
Requires: gcc make Requires: gcc make
# Suggest: kernel-debuginfo # Suggest: kernel-debuginfo
Requires: systemtap-runtime = %{version}-%{release} Requires: systemtap-runtime = %{version}-%{release}
Requires: sudo Requires(pre): shadow-utils
Requires: sqlite
%if %{bundled_elfutils} %if %{bundled_elfutils}
Source1: elfutils-%{elfutils_version}.tar.gz Source1: elfutils-%{elfutils_version}.tar.gz
@ -57,8 +68,6 @@ Patch1: elfutils-portability.patch
BuildRequires: elfutils-devel >= %{elfutils_version} BuildRequires: elfutils-devel >= %{elfutils_version}
%endif %endif
Patch2: elfutils-configury.patch
%description %description
SystemTap is an instrumentation system for systems running Linux 2.6. SystemTap is an instrumentation system for systems running Linux 2.6.
Developers can write instrumentation to collect data on the operation Developers can write instrumentation to collect data on the operation
@ -67,7 +76,7 @@ of the system.
%package runtime %package runtime
Summary: Instrumentation System Runtime Summary: Instrumentation System Runtime
Group: Development/System Group: Development/System
License: GPL License: GPLv2+
URL: http://sourceware.org/systemtap/ URL: http://sourceware.org/systemtap/
Requires: kernel >= 2.6.9-11 Requires: kernel >= 2.6.9-11
@ -76,6 +85,17 @@ SystemTap runtime is the runtime component of an instrumentation
system for systems running Linux 2.6. Developers can write system for systems running Linux 2.6. Developers can write
instrumentation to collect data on the operation of the system. instrumentation to collect data on the operation of the system.
%package testsuite
Summary: Instrumentation System Testsuite
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap dejagnu
%description testsuite
The testsuite allows testing of the entire SystemTap toolchain
without having to rebuild from sources.
%prep %prep
%setup -q %{?setup_elfutils} %setup -q %{?setup_elfutils}
@ -86,15 +106,9 @@ sleep 1
find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch
sleep 1 sleep 1
find . \( -name configure -o -name config.h.in \) -print | xargs touch find . \( -name configure -o -name config.h.in \) -print | xargs touch
# XXX trivial patch for 0.128
sed -i /ifndef/s/PACKAGE/PACKAGE_NAME/ libdwfl/libdwflP.h
cd .. cd ..
%endif %endif
%patch2 -p0
%build %build
%if %{bundled_elfutils} %if %{bundled_elfutils}
@ -112,7 +126,12 @@ cd ..
%define elfutils_mflags LD_LIBRARY_PATH=`pwd`/lib-elfutils %define elfutils_mflags LD_LIBRARY_PATH=`pwd`/lib-elfutils
%endif %endif
%configure %{?elfutils_config} %if %{sqlite}
# Include the coverage testing support
%define sqlite_config --enable-sqlitedb
%endif
%configure %{?elfutils_config} %{?sqlite_config}
make %{?_smp_mflags} make %{?_smp_mflags}
# Fix paths in the example scripts # Fix paths in the example scripts
@ -125,19 +144,35 @@ chmod -x examples/samples/kmalloc-top
rm -rf ${RPM_BUILD_ROOT} rm -rf ${RPM_BUILD_ROOT}
make DESTDIR=$RPM_BUILD_ROOT install make DESTDIR=$RPM_BUILD_ROOT install
%check # Because "make install" may install staprun with mode 04111, the
make check %{?elfutils_mflags} || : # post-processing programs rpmbuild runs won't be able to read it.
# So, we change permissions so that they can read it. We'll set the
# permissions back to 04111 in the %files section below.
chmod 755 $RPM_BUILD_ROOT%{_bindir}/staprun
# Copy over the testsuite
cp -rp testsuite $RPM_BUILD_ROOT%{_datadir}/systemtap
if [ -f $RPM_BUILD_ROOT%{_libdir}/%{name}/staplog.so ]; then
echo %{_libdir}/%{name}/staplog.so > runtime-addl-files.txt
else
touch runtime-addl-files.txt
fi
%clean %clean
rm -rf ${RPM_BUILD_ROOT} rm -rf ${RPM_BUILD_ROOT}
%pre
getent group stapdev >/dev/null || groupadd -r stapdev
getent group stapusr >/dev/null || groupadd -r stapusr
exit 0
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%doc README AUTHORS NEWS COPYING examples %doc README AUTHORS NEWS COPYING examples
%{_bindir}/stap %{_bindir}/stap
%{_bindir}/lket-b2a
%{_mandir}/man1/* %{_mandir}/man1/*
%{_mandir}/man5/* %{_mandir}/man5/*
@ -147,18 +182,29 @@ rm -rf ${RPM_BUILD_ROOT}
%if %{bundled_elfutils} %if %{bundled_elfutils}
%dir %{_libdir}/%{name} %dir %{_libdir}/%{name}
%{_libdir}/%{name}/*.so* %{_libdir}/%{name}/lib*.so*
%endif %endif
%files runtime %files runtime -f runtime-addl-files.txt
%defattr(-,root,root) %defattr(-,root,root)
%{_bindir}/staprun %attr(4111,root,root) %{_bindir}/staprun
%{_libexecdir}/systemtap %{_libexecdir}/systemtap
%{_mandir}/man8/* %{_mandir}/man8/*
%doc README AUTHORS NEWS COPYING %doc README AUTHORS NEWS COPYING
%files testsuite
%defattr(-,root,root)
%{_datadir}/systemtap/testsuite
%changelog %changelog
* Thu Aug 9 2007 David Smith <dsmith@redhat.com> - 0.6-1
- Bumped version, added libcap-devel BuildRequires.
* Wed Jul 11 2007 Will Cohen <wcohen@redhat.com> - 0.5.14-2
- Fix Requires and BuildRequires for sqlite.
* Tue Jul 2 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.14-1 * Tue Jul 2 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.14-1
- Many robustness improvements: 1117, 1134, 1305, 1307, 1570, 1806, - Many robustness improvements: 1117, 1134, 1305, 1307, 1570, 1806,
2033, 2116, 2224, 2339, 2341, 2406, 2426, 2438, 2583, 3037, 2033, 2116, 2224, 2339, 2341, 2406, 2426, 2438, 2583, 3037,