]> git.pld-linux.org Git - packages/kernel-tools.git/blame - kernel-tools.spec
- disable -Werror for perf-tools because of perl headers gcc doesn't like
[packages/kernel-tools.git] / kernel-tools.spec
CommitLineData
bb6b0f50
ER
1# TODO:
2# - redefine: PACKAGE_BUGREPORT=cpufreq@vger.kernel.org
3# -n python-perf?
4
49fba13a
ER
5# Conditional build:
6%bcond_without verbose # verbose build (V=1)
db5f9ac9 7%bcond_without perf # perf tools
49fba13a 8
d0e13ec9 9%define rel 3
83e3cc6b
JR
10%define basever 3.9
11%define postver .5
49fba13a 12Summary: Assortment of tools for the Linux kernel
bd620db3 13Summary(pl.UTF-8): Zestaw narzędzi dla jądra Linuksa
49fba13a
ER
14Name: kernel-tools
15Version: %{basever}%{postver}
16Release: %{rel}
17License: GPL v2
fea1e605 18Group: Applications/System
49fba13a 19Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
83e3cc6b 20# Source0-md5: 4348c9b6b2eb3144d601e87c19d5d909
49fba13a 21%if "%{postver}" != ".0"
83e3cc6b
JR
22Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz
23# Patch0-md5: aa22187ae5cd482a69097e9e59244491
49fba13a 24%endif
f57fcd71
ER
25Source1: cpupower.service
26Source2: cpupower.config
52583efa 27URL: http://www.kernel.org/
f57fcd71 28BuildRequires: rpmbuild(macros) >= 1.647
49fba13a
ER
29BuildRequires: tar >= 1:1.22
30BuildRequires: xz
fea1e605
ER
31%if %{with perf}
32BuildRequires: asciidoc
52583efa 33BuildRequires: audit-libs-devel
db5f9ac9 34BuildRequires: binutils-devel
52583efa
JB
35BuildRequires: bison
36BuildRequires: docbook-style-xsl
37BuildRequires: elfutils-devel
38BuildRequires: flex
39BuildRequires: gtk+2-devel >= 2.0
40BuildRequires: libunwind-devel >= 0.99
a1c57a8e 41BuildRequires: newt-devel
52583efa
JB
42BuildRequires: perl-devel >= 5.1
43BuildRequires: pkgconfig
44BuildRequires: python-devel
fea1e605 45BuildRequires: rpm-pythonprov
a1c57a8e 46BuildRequires: slang-devel
fea1e605 47BuildRequires: xmlto
fea1e605 48%endif
49fba13a
ER
49BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
60972f76
ER
51%define makeopts CC="%{__cc}" %{?with_verbose:V=1}
52
49fba13a 53%description
bd620db3
JB
54This package contains the software from tools/ subdirectory from Linux
55kernel source and the supporting documentation.
56
57%description -l pl.UTF-8
58Ten pakiet zawiera oprogramowanie z podkatalogu tools/ ze źródeł jądra
59Linuksa oraz związaną z nim dokumentację.
49fba13a 60
4bc5704a
JK
61%package cpupower
62Summary: cpupower - Shows and sets processor power related values
bd620db3 63Summary(pl.UTF-8): cpupower - wyświetlanie i ustawianie wartości związanych z zużyciem energii przez procesor
4bc5704a 64Group: Applications/System
f57fcd71 65Requires(post,preun,postun): systemd-units >= 38
91fd1f55 66Requires: %{name}-cpupower-libs = %{version}-%{release}
f57fcd71 67Requires: systemd-units >= 0.38
2bd21e06
ER
68Provides: cpufreq-utils = 1:009-0.6.p1
69Provides: cpufrequtils = 1:009-0.6.p1
70Provides: cpupowerutils = 1:009-0.6.p1
71Obsoletes: cpufreq-utils < 1:009-0.6.p1
72Obsoletes: cpufrequtils < 1:009-0.6.p1
73Obsoletes: cpupowerutils < 1:009-0.6.p1
74Obsoletes: cpuspeed < 1:1.5-16
4bc5704a
JK
75
76%description cpupower
60972f76
ER
77cpupower is a collection of tools to examine and tune power saving
78related features of your processor.
4bc5704a 79
bd620db3
JB
80%description cpupower -l pl.UTF-8
81cpupower to zbiór narzędzi do sprawdzania i ustawiania opcji procesora
82związanych z oszczędzaniem energii.
83
4bc5704a 84%package cpupower-libs
bd620db3
JB
85Summary: cpupower library
86Summary(pl.UTF-8): Biblioteka cpupower
49fba13a
ER
87Group: Libraries
88
4bc5704a 89%description cpupower-libs
bd620db3
JB
90cpupower library.
91
92%description cpupower-libs -l pl.UTF-8
93Biblioteka cpupower.
49fba13a 94
4bc5704a 95%package cpupower-libs-devel
bd620db3
JB
96Summary: Development files for the cpupower library
97Summary(pl.UTF-8): Pliki programistyczne biblioteki cpupower
49fba13a 98Group: Development/Libraries
178c4b31
ER
99Requires: %{name} = %{version}-%{release}
100Requires: %{name}-cpupower-libs = %{version}-%{release}
91fd1f55 101Provides: cpufrequtils-devel = 1:009-0.6.p1
49fba13a 102Provides: cpupowerutils-devel = 1:009-0.6.p1
91fd1f55 103Obsoletes: cpufrequtils-devel < 1:009-0.6.p1
49fba13a
ER
104Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
105
4bc5704a 106%description cpupower-libs-devel
bd620db3
JB
107Development files for the cpupower library.
108
109%description cpupower-libs-devel -l pl.UTF-8
110Pliki programistyczne biblioteki cpupower.
49fba13a 111
db5f9ac9
JB
112%package perf-core
113Summary: perf profiler tool (core package)
114Summary(pl.UTF-8): Narzędzie profilujące perf (podstawowe narzędzia)
fea1e605
ER
115Group: Applications/System
116
db5f9ac9 117%description perf-core
fea1e605
ER
118Perf is a profiler tool for Linux 2.6+ based systems that abstracts
119away CPU hardware differences in Linux performance measurements and
120presents a simple commandline interface. Perf is based on the
121perf_events interface exported by recent versions of the Linux kernel.
122
db5f9ac9
JB
123This package contains core files and scripts.
124
125%description perf-core -l pl.UTF-8
126Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
127odseparowujące od różnic sprzętowych między pomiarami wydajności w
128zależności od procesora oraz udostępniające prosty interfejs linii
129poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
130przez nowe wersje jądra Linuksa.
131
132Ten pakiet zawiera podstawowe pliki i skrypty.
133
134%package perf-gtk
135Summary: perf profiler tool (GTK+ GUI)
136Summary(pl.UTF-8): Narzędzie profilujące perf (interfejs graficzny GTK+)
137Group: X11/Applications
138Requires: %{name}-perf-core = %{version}-%{release}
139Provides: %{name}-perf = %{version}-%{release}
140
141%description perf-gtk
142Perf is a profiler tool for Linux 2.6+ based systems that abstracts
143away CPU hardware differences in Linux performance measurements and
144presents a simple commandline interface. Perf is based on the
145perf_events interface exported by recent versions of the Linux kernel.
146
147This package contains GTK+ based GUI.
148
149%description perf-gtk -l pl.UTF-8
150Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
151odseparowujące od różnic sprzętowych między pomiarami wydajności w
152zależności od procesora oraz udostępniające prosty interfejs linii
153poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
154przez nowe wersje jądra Linuksa.
155
156Ten pakiet zawiera graficzny interfejs oparty na GTK+.
157
158%package perf-slang
159Summary: perf profiler tool (Slang TUI)
160Summary(pl.UTF-8): Narzędzie profilujące perf (interfejs tekstowy Slang)
161Group: X11/Applications
162Requires: %{name}-perf-core = %{version}-%{release}
163Provides: %{name}-perf = %{version}-%{release}
164
165%description perf-slang
166Perf is a profiler tool for Linux 2.6+ based systems that abstracts
167away CPU hardware differences in Linux performance measurements and
168presents a simple commandline interface. Perf is based on the
169perf_events interface exported by recent versions of the Linux kernel.
170
171This package contains Slang based TUI.
172
173%description perf-slang -l pl.UTF-8
bd620db3
JB
174Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
175odseparowujące od różnic sprzętowych między pomiarami wydajności w
176zależności od procesora oraz udostępniające prosty interfejs linii
177poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
178przez nowe wersje jądra Linuksa.
179
db5f9ac9
JB
180Ten pakiet zawiera tekstowy interfejs oparty na bibliotece Slang.
181
182%package -n bash-completion-perf
183Summary: Bash completion for perf command
184Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla polecenia perf
185Group: Applications/Shells
3385eb86 186Requires: %{name}-perf
db5f9ac9
JB
187Requires: bash-completion
188
189%description -n bash-completion-perf
190Bash completion for perf command.
191
192%description -n bash-completion-perf -l pl.UTF-8
193Bashowe uzupełnianie parametrów dla polecenia perf.
194
49fba13a
ER
195%prep
196%setup -qc
197cd linux-%{basever}
198
199%if "%{postver}" != ".0"
200%patch0 -p1
201%endif
202
203%build
204cd linux-%{basever}
205
206# cpupower
207%{__make} -C tools/power/cpupower \
60972f76 208 %{makeopts} \
fb1ff9fc
JB
209 CPUFREQ_BENCH=false \
210 OPTIMIZATION="%{rpmcflags}" \
211 STRIPCMD=true
49fba13a
ER
212
213%ifarch %{ix86}
214%{__make} -C tools/power/cpupower/debug/i386 centrino-decode powernow-k8-decode \
fb1ff9fc
JB
215 CC="%{__cc}" \
216 CFLAGS="%{rpmcflags}"
49fba13a
ER
217%endif
218
219%ifarch %{x8664}
220%{__make} -C tools/power/cpupower/debug/x86_64 centrino-decode powernow-k8-decode \
fb1ff9fc
JB
221 CC="%{__cc}" \
222 CFLAGS="%{rpmcflags}"
49fba13a
ER
223%endif
224
225%ifarch %{ix86} %{x8664}
226%{__make} -C tools/power/x86/x86_energy_perf_policy \
fb1ff9fc
JB
227 CC="%{__cc}" \
228 CFLAGS="%{rpmcflags}"
49fba13a 229%{__make} -C tools/power/x86/turbostat \
fb1ff9fc 230 CC="%{__cc}" \
83e3cc6b 231 CFLAGS="%{rpmcflags} -Wall -I../../../../arch/x86/include/uapi/"
49fba13a
ER
232%endif
233
701b458f
JB
234# slabinfo
235%{__make} -C tools/vm \
236 CC="%{__cc}" \
237 CFLAGS="%{rpmcflags} -Wall -Wextra"
238
fea1e605
ER
239%if %{with perf}
240# perf slang version
241PWD=${PWD:-$(pwd)}
242install -d $PWD/perf-{slang,gtk}
52583efa 243%{__make} -C tools/perf all man \
fea1e605
ER
244 O=$PWD/perf-slang \
245 NO_GTK2=1 \
60972f76 246 %{makeopts} \
fb1ff9fc 247 CFLAGS_OPTIMIZE="%{rpmcflags}" \
d0e13ec9 248 WERROR=0 \
fea1e605
ER
249 prefix=%{_prefix} \
250 perfexecdir=%{_datadir}/perf-core \
251 template_dir=%{_datadir}/perf-core/templates
252
253# perf gtk version
52583efa 254%{__make} -C tools/perf all man \
fea1e605 255 O=$PWD/perf-gtk \
60972f76 256 %{makeopts} \
fb1ff9fc 257 CFLAGS_OPTIMIZE="%{rpmcflags}" \
d0e13ec9 258 WERROR=0 \
fea1e605
ER
259 prefix=%{_prefix} \
260 perfexecdir=%{_datadir}/perf-core \
261 template_dir=%{_datadir}/perf-core/templates
262%endif
263
dd28be58
JK
264# gen_init_cpio
265%{__make} -C usr gen_init_cpio \
60972f76 266 %{makeopts} \
fb1ff9fc 267 CFLAGS="%{rpmcflags}"
dd28be58 268
49fba13a
ER
269%install
270rm -rf $RPM_BUILD_ROOT
271cd linux-%{basever}
272
bd620db3 273%{__make} -C tools/power/cpupower install \
49fba13a
ER
274 DESTDIR=$RPM_BUILD_ROOT \
275 libdir=%{_libdir} \
276 mandir=%{_mandir} \
277 CPUFREQ_BENCH=false
278
279%find_lang cpupower
280mv cpupower.lang ..
281
f57fcd71
ER
282install -d $RPM_BUILD_ROOT{/etc/sysconfig,%{systemdunitdir}}
283cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/cpupower.service
284cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/cpupower
285
49fba13a 286%ifarch %{ix86}
701b458f 287install -p tools/power/cpupower/debug/i386/{centrino,powernow-k8}-decode $RPM_BUILD_ROOT%{_bindir}
49fba13a
ER
288%endif
289%ifarch %{x8664}
701b458f 290install -p tools/power/cpupower/debug/x86_64/{centrino,powernow-k8}-decode $RPM_BUILD_ROOT%{_bindir}
49fba13a
ER
291%endif
292
701b458f
JB
293install tools/vm/slabinfo $RPM_BUILD_ROOT%{_bindir}
294
49fba13a
ER
295%ifarch %{ix86} %{x8664}
296install -d $RPM_BUILD_ROOT%{_mandir}/man8
297# broken makefile, install manually
298%if 0
299%{__make} install \
300 -C tools/power/x86/x86_energy_perf_policy \
301 DESTDIR=$RPM_BUILD_ROOT
302%else
303cd tools/power/x86/x86_energy_perf_policy
304install -p x86_energy_perf_policy $RPM_BUILD_ROOT%{_bindir}
305install -p x86_energy_perf_policy.8 $RPM_BUILD_ROOT%{_mandir}/man8
306cd -
307%endif
308
309# broken makefile, install manually
310%if 0
311%{__make} install \
312 -C tools/power/x86/turbostat \
313 DESTDIR=$RPM_BUILD_ROOT
314%else
315cd tools/power/x86/turbostat
49fba13a 316install -p turbostat.8 $RPM_BUILD_ROOT%{_mandir}/man8
fea1e605 317cd -
b4d3d8ff 318install -p turbostat $RPM_BUILD_ROOT%{_bindir}/turbostat
fea1e605 319%endif
49fba13a 320%endif
fea1e605
ER
321
322%if %{with perf}
323# perf slang
324PWD=${PWD:-$(pwd)}
325# perf slang version
326%{__make} -j1 install install-man \
327 -C tools/perf \
328 O=$PWD/perf-slang \
329 NO_GTK2=1 \
330 CC="%{__cc}" \
fb1ff9fc 331 CFLAGS_OPTIMIZE="%{rpmcflags}" \
fea1e605
ER
332 %{?with_verbose:V=1} \
333 prefix=%{_prefix} \
334 perfexecdir=%{_datadir}/perf-core \
335 template_dir=%{_datadir}/perf-core/templates \
336 DESTDIR=$RPM_BUILD_ROOT
4ca26053 337%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,_slang}
fea1e605
ER
338
339# perf gtk
340%{__make} -j1 install install-man \
341 -C tools/perf \
342 O=$PWD/perf-gtk \
343 CC="%{__cc}" \
fb1ff9fc 344 CFLAGS_OPTIMIZE="%{rpmcflags}" \
fea1e605
ER
345 %{?with_verbose:V=1} \
346 prefix=%{_prefix} \
347 perfexecdir=%{_datadir}/perf-core \
348 template_dir=%{_datadir}/perf-core/templates \
349 DESTDIR=$RPM_BUILD_ROOT
4ca26053 350%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,_gtk}
db5f9ac9
JB
351
352%py_comp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python
353%py_ocomp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python
49fba13a
ER
354%endif
355
dd28be58 356# gen_init_cpio
60972f76 357install -p usr/gen_init_cpio $RPM_BUILD_ROOT%{_bindir}/gen_init_cpio
dd28be58 358
b4d3d8ff
ER
359rm -r $RPM_BUILD_ROOT%{_datadir}/perf-core/tests
360
49fba13a
ER
361%clean
362rm -rf $RPM_BUILD_ROOT
363
4bc5704a
JK
364%post cpupower-libs -p /sbin/ldconfig
365%postun cpupower-libs -p /sbin/ldconfig
49fba13a 366
f57fcd71
ER
367%post cpupower
368%systemd_post cpupower.service
369
370%preun cpupower
371%systemd_preun cpupower.service
372
373%postun cpupower
374%systemd_reload
375
4bc5704a 376%files
49fba13a 377%defattr(644,root,root,755)
701b458f
JB
378%attr(755,root,root) %{_bindir}/gen_init_cpio
379%attr(755,root,root) %{_bindir}/slabinfo
49fba13a
ER
380%ifarch %{ix86} %{x8664}
381%attr(755,root,root) %{_bindir}/centrino-decode
382%attr(755,root,root) %{_bindir}/powernow-k8-decode
383%endif
49fba13a
ER
384%ifarch %{ix86} %{x8664}
385%attr(755,root,root) %{_bindir}/turbostat
386%attr(755,root,root) %{_bindir}/x86_energy_perf_policy
bd620db3
JB
387%{_mandir}/man8/turbostat.8*
388%{_mandir}/man8/x86_energy_perf_policy.8*
49fba13a
ER
389%endif
390
4bc5704a
JK
391%files cpupower -f cpupower.lang
392%defattr(644,root,root,755)
393%attr(755,root,root) %{_bindir}/cpupower
bd620db3 394%{_mandir}/man1/cpupower*.1*
f57fcd71
ER
395%{systemdunitdir}/cpupower.service
396%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cpupower
4bc5704a
JK
397
398%files cpupower-libs
49fba13a
ER
399%defattr(644,root,root,755)
400%attr(755,root,root) %{_libdir}/libcpupower.so.*.*.*
bd620db3 401%attr(755,root,root) %ghost %{_libdir}/libcpupower.so.0
49fba13a 402
4bc5704a 403%files cpupower-libs-devel
49fba13a 404%defattr(644,root,root,755)
bd620db3 405%attr(755,root,root) %{_libdir}/libcpupower.so
49fba13a 406%{_includedir}/cpufreq.h
fea1e605
ER
407
408%if %{with perf}
db5f9ac9 409%files perf-core
fea1e605 410%defattr(644,root,root,755)
fea1e605
ER
411%{_mandir}/man1/perf*.1*
412%dir %{_datadir}/perf-core
413%attr(755,root,root) %{_datadir}/perf-core/perf-archive
414
415%dir %{_datadir}/perf-core/scripts
416
417%dir %{_datadir}/perf-core/scripts/perl
418%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util
419%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib
420%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf
421%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace
422%{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace/*.pm
423%dir %{_datadir}/perf-core/scripts/perl/bin
424%attr(755,root,root) %{_datadir}/perf-core/scripts/perl/bin/*
425%{_datadir}/perf-core/scripts/perl/*.pl
426
427%dir %{_datadir}/perf-core/scripts/python
428%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util
429%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib
430%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf
431%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace
db5f9ac9 432%{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace/*.py*
fea1e605
ER
433%dir %{_datadir}/perf-core/scripts/python/bin
434%attr(755,root,root) %{_datadir}/perf-core/scripts/python/bin/*
db5f9ac9
JB
435%{_datadir}/perf-core/scripts/python/*.py*
436
437%files perf-gtk
438%defattr(644,root,root,755)
4ca26053 439%attr(755,root,root) %{_bindir}/perf_gtk
db5f9ac9
JB
440
441%files perf-slang
442%defattr(644,root,root,755)
4ca26053 443%attr(755,root,root) %{_bindir}/perf_slang
db5f9ac9
JB
444
445%files -n bash-completion-perf
446%defattr(644,root,root,755)
447/etc/bash_completion.d/perf
fea1e605 448%endif
This page took 0.139729 seconds and 4 git commands to generate.