strace/strace.spec

95 lines
2.8 KiB
RPMSpec
Raw Normal View History

#
# spec file for package strace
#
# Copyright (c) 2023 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: 6.4
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
Accepting request 576863 from home:AndreasSchwab - Update to strace 4.21 * Changes in behaviour * Warning is now issued when -F option is used. * Warning is now issued when a tracee with unsupported personality is attached. * Unknown syscall numbers are now printed in hexadecimal form. * Improvements * Implemented decoding of netlink descriptor attributes as file descriptors. * Implemented decoding of hugetlb page size selection flags. * Implemented decoding of BPF_PROG_TEST_RUN, BPF_PROG_GET_NEXT_ID, BPF_MAP_GET_NEXT_ID, BPF_PROG_GET_FD_BY_ID, BPF_MAP_GET_FD_BY_ID, and BPF_OBJ_GET_INFO_BY_FD commands of bpf syscall. * Enhanced decoding of get_thread_area, memfd_create, modify_ldt, perf_event_open, reboot, s390_guarded_storage, s390_pcio_mmio_read, s390_pci_mmio_write, s390_runtime_instr, s390_sthyi, set_thread_area, and shmget syscalls. * Implemented decoding of KVM_* and DM_LIST_DEVICES ioctl commands. * Implemented decoding of riscv_flush_icache syscall. * Enhanced decoding of getsockopt and setsockopt syscalls for SOL_NETLINK level. * Enhanced decoding of BPF_MAP_CREATE command of bpf syscall. * Print values returned by mq_open syscall and first arguments of mq_getsetattr, mq_notify, mq_timedreceive, and mq_timedsend syscalls as file descriptors. * Added decoding of get_tls syscall on arm. * Added -e trace=%pure option for tracing system calls with no arguments that never fail. * Updated lists of IPV6_*, MAP_*, MEMBARRIER_CMD_*, MSG_*, NT_*, PKEY_*, SHM_*, and TCP_* constants. * Added manual page for the strace-log-merge command. OBS-URL: https://build.opensuse.org/request/show/576863 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=83
2018-02-15 00:00:30 +01:00
#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
- updated to 4.7 * Changes in behavior * strace no longer suspends waitpid until there is a child for waitpid'ing process to collect status from. * strace no longer detaches from a tracee which is supposed to be going to die. * strace now issues a new message: "+++ exited with EXITCODE +++" which shows exact moment strace got exit notification, analogous to existing "+++ killed by SIG +++" message. * Improvements * Added x32 personality support (x86_64 architecture). * Added -y and -P options to print file descriptor paths and filter by those paths. * Added -I option to control strace interactivity. * Allowed -p option to take comma or whitespace-separated list of PIDs. * Added strace_log_merge script helper to merge timestamped "strace -ff" log files. * Implemented decoding of clock_adjtime, get_robust_list, migrate_pages, preadv, prlimit64, process_vm_readv, process_vm_writev, pwritev, recvmmsg, recvmsg, rt_tgsigqueueinfo, sendmmsg, setns, set_robust_list, sched_rr_get_interval, splice, syslog, tee and vmsplice syscalls. * Enhanced decoding of capget, capset, getrlimit, flistxattr, io_submit, listxattr, setrlimit and swapon syscalls. * Implemented decoding of loop and mtd ioctls. * Added syscall entries for new linux syscalls. * Added syscall entries for direct socket system calls on powerpc. * Updated the list of errno constants. * Updated lists of MSG_*, STA_*, and TCP_* constants. * Regenerated the list of ioctl names from Linux 3.3. OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=22
2012-05-03 13:03:48 +02:00
BuildRequires: libacl-devel
BuildRequires: libaio-devel
Accepting request 617219 from home:AndreasSchwab:f - Update to strace 4.23 * Changes in behaviour * On x32 personality, 64-bit syscalls (such as readv) are now shown with "#64" suffix instead of "64:" prefix. * Changed error number output format: error numbers are consistently printed as "-1 ECONST (Error description)" for known errors and as "-1 (errno 123)" for unknown errors, regardless of -e raw qualification settings. * Unfetchable addresses inside arrays are now printed as comments. * Obsolete IA-32 mode syscall names are no longer printed on ia64. * Improvements * Implemented libdw backend for -k option, configured at build time using --with-libdw option. * Added -X option for configuring xlat output formatting (addresses Debian bug #692915). * Added support for personality designation ("64", "32", or "x32") to syscall qualifications in -e trace expressions. * Implemented injection of syscalls with no side effects as an alternative to injection of an invalid syscall (-e inject=SET:syscall= expression). * Improved support for reproducible builds (addresses Debian bug #896016). * Implemented decoding of BPF_PROG_QUERY and BPF_RAW_TRACEPOINT_OPEN bpf syscall commands. * Implemented decoding of INOTIFY_IOC_SETNEXTWD and PERF_EVENT_IOC_* ioctl commands. * Implemented decoding of PR_GET_SPECULATION_CTRL and PR_SET_SPECULATION_CTRL prctl syscall options. * Enhanced decoding of bpf, getsockopt, setsockopt, and socket syscalls. * Enhanced decoding of NETLINK_KOBJECT_UEVENT and NETLINK_ROUTE protocols. * Enhanced decoding of *_DIAG_MEMINFO netlink attributes. * Enhanced decoding of BTRFS_*, FS_IOC_*, SIOCGIFHWADDR, and SIOCSIFHWADDR OBS-URL: https://build.opensuse.org/request/show/617219 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=89
2018-06-16 16:58:57 +02:00
%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
Accepting request 617219 from home:AndreasSchwab:f - Update to strace 4.23 * Changes in behaviour * On x32 personality, 64-bit syscalls (such as readv) are now shown with "#64" suffix instead of "64:" prefix. * Changed error number output format: error numbers are consistently printed as "-1 ECONST (Error description)" for known errors and as "-1 (errno 123)" for unknown errors, regardless of -e raw qualification settings. * Unfetchable addresses inside arrays are now printed as comments. * Obsolete IA-32 mode syscall names are no longer printed on ia64. * Improvements * Implemented libdw backend for -k option, configured at build time using --with-libdw option. * Added -X option for configuring xlat output formatting (addresses Debian bug #692915). * Added support for personality designation ("64", "32", or "x32") to syscall qualifications in -e trace expressions. * Implemented injection of syscalls with no side effects as an alternative to injection of an invalid syscall (-e inject=SET:syscall= expression). * Improved support for reproducible builds (addresses Debian bug #896016). * Implemented decoding of BPF_PROG_QUERY and BPF_RAW_TRACEPOINT_OPEN bpf syscall commands. * Implemented decoding of INOTIFY_IOC_SETNEXTWD and PERF_EVENT_IOC_* ioctl commands. * Implemented decoding of PR_GET_SPECULATION_CTRL and PR_SET_SPECULATION_CTRL prctl syscall options. * Enhanced decoding of bpf, getsockopt, setsockopt, and socket syscalls. * Enhanced decoding of NETLINK_KOBJECT_UEVENT and NETLINK_ROUTE protocols. * Enhanced decoding of *_DIAG_MEMINFO netlink attributes. * Enhanced decoding of BTRFS_*, FS_IOC_*, SIOCGIFHWADDR, and SIOCSIFHWADDR OBS-URL: https://build.opensuse.org/request/show/617219 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=89
2018-06-16 16:58:57 +02:00
%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
%configure \
Accepting request 733200 from home:Andreas_Schwab:Factory - Update to strace 5.3 * Improvements * Implemented usage of seccomp-bpf for stopping tracees only for filtered syscalls. Use --seccomp-bpf option to enable. * Implemented decoding of pidfd_open and clone3 syscalls. * Enhanced decoding of io_cancel, io_submit, s390_sthyi, and syslog syscalls. * Enhanced decoding of NETLINK_ROUTE protocol. * Implemented decoding of UNIX_DIAG_UID netlink attribute. * Implemented decoding of WDIOC_* ioctl commands. * Enchanced syscall count statistics: overhead is now applied per-call, added ability for sorting on errors field. * Syscall delay injection and overhead values can now be supplied with time measure unit suffix and provided in IEEE 754 floating point format. * Updated lists of AUDIT_*, BPF_*, ETH_*, KEYCTL_*, KVM_*, MAP_*, SO_*, TCP_*, V4L2_*, XDP_*, and *_MAGIC constants. * Updated lists of ioctl commands from Linux 5.3. * Enhanced manual page. * Bug fixes * Fixed syscall tampering on arc, avr32, csky, ia64, m68k, metag, mips, nios2, or1k, riscv, s390, s390x, sparc, sparc64, and tile architectures when PTRACE_GET_SYSCALL_INFO is in use. * Fixed decoding of sockaddr_hci (AF_BLUETOOTH) addresses that lack hci_channel field. * Fixed evdev ioctl bitset decoding. * Fixed tests on alpha with Linux kernel headers 5.1+. * Portability * Removed support for decoding syscalls in range [1024...1079] on AArch64 architecture as this range has never been implemented in mainline kernel releases. OBS-URL: https://build.opensuse.org/request/show/733200 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=113
2019-09-25 17:37:14 +02:00
%ifarch aarch64
--disable-mpers \
%endif
%{nil}
make %{?_smp_mflags}
Accepting request 445751 from home:Andreas_Schwab:Factory - Update to strace 4.15 * Changes in behavior * Time stamps are now printed according to ISO 8601. * Changed output format of val3 parameter of futex FUTEX_WAKE_OP operation. * The last argument of mincore, sched_getaffinity, and sched_setaffinity syscalls is now formatted as an array. * Improvements * Implemented syscall fault injection (-e fault=... option). * Implemented decoding of DM_* ioctl commands. * Implemented decoding of attr parameter of perf_event_open syscall. * Implemented decoding of pkey_alloc, pkey_free, and pkey_mprotect syscalls. * Implemented dumping of mq_timedsend and mq_timedreceive syscalls. * Implemented decoding of PR_SET_FP_MODE and PR_GET_FP_MODE operations of prctl syscall. * Implemented PTRACE_GETREGS API support on m68k. * Updated lists of ARCH_*, BPF_*, BTRFS_*, FALLOC_*, MS_*, *_MAGIC, and V4L2_* constants. * Updated lists of ioctl commands from Linux 4.9. * Added decoding of recently added syscalls on arc, x32, and xtensa. * Enhanced manual page. * Bug fixes * Fixed corner cases in decoding of exit, exit_group, futimesat, getgroups, getresuid, init_module, inotify_init1, kcmp, kexec_load, lookup_dcookie, mq_getsetattr, mq_notify, mq_open, mq_timedreceive, mq_timedsend, name_to_handle_at, prctl, process_vm_readv, process_vm_writev, setfsuid, setgroups, setns, unshare, and utimes syscalls. * Fixed handling of verbose flag in printing of controls array of struct v4l2_ext_controls. * Fixed omission of field names in the output of capability, sigaction, sigevent, statfs, timespec, timeval, and utimbuf structures. OBS-URL: https://build.opensuse.org/request/show/445751 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=69
2016-12-15 09:06:39 +01:00
# Exclude testsuite for qemu builds, qemu-linux-user doesn't support ptrace.
Accepting request 399945 from home:AndreasSchwab:f - Update to strace 4.12. * Improvements * Implemented simultaneous use of -p option and tracing of a command. * Implemented caching of netlink conversations to reduce amount of time spent in decoding socket details in -yy mode. * Implemented -yy mode decoding of protocol:portid pairs associated with netlink socket descriptors. * Implemented decoding of copy_file_range, preadv2, and pwritev2 syscalls. * Implemented dumping of preadv, preadv2, pwritev, pwritev2, and vmsplice syscalls. * Implemented decoding of BTRFS_* and UFFDIO_* ioctl commands. * Enhanced decoding of BLK*, EVIOC*, RTC_*, and VIDIOC_* ioctl commands. * Enhanced decoding of fstatfs, fstatfs64, get_mempolicy, getdents, getdents64, getgroups, getpriority, kill, mbind, migrate_pages, mknod, mknodat, personality, poll, ppoll, quotactl, rt_sigpending, rt_sigqueueinfo, rt_sigtimedwait, rt_tgsigqueueinfo, sched_getaffinity, sched_setaffinity, seccomp, set_mempolicy, setgroups, setpriority, statfs, statfs64, tgkill, waitid, and xattr family syscalls. * Enhanced decoding of getxpid, getxuid, and getxgid syscalls on alpha. * Enhanced decoding of pipe syscall on alpha, ia64, mips, sh, and sparc. * Added decoding of bind, listen, and setsockopt direct syscalls on sparc. * Added decoding of osf_statfs64 and osf_fstatfs64 syscalls on alpha. * Added decoding of fadvise64 and fadvise64_64 on s390. * Updated lists of AF_*, BPF_MAP_TYPE_*, CLONE_*, EPOLL*, IPV6_*, MADV_*, MSG_*, PTRACE_*, SEGV_*, SO_*, SOL_*, *_MAGIC, and quotactl constants. * Updated lists of ioctl commands from Linux 4.6. * Bug fixes * Fixed build on arc, metag, nios2, or1k, and tile architectures. * Fixed decoding of 32-bit times syscall return value on 64-bit architectures. * Fixed decoding of mlock2 syscall on sparc. OBS-URL: https://build.opensuse.org/request/show/399945 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=63
2016-06-03 11:55:00 +02:00
%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 doc/README-linux-ptrace NEWS
%{_bindir}/strace
%{_bindir}/strace-log-merge
%{_mandir}/man1/strace.1%{ext_man}
Accepting request 576863 from home:AndreasSchwab - Update to strace 4.21 * Changes in behaviour * Warning is now issued when -F option is used. * Warning is now issued when a tracee with unsupported personality is attached. * Unknown syscall numbers are now printed in hexadecimal form. * Improvements * Implemented decoding of netlink descriptor attributes as file descriptors. * Implemented decoding of hugetlb page size selection flags. * Implemented decoding of BPF_PROG_TEST_RUN, BPF_PROG_GET_NEXT_ID, BPF_MAP_GET_NEXT_ID, BPF_PROG_GET_FD_BY_ID, BPF_MAP_GET_FD_BY_ID, and BPF_OBJ_GET_INFO_BY_FD commands of bpf syscall. * Enhanced decoding of get_thread_area, memfd_create, modify_ldt, perf_event_open, reboot, s390_guarded_storage, s390_pcio_mmio_read, s390_pci_mmio_write, s390_runtime_instr, s390_sthyi, set_thread_area, and shmget syscalls. * Implemented decoding of KVM_* and DM_LIST_DEVICES ioctl commands. * Implemented decoding of riscv_flush_icache syscall. * Enhanced decoding of getsockopt and setsockopt syscalls for SOL_NETLINK level. * Enhanced decoding of BPF_MAP_CREATE command of bpf syscall. * Print values returned by mq_open syscall and first arguments of mq_getsetattr, mq_notify, mq_timedreceive, and mq_timedsend syscalls as file descriptors. * Added decoding of get_tls syscall on arm. * Added -e trace=%pure option for tracing system calls with no arguments that never fail. * Updated lists of IPV6_*, MAP_*, MEMBARRIER_CMD_*, MSG_*, NT_*, PKEY_*, SHM_*, and TCP_* constants. * Added manual page for the strace-log-merge command. OBS-URL: https://build.opensuse.org/request/show/576863 OBS-URL: https://build.opensuse.org/package/show/devel:tools/strace?expand=0&rev=83
2018-02-15 00:00:30 +01:00
%{_mandir}/man1/strace-log-merge.1%{ext_man}
%changelog