1 # NOTE: shared /%{_lib}/libtcmalloc* is useless without /usr/%{_lib}/libstdc++.so.6
3 # - subpackages for "minimal" and the rest?
6 %bcond_with minimal # build only build only tcmalloc-minimal
12 Summary: Fast, multi-threaded malloc and performance analysis tools
13 Summary(pl.UTF-8): Szybka, wielowątkowa implementacja malloc i narzędzia do analizy wydajności
19 # Source0Download: http://code.google.com/p/gperftools/downloads/list
20 Source0: http://gperftools.googlecode.com/files/%{name}-%{version}.tar.gz
21 # Source0-md5: 5e5a981caf9baa9b4afe90a82dcf9882
22 URL: http://code.google.com/p/gperftools/
23 BuildRequires: libstdc++-devel
25 BuildRequires: libunwind-devel >= 0.98.6
27 Requires: libtcmalloc = %{version}-%{release}
28 Obsoletes: google-perftools < 2.0
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 Perf Tools is a collection of performance analysis tools, including a
33 high-performance multi-threaded malloc() implementation that works
34 particularly well with threads and STL, a thread-friendly
35 heap-checker, a heap profiler, and a cpu-profiler.
37 %description -l pl.UTF-8
38 Perf Tools to zbiór narzędzi do analizy wydajności, zawierający także
39 bardzo wydajną, wielowątkową implementację malloc(), działającą dobrze
40 w szczególności z wątkami i STL-em, a także przyjazne wątkom narzędzie
41 do kontroli sterty, profilter sterty oraz profile wykorzystania CPU.
44 Summary: Development files of perftools libraries
45 Summary(pl.UTF-8): Pliki programistyczne bibliotek perftools
46 Group: Development/Libraries
47 Requires: %{name} = %{version}-%{release}
48 Requires: libtcmalloc-devel = %{version}-%{release}
49 Obsoletes: google-perftools-devel < 2.0
52 The google-perftools-devel package contains the header files needed to
53 develop applications with google-perftools libraries.
55 %description devel -l pl.UTF-8
56 Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia aplikacji z
57 użyciem bibliotek google-perftools.
60 Summary: Static perftools libraries
61 Summary(pl.UTF-8): Statyczne biblioteki perftools
62 Group: Development/Libraries
63 Requires: %{name}-devel = %{version}-%{release}
64 Obsoletes: google-perftools-static < 2.0
67 The google-perftools-static package contains the static libraries of
70 %description static -l pl.UTF-8
71 Ten pakiet zawiera biblioteki statyczne google-perftools.
73 %package -n libtcmalloc
74 Summary: Fast, multi-threaded malloc by Google
75 Summary(pl.UTF-8): Szybka, wielowątkowa implementacja malloc firmy Google
77 Conflicts: google-perftools < 1.8.3-3
79 %description -n libtcmalloc
80 Fast, multi-threaded malloc by Google.
82 %description -n libtcmalloc -l pl.UTF-8
83 Szybka, wielowątkowa implementacja malloc firmy Google.
85 %package -n libtcmalloc-devel
86 Summary: Fast, multi-threaded malloc by Google - header files
87 Summary(pl.UTF-8): Szybka, wielowątkowa implementacja malloc firmy Google - pliki nagłówkowe
88 Group: Development/Libraries
89 Requires: libstdc++-devel
90 Requires: libtcmalloc = %{version}-%{release}
92 %description -n libtcmalloc-devel
93 Fast, multi-threaded malloc by Google - header files.
95 %description -n libtcmalloc-devel -l pl.UTF-8
96 Szybka, wielowątkowa implementacja malloc firmy Google - pliki
99 %package -n libtcmalloc-static
100 Summary: Fast, multi-threaded malloc by Google - static libraries
101 Summary(pl.UTF-8): Szybka, wielowątkowa implementacja malloc firmy Google - biblioteki statyczne
102 Group: Development/Libraries
103 Requires: libtcmalloc-devel = %{version}-%{release}
105 %description -n libtcmalloc-static
106 Fast, multi-threaded malloc by Google - static libraries.
108 %description -n libtcmalloc-static -l pl.UTF-8
109 Szybka, wielowątkowa implementacja malloc firmy Google - biblioteki
117 %ifnarch %{x8664} ia64
118 ac_cv_lib_unwind_backtrace=no \
120 %{?with_minimal:--enable-minimal}
125 rm -rf $RPM_BUILD_ROOT
126 install -d $RPM_BUILD_ROOT/%{_lib}
128 DESTDIR=$RPM_BUILD_ROOT
130 for pkg in %{!?with_minimal:libtcmalloc} libtcmalloc_minimal; do
131 mv $RPM_BUILD_ROOT%{_libdir}/${pkg}.so.* \
132 $RPM_BUILD_ROOT/%{_lib}
133 ln -snf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${pkg}.so.*.*.*) \
134 $RPM_BUILD_ROOT/%{_libdir}/${pkg}.so
138 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
141 rm -rf $RPM_BUILD_ROOT
143 %post -p /sbin/ldconfig
144 %postun -p /sbin/ldconfig
146 %post -n libtcmalloc -p /sbin/ldconfig
147 %postun -n libtcmalloc -p /sbin/ldconfig
150 %defattr(644,root,root,755)
151 # note: INSTALL contains many perftools-specific notes
152 %doc AUTHORS COPYING ChangeLog INSTALL NEWS README TODO doc/*{html,png,gif,txt}
153 %attr(755,root,root) %{_libdir}/libtcmalloc_minimal_debug.so.*.*.*
154 %attr(755,root,root) %ghost %{_libdir}/libtcmalloc_minimal_debug.so.4
155 %if %{without minimal}
156 %attr(755,root,root) %{_bindir}/pprof
157 %attr(755,root,root) %{_libdir}/libprofiler.so.*.*.*
158 %attr(755,root,root) %ghost %{_libdir}/libprofiler.so.0
159 %attr(755,root,root) %{_libdir}/libtcmalloc_and_profiler.so.*.*.*
160 %attr(755,root,root) %ghost %{_libdir}/libtcmalloc_and_profiler.so.4
161 %attr(755,root,root) %{_libdir}/libtcmalloc_debug.so.*.*.*
162 %attr(755,root,root) %ghost %{_libdir}/libtcmalloc_debug.so.4
163 %{_mandir}/man1/pprof.1*
167 %defattr(644,root,root,755)
168 %attr(755,root,root) %{_libdir}/libtcmalloc_minimal_debug.so
169 %{_libdir}/libtcmalloc_minimal_debug.la
170 %{_pkgconfigdir}/libtcmalloc_minimal_debug.pc
171 %{_pkgconfigdir}/libprofiler.pc
172 %{_includedir}/google/profiler.h
173 %{_pkgconfigdir}/libtcmalloc_debug.pc
175 %if %{without minimal}
176 %attr(755,root,root) %{_libdir}/libtcmalloc_and_profiler.so
177 %attr(755,root,root) %{_libdir}/libtcmalloc_debug.so
178 %attr(755,root,root) %{_libdir}/libprofiler.so
179 %{_libdir}/libtcmalloc_and_profiler.la
180 %{_libdir}/libtcmalloc_debug.la
181 %{_libdir}/libprofiler.la
182 %{_includedir}/gperftools/profiler.h
186 %defattr(644,root,root,755)
187 %{_libdir}/libtcmalloc_minimal_debug.a
188 %if %{without minimal}
189 %{_libdir}/libprofiler.a
190 %{_libdir}/libtcmalloc_and_profiler.a
191 %{_libdir}/libtcmalloc_debug.a
194 %files -n libtcmalloc
195 %defattr(644,root,root,755)
196 %attr(755,root,root) /%{_lib}/libtcmalloc_minimal.so.*.*.*
197 %attr(755,root,root) %ghost /%{_lib}/libtcmalloc_minimal.so.4
198 %if %{without minimal}
199 %attr(755,root,root) /%{_lib}/libtcmalloc.so.*.*.*
200 %attr(755,root,root) %ghost /%{_lib}/libtcmalloc.so.4
203 %files -n libtcmalloc-devel
204 %defattr(644,root,root,755)
205 %attr(755,root,root) %{_libdir}/libtcmalloc_minimal.so
206 %{_libdir}/libtcmalloc_minimal.la
207 %dir %{_includedir}/google
208 %{_includedir}/google/heap-*.h
209 %{_includedir}/google/malloc_extension*.h
210 %{_includedir}/google/malloc_hook*.h
211 %{_includedir}/google/stacktrace.h
212 %{_includedir}/google/tcmalloc.h
213 %dir %{_includedir}/gperftools
214 %{_includedir}/gperftools/malloc_extension*.h
215 %{_includedir}/gperftools/malloc_hook*.h
216 %{_includedir}/gperftools/tcmalloc.h
217 %{_pkgconfigdir}/libtcmalloc.pc
218 %{_pkgconfigdir}/libtcmalloc_minimal.pc
220 %if %{without minimal}
221 %attr(755,root,root) %{_libdir}/libtcmalloc.so
222 %{_libdir}/libtcmalloc.la
223 %{_includedir}/gperftools/heap-*.h
224 %{_includedir}/gperftools/stacktrace.h
227 %files -n libtcmalloc-static
228 %defattr(644,root,root,755)
229 %{_libdir}/libtcmalloc_minimal.a
230 %if %{without minimal}
231 %{_libdir}/libtcmalloc.a