X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=kernel-tools.spec;h=02666f335988c94fe790581572562a52e827a14b;hb=eb373af4cf591764515b52b154fa088dc7ad4634;hp=fcb7de3101065b3e46636aba76fe69be6d9661e3;hpb=91fd1f55ba4babdb8da76bf515e70d2e95b7d194;p=packages%2Fkernel-tools.git diff --git a/kernel-tools.spec b/kernel-tools.spec index fcb7de3..02666f3 100644 --- a/kernel-tools.spec +++ b/kernel-tools.spec @@ -1,27 +1,36 @@ -# +# TODO: +# - redefine: PACKAGE_BUGREPORT=cpufreq@vger.kernel.org +# - add -n python-perf? +# - without perf bcond does not work (it still builds it) +# - add bcond to disable building docs (perf docs) +# - install of perf compiles things over again + # Conditional build: %bcond_without verbose # verbose build (V=1) %bcond_without perf # perf tools +%bcond_without gtk # gtk perf version -%define rel 0.5 -%define basever 3.7 -%define postver .1 +%define basever 3.16 +%define postver .1 Summary: Assortment of tools for the Linux kernel Summary(pl.UTF-8): Zestaw narzędzi dla jądra Linuksa Name: kernel-tools Version: %{basever}%{postver} -Release: %{rel} +Release: 1 License: GPL v2 Group: Applications/System -Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz -# Source0-md5: 21223369d682bcf44bcdfe1521095983 +Source0: https://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz +# Source0-md5: 5c569ed649a0c9711879f333e90c5386 %if "%{postver}" != ".0" -Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2 -# Patch0-md5: c391dc1a1b4dae81aaef6f08a0594813 +Patch0: https://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz +# Patch0-md5: 9da4b0f5e343455b8141bcfa47e88cf5 %endif Source1: cpupower.service Source2: cpupower.config +Source3: perf.sh URL: http://www.kernel.org/ +BuildRequires: gettext-tools +BuildRequires: pciutils-devel BuildRequires: rpmbuild(macros) >= 1.647 BuildRequires: tar >= 1:1.22 BuildRequires: xz @@ -30,21 +39,26 @@ BuildRequires: asciidoc BuildRequires: audit-libs-devel BuildRequires: binutils-devel BuildRequires: bison +BuildRequires: docbook-dtd45-xml BuildRequires: docbook-style-xsl BuildRequires: elfutils-devel BuildRequires: flex -BuildRequires: gtk+2-devel >= 2.0 BuildRequires: libunwind-devel >= 0.99 -BuildRequires: newt-devel BuildRequires: perl-devel >= 5.1 -BuildRequires: pkgconfig BuildRequires: python-devel BuildRequires: rpm-pythonprov BuildRequires: slang-devel BuildRequires: xmlto +%if %{with gtk} +BuildRequires: gtk+2-devel >= 2.0 +BuildRequires: pkgconfig +%endif %endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +# otherwise /usr/lib/rpm/bin/debugedit: canonicalization unexpectedly shrank by one character +%define _enable_debug_packages 0 + %define makeopts CC="%{__cc}" %{?with_verbose:V=1} %description @@ -110,6 +124,7 @@ Pliki programistyczne biblioteki cpupower. Summary: perf profiler tool (core package) Summary(pl.UTF-8): Narzędzie profilujące perf (podstawowe narzędzia) Group: Applications/System +Suggests: binutils %description perf-core Perf is a profiler tool for Linux 2.6+ based systems that abstracts @@ -180,8 +195,11 @@ Ten pakiet zawiera tekstowy interfejs oparty na bibliotece Slang. Summary: Bash completion for perf command Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla polecenia perf Group: Applications/Shells -Requires: %{name}-perf = %{version}-%{release} +Requires: %{name}-perf Requires: bash-completion +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif %description -n bash-completion-perf Bash completion for perf command. @@ -197,9 +215,14 @@ cd linux-%{basever} %patch0 -p1 %endif +sed -i -e 's#libexec/perf-core#%{_datadir}/perf-core#g' tools/perf/config/Makefile + %build cd linux-%{basever} +# Simple Disk Sleep Monitor +%{__cc} %{rpmcppflags} %{rpmcflags} %{rpmldflags} Documentation/laptops/dslm.c -o dslm + # cpupower %{__make} -C tools/power/cpupower \ %{makeopts} \ @@ -223,15 +246,15 @@ cd linux-%{basever} %{__make} -C tools/power/x86/x86_energy_perf_policy \ CC="%{__cc}" \ CFLAGS="%{rpmcflags}" +CFLAGS="%{rpmcflags}" \ %{__make} -C tools/power/x86/turbostat \ - CC="%{__cc}" \ - CFLAGS="%{rpmcflags} -Wall" + CC="%{__cc}" %endif -# slabinfo -%{__make} -C tools/vm \ +# page-types, slabinfo +%{__make} -C tools/vm page-types slabinfo \ CC="%{__cc}" \ - CFLAGS="%{rpmcflags} -Wall -Wextra" + CFLAGS="%{rpmcflags} -Wall -Wextra -I../lib" %if %{with perf} # perf slang version @@ -242,19 +265,23 @@ install -d $PWD/perf-{slang,gtk} NO_GTK2=1 \ %{makeopts} \ CFLAGS_OPTIMIZE="%{rpmcflags}" \ + WERROR=0 \ prefix=%{_prefix} \ perfexecdir=%{_datadir}/perf-core \ template_dir=%{_datadir}/perf-core/templates +%if %{with gtk} # perf gtk version %{__make} -C tools/perf all man \ O=$PWD/perf-gtk \ %{makeopts} \ CFLAGS_OPTIMIZE="%{rpmcflags}" \ + WERROR=0 \ prefix=%{_prefix} \ perfexecdir=%{_datadir}/perf-core \ template_dir=%{_datadir}/perf-core/templates %endif +%endif # gen_init_cpio %{__make} -C usr gen_init_cpio \ @@ -263,7 +290,9 @@ install -d $PWD/perf-{slang,gtk} %install rm -rf $RPM_BUILD_ROOT + cd linux-%{basever} +install -d $RPM_BUILD_ROOT%{_sbindir} %{__make} -C tools/power/cpupower install \ DESTDIR=$RPM_BUILD_ROOT \ @@ -285,7 +314,9 @@ install -p tools/power/cpupower/debug/i386/{centrino,powernow-k8}-decode $RPM_BU install -p tools/power/cpupower/debug/x86_64/{centrino,powernow-k8}-decode $RPM_BUILD_ROOT%{_bindir} %endif -install tools/vm/slabinfo $RPM_BUILD_ROOT%{_bindir} +install -p tools/vm/slabinfo $RPM_BUILD_ROOT%{_bindir} +install -p tools/vm/page-types $RPM_BUILD_ROOT%{_sbindir} +install -p dslm $RPM_BUILD_ROOT%{_sbindir} %ifarch %{ix86} %{x8664} install -d $RPM_BUILD_ROOT%{_mandir}/man8 @@ -297,7 +328,7 @@ install -d $RPM_BUILD_ROOT%{_mandir}/man8 %else cd tools/power/x86/x86_energy_perf_policy install -p x86_energy_perf_policy $RPM_BUILD_ROOT%{_bindir} -install -p x86_energy_perf_policy.8 $RPM_BUILD_ROOT%{_mandir}/man8 +cp -p x86_energy_perf_policy.8 $RPM_BUILD_ROOT%{_mandir}/man8 cd - %endif @@ -308,9 +339,9 @@ cd - DESTDIR=$RPM_BUILD_ROOT %else cd tools/power/x86/turbostat -install -p turbostat $RPM_BUILD_ROOT%{_bindir}/turbostat -install -p turbostat.8 $RPM_BUILD_ROOT%{_mandir}/man8 +cp -p turbostat.8 $RPM_BUILD_ROOT%{_mandir}/man8 cd - +install -p turbostat $RPM_BUILD_ROOT%{_bindir}/turbostat %endif %endif @@ -324,28 +355,36 @@ PWD=${PWD:-$(pwd)} NO_GTK2=1 \ CC="%{__cc}" \ CFLAGS_OPTIMIZE="%{rpmcflags}" \ + WERROR=0 \ %{?with_verbose:V=1} \ prefix=%{_prefix} \ perfexecdir=%{_datadir}/perf-core \ template_dir=%{_datadir}/perf-core/templates \ DESTDIR=$RPM_BUILD_ROOT -%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,-slang} +%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,_slang} +%if %{with gtk} # perf gtk %{__make} -j1 install install-man \ -C tools/perf \ O=$PWD/perf-gtk \ CC="%{__cc}" \ CFLAGS_OPTIMIZE="%{rpmcflags}" \ + WERROR=0 \ %{?with_verbose:V=1} \ prefix=%{_prefix} \ perfexecdir=%{_datadir}/perf-core \ template_dir=%{_datadir}/perf-core/templates \ DESTDIR=$RPM_BUILD_ROOT -%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,-gtk} +%{__mv} $RPM_BUILD_ROOT%{_bindir}/perf{,_gtk} +%endif %py_comp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python %py_ocomp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python + +%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/perf-core/tests + +install -p %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/perf %endif # gen_init_cpio @@ -370,6 +409,8 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/gen_init_cpio %attr(755,root,root) %{_bindir}/slabinfo +%attr(755,root,root) %{_sbindir}/dslm +%attr(755,root,root) %{_sbindir}/page-types %ifarch %{ix86} %{x8664} %attr(755,root,root) %{_bindir}/centrino-decode %attr(755,root,root) %{_bindir}/powernow-k8-decode @@ -401,6 +442,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with perf} %files perf-core %defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/perf %{_mandir}/man1/perf*.1* %dir %{_datadir}/perf-core %attr(755,root,root) %{_datadir}/perf-core/perf-archive @@ -427,13 +469,19 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_datadir}/perf-core/scripts/python/bin/* %{_datadir}/perf-core/scripts/python/*.py* +%dir %{_libdir}/traceevent +%dir %{_libdir}/traceevent/plugins +%attr(755,root,root) %{_libdir}/traceevent/plugins/plugin_*.so + +%if %{with gtk} %files perf-gtk %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/perf-gtk +%attr(755,root,root) %{_bindir}/perf_gtk +%endif %files perf-slang %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/perf-slang +%attr(755,root,root) %{_bindir}/perf_slang %files -n bash-completion-perf %defattr(644,root,root,755)