release 1.7

This commit is contained in:
Frank Ch. Eigler 2012-02-01 21:55:08 -05:00
parent fc3b63d11a
commit 9da5ca9f79
4 changed files with 220 additions and 202 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@ systemtap-1.3.tar.gz
/systemtap-1.4.tar.gz
/systemtap-1.5.tar.gz
/systemtap-1.6.tar.gz
/systemtap-1.7.tar.gz

View File

@ -1,73 +0,0 @@
diff --git a/cache.cxx b/cache.cxx
index 5104f8d..aaba56f 100644
--- a/cache.cxx
+++ b/cache.cxx
@@ -22,6 +22,7 @@ extern "C" {
#include <sys/stat.h>
#include <fcntl.h>
#include <glob.h>
+#include <unistd.h>
}
using namespace std;
diff --git a/csclient.cxx b/csclient.cxx
index 21f945f..9f8faee 100644
--- a/csclient.cxx
+++ b/csclient.cxx
@@ -24,6 +24,7 @@
#include <algorithm>
extern "C" {
+#include <unistd.h>
#include <linux/limits.h>
#include <sys/time.h>
#include <glob.h>
diff --git a/session.cxx b/session.cxx
index b322600..2436031 100644
--- a/session.cxx
+++ b/session.cxx
@@ -30,6 +30,7 @@ extern "C" {
#include <sys/stat.h>
#include <sys/utsname.h>
#include <elfutils/libdwfl.h>
+#include <unistd.h>
}
#if HAVE_NSS
diff --git a/setupdwfl.cxx b/setupdwfl.cxx
index 71814d7..ee1dbd0 100644
--- a/setupdwfl.cxx
+++ b/setupdwfl.cxx
@@ -23,6 +23,7 @@
extern "C" {
#include <fnmatch.h>
#include <stdlib.h>
+#include <unistd.h>
}
// XXX: also consider adding $HOME/.debug/ for perf build-id-cache
diff --git a/stap-serverd.cxx b/stap-serverd.cxx
index 8ee3b09..9e1345a 100644
--- a/stap-serverd.cxx
+++ b/stap-serverd.cxx
@@ -29,6 +29,7 @@
#include <map>
extern "C" {
+#include <unistd.h>
#include <getopt.h>
#include <wordexp.h>
#include <glob.h>
diff --git a/translate.cxx b/translate.cxx
index 543c908..9d4c137 100644
--- a/translate.cxx
+++ b/translate.cxx
@@ -5569,7 +5569,7 @@ emit_symbol_data (systemtap_session& s)
ofstream kallsyms_out ((s.tmpdir + "/" + symfile).c_str());
- unwindsym_dump_context ctx = { s, kallsyms_out, 0, ~0, s.unwindsym_modules };
+ unwindsym_dump_context ctx = { s, kallsyms_out, 0, ~0UL, s.unwindsym_modules };
// Micro optimization, mainly to speed up tiny regression tests
// using just begin probe.

View File

@ -1 +1 @@
b845ec58bc04cf4cad5c897f67de1308 systemtap-1.6.tar.gz
b61b42b2fc687a8c76621ce8e4b37b17 systemtap-1.7.tar.gz

View File

@ -11,24 +11,46 @@
%{!?pie_supported: %global pie_supported 1}
%{!?with_grapher: %global with_grapher 1}
%{!?with_boost: %global with_boost 0}
%{!?with_publican: %global with_publican 0}
%{!?with_publican: %global with_publican 1}
%{!?publican_brand: %global publican_brand fedora}
Name: systemtap
Version: 1.6
Release: 4%{?dist}
Version: 1.7
Release: 1%{?dist}
# for version, see also configure.ac
Summary: Instrumentation System
# Packaging abstract:
#
# systemtap empty req:-client req:-devel
# systemtap-server /usr/bin/stap-server*, req:-devel
# systemtap-devel /usr/bin/stap, runtime, tapset, req:kernel-devel
# systemtap-runtime /usr/bin/staprun, /usr/bin/stapsh
# systemtap-client /usr/bin/stap, samples, docs, tapset(bonus), req:-runtime
# systemtap-initscript /etc/init.d/systemtap, req:systemtap
# systemtap-sdt-devel /usr/include/sys/sdt.h /usr/bin/dtrace
# systemtap-testsuite /usr/share/systemtap/testsuite*, req:systemtap, req:sdt-devel
# systemtap-grapher /usr/bin/stapgraph, req:systemtap
#
# Typical scenarios:
#
# stap-client: systemtap-client
# stap-server: systemtap-server
# local user: systemtap
#
# Unusual scenarios:
#
# intermediary stap-client for --remote: systemtap-client (-runtime unused)
# intermediary stap-server for --use-server: systemtap-server (-devel unused)
Summary: Programmable system-wide instrumentation system
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Source: ftp://sourceware.org/pub/%{name}/releases/%{name}-%{version}.tar.gz
Obsoletes: systemtap-client < 1.5
# Build*
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: kernel >= 2.6.9-11
BuildRequires: gettext
%if %{with_sqlite}
BuildRequires: sqlite-devel
@ -43,18 +65,7 @@ BuildRequires: crash-devel zlib-devel
%if %{with_rpm}
BuildRequires: rpm-devel glibc-headers
%endif
# Alternate kernel packages kernel-PAE-devel et al have a virtual
# provide for kernel-devel, so this requirement does the right thing.
Requires: kernel-devel
Requires: gcc make
# Suggest: kernel-debuginfo
Requires: systemtap-runtime = %{version}-%{release}
BuildRequires: nss-devel avahi-devel pkgconfig
# Additional requires for things spawned by stap
Requires: coreutils grep sed unzip zip
Requires: openssh-clients
%if %{with_bundled_elfutils}
Source1: elfutils-%{elfutils_version}.tar.gz
Patch1: elfutils-portability.patch
@ -63,7 +74,6 @@ BuildRequires: m4
%else
BuildRequires: elfutils-devel >= %{elfutils_version}
%endif
%if %{with_docs}
BuildRequires: /usr/bin/latex /usr/bin/dvips /usr/bin/ps2pdf latex2html
# On F10, xmlto's pdf support was broken off into a sub-package,
@ -75,7 +85,6 @@ BuildRequires: publican
BuildRequires: /usr/share/publican/Common_Content/%{publican_brand}/defaults.cfg
%endif
%endif
%if %{with_grapher}
BuildRequires: gtkmm24-devel >= 2.8
BuildRequires: libglademm24-devel >= 2.6.7
@ -87,15 +96,66 @@ BuildRequires: boost-devel
%endif
BuildRequires: gettext-devel
Patch2: gcc-4.7.patch
# Install requirements
Requires: systemtap-client = %{version}-%{release}
Requires: systemtap-devel = %{version}-%{release}
%description
SystemTap is an instrumentation system for systems running Linux.
Developers can write instrumentation to collect data on the operation
of the system.
Developers can write instrumentation scripts to collect data on
the operation of the system. The base systemtap package contains/requires
the components needed to locally develop and execute systemtap scripts.
# ------------------------------------------------------------------------
%package server
Summary: Instrumentation System Server
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap-devel = %{version}-%{release}
# On RHEL[45], /bin/mktemp comes from the 'mktemp' package. On newer
# distributions, /bin/mktemp comes from the 'coreutils' package. To
# avoid a specific RHEL[45] Requires, we'll do a file-based require.
Requires: nss /bin/mktemp
Requires: zip unzip
Requires(pre): shadow-utils
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
Requires(postun): initscripts
BuildRequires: nss-devel avahi-devel
%description server
This is the remote script compilation server component of systemtap.
It announces itself to nearby clients with avahi (if available), and
compiles systemtap scripts to kernel objects on their demand.
%package devel
Summary: Programmable system-wide instrumentation system - development headers, tools
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: kernel >= 2.6.9-11
# Alternate kernel packages kernel-PAE-devel et al. have a virtual
# provide for kernel-devel, so this requirement does the right thing,
# at least past RHEL4.
Requires: kernel-devel
Requires: gcc gcc-c++ make
# Suggest: kernel-debuginfo
%description devel
This package contains the components needed to compile a systemtap
script from source form into executable (.ko) forms. It may be
installed on a self-contained developer workstation (along with the
systemtap-client and systemtap-runtime packages), or on a dedicated
remote server (alongside the systemtap-server package). It includes
a copy of the standard tapset library and the runtime library C files.
%package runtime
Summary: Instrumentation System Runtime
Summary: Programmable system-wide instrumentation system - runtime
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
@ -103,40 +163,43 @@ Requires: kernel >= 2.6.9-11
Requires(pre): shadow-utils
%description runtime
SystemTap runtime is the runtime component of an instrumentation
system for systems running Linux. Developers can write
instrumentation to collect data on the operation of the system.
SystemTap runtime contains the components needed to execute
a systemtap script that was already compiled into a module
using a local or remote systemtap-devel installation.
%package testsuite
Summary: Instrumentation System Testsuite
%package client
Summary: Programmable system-wide instrumentation system - client
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap = %{version}-%{release}
Requires: systemtap-sdt-devel = %{version}-%{release}
Requires: dejagnu which prelink
%description testsuite
The testsuite allows testing of the entire SystemTap toolchain
without having to rebuild from sources.
%package server
Summary: Instrumentation System Server
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap = %{version}-%{release}
Requires: avahi avahi-tools nss coreutils
Requires: zip unzip
Requires: systemtap-runtime = %{version}-%{release}
Requires: coreutils grep sed unzip zip
Requires: openssh-clients
%description client
This package contains/requires the components needed to develop
systemtap scripts, and compile them using a local systemtap-devel
or a remote systemtap-server installation, then run them using a
local or remote systemtap-runtime. It includes script samples and
documentation, and a copy of the tapset library for reference.
%package initscript
Summary: Systemtap Initscripts
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap = %{version}-%{release}
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
Requires(postun): initscripts
%description server
This is the remote script compilation server component of systemtap.
It announces itself to local clients with avahi, and compiles systemtap
scripts to kernel objects on their demand.
%description initscript
Sysvinit scripts to launch selected systemtap scripts at system startup.
%package sdt-devel
Summary: Static probe support tools
@ -145,21 +208,26 @@ License: GPLv2+ and Public Domain
URL: http://sourceware.org/systemtap/
%description sdt-devel
Support tools to allow applications to use static probes.
This package includes the <sys/sdt.h> header file used for static
instrumentation compiled into userspace programs and libraries, along
with the optional dtrace-compatibility preprocessor to process related
.d files into tracing-macro-laden .h headers.
%package initscript
Summary: Systemtap Initscripts
%package testsuite
Summary: Instrumentation System Testsuite
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap-runtime = %{version}-%{release}
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
Requires(postun): initscripts
Requires: systemtap = %{version}-%{release}
Requires: systemtap-sdt-devel = %{version}-%{release}
Requires: dejagnu which prelink elfutils grep
%description testsuite
This package includes the dejagnu-based systemtap stress self-testing
suite. This may be used by system administrators to thoroughly check
systemtap on the current system.
%description initscript
Initscript for Systemtap scripts
%if %{with_grapher}
%package grapher
@ -167,13 +235,17 @@ Summary: Instrumentation System Grapher
Group: Development/System
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: systemtap-runtime = %{version}-%{release}
# NB: don't bind it to a particular version (PR13499)
Requires: systemtap
%description grapher
SystemTap grapher is a utility for real-time visualization of
This package includes a utility for real-time visualization of
data from SystemTap instrumentation scripts.
%endif
# ------------------------------------------------------------------------
%prep
%setup -q %{?setup_elfutils}
@ -187,8 +259,6 @@ find . \( -name configure -o -name config.h.in \) -print | xargs touch
cd ..
%endif
%patch2 -p1
%build
%if %{with_bundled_elfutils}
@ -320,15 +390,14 @@ install -m 644 initscript/logrotate.stap-server $RPM_BUILD_ROOT%{_sysconfdir}/lo
%clean
rm -rf ${RPM_BUILD_ROOT}
%pre
getent group stap-server >/dev/null || groupadd -g 155 -r stap-server || groupadd -r stap-server
%pre runtime
getent group stapdev >/dev/null || groupadd -r stapdev
getent group stapusr >/dev/null || groupadd -r stapusr
getent group stapusr >/dev/null || groupadd -g 156 -r stapusr || groupadd -r stapusr
getent group stapsys >/dev/null || groupadd -g 157 -r stapsys || groupadd -r stapsys
getent group stapdev >/dev/null || groupadd -g 158 -r stapdev || groupadd -r stapdev
exit 0
%pre server
getent group stap-server >/dev/null || groupadd -g 155 -r stap-server || groupadd -r stap-server
getent passwd stap-server >/dev/null || \
useradd -c "Systemtap Compile Server" -u 155 -g stap-server -d %{_localstatedir}/lib/stap-server -m -r -s /sbin/nologin stap-server || \
useradd -c "Systemtap Compile Server" -g stap-server -d %{_localstatedir}/lib/stap-server -m -r -s /sbin/nologin stap-server
@ -403,61 +472,10 @@ exit 0
(make -C %{_datadir}/%{name}/runtime/uprobes clean) >/dev/null 2>&1 || true
(/sbin/rmmod uprobes) >/dev/null 2>&1 || true
# ------------------------------------------------------------------------
%files -f %{name}.lang
%defattr(-,root,root)
%doc README README.unprivileged AUTHORS NEWS COPYING examples
%if %{with_docs}
%doc docs.installed/*.pdf
%doc docs.installed/tapsets
%if %{with_publican}
%doc docs.installed/SystemTap_Beginners_Guide
%endif
%endif
%{_bindir}/stap
%{_bindir}/stap-prep
%{_bindir}/stap-report
%{_mandir}/man1/stap.1*
%{_mandir}/man1/stap-merge.1*
%{_mandir}/man3/*
%{_mandir}/man7/stappaths.7*
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/runtime
%{_datadir}/%{name}/tapset
%if %{with_bundled_elfutils}
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/lib*.so*
%endif
# Make sure that the uprobes module can be built by root and by the server
%dir %attr(0775,root,stap-server) %{_datadir}/%{name}/runtime/uprobes
%files runtime -f %{name}.lang
%defattr(-,root,root)
%attr(4110,root,stapusr) %{_bindir}/staprun
%{_bindir}/stapsh
%{_bindir}/stap-merge
%{_bindir}/stap-report
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/stapio
%{_libexecdir}/%{name}/stap-env
%{_libexecdir}/%{name}/stap-authorize-cert
%if %{with_crash}
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/staplog.so*
%endif
%{_mandir}/man7/stappaths.7*
%{_mandir}/man8/staprun.8*
%doc README README.security AUTHORS NEWS COPYING
%files testsuite
%defattr(-,root,root)
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/testsuite
# The master "systemtap" rpm doesn't include any files.
%files server -f %{name}.lang
%defattr(-,root,root)
@ -479,14 +497,65 @@ exit 0
%ghost %config(noreplace) %attr(0644,stap-server,stap-server) %{_localstatedir}/log/stap-server/log
%ghost %attr(0755,stap-server,stap-server) %{_localstatedir}/run/stap-server
%doc initscript/README.stap-server
%doc README README.unprivileged AUTHORS NEWS COPYING
%files sdt-devel
%files devel -f %{name}.lang
%{_bindir}/stap
%{_bindir}/stap-prep
%{_bindir}/stap-report
%dir %{_datadir}/%{name}/runtime
%{_datadir}/%{name}/runtime
%dir %{_datadir}/%{name}/tapset
%{_datadir}/%{name}/tapset
%{_mandir}/man1/stap.1*
%{_mandir}/man7/stappaths.7*
%doc README README.unprivileged AUTHORS NEWS COPYING
%if %{with_bundled_elfutils}
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/lib*.so*
%endif
%files runtime -f %{name}.lang
%defattr(-,root,root)
%{_bindir}/dtrace
%{_includedir}/sys/sdt.h
%{_includedir}/sys/sdt-config.h
%{_mandir}/man1/dtrace.1*
%doc README AUTHORS NEWS COPYING
%attr(4110,root,stapusr) %{_bindir}/staprun
%{_bindir}/stapsh
%{_bindir}/stap-merge
%{_bindir}/stap-report
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/stapio
%{_libexecdir}/%{name}/stap-env
%{_libexecdir}/%{name}/stap-authorize-cert
%if %{with_crash}
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/staplog.so*
%endif
%{_mandir}/man7/stappaths.7*
%{_mandir}/man8/staprun.8*
%doc README README.security AUTHORS NEWS COPYING
%files client -f %{name}.lang
%defattr(-,root,root)
%doc README README.unprivileged AUTHORS NEWS COPYING examples
%if %{with_docs}
%doc docs.installed/*.pdf
%doc docs.installed/tapsets/*.html
%if %{with_publican}
%doc docs.installed/SystemTap_Beginners_Guide
%endif
%endif
%{_bindir}/stap
%{_bindir}/stap-prep
%{_bindir}/stap-report
%{_mandir}/man1/stap.1*
%{_mandir}/man1/stap-merge.1*
%{_mandir}/man3/*
%{_mandir}/man7/stappaths.7*
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/tapset
%files initscript
%defattr(-,root,root)
@ -499,6 +568,22 @@ exit 0
%ghost %{_localstatedir}/run/systemtap
%doc initscript/README.systemtap
%files sdt-devel -f %{name}.lang
%defattr(-,root,root)
%{_bindir}/dtrace
%{_includedir}/sys/sdt.h
%{_includedir}/sys/sdt-config.h
%{_mandir}/man1/dtrace.1*
%doc README AUTHORS NEWS COPYING
%files testsuite
%defattr(-,root,root)
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/testsuite
%if %{with_grapher}
%files grapher
%defattr(-,root,root)
@ -508,8 +593,13 @@ exit 0
%{_mandir}/man1/stapgraph.1*
%endif
# ------------------------------------------------------------------------
%changelog
* Wed Feb 01 2012 Frank Ch. Eigler <fche@redhat.com> - 1.7-1
- Upstream release.
- Reorganize subpackages, new -client and -devel for subset installations.
* Sat Jan 14 2012 Mark Wielaard <mjw@redhat.com> - 1.6-4
- Fixes for gcc-4.7 based on upstream commits e14c86 and 47caa9.