3 %bcond_without java # JNI interface [builds with java-sun 1.6, but not gcj 4.9]
4 %bcond_without python # Python agent
5 %bcond_without systemtap # SystemTap integration
6 %bcond_without static_libs # static libraries
8 Summary: LTTng Userspace Tracer
9 Summary(pl.UTF-8): LTTng Userspace Tracer - narzędzia LTTng do śledzenia przestrzeni użytkownika
13 License: LGPL v2.1 (library), MIT (headers), GPL v2 (programs)
15 Source0: https://lttng.org/files/lttng-ust/%{name}-%{version}.tar.bz2
16 # Source0-md5: 4077be3f26d293d95fd779d12b830a10
17 Patch0: %{name}-link.patch
18 Patch2: %{name}-python.patch
19 URL: https://lttng.org/
20 BuildRequires: autoconf >= 2.69
21 BuildRequires: automake >= 1:1.12
23 BuildRequires: cmake >= 2.8.11
24 BuildRequires: libstdc++-devel >= 6:4.7
25 BuildRequires: libtool >= 2:2
26 BuildRequires: numactl-devel
27 BuildRequires: pkgconfig
28 %{?with_python:BuildRequires: python >= 1:2.7}
29 %{?with_python:BuildRequires: python-modules >= 1:2.7}
30 BuildRequires: rpmbuild(macros) >= 1.294
31 BuildRequires: sed >= 4.0
32 %{?with_systemtap:BuildRequires: systemtap-sdt-devel}
33 BuildRequires: userspace-rcu-devel >= 0.13
35 BuildRequires: java-log4j
37 BuildRequires: jpackage-utils
39 Requires: userspace-rcu >= 0.13
40 ExclusiveArch: %{ix86} %{x8664} x32 %{arm} aarch64 mips ppc ppc64 s390 s390x tile
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43 # non-function rcu_reader_bp symbol
44 %define skip_post_check_so_1 liblttng-ust\.so.* liblttng-ust-cyg-profile\.so.* liblttng-ust-cyg-profile-fast\.so.* liblttng-ust-dl\.so.* liblttng-ust-java\.so.* liblttng-ust-python-agent\.so.* liblttng-ust-tracepoint\.so.*
45 # non-function lttng_ust_context_info_tls symbol
46 %define skip_post_check_so_2 liblttng-ust-jul-jni\.so.* liblttng-ust-log4j-jni\.so.*
47 # lttng_ust_sigbus_state symbol must be defined in executable
48 %define skip_post_check_so_3 liblttng-ust-ctl\.so.*
50 %define skip_post_check_so %{skip_post_check_so_1} %{skip_post_check_so_2} %{skip_post_check_so_3}
53 The LTTng Userspace Tracer (UST) is a library accompanied by a set of
54 tools to trace userspace code.
56 %description -l pl.UTF-8
57 LTTng Userspace Tracer (UST) to biblioteka, której towarzyszą
58 narzędzia do śledzenia kodu w przestrzeni użytkownika.
61 Summary: Header files for LTTNG-UST libraries
62 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek LTTNG-UST
63 Group: Development/Libraries
64 Requires: %{name} = %{version}-%{release}
65 Requires: userspace-rcu-devel >= 0.13
66 %{?with_systemtap:Requires: systemtap-sdt-devel}
69 Header files for LTTNG-UST libraries.
71 %description devel -l pl.UTF-8
72 Pliki nagłówkowe bibliotek LTTNG-UST.
75 Summary: Static LTTNG-UST libraries
76 Summary(pl.UTF-8): Statyczne biblioteki LTTNG-UST
77 Group: Development/Libraries
78 Requires: %{name}-devel = %{version}-%{release}
81 Static LTTNG-UST libraries.
83 %description static -l pl.UTF-8
84 Statyczne biblioteki LTTNG-UST.
86 %package -n java-lttng-ust
87 Summary: JNI interface for LTTng Userspace Tracer library
88 Summary(pl.UTF-8): Interfejs JNI do biblioteki LTTng Userspace Tracer
90 Requires: %{name} = %{version}-%{release}
92 %description -n java-lttng-ust
93 JNI interface for LTTng Userspace Tracer library.
95 %description -n java-lttng-ust -l pl.UTF-8
96 Interfejs JNI do biblioteki LTTng Userspace Tracer.
98 %package -n python-lttng-ust
99 Summary: Python agent for LTTng Userspace Tracer library
100 Summary(pl.UTF-8): Agent Pythona do biblioteki LTTng Userspace Tracer
101 Group: Libraries/Python
102 Requires: %{name} = %{version}-%{release}
104 %description -n python-lttng-ust
105 Python agent for LTTng Userspace Tracer library.
107 %description -n python-lttng-ust -l pl.UTF-8
108 Agent Pythona do biblioteki LTTng Userspace Tracer.
115 %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' tools/lttng-gen-tp
119 %{__aclocal} -I config
123 export CLASSPATH=.:%{_javadir}/log4j.jar
125 %{?with_java:JAVA_HOME="%{java_home}" JAVAC=javac} \
126 --disable-silent-rules \
127 %{?with_java:--enable-jni-interface --enable-java-agent-all} \
128 %{?with_python:--enable-python-agent} \
129 %{?with_systemtap:--with-sdt} \
130 %{?with_static_libs:--enable-static}
135 rm -rf $RPM_BUILD_ROOT
138 DESTDIR=$RPM_BUILD_ROOT \
139 lttnglibjavadir=%{_javadir}
141 # *.la kept - no .pc files for individual libraries
143 install -d $RPM_BUILD_ROOT%{_examplesdir}
144 %{__mv} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
146 %{__rm} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/{ChangeLog,README.md,java-agent.txt}
149 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.la \
150 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.a}
153 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.la \
154 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.a}
159 rm -rf $RPM_BUILD_ROOT
161 %post -p /sbin/ldconfig
162 %postun -p /sbin/ldconfig
164 %post -n java-lttng-ust -p /sbin/ldconfig
165 %postun -n java-lttng-ust -p /sbin/ldconfig
167 %post -n python-lttng-ust -p /sbin/ldconfig
168 %postun -n python-lttng-ust -p /sbin/ldconfig
171 %defattr(644,root,root,755)
172 %doc ChangeLog LICENSE README.md
173 %attr(755,root,root) %{_libdir}/liblttng-ust.so.*.*.*
174 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust.so.1
175 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so.*.*.*
176 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-common.so.1
177 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so.*.*.*
178 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-ctl.so.5
179 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so.*.*.*
180 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile.so.1
181 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so.*.*.*
182 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile-fast.so.1
183 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so.*.*.*
184 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-dl.so.1
185 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so.*.*.*
186 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fd.so.1
187 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so.*.*.*
188 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fork.so.1
189 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so.*.*.*
190 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-libc-wrapper.so.1
191 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so.*.*.*
192 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-pthread-wrapper.so.1
193 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so.*.*.*
194 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-tracepoint.so.1
197 %defattr(644,root,root,755)
198 %attr(755,root,root) %{_bindir}/lttng-gen-tp
199 %attr(755,root,root) %{_libdir}/liblttng-ust.so
200 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so
201 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so
202 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so
203 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so
204 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so
205 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so
206 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so
207 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so
208 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so
209 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so
210 %{_libdir}/liblttng-ust.la
211 %{_libdir}/liblttng-ust-common.la
212 %{_libdir}/liblttng-ust-ctl.la
213 %{_libdir}/liblttng-ust-cyg-profile.la
214 %{_libdir}/liblttng-ust-cyg-profile-fast.la
215 %{_libdir}/liblttng-ust-dl.la
216 %{_libdir}/liblttng-ust-fd.la
217 %{_libdir}/liblttng-ust-fork.la
218 %{_libdir}/liblttng-ust-libc-wrapper.la
219 %{_libdir}/liblttng-ust-pthread-wrapper.la
220 %{_libdir}/liblttng-ust-tracepoint.la
222 %{_pkgconfigdir}/lttng-ust.pc
223 %{_pkgconfigdir}/lttng-ust-ctl.pc
224 %{_mandir}/man1/lttng-gen-tp.1*
225 %{_mandir}/man3/do_tracepoint.3*
226 %{_mandir}/man3/lttng-ust.3*
227 %{_mandir}/man3/lttng-ust-cyg-profile.3*
228 %{_mandir}/man3/lttng-ust-dl.3*
229 %{_mandir}/man3/lttng_ust_*.3*
230 %{_mandir}/man3/tracef.3*
231 %{_mandir}/man3/tracelog.3*
232 %{_mandir}/man3/tracepoint.3*
233 %{_mandir}/man3/tracepoint_enabled.3*
234 %{_examplesdir}/%{name}-%{version}
236 %if %{with static_libs}
238 %defattr(644,root,root,755)
239 %{_libdir}/liblttng-ust.a
240 %{_libdir}/liblttng-ust-common.a
241 %{_libdir}/liblttng-ust-ctl.a
242 %{_libdir}/liblttng-ust-cyg-profile.a
243 %{_libdir}/liblttng-ust-cyg-profile-fast.a
244 %{_libdir}/liblttng-ust-dl.a
245 %{_libdir}/liblttng-ust-fd.a
246 %{_libdir}/liblttng-ust-fork.a
247 %{_libdir}/liblttng-ust-libc-wrapper.a
248 %{_libdir}/liblttng-ust-pthread-wrapper.a
249 %{_libdir}/liblttng-ust-tracepoint.a
253 %files -n java-lttng-ust
254 %defattr(644,root,root,755)
255 %doc doc/java-agent.txt
256 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so.*.*.*
257 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-context-jni.so.0
258 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so
259 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so.*.*.*
260 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-java.so.0
261 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so
262 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so.*.*.*
263 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-jul-jni.so.0
264 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so
265 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so.*.*.*
266 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-log4j-jni.so.0
267 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so
268 %{_javadir}/liblttng-ust-agent.jar
269 %{_javadir}/liblttng-ust-java.jar
270 %{_javadir}/lttng-ust-agent-all-1.0.0.jar
271 %{_javadir}/lttng-ust-agent-all.jar
272 %{_javadir}/lttng-ust-agent-common-1.0.0.jar
273 %{_javadir}/lttng-ust-agent-common.jar
274 %{_javadir}/lttng-ust-agent-jul-1.0.0.jar
275 %{_javadir}/lttng-ust-agent-jul.jar
276 %{_javadir}/lttng-ust-agent-log4j-1.0.0.jar
277 %{_javadir}/lttng-ust-agent-log4j.jar
281 %files -n python-lttng-ust
282 %defattr(644,root,root,755)
283 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so.*.*.*
284 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-python-agent.so.1
285 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so
286 %{py_sitescriptdir}/lttngust
287 %{py_sitescriptdir}/lttngust-%{version}-py*.egg-info