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: 6bc28a19f0d4a16ac28e0dbf91d7cc8b
17 Patch0: %{name}-link.patch
18 Patch1: %{name}-java.patch
19 Patch2: %{name}-python.patch
20 URL: https://lttng.org/
21 BuildRequires: autoconf >= 2.69
22 BuildRequires: automake >= 1:1.12
24 BuildRequires: cmake >= 2.8.11
25 BuildRequires: libstdc++-devel >= 6:4.7
26 BuildRequires: libtool >= 2:2
27 BuildRequires: numactl-devel
28 BuildRequires: pkgconfig
29 %{?with_python:BuildRequires: python >= 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.
116 %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' tools/lttng-gen-tp
120 %{__aclocal} -I config
124 export CLASSPATH=.:%{_javadir}/log4j.jar
126 %{?with_java:JAVA_HOME="%{java_home}" JAVAC=javac} \
127 --disable-silent-rules \
128 %{?with_java:--enable-jni-interface --enable-java-agent-all} \
129 %{?with_python:--enable-python-agent} \
130 %{?with_systemtap:--with-sdt} \
131 %{?with_static_libs:--enable-static}
136 rm -rf $RPM_BUILD_ROOT
139 DESTDIR=$RPM_BUILD_ROOT \
140 lttnglibjavadir=%{_javadir}
142 # *.la kept - no .pc files for individual libraries
144 install -d $RPM_BUILD_ROOT%{_examplesdir}
145 %{__mv} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
147 %{__rm} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/{ChangeLog,README.md,java-agent.txt}
150 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.la \
151 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.a}
154 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.la \
155 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.a}
160 rm -rf $RPM_BUILD_ROOT
162 %post -p /sbin/ldconfig
163 %postun -p /sbin/ldconfig
165 %post -n java-lttng-ust -p /sbin/ldconfig
166 %postun -n java-lttng-ust -p /sbin/ldconfig
168 %post -n python-lttng-ust -p /sbin/ldconfig
169 %postun -n python-lttng-ust -p /sbin/ldconfig
172 %defattr(644,root,root,755)
173 %doc ChangeLog LICENSE README.md
174 %attr(755,root,root) %{_libdir}/liblttng-ust.so.*.*.*
175 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust.so.1
176 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so.*.*.*
177 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-common.so.1
178 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so.*.*.*
179 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-ctl.so.5
180 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so.*.*.*
181 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile.so.1
182 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so.*.*.*
183 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile-fast.so.1
184 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so.*.*.*
185 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-dl.so.1
186 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so.*.*.*
187 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fd.so.1
188 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so.*.*.*
189 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fork.so.1
190 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so.*.*.*
191 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-libc-wrapper.so.1
192 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so.*.*.*
193 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-pthread-wrapper.so.1
194 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so.*.*.*
195 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-tracepoint.so.1
198 %defattr(644,root,root,755)
199 %attr(755,root,root) %{_bindir}/lttng-gen-tp
200 %attr(755,root,root) %{_libdir}/liblttng-ust.so
201 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so
202 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so
203 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so
204 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so
205 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so
206 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so
207 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so
208 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so
209 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so
210 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so
211 %{_libdir}/liblttng-ust.la
212 %{_libdir}/liblttng-ust-common.la
213 %{_libdir}/liblttng-ust-ctl.la
214 %{_libdir}/liblttng-ust-cyg-profile.la
215 %{_libdir}/liblttng-ust-cyg-profile-fast.la
216 %{_libdir}/liblttng-ust-dl.la
217 %{_libdir}/liblttng-ust-fd.la
218 %{_libdir}/liblttng-ust-fork.la
219 %{_libdir}/liblttng-ust-libc-wrapper.la
220 %{_libdir}/liblttng-ust-pthread-wrapper.la
221 %{_libdir}/liblttng-ust-tracepoint.la
223 %{_pkgconfigdir}/lttng-ust.pc
224 %{_pkgconfigdir}/lttng-ust-ctl.pc
225 %{_mandir}/man1/lttng-gen-tp.1*
226 %{_mandir}/man3/do_tracepoint.3*
227 %{_mandir}/man3/lttng-ust.3*
228 %{_mandir}/man3/lttng-ust-cyg-profile.3*
229 %{_mandir}/man3/lttng-ust-dl.3*
230 %{_mandir}/man3/lttng_ust_*.3*
231 %{_mandir}/man3/tracef.3*
232 %{_mandir}/man3/tracelog.3*
233 %{_mandir}/man3/tracepoint.3*
234 %{_mandir}/man3/tracepoint_enabled.3*
235 %{_examplesdir}/%{name}-%{version}
237 %if %{with static_libs}
239 %defattr(644,root,root,755)
240 %{_libdir}/liblttng-ust.a
241 %{_libdir}/liblttng-ust-common.a
242 %{_libdir}/liblttng-ust-ctl.a
243 %{_libdir}/liblttng-ust-cyg-profile.a
244 %{_libdir}/liblttng-ust-cyg-profile-fast.a
245 %{_libdir}/liblttng-ust-dl.a
246 %{_libdir}/liblttng-ust-fd.a
247 %{_libdir}/liblttng-ust-fork.a
248 %{_libdir}/liblttng-ust-libc-wrapper.a
249 %{_libdir}/liblttng-ust-pthread-wrapper.a
250 %{_libdir}/liblttng-ust-tracepoint.a
254 %files -n java-lttng-ust
255 %defattr(644,root,root,755)
256 %doc doc/java-agent.txt
257 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so.*.*.*
258 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-context-jni.so.0
259 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so
260 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so.*.*.*
261 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-java.so.0
262 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so
263 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so.*.*.*
264 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-jul-jni.so.0
265 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so
266 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so.*.*.*
267 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-log4j-jni.so.0
268 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so
269 %{_javadir}/liblttng-ust-agent.jar
270 %{_javadir}/liblttng-ust-java.jar
271 %{_javadir}/lttng-ust-agent-all-1.0.0.jar
272 %{_javadir}/lttng-ust-agent-all.jar
273 %{_javadir}/lttng-ust-agent-common-1.0.0.jar
274 %{_javadir}/lttng-ust-agent-common.jar
275 %{_javadir}/lttng-ust-agent-jul-1.0.0.jar
276 %{_javadir}/lttng-ust-agent-jul.jar
277 %{_javadir}/lttng-ust-agent-log4j-1.0.0.jar
278 %{_javadir}/lttng-ust-agent-log4j.jar
282 %files -n python-lttng-ust
283 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so.*.*.*
285 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-python-agent.so.1
286 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so
287 %{py_sitescriptdir}/lttngust
288 %{py_sitescriptdir}/lttngust-%{version}-py*.egg-info