]> git.pld-linux.org Git - packages/kernel-tools.git/blob - kernel-tools.spec
cpupower moved to subpackage, libs renamed
[packages/kernel-tools.git] / kernel-tools.spec
1 # TODO
2 # - BR deps for -perf
3 # - asciidoc used at install stage of perf (should build doc in build section)
4 # - different packages for perf-slang and perf-gtk
5 #
6 # Conditional build:
7 %bcond_without  verbose         # verbose build (V=1)
8 %bcond_with     perf            # perf tools (unfinished)
9
10 %define         rel             0.1
11 %define         basever 3.6
12 %define         postver .6
13 Summary:        Assortment of tools for the Linux kernel
14 Name:           kernel-tools
15 Version:        %{basever}%{postver}
16 Release:        %{rel}
17 License:        GPL v2
18 Group:          Applications/System
19 Source0:        http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
20 # Source0-md5:  1a1760420eac802c541a20ab51a093d1
21 %if "%{postver}" != ".0"
22 Patch0:         http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
23 # Patch0-md5:   363e730147333182616cc687345e7fe2
24 %endif
25 BuildRequires:  tar >= 1:1.22
26 BuildRequires:  xz
27 %if %{with perf}
28 BuildRequires:  asciidoc
29 BuildRequires:  rpm-pythonprov
30 BuildRequires:  xmlto
31 # provides perf.h which util/parse-events.l loads via ../perf.h, and -I/usr/include/slang makes it being loaded first
32 BuildConflicts: Firebird-devel
33 %endif
34 Requires:       %{name}-libs = %{version}-%{release}
35 Provides:       cpufreq-utils = 1:009-0.6.p1
36 Provides:       cpufrequtils = 1:009-0.6.p1
37 Provides:       cpupowerutils = 1:009-0.6.p1
38 Obsoletes:      cpufreq-utils < 1:009-0.6.p1
39 Obsoletes:      cpufrequtils < 1:009-0.6.p1
40 Obsoletes:      cpupowerutils < 1:009-0.6.p1
41 Obsoletes:      cpuspeed < 1:1.5-16
42 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44 %description
45 This package contains the tools/ directory from the kernel source and
46 the supporting documentation.
47
48 %package cpupower
49 Summary:        cpupower - Shows and sets processor power related values
50 Group:          Applications/System
51
52 %description cpupower
53 cpupower   is  a  collection  of tools to examine and tune power saving related
54 features of your processor.
55
56 %package cpupower-libs
57 Summary:        cpupower libraries
58 License:        GPL v2
59 Group:          Libraries
60
61 %description cpupower-libs
62 cpupower libraries.
63
64 %package cpupower-libs-devel
65 Summary:        Development files for the cpupower libraries.
66 License:        GPL v2
67 Group:          Development/Libraries
68 Requires:       kernel-tools = %{version}-%{release}
69 Requires:       kernel-tools-libs = %{version}-%{release}
70 Provides:       cpupowerutils-devel = 1:009-0.6.p1
71 Provides:       kernel-tools-devel
72 Obsoletes:      cpupowerutils-devel < 1:009-0.6.p1
73
74 %description cpupower-libs-devel
75 Development files for the cpupower libraries.
76
77 %package perf
78 Summary:        perf tool
79 Group:          Applications/System
80
81 %description perf
82 Perf is a profiler tool for Linux 2.6+ based systems that abstracts
83 away CPU hardware differences in Linux performance measurements and
84 presents a simple commandline interface. Perf is based on the
85 perf_events interface exported by recent versions of the Linux kernel.
86
87 %prep
88 %setup -qc
89 cd linux-%{basever}
90
91 %if "%{postver}" != ".0"
92 %patch0 -p1
93 %endif
94
95 %build
96 cd linux-%{basever}
97
98 # cpupower
99 %{__make} -C tools/power/cpupower \
100         CC="%{__cc}" \
101         %{?with_verbose:V=1} \
102         CPUFREQ_BENCH=false
103
104 %ifarch %{ix86}
105 %{__make} -C tools/power/cpupower/debug/i386 centrino-decode powernow-k8-decode \
106         CC="%{__cc}" \
107         %{?with_verbose:V=1}
108 %endif
109
110 %ifarch %{x8664}
111 %{__make} -C tools/power/cpupower/debug/x86_64 centrino-decode powernow-k8-decode \
112         CC="%{__cc}" \
113         %{?with_verbose:V=1}
114 %endif
115
116 %ifarch %{ix86} %{x8664}
117 %{__make} -C tools/power/x86/x86_energy_perf_policy \
118         CC="%{__cc}" \
119         %{?with_verbose:V=1}
120 %{__make} -C tools/power/x86/turbostat \
121         CC="%{__cc}" \
122         %{?with_verbose:V=1}
123 %endif
124
125 %if %{with perf}
126 # perf slang version
127 PWD=${PWD:-$(pwd)}
128 install -d $PWD/perf-{slang,gtk}
129 %{__make} -C tools/perf \
130         O=$PWD/perf-slang \
131         NO_GTK2=1 \
132         CC="%{__cc}" \
133         %{?with_verbose:V=1} \
134         prefix=%{_prefix} \
135         perfexecdir=%{_datadir}/perf-core \
136         template_dir=%{_datadir}/perf-core/templates
137
138 # perf gtk version
139 %{__make} -C tools/perf \
140         O=$PWD/perf-gtk \
141         CC="%{__cc}" \
142         %{?with_verbose:V=1} \
143         prefix=%{_prefix} \
144         perfexecdir=%{_datadir}/perf-core \
145         template_dir=%{_datadir}/perf-core/templates
146 %endif
147
148 # gen_init_cpio
149 %{__make} -C usr gen_init_cpio \
150         CC="%{__cc}" \
151         %{?with_verbose:V=1}
152
153 %install
154 rm -rf $RPM_BUILD_ROOT
155 cd linux-%{basever}
156
157 %{__make} -C tools/power/cpupower  install \
158         DESTDIR=$RPM_BUILD_ROOT \
159         libdir=%{_libdir} \
160         mandir=%{_mandir} \
161         CPUFREQ_BENCH=false
162
163 %find_lang cpupower
164 mv cpupower.lang ..
165
166 %ifarch %{ix86}
167 cd tools/power/cpupower/debug/i386
168 install -p centrino-decode $RPM_BUILD_ROOT%{_bindir}/centrino-decode
169 install -p powernow-k8-decode $RPM_BUILD_ROOT%{_bindir}/powernow-k8-decode
170 cd -
171 %endif
172 %ifarch %{x8664}
173 cd tools/power/cpupower/debug/x86_64
174 install -p centrino-decode $RPM_BUILD_ROOT%{_bindir}/centrino-decode
175 install -p powernow-k8-decode $RPM_BUILD_ROOT%{_bindir}/powernow-k8-decode
176 cd -
177 %endif
178
179 %ifarch %{ix86} %{x8664}
180 install -d $RPM_BUILD_ROOT%{_mandir}/man8
181 # broken makefile, install manually
182 %if 0
183 %{__make} install \
184         -C tools/power/x86/x86_energy_perf_policy \
185         DESTDIR=$RPM_BUILD_ROOT
186 %else
187 cd tools/power/x86/x86_energy_perf_policy
188 install -p x86_energy_perf_policy $RPM_BUILD_ROOT%{_bindir}
189 install -p x86_energy_perf_policy.8 $RPM_BUILD_ROOT%{_mandir}/man8
190 cd -
191 %endif
192
193 # broken makefile, install manually
194 %if 0
195 %{__make} install \
196         -C tools/power/x86/turbostat \
197         DESTDIR=$RPM_BUILD_ROOT
198 %else
199 cd tools/power/x86/turbostat
200 install -p turbostat $RPM_BUILD_ROOT%{_bindir}/turbostat
201 install -p turbostat.8 $RPM_BUILD_ROOT%{_mandir}/man8
202 cd -
203 %endif
204 %endif
205
206 %if %{with perf}
207 # perf slang
208 PWD=${PWD:-$(pwd)}
209 # perf slang version
210 %{__make} -j1 install install-man \
211         -C tools/perf \
212         O=$PWD/perf-slang \
213         NO_GTK2=1 \
214         CC="%{__cc}" \
215         %{?with_verbose:V=1} \
216         prefix=%{_prefix} \
217         perfexecdir=%{_datadir}/perf-core \
218         template_dir=%{_datadir}/perf-core/templates \
219         DESTDIR=$RPM_BUILD_ROOT
220
221 # perf gtk
222 %{__make} -j1 install install-man \
223         -C tools/perf \
224         O=$PWD/perf-gtk \
225         CC="%{__cc}" \
226         %{?with_verbose:V=1} \
227         prefix=%{_prefix} \
228         perfexecdir=%{_datadir}/perf-core \
229         template_dir=%{_datadir}/perf-core/templates \
230         DESTDIR=$RPM_BUILD_ROOT
231 %endif
232
233 # gen_init_cpio
234 install usr/gen_init_cpio $RPM_BUILD_ROOT%{_bindir}/gen_init_cpio
235
236 %clean
237 rm -rf $RPM_BUILD_ROOT
238
239 %post   cpupower-libs -p /sbin/ldconfig
240 %postun cpupower-libs -p /sbin/ldconfig
241
242 %files
243 %defattr(644,root,root,755)
244 %ifarch %{ix86} %{x8664}
245 %attr(755,root,root) %{_bindir}/centrino-decode
246 %attr(755,root,root) %{_bindir}/powernow-k8-decode
247 %endif
248 %ifarch %{ix86} %{x8664}
249 %attr(755,root,root) %{_bindir}/turbostat
250 %attr(755,root,root) %{_bindir}/x86_energy_perf_policy
251 %{_mandir}/man8/turbostat*
252 %{_mandir}/man8/x86_energy_perf_policy*
253 %endif
254 %attr(755,root,root) %{_bindir}/gen_init_cpio
255
256 %files cpupower -f cpupower.lang
257 %defattr(644,root,root,755)
258 %attr(755,root,root) %{_bindir}/cpupower
259 %{_mandir}/man[1-8]/cpupower*
260
261 %files cpupower-libs
262 %defattr(644,root,root,755)
263 %attr(755,root,root) %{_libdir}/libcpupower.so.*.*.*
264 %ghost %{_libdir}/libcpupower.so.0
265
266 %files cpupower-libs-devel
267 %defattr(644,root,root,755)
268 %{_libdir}/libcpupower.so
269 %{_includedir}/cpufreq.h
270
271 %if %{with perf}
272 %files perf
273 %defattr(644,root,root,755)
274 %attr(755,root,root) %{_bindir}/perf
275 %{_mandir}/man1/perf*.1*
276 %dir %{_datadir}/perf-core
277 %attr(755,root,root) %{_datadir}/perf-core/perf-archive
278
279 %dir %{_datadir}/perf-core/scripts
280
281 %dir %{_datadir}/perf-core/scripts/perl
282 %dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util
283 %dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib
284 %dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf
285 %dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace
286 %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace/*.pm
287 %dir %{_datadir}/perf-core/scripts/perl/bin
288 %attr(755,root,root) %{_datadir}/perf-core/scripts/perl/bin/*
289 %{_datadir}/perf-core/scripts/perl/*.pl
290
291 %dir %{_datadir}/perf-core/scripts/python
292 %dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util
293 %dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib
294 %dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf
295 %dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace
296 %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace/*.py
297 %dir %{_datadir}/perf-core/scripts/python/bin
298 %attr(755,root,root) %{_datadir}/perf-core/scripts/python/bin/*
299 %{_datadir}/perf-core/scripts/python/*.py
300 %endif
This page took 0.057479 seconds and 4 git commands to generate.