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: 41921a7e7d4c45b64186f085f1437daa
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 BuildRequires: rpmbuild(macros) >= 1.294
30 BuildRequires: sed >= 4.0
31 %{?with_systemtap:BuildRequires: systemtap-sdt-devel}
32 BuildRequires: userspace-rcu-devel >= 0.13
34 BuildRequires: java-log4j
36 BuildRequires: jpackage-utils
38 Requires: userspace-rcu >= 0.13
39 ExclusiveArch: %{ix86} %{x8664} x32 %{arm} aarch64 mips ppc ppc64 s390 s390x tile
40 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 # non-function rcu_reader_bp symbol
43 %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.*
44 # non-function lttng_ust_context_info_tls symbol
45 %define skip_post_check_so_2 liblttng-ust-jul-jni\.so.* liblttng-ust-log4j-jni\.so.*
46 # lttng_ust_sigbus_state symbol must be defined in executable
47 %define skip_post_check_so_3 liblttng-ust-ctl\.so.*
49 %define skip_post_check_so %{skip_post_check_so_1} %{skip_post_check_so_2} %{skip_post_check_so_3}
52 The LTTng Userspace Tracer (UST) is a library accompanied by a set of
53 tools to trace userspace code.
55 %description -l pl.UTF-8
56 LTTng Userspace Tracer (UST) to biblioteka, której towarzyszą
57 narzędzia do śledzenia kodu w przestrzeni użytkownika.
60 Summary: Header files for LTTNG-UST libraries
61 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek LTTNG-UST
62 Group: Development/Libraries
63 Requires: %{name} = %{version}-%{release}
64 Requires: userspace-rcu-devel >= 0.13
65 %{?with_systemtap:Requires: systemtap-sdt-devel}
68 Header files for LTTNG-UST libraries.
70 %description devel -l pl.UTF-8
71 Pliki nagłówkowe bibliotek LTTNG-UST.
74 Summary: Static LTTNG-UST libraries
75 Summary(pl.UTF-8): Statyczne biblioteki LTTNG-UST
76 Group: Development/Libraries
77 Requires: %{name}-devel = %{version}-%{release}
80 Static LTTNG-UST libraries.
82 %description static -l pl.UTF-8
83 Statyczne biblioteki LTTNG-UST.
85 %package -n java-lttng-ust
86 Summary: JNI interface for LTTng Userspace Tracer library
87 Summary(pl.UTF-8): Interfejs JNI do biblioteki LTTng Userspace Tracer
89 Requires: %{name} = %{version}-%{release}
91 %description -n java-lttng-ust
92 JNI interface for LTTng Userspace Tracer library.
94 %description -n java-lttng-ust -l pl.UTF-8
95 Interfejs JNI do biblioteki LTTng Userspace Tracer.
97 %package -n python-lttng-ust
98 Summary: Python agent for LTTng Userspace Tracer library
99 Summary(pl.UTF-8): Agent Pythona do biblioteki LTTng Userspace Tracer
100 Group: Libraries/Python
101 Requires: %{name} = %{version}-%{release}
103 %description -n python-lttng-ust
104 Python agent for LTTng Userspace Tracer library.
106 %description -n python-lttng-ust -l pl.UTF-8
107 Agent Pythona do biblioteki LTTng Userspace Tracer.
114 %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' tools/lttng-gen-tp
118 %{__aclocal} -I config
122 export CLASSPATH=.:%{_javadir}/log4j.jar
124 %{?with_java:JAVA_HOME="%{java_home}" JAVAC=javac} \
125 --disable-silent-rules \
126 %{?with_java:--enable-jni-interface --enable-java-agent-all} \
127 %{?with_python:--enable-python-agent} \
128 %{?with_systemtap:--with-sdt} \
129 %{?with_static_libs:--enable-static}
134 rm -rf $RPM_BUILD_ROOT
137 DESTDIR=$RPM_BUILD_ROOT \
138 lttnglibjavadir=%{_javadir}
140 # *.la kept - no .pc files for individual libraries
142 install -d $RPM_BUILD_ROOT%{_examplesdir}
143 %{__mv} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
145 %{__rm} $RPM_BUILD_ROOT%{_docdir}/lttng-ust/{ChangeLog,README.md,java-agent.txt}
148 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.la \
149 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-{context-jni,java,jul-jni,log4j-jni}.a}
152 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.la \
153 %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/liblttng-ust-python-agent.a}
158 rm -rf $RPM_BUILD_ROOT
160 %post -p /sbin/ldconfig
161 %postun -p /sbin/ldconfig
163 %post -n java-lttng-ust -p /sbin/ldconfig
164 %postun -n java-lttng-ust -p /sbin/ldconfig
166 %post -n python-lttng-ust -p /sbin/ldconfig
167 %postun -n python-lttng-ust -p /sbin/ldconfig
170 %defattr(644,root,root,755)
171 %doc ChangeLog LICENSE README.md
172 %attr(755,root,root) %{_libdir}/liblttng-ust.so.*.*.*
173 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust.so.1
174 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so.*.*.*
175 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-common.so.1
176 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so.*.*.*
177 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-ctl.so.5
178 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so.*.*.*
179 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile.so.1
180 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so.*.*.*
181 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-cyg-profile-fast.so.1
182 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so.*.*.*
183 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-dl.so.1
184 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so.*.*.*
185 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fd.so.1
186 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so.*.*.*
187 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-fork.so.1
188 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so.*.*.*
189 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-libc-wrapper.so.1
190 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so.*.*.*
191 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-pthread-wrapper.so.1
192 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so.*.*.*
193 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-tracepoint.so.1
196 %defattr(644,root,root,755)
197 %attr(755,root,root) %{_bindir}/lttng-gen-tp
198 %attr(755,root,root) %{_libdir}/liblttng-ust.so
199 %attr(755,root,root) %{_libdir}/liblttng-ust-common.so
200 %attr(755,root,root) %{_libdir}/liblttng-ust-ctl.so
201 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile.so
202 %attr(755,root,root) %{_libdir}/liblttng-ust-cyg-profile-fast.so
203 %attr(755,root,root) %{_libdir}/liblttng-ust-dl.so
204 %attr(755,root,root) %{_libdir}/liblttng-ust-fd.so
205 %attr(755,root,root) %{_libdir}/liblttng-ust-fork.so
206 %attr(755,root,root) %{_libdir}/liblttng-ust-libc-wrapper.so
207 %attr(755,root,root) %{_libdir}/liblttng-ust-pthread-wrapper.so
208 %attr(755,root,root) %{_libdir}/liblttng-ust-tracepoint.so
209 %{_libdir}/liblttng-ust.la
210 %{_libdir}/liblttng-ust-common.la
211 %{_libdir}/liblttng-ust-ctl.la
212 %{_libdir}/liblttng-ust-cyg-profile.la
213 %{_libdir}/liblttng-ust-cyg-profile-fast.la
214 %{_libdir}/liblttng-ust-dl.la
215 %{_libdir}/liblttng-ust-fd.la
216 %{_libdir}/liblttng-ust-fork.la
217 %{_libdir}/liblttng-ust-libc-wrapper.la
218 %{_libdir}/liblttng-ust-pthread-wrapper.la
219 %{_libdir}/liblttng-ust-tracepoint.la
221 %{_pkgconfigdir}/lttng-ust.pc
222 %{_pkgconfigdir}/lttng-ust-ctl.pc
223 %{_mandir}/man1/lttng-gen-tp.1*
224 %{_mandir}/man3/do_tracepoint.3*
225 %{_mandir}/man3/lttng-ust.3*
226 %{_mandir}/man3/lttng-ust-cyg-profile.3*
227 %{_mandir}/man3/lttng-ust-dl.3*
228 %{_mandir}/man3/lttng_ust_*.3*
229 %{_mandir}/man3/tracef.3*
230 %{_mandir}/man3/tracelog.3*
231 %{_mandir}/man3/tracepoint.3*
232 %{_mandir}/man3/tracepoint_enabled.3*
233 %{_examplesdir}/%{name}-%{version}
235 %if %{with static_libs}
237 %defattr(644,root,root,755)
238 %{_libdir}/liblttng-ust.a
239 %{_libdir}/liblttng-ust-common.a
240 %{_libdir}/liblttng-ust-ctl.a
241 %{_libdir}/liblttng-ust-cyg-profile.a
242 %{_libdir}/liblttng-ust-cyg-profile-fast.a
243 %{_libdir}/liblttng-ust-dl.a
244 %{_libdir}/liblttng-ust-fd.a
245 %{_libdir}/liblttng-ust-fork.a
246 %{_libdir}/liblttng-ust-libc-wrapper.a
247 %{_libdir}/liblttng-ust-pthread-wrapper.a
248 %{_libdir}/liblttng-ust-tracepoint.a
252 %files -n java-lttng-ust
253 %defattr(644,root,root,755)
254 %doc doc/java-agent.txt
255 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so.*.*.*
256 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-context-jni.so.0
257 %attr(755,root,root) %{_libdir}/liblttng-ust-context-jni.so
258 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so.*.*.*
259 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-java.so.0
260 %attr(755,root,root) %{_libdir}/liblttng-ust-java.so
261 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so.*.*.*
262 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-jul-jni.so.0
263 %attr(755,root,root) %{_libdir}/liblttng-ust-jul-jni.so
264 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so.*.*.*
265 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-log4j-jni.so.0
266 %attr(755,root,root) %{_libdir}/liblttng-ust-log4j-jni.so
267 %{_javadir}/liblttng-ust-agent.jar
268 %{_javadir}/liblttng-ust-java.jar
269 %{_javadir}/lttng-ust-agent-all-1.0.0.jar
270 %{_javadir}/lttng-ust-agent-all.jar
271 %{_javadir}/lttng-ust-agent-common-1.0.0.jar
272 %{_javadir}/lttng-ust-agent-common.jar
273 %{_javadir}/lttng-ust-agent-jul-1.0.0.jar
274 %{_javadir}/lttng-ust-agent-jul.jar
275 %{_javadir}/lttng-ust-agent-log4j-1.0.0.jar
276 %{_javadir}/lttng-ust-agent-log4j.jar
280 %files -n python-lttng-ust
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so.*.*.*
283 %attr(755,root,root) %ghost %{_libdir}/liblttng-ust-python-agent.so.1
284 %attr(755,root,root) %{_libdir}/liblttng-ust-python-agent.so
285 %{py_sitescriptdir}/lttngust
286 %{py_sitescriptdir}/lttngust-%{version}-py*.egg-info