3 %bcond_without libunwind # strack tracing using libunwind
4 %bcond_without libiberty # symbol demangling in stack backtraces
6 %ifnarch %{ix86} %{x8664} x32 %{arm} hppa ia64 mips ppc ppc64 sh
7 %undefine with_libunwind
14 Summary: prints system call strace of a running process
15 Summary(de.UTF-8): druckt ein Protokoll der Systemaufrufe eines laufenden Prozesses
16 Summary(es.UTF-8): Enseña las llamadas de sistema de un proceso en ejecución
17 Summary(fr.UTF-8): affiche l'appel système strace d'un processus en exécution
18 Summary(pl.UTF-8): strace wyświetla funkcje systemowe wywoływane przez uruchomiony proces
19 Summary(pt_BR.UTF-8): Mostra as chamadas de sistema de um processo rodando
20 Summary(ru.UTF-8): Отслеживает и показывает системные вызовы, связанные с запущенным процессом
21 Summary(tr.UTF-8): Çalışan bir sürecin yaptığı sistem çağrılarını listeler
22 Summary(uk.UTF-8): Відслідковує та показує системні виклики, пов'язані із запущеним процесом
27 Group: Development/Debuggers
28 Source0: https://github.com/strace/strace/releases/download/v%{version}/%{name}-%{version}.tar.xz
29 # Source0-md5: b6e5842f27b5cc9022c8bd7238435a6a
31 URL: https://strace.io/
32 # acl and libaio for headers only
33 BuildRequires: acl-devel
34 %{?with_libiberty:BuildRequires: binutils-devel >= 4:2.30-1}
35 BuildRequires: libaio-devel
36 %{?with_libunwind:BuildRequires: libunwind-devel}
37 BuildRequires: tar >= 1:1.22
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 Strace prints a record of each system call another program makes,
43 including all of the arguments passed to it and the system call's
46 %description -l de.UTF-8
47 Strace druckt ein Protokoll aller von einem anderen Programm
48 ausgegebenen Systemaufrufe, einschließlich aller weitergeleiteten
49 Argumente und dem Ausgabewert des Systemaufrufs.
51 %description -l es.UTF-8
52 Strace imprime una "grabación" de cada llamada de sistema que el
53 programa hace, incluyendo todos los argumentos pasados para él, si la
54 vuelta de cada llamada de sistema es verdadera, o si hay creado error.
56 %description -l fr.UTF-8
57 strace affiche l'enregistrement de chaque appel système que fait un
58 programme ainsi que tous les arguments qui lui ont été passés et la
59 valeur de retour de l'appel.
61 %description -l pl.UTF-8
62 Strace wyświetla informacje o każdym wywołaniu funkcji systemowych
63 przez uruchamiany program, w tym również wszystkie argumenty wywołania
66 %description -l pt_BR.UTF-8
67 Strace imprime uma "gravação" de cada chamada de sistema que o
68 programa faz, incluindo todos os argumentos passados para ele e se o
69 retorno de cada chamada de sistema é verdadeiro ou gerou erro.
71 %description -l ru.UTF-8
72 Программа strace перехватывает и регистрирует системные вызовы,
73 произведенные и полученные исполняющимся процессом. Strace может
74 вывести список всех системных вызовов, их аргументов и возвращаемые
75 ими значения. Strace полезна для диагностики проблем и отладки.
77 %description -l tr.UTF-8
78 strace bir programın çalıştığı sürece yaptığı bütün sistem
79 çağrılarını, gönderdiği parametreler ve geri dönüş değerleriyle
82 %description -l uk.UTF-8
83 Програма strace перехоплює та регіструє системні визови, зроблені та
84 отримані процесом, який виконується. Strace може вивести список усіх
85 системних визовів, їх аргументів та значень, які вони повернули.
86 Strace корисний для діагностики проблем та відладки.
90 Summary(pl.UTF-8): Graf strace
91 Group: Development/Debuggers
92 # NOTE: doesn't require directly strace binary.
95 strace-graph script processes strace -f output. It displays a graph of
96 invoked subprocesses, and is useful for finding out what complex
99 The script can also handle the output with strace -t, -tt, or -ttt. It
100 will add elapsed time for each process in that case.
102 %description graph -l pl.UTF-8
103 Skrypt strace-graph przetwarza wynik strace -f i wyświetla graf
104 wywoływanych podprocesów. Jest przydatny do sprawdzania co robią
107 Skrypt jest w stanie obsłużyć także wyjście ze strace -t, -tt i -ttt.
108 Doda wtedy upływający czas dla każdego procesu.
114 %if %{with libunwind}
116 # /usr/bin/ld: copy reloc against protected `_UPT_accessors' is invalid
117 # /usr/bin/ld: failed to set dynamic section sizes: Bad value
118 # (should be fixed in gcc >(=?) 5.1)
119 CFLAGS="%{rpmcflags} -fPIE"
122 %{!?with_libiberty:--without-libiberty} \
123 %{!?with_libunwind:--without-libunwind} \
124 --enable-mpers=%{?with_mpers:yes}%{!?with_mpers:no}
128 rm -rf $RPM_BUILD_ROOT
131 DESTDIR=$RPM_BUILD_ROOT
133 install -D %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/pl/man1/strace.1
135 cp -p src/strace-graph $RPM_BUILD_ROOT%{_bindir}
138 rm -rf $RPM_BUILD_ROOT
141 %defattr(644,root,root,755)
142 %doc COPYING CREDITS ChangeLog NEWS doc/README-linux-ptrace
143 %attr(755,root,root) %{_bindir}/strace
144 %attr(755,root,root) %{_bindir}/strace-log-merge
145 %{_mandir}/man1/strace.1*
146 %{_mandir}/man1/strace-log-merge.1*
147 %lang(pl) %{_mandir}/pl/man1/strace.1*
150 %defattr(644,root,root,755)
151 %attr(755,root,root) %{_bindir}/strace-graph