forked from pool/strace
- Update to strace 5.6 * Changes in behaviour * Messages about unknown tracees are now subject to the strace's quietness setting (-q/--quiet). * If -A option is provided without -o, or -S option without -c/-C, a warning about its uselessness is printed now. * The usage of --seccomp-bpf without -f has no effect now. * Improvements * Every short option now has a long option alias, which also has enabled the following improvements: * Ability to use human-readable settings for -I/--interruptible, -D/--daemonize options. * Ability to silence specific messages using -e quiet/--quiet qualifier (an alias for the -q option), including those that couldn't be silenced previously (path resolution messages and "superseded by execve"). * Ability to specify selected fd decoding features using -e decode-fds/--decode-fds qualifier (an alias for the -y option). * Ability to set precision for the absolute timestamp, relative timestamp, and syscall time output (using --absolute-timestamps, --relative-timestamps, and --syscall-times options, respectively). * Implemented ability to select the set of displayed columns in the call summary output (-U/--summary-columns option). * Implemented ability to sort on any summary column. * Implemented ability to show information about minimum and maximum call duration in the call summary output (addresses Debian bug #240945). * Implemented printing of PIDs associated with pidfds in -yy mode. * Implemented PTRACE_GETREGS API support on hppa, sh, sh64, and xtensa. * Improved performance of libdw-based stack traces printing by implementing a symbol-to-address cache. * Implemented decoding of openat2 and pidfd_getfd syscalls. OBS-URL: https://build.opensuse.org/request/show/791997 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=121
100 lines
3.0 KiB
RPMSpec
100 lines
3.0 KiB
RPMSpec
#
|
|
# spec file for package strace
|
|
#
|
|
# Copyright (c) 2020 SUSE LLC
|
|
#
|
|
# 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: strace
|
|
Version: 5.6
|
|
Release: 0
|
|
Summary: A utility to trace the system calls of a program
|
|
License: BSD-3-Clause
|
|
Group: Development/Tools/Debuggers
|
|
URL: http://strace.io/
|
|
#Freecode-URL: http://freecode.com/projects/strace
|
|
#Git-Clone: git://github.com/strace/strace
|
|
Source: https://github.com/strace/strace/releases/download/v%{version}/%{name}-%{version}.tar.xz
|
|
Source2: https://github.com/strace/strace/releases/download/v%{version}/%{name}-%{version}.tar.xz.asc
|
|
Source3: %{name}.keyring
|
|
Source4: baselibs.conf
|
|
BuildRequires: haveged
|
|
BuildRequires: libacl-devel
|
|
BuildRequires: libaio-devel
|
|
%if 0%{?suse_version} >= 1500
|
|
BuildRequires: libdw-devel
|
|
%else
|
|
# libunwind is broken on ppc and ppc64 and aarch64
|
|
%ifarch %ix86 ia64 x86_64 %arm ppc64le
|
|
BuildRequires: libunwind-devel
|
|
%endif
|
|
%endif
|
|
BuildRequires: lksctp-tools-devel
|
|
BuildRequires: xz
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
%if 0%{?suse_version} > 1140
|
|
BuildRequires: sysvinit-tools
|
|
BuildRequires: time
|
|
%endif
|
|
%ifarch x86_64
|
|
Obsoletes: strace-32bit
|
|
%endif
|
|
|
|
%description
|
|
With strace, you can trace the activity of a program. Information
|
|
about any system calls the program makes and the signals it receives
|
|
and processes can be seen. Child processes can also be tracked.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
# Make sure LTO doesn't break mpers.sh
|
|
%if "%{?_lto_cflags}" != ""
|
|
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
|
%endif
|
|
%configure \
|
|
%ifarch aarch64
|
|
--disable-mpers \
|
|
%endif
|
|
%{nil}
|
|
make %{?_smp_mflags}
|
|
|
|
# Exclude testsuite for qemu builds, qemu-linux-user doesn't support ptrace.
|
|
%if !0%{?qemu_user_space_build}
|
|
%check
|
|
haveged=$(PATH=$PATH:/sbin:%{_sbindir} type -p haveged)
|
|
if test -n "$haveged" && ! /sbin/checkproc $haveged ; then
|
|
$haveged --pidfile=$PWD/haveged.pid < /dev/null 1>&0 2>&0 || true
|
|
fi
|
|
make %{?_smp_mflags} check || cat tests/test-suite.log
|
|
if test -s $PWD/haveged.pid ; then
|
|
/sbin/killproc -p $PWD/haveged.pid $haveged
|
|
fi
|
|
%endif
|
|
|
|
%install
|
|
make %{?_smp_mflags} DESTDIR=%{buildroot} install
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc CREDITS README README-linux-ptrace NEWS
|
|
%{_bindir}/strace
|
|
%{_bindir}/strace-graph
|
|
%{_bindir}/strace-log-merge
|
|
%{_mandir}/man1/strace.1%{ext_man}
|
|
%{_mandir}/man1/strace-log-merge.1%{ext_man}
|
|
|
|
%changelog
|