systemtap/systemtap.spec

211 lines
5.5 KiB
RPMSpec

#
# spec file for package systemtap (Version 1.0)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: systemtap
BuildRequires: gcc-c++ glib2-devel libcap-devel libebl-devel pkg-config sqlite-devel
BuildRequires: mozilla-nspr-devel mozilla-nss-devel mozilla-nss-tools
%define use_snapshot 0
License: GPLv2+
Version: 1.0
Release: 1
Summary: Instrumentation System
Group: Development/Tools/Debuggers
Url: http://sourceware.org/systemtap/
# Requires: kernel-source gcc make
# Suggest: kernel-smp-debuginfo
%if %use_snapshot
%define package_version 20090214
%else
%define package_version %{version}
%endif
Source: ftp://sources.redhat.com/pub/systemtap/snapshots/systemtap-%{package_version}.tar.bz2
Patch: systemtap-docdir-fix.diff
Patch2: systemtap-ioblock-suse-kernel-fix.diff
Patch3: systemtap-CVE-limit-dwarf-expression-stack-size.patch
Patch4: systemtap-CVE-limit-printf-arguments.patch
Patch5: systemtap-CVE-unwind-table-size-checks.patch
Requires: libebl1
Requires: %{name}-runtime = %{version}-%{release}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
SystemTap is an instrumentation system for systems running Linux 2.6.
Developers can write instrumentation to collect data on the operation
of the system.
Authors:
--------
Frank Ch. Eigler <fche@redhat.com>
Graydon Hoare <graydon@redhat.com>
Martin Hunt <hunt@redhat.com>
Tom Zanussi <zanussi@us.ibm.com>
%package runtime
License: GPLv2+
Group: Development/Tools/Debuggers
Summary: Runtime environment for systemtap
%description runtime
SystemTap is an instrumentation system for systems running Linux 2.6.
This package contains the runtime environment for systemtap programs.
Authors:
--------
Frank Ch. Eigler <fche@redhat.com>
Graydon Hoare <graydon@redhat.com>
Martin Hunt <hunt@redhat.com>
Tom Zanussi <zanussi@us.ibm.com>
%package client
License: GPLv2+
Group: Development/Tools/Debuggers
Summary: Systemtap client
Requires: %{name}-runtime = %{version}-%{release}
%description client
SystemTap is an instrumentation system for systems running Linux 2.6.
This package contains the client component for systemtap.
Authors:
--------
Frank Ch. Eigler <fche@redhat.com>
Graydon Hoare <graydon@redhat.com>
Martin Hunt <hunt@redhat.com>
Tom Zanussi <zanussi@us.ibm.com>
%package server
License: GPLv2+
Group: Development/Tools/Debuggers
Summary: Systemtap server
Requires: %{name} = %{version}-%{release}
%description server
SystemTap is an instrumentation system for systems running Linux 2.6.
This package contains the server component of systemtap.
Authors:
--------
Frank Ch. Eigler <fche@redhat.com>
Graydon Hoare <graydon@redhat.com>
Martin Hunt <hunt@redhat.com>
Tom Zanussi <zanussi@us.ibm.com>
%package sdt-devel
License: GPLv2+
Group: Development/Tools/Debuggers
Summary: Static probe support tools
Requires: %{name} = %{version}-%{release}
%description sdt-devel
SystemTap is an instrumentation system for systems running Linux 2.6.
This package contains the support tools for static probes.
Authors:
--------
Frank Ch. Eigler <fche@redhat.com>
Graydon Hoare <graydon@redhat.com>
Martin Hunt <hunt@redhat.com>
Tom Zanussi <zanussi@us.ibm.com>
%prep
%if %use_snapshot
%setup -n src -q
%else
%setup -n %{name}-%{package_version} -q
%endif
%patch -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
autoreconf -fi
%configure
make %{?jobs:-j %jobs}
%install
%if %suse_version < 1030
# workaround for old autoconf
export MKDIR_P="mkdir -p"
%endif
%makeinstall
mkdir -p $RPM_BUILD_ROOT/var/cache/systemtap
# doc subpackage is built separetely
# cp README AUTHORS NEWS COPYING $RPM_BUILD_ROOT%{_docdir}/systemtap/
rm -rf $RPM_BUILD_ROOT%{_docdir}/systemtap
rm -rf $RPM_BUILD_ROOT%{_mandir}/man3
%clean
rm -rf ${RPM_BUILD_ROOT}
%files
%defattr(-,root,root)
%{_bindir}/stap
%{_mandir}/man1/*
%{_datadir}/systemtap
%dir %attr(0755,root,root) /var/cache/systemtap
%files runtime
%defattr(-,root,root)
%{_bindir}/staprun
%{_bindir}/stap-report
%{_libexecdir}/systemtap
%{_mandir}/man8/staprun.*
%files client
%defattr(-,root,root)
%{_bindir}/stap-client
%{_bindir}/stap-find-servers
%{_bindir}/stap-find-or-start-server
%{_bindir}/stap-start-server
%{_bindir}/stap-client-connect
%{_bindir}/stap-env
%files server
%defattr(-,root,root)
%{_bindir}/stap-server
%{_bindir}/stap-serverd
%{_bindir}/stap-start-server
%{_bindir}/stap-stop-server
%{_bindir}/stap-server-connect
%{_bindir}/stap-authorize*
%{_bindir}/stap-env
%{_bindir}/stap-gen-cert
%{_bindir}/stap-sign-module
%{_mandir}/man8/stap-server.*
%files sdt-devel
%defattr(-,root,root)
%{_bindir}/dtrace
%{_includedir}/sys/*.h
%changelog