]> git.pld-linux.org Git - packages/gperftools.git/blob - gperftools.spec
c3a6861b4dca6e4e77e0331bf0f480eca1035022
[packages/gperftools.git] / gperftools.spec
1 # NOTE: shared /%{_lib}/libtcmalloc* is useless without /usr/%{_lib}/libstdc++.so.6
2 # TODO:
3 # - subpackages for "minimal" and the rest?
4
5 # Conditional build:
6 %bcond_with     minimal         # build only build only tcmalloc-minimal
7
8 %ifarch x32
9 %define with_minimal    1
10 %endif
11
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
14 Name:           gperftools
15 Version:        2.1
16 Release:        3
17 License:        BSD
18 Group:          Libraries
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
24 %ifarch %{x8664} ia64
25 BuildRequires:  libunwind-devel >= 0.98.6
26 %endif
27 Requires:       libtcmalloc = %{version}-%{release}
28 Obsoletes:      google-perftools < 2.0
29 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30
31 %description
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.
36
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.
42
43 %package devel
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
50
51 %description devel
52 The google-perftools-devel package contains the header files needed to
53 develop applications with google-perftools libraries.
54
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.
58
59 %package static
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
65
66 %description static
67 The google-perftools-static package contains the static libraries of
68 google-perftools.
69
70 %description static -l pl.UTF-8
71 Ten pakiet zawiera biblioteki statyczne google-perftools.
72
73 %package -n libtcmalloc
74 Summary:        Fast, multi-threaded malloc by Google
75 Summary(pl.UTF-8):      Szybka, wielowątkowa implementacja malloc firmy Google
76 Group:          Libraries
77 Conflicts:      google-perftools < 1.8.3-3
78
79 %description -n libtcmalloc
80 Fast, multi-threaded malloc by Google.
81
82 %description -n libtcmalloc -l pl.UTF-8
83 Szybka, wielowątkowa implementacja malloc firmy Google.
84
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}
91
92 %description -n libtcmalloc-devel
93 Fast, multi-threaded malloc by Google - header files.
94
95 %description -n libtcmalloc-devel -l pl.UTF-8
96 Szybka, wielowątkowa implementacja malloc firmy Google - pliki
97 nagłówkowe.
98
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}
104
105 %description -n libtcmalloc-static
106 Fast, multi-threaded malloc by Google - static libraries.
107
108 %description -n libtcmalloc-static -l pl.UTF-8
109 Szybka, wielowątkowa implementacja malloc firmy Google - biblioteki
110 statyczne.
111
112 %prep
113 %setup -q
114
115 %build
116 %configure \
117 %ifnarch %{x8664} ia64
118         ac_cv_lib_unwind_backtrace=no \
119 %endif
120         %{?with_minimal:--enable-minimal}
121
122 %{__make}
123
124 %install
125 rm -rf $RPM_BUILD_ROOT
126 install -d $RPM_BUILD_ROOT/%{_lib}
127 %{__make} install \
128         DESTDIR=$RPM_BUILD_ROOT
129
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
135 done
136
137 # clean docdir
138 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
139
140 %clean
141 rm -rf $RPM_BUILD_ROOT
142
143 %post   -p /sbin/ldconfig
144 %postun -p /sbin/ldconfig
145
146 %post   -n libtcmalloc -p /sbin/ldconfig
147 %postun -n libtcmalloc -p /sbin/ldconfig
148
149 %files
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*
164 %endif
165
166 %files devel
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
174
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
183 %endif
184
185 %files static
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
192 %endif
193
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
201 %endif
202
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
219
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
225 %endif
226
227 %files -n libtcmalloc-static
228 %defattr(644,root,root,755)
229 %{_libdir}/libtcmalloc_minimal.a
230 %if %{without minimal}
231 %{_libdir}/libtcmalloc.a
232 %endif
This page took 0.09551 seconds and 2 git commands to generate.