]> git.pld-linux.org Git - packages/kernel-tools.git/blame - kernel-tools.spec
explicitly pass ARCH in makeopts
[packages/kernel-tools.git] / kernel-tools.spec
CommitLineData
bb6b0f50
ER
1# TODO:
2# - redefine: PACKAGE_BUGREPORT=cpufreq@vger.kernel.org
b1f08c11 3# - add -n python-perf?
b1f08c11 4# - add bcond to disable building docs (perf docs)
a5af5310 5# - install of perf links perf binary again
c8c3bb5d
JB
6# - build runqslower (needs vmlinux with BPF section)
7#
49fba13a
ER
8# Conditional build:
9%bcond_without verbose # verbose build (V=1)
0a891de9 10%bcond_without cpupower # cpupower tools
db5f9ac9 11%bcond_without perf # perf tools
ae4c1fd4 12%bcond_without gtk # GTK+ 2.x perf support
5a8bbd03 13%bcond_without libunwind # libunwind perf support
a5af5310 14%bcond_without multilib # multilib perf support
c8c3bb5d 15%bcond_with runqslower # runqslower bpf tool
0a891de9 16%bcond_without usbip # usbip utils
5a8bbd03 17
a5af5310
JB
18%ifnarch %{x8664}
19%undefine with_multilib
20%endif
49fba13a 21
a7adb0d5
JB
22%define basever 5.10
23%define postver .1
49fba13a 24Summary: Assortment of tools for the Linux kernel
bd620db3 25Summary(pl.UTF-8): Zestaw narzędzi dla jądra Linuksa
49fba13a
ER
26Name: kernel-tools
27Version: %{basever}%{postver}
15192e70 28Release: 1
49fba13a 29License: GPL v2
fea1e605 30Group: Applications/System
57e0ffb5 31Source0: https://www.kernel.org/pub/linux/kernel/v5.x/linux-%{basever}.tar.xz
a7adb0d5 32# Source0-md5: 753adc474bf799d569dec4f165ed92c3
bedc6c43
JR
33Source1: cpupower.service
34Source2: cpupower.config
49fba13a 35%if "%{postver}" != ".0"
57e0ffb5 36Patch0: https://www.kernel.org/pub/linux/kernel/v5.x/patch-%{version}.xz
a7adb0d5 37# Patch0-md5: 33c2cbab3e136939c065e397879a8087
49fba13a 38%endif
bedc6c43 39Patch1: x32.patch
388d18e6 40Patch2: regex.patch
32b75768 41Patch3: %{name}-perf-update.patch
ba3b9a67 42Patch4: %{name}-perf-gtk2.patch
a7adb0d5 43Patch5: %{name}-slang.patch
ba3b9a67 44URL: https://www.kernel.org/
0a891de9 45BuildRequires: bison
89b3b11f 46BuildRequires: docutils
0a891de9 47BuildRequires: flex
4a7175d2 48BuildRequires: gettext-tools
4490164f 49BuildRequires: linux-libc-headers >= 7:4.12
0a891de9 50BuildRequires: ncurses-devel
97b9d37b 51BuildRequires: ncurses-ext-devel
9596c3d3 52BuildRequires: pciutils-devel
0a891de9 53BuildRequires: pkgconfig
605beaf9
AM
54BuildRequires: python3
55BuildRequires: python3-modules
c5a822e3 56BuildRequires: rpmbuild(macros) >= 1.673
49fba13a
ER
57BuildRequires: tar >= 1:1.22
58BuildRequires: xz
fea1e605
ER
59%if %{with perf}
60BuildRequires: asciidoc
52583efa 61BuildRequires: audit-libs-devel
ba3b9a67 62BuildRequires: babeltrace-devel
ea7d139b 63BuildRequires: binutils-devel >= 4:2.29
a8b28c3a 64BuildRequires: docbook-dtd45-xml
52583efa 65BuildRequires: docbook-style-xsl
ba3b9a67 66BuildRequires: elfutils-devel >= 0.158
a5af5310
JB
67%if %{with multilib}
68BuildRequires: gcc-multilib-32
69BuildRequires: gcc-multilib-x32
70%endif
c8c3bb5d
JB
71# for `btftool btf dump file ... format c` - requires vmlinux with BPF section
72%{?with_runqslower:BuildRequires: kernel-vmlinux >= 5.?}
5a8bbd03 73%{?with_libunwind:BuildRequires: libunwind-devel >= 0.99}
60ccbbd3 74BuildRequires: numactl-devel
ba3b9a67 75BuildRequires: openssl-devel
52583efa 76BuildRequires: perl-devel >= 5.1
52583efa 77BuildRequires: python-devel
fea1e605 78BuildRequires: rpm-pythonprov
a1c57a8e 79BuildRequires: slang-devel
fea1e605 80BuildRequires: xmlto
ba3b9a67
JB
81BuildRequires: xz-devel
82BuildRequires: zlib-devel
83BuildRequires: zstd-devel
84# openscd? (CORESIGHT=1 for %{arm}?)
a8b28c3a
ER
85%if %{with gtk}
86BuildRequires: gtk+2-devel >= 2.0
a8b28c3a 87%endif
fea1e605 88%endif
0a891de9
JB
89%if %{with usbip}
90BuildRequires: autoconf >= 2.59
91BuildRequires: automake >= 1:1.9
92BuildRequires: gcc >= 6:4.0
93BuildRequires: libtool >= 2:2
94BuildRequires: libwrap-devel
95BuildRequires: udev-devel
96%endif
49fba13a
ER
97BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
98
eb373af4
AM
99# otherwise /usr/lib/rpm/bin/debugedit: canonicalization unexpectedly shrank by one character
100%define _enable_debug_packages 0
101
e6e29afa
JP
102%ifarch ppc ppc64
103%define makearch powerpoc
104%else
105%ifarch aarch64
106%define makearch arm64
107%else
108%define makearch %{_target_base_arch}
109%endif
110%endif
111
112%define makeopts ARCH=%{makearch} CC="%{__cc}" %{?with_verbose:V=1}
60972f76 113
49fba13a 114%description
bd620db3
JB
115This package contains the software from tools/ subdirectory from Linux
116kernel source and the supporting documentation.
117
118%description -l pl.UTF-8
119Ten pakiet zawiera oprogramowanie z podkatalogu tools/ ze źródeł jądra
120Linuksa oraz związaną z nim dokumentację.
49fba13a 121
4bc5704a
JK
122%package cpupower
123Summary: cpupower - Shows and sets processor power related values
bd620db3 124Summary(pl.UTF-8): cpupower - wyświetlanie i ustawianie wartości związanych z zużyciem energii przez procesor
4bc5704a 125Group: Applications/System
f57fcd71 126Requires(post,preun,postun): systemd-units >= 38
91fd1f55 127Requires: %{name}-cpupower-libs = %{version}-%{release}
f57fcd71 128Requires: systemd-units >= 0.38
2bd21e06 129Provides: cpupowerutils = 1:009-0.6.p1
2bd21e06
ER
130Obsoletes: cpupowerutils < 1:009-0.6.p1
131Obsoletes: cpuspeed < 1:1.5-16
4bc5704a
JK
132
133%description cpupower
60972f76
ER
134cpupower is a collection of tools to examine and tune power saving
135related features of your processor.
4bc5704a 136
bd620db3
JB
137%description cpupower -l pl.UTF-8
138cpupower to zbiór narzędzi do sprawdzania i ustawiania opcji procesora
139związanych z oszczędzaniem energii.
140
4bc5704a 141%package cpupower-libs
bd620db3
JB
142Summary: cpupower library
143Summary(pl.UTF-8): Biblioteka cpupower
49fba13a
ER
144Group: Libraries
145
4bc5704a 146%description cpupower-libs
bd620db3
JB
147cpupower library.
148
149%description cpupower-libs -l pl.UTF-8
150Biblioteka cpupower.
49fba13a 151
4bc5704a 152%package cpupower-libs-devel
bd620db3
JB
153Summary: Development files for the cpupower library
154Summary(pl.UTF-8): Pliki programistyczne biblioteki cpupower
49fba13a 155Group: Development/Libraries
178c4b31 156Requires: %{name}-cpupower-libs = %{version}-%{release}
49fba13a 157Provides: cpupowerutils-devel = 1:009-0.6.p1
49fba13a 158Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
08be99c5 159Conflicts: cpufrequtils-devel
49fba13a 160
4bc5704a 161%description cpupower-libs-devel
bd620db3
JB
162Development files for the cpupower library.
163
164%description cpupower-libs-devel -l pl.UTF-8
165Pliki programistyczne biblioteki cpupower.
49fba13a 166
388d18e6
JR
167%package -n bash-completion-cpupower
168Summary: Bash completion for cpupower tools
169Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla poleceń cpupower
170Group: Applications/Shells
171Requires: %{name}-cpupower = %{version}-%{release}
172Requires: bash-completion
173%if "%{_rpmversion}" >= "5"
174BuildArch: noarch
175%endif
176
177%description -n bash-completion-cpupower
178Bash completion for cpupower tools.
179
180%description -n bash-completion-cpupower -l pl.UTF-8
181Bashowe uzupełnianie parametrów dla poleceń cpupower.
182
0a891de9
JB
183%package hv
184Summary: Hyper-V virtualization tools
185Summary(pl.UTF-8): Narzędzia do wirtualizacji Hyper-V
186Group: Applications/System
187
188%description hv
189Hyper-V virtualization tools.
190
191%description hv -l pl.UTF-8
192Narzędzia do wirtualizacji Hyper-V.
193
ae4c1fd4
JB
194%package perf
195Summary: perf profiler tool
196Summary(pl.UTF-8): Narzędzie profilujące perf
fea1e605 197Group: Applications/System
9efc8fed 198Suggests: binutils
ae4c1fd4
JB
199Obsoletes: perf-core
200Obsoletes: perf-slang
fea1e605 201
ae4c1fd4 202%description perf
fea1e605
ER
203Perf is a profiler tool for Linux 2.6+ based systems that abstracts
204away CPU hardware differences in Linux performance measurements and
205presents a simple commandline interface. Perf is based on the
206perf_events interface exported by recent versions of the Linux kernel.
207
ae4c1fd4 208This package contains core files, scripts and text interface (TUI).
db5f9ac9 209
ae4c1fd4 210%description perf -l pl.UTF-8
db5f9ac9
JB
211Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
212odseparowujące od różnic sprzętowych między pomiarami wydajności w
213zależności od procesora oraz udostępniające prosty interfejs linii
214poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
215przez nowe wersje jądra Linuksa.
216
ae4c1fd4
JB
217Ten pakiet zawiera podstawowe pliki, skrypty oraz interfejs tekstowy
218(TUI).
db5f9ac9 219
0a3bb9dd 220%package perf-vdso32
dda20c35
JB
221Summary: perf profiler tool - VDSO 32-bit ABI reader
222Summary(pl.UTF-8): Narzędzie profilujące perf - odczyt VDSO dla ABI 32-bitowego
0a3bb9dd
JR
223Group: Applications/System
224Requires: %{name}-perf = %{version}-%{release}
225
226%description perf-vdso32
227Perf is a profiler tool for Linux 2.6+ based systems that abstracts
228away CPU hardware differences in Linux performance measurements and
229presents a simple commandline interface. Perf is based on the
230perf_events interface exported by recent versions of the Linux kernel.
231
232This package contains perf-read-vdso32 tool for reading the 32-bit
233compatibility VDSO in 64-bit mode.
234
dda20c35
JB
235%description perf-vdso32 -l pl.UTF-8
236Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
237odseparowujące od różnic sprzętowych między pomiarami wydajności w
238zależności od procesora oraz udostępniające prosty interfejs linii
239poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
240przez nowe wersje jądra Linuksa.
241
242Ten pakiet zawiera narzędzie perf-read-vdso32 do odczytu VDSO dla
243binariów 32-bitowych w trybie 64-bitowym.
244
0a3bb9dd 245%package perf-vdsox32
dda20c35
JB
246Summary: perf profiler tool - VDSO x32 ABI reader
247Summary(pl.UTF-8): Narzędzie profilujące perf - odczyt VDSO dla ABI x32
0a3bb9dd
JR
248Group: Applications/System
249Requires: %{name}-perf = %{version}-%{release}
250
251%description perf-vdsox32
252Perf is a profiler tool for Linux 2.6+ based systems that abstracts
253away CPU hardware differences in Linux performance measurements and
254presents a simple commandline interface. Perf is based on the
255perf_events interface exported by recent versions of the Linux kernel.
256
257This package contains perf-read-vdso32 tool for reading the x32 mode
25832-bit compatibility VDSO in 64-bit mode.
259
dda20c35
JB
260%description perf-vdsox32 -l pl.UTF-8
261Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
262odseparowujące od różnic sprzętowych między pomiarami wydajności w
263zależności od procesora oraz udostępniające prosty interfejs linii
264poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
265przez nowe wersje jądra Linuksa.
266
267Ten pakiet zawiera narzędzie perf-read-vdso32 do odczytu VDSO dla
268binariów ABI x32 w trybie 64-bitowym.
269
db5f9ac9 270%package perf-gtk
ae4c1fd4
JB
271Summary: perf profiler tool (GTK+ 2 GUI)
272Summary(pl.UTF-8): Narzędzie profilujące perf (interfejs graficzny GTK+ 2)
db5f9ac9 273Group: X11/Applications
dad8cd2d 274Requires: %{name}-perf = %{version}-%{release}
db5f9ac9
JB
275
276%description perf-gtk
277Perf is a profiler tool for Linux 2.6+ based systems that abstracts
278away CPU hardware differences in Linux performance measurements and
279presents a simple commandline interface. Perf is based on the
280perf_events interface exported by recent versions of the Linux kernel.
281
ae4c1fd4 282This package contains GTK+ 2 based GUI.
db5f9ac9
JB
283
284%description perf-gtk -l pl.UTF-8
285Perf to narzędzie profilujące dla systemów opartych na Linuksie 2.6+,
286odseparowujące od różnic sprzętowych między pomiarami wydajności w
287zależności od procesora oraz udostępniające prosty interfejs linii
288poleceń. Perf jest oparty na interfejsie perf_events eksportowanym
289przez nowe wersje jądra Linuksa.
290
ae4c1fd4 291Ten pakiet zawiera graficzny interfejs oparty na GTK+ 2.
db5f9ac9 292
db5f9ac9
JB
293%package -n bash-completion-perf
294Summary: Bash completion for perf command
295Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla polecenia perf
296Group: Applications/Shells
c5a822e3 297Requires: %{name}-perf = %{version}-%{release}
db5f9ac9 298Requires: bash-completion
741b96de
ER
299%if "%{_rpmversion}" >= "5"
300BuildArch: noarch
301%endif
db5f9ac9
JB
302
303%description -n bash-completion-perf
304Bash completion for perf command.
305
306%description -n bash-completion-perf -l pl.UTF-8
307Bashowe uzupełnianie parametrów dla polecenia perf.
308
c5a822e3
JB
309%package -n bash-completion-kernel-tools
310Summary: Bash completion for kernel-tools commands
311Summary(pl.UTF-8): Bashowe uzupełnianie parametrów dla poleceń kernel-tools
312Group: Applications/Shells
313Requires: %{name} = %{version}-%{release}
314Requires: bash-completion >= 2.0
315%if "%{_rpmversion}" >= "5"
316BuildArch: noarch
317%endif
318
319%description -n bash-completion-kernel-tools
320Bash completion for kernel-tools commands (currently bpftool).
321
322%description -n bash-completion-kernel-tools -l pl.UTF-8
323Bashowe uzupełnianie parametrów dla poleceń kernel-tools (obecnie
324bpftool).
325
0a891de9
JB
326%package -n usbip
327Summary: USB device sharing system over IP network
328Summary(pl.UTF-8): System współdzielenia urządzeń USB po sieci IP
329Group: Networking/Utilities
330Requires: usbip-libs = %{version}-%{release}
331# /lib/hwdata/usb.ids (note: only uncompressed file supported)
332Requires: hwdata >= 0.243-2
333
334%description -n usbip
335The USB/IP Project aims to develop a general USB device sharing system
336over IP network. To share USB devices between computers with their
337full functionality, USB/IP encapsulates "USB requests" into IP packets
338and transmits them between computers. Original USB device drivers and
339applications can be also used for remote USB devices without any
340modification of them. A computer can use remote USB devices as if they
341were directly attached; for example, we can:
342 - USB storage devices: fdisk, mkfs, mount/umount, file operations,
343 play a DVD movie and record a DVD-R media.
344 - USB keyboards and USB mice: use with Linux console and X Window
345 System.
346 - USB webcams and USB speakers: view webcam, capture image data and
347 play some music.
348 - USB printers, USB scanners, USB serial converters and USB Ethernet
349 interfaces: ok, use fine.
350
351%description -n usbip -l pl.UTF-8
352Projekt USB/IP ma na celu stworzenie ogólnego systemu współdzielenia
353urządzeń USB po sieci IP. W celu współdzielenia urządzeń USB między
354komputerami z zachowaniem pełnej funkcjonalności, USB/IP obudowuje
355żądania SUB w pakiety IP i przesyła je między komputerami. Oryginalne
356sterowniki urządzeń USB oraz aplikacje mogą być używane bez żadnych
357modyfikacji. Komputer może wykorzystywać zdaln urządzenia USB tak,
358jakby były podłączone bezpośrednio. Przykładowe możliwości:
359 - urządzenia USB do przechowywania danych: można używać programów
360 fdisk, mkfs, mount/umount, operacji na plikach, odtwarzać filmy
361 DVD oraz nagrywać nośniki DVD-R
362 - klawiatury i myszy USB: można ich używać na linuksowej konsoli oraz
363 w systemie X Window
364 - kamery i głośniki USB: można oglądać obraz z kamery, robić zdjęcia
365 i odtwarzać muzykę
366 - drukarki, skanery, konwertery portów szeregowych oraz interfejsy
367 sieciowe USB: można ich normalnie używać
368
369%package -n usbip-libs
370Summary: USB/IP library
371Summary(pl.UTF-8): Biblioteka USB/IP
372Group: Libraries
373
374%description -n usbip-libs
375USB over IP library.
376
377%description -n usbip-libs -l pl.UTF-8
378Biblioteka USB po IP.
379
380%package -n usbip-devel
381Summary: Header files for usbip library
382Summary(pl.UTF-8): Pliki nagłówkowe biblioteki usbip
383Group: Development/Libraries
384Requires: usbip-libs = %{version}-%{release}
385
386%description -n usbip-devel
387This package contains the header files needed to develop programs
388which make use of USB/IP.
389
390%description -n usbip-devel -l pl.UTF-8
391Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
392wykorzystujących USB/IP.
393
394%package -n usbip-static
395Summary: Static usbip library
396Summary(pl.UTF-8): Statyczna biblioteka usbip
397Group: Development/Libraries
398Requires: usbip-devel = %{version}-%{release}
399
400%description -n usbip-static
401Static usbip library.
402
403%description -n usbip-static -l pl.UTF-8
404Statyczna biblioteka usbip.
405
49fba13a
ER
406%prep
407%setup -qc
408cd linux-%{basever}
409
410%if "%{postver}" != ".0"
411%patch0 -p1
412%endif
413
bedc6c43 414%patch1 -p1
388d18e6 415%patch2 -p1
32b75768 416%patch3 -p1
ba3b9a67 417%patch4 -p1
a7adb0d5 418%patch5 -p1
bedc6c43 419
0a891de9
JB
420%{__sed} -i -e '/^CFLAGS = /s/ -g / $(OPTFLAGS) /' tools/hv/Makefile
421%{__sed} -i -e '/^CFLAGS+=/s/ -O1 / $(OPTFLAGS) /' tools/thermal/tmon/Makefile
c5a822e3 422%{__sed} -i -e 's#libexec/perf-core#share/perf-core#g' tools/perf/Makefile.config
eb373af4 423
e76f6fde
JB
424# don't rebuild on make install
425%{__sed} -i -e '/^\$(LIBBPF): FORCE/ s/FORCE$//' tools/bpf/bpftool/Makefile
426
c8c3bb5d
JB
427%if %{without runqslower}
428%{__sed} -i -e '/^all: / s/ runqslower//' \
429 -e '/^install: / s/ runqslower_install//' \
430 tools/bpf/Makefile
431%endif
432
49fba13a 433%build
ba3b9a67
JB
434Wstringop=""
435Waddressof=""
436%if "%{cc_version}" >= "8"
437Wstringop="-Wno-error=stringop-truncation"
438%endif
439%if "%{cc_version}" >= "9"
440Waddressof="-Wno-error=address-of-packed-member"
441%endif
49fba13a
ER
442cd linux-%{basever}
443
b1f08c11 444# Simple Disk Sleep Monitor
2c8f0d44
JR
445%{__make} -C tools/laptop/dslm \
446 %{makeopts} \
447 EXTRA_CFLAGS="%{rpmcflags}"
b1f08c11 448
0a891de9
JB
449# tools common (used eg. by tools/vm)
450%{__make} -C tools/lib/api \
51feff82 451 %{makeopts} \
ba3b9a67 452 EXTRA_CFLAGS="%{rpmcflags} $Wstringop"
0a891de9
JB
453
454# lsgpio
455CFLAGS="%{rpmcflags}" \
51feff82
JB
456%{__make} -C tools/gpio -j1 \
457 %{makeopts}
0a891de9
JB
458
459# HyperV is Windows based, x86 specific
460%ifarch %{ix86} %{x8664} x32
461%{__make} -C tools/hv \
4124d533 462 %{makeopts} \
0a891de9
JB
463 OPTFLAGS="%{rpmcflags}"
464%endif
465
466CFLAGS="%{rpmcflags}" \
d4e17d6f 467%{__make} -C tools/iio -j1 \
4124d533 468 %{makeopts}
0a891de9
JB
469
470%{__make} -C tools/laptop/freefall \
4124d533 471 %{makeopts} \
0a891de9
JB
472 CFLAGS="%{rpmcflags}"
473
ffa90917
JB
474# make bpftool first, top-level bpf CFLAGS cause includes conflict
475CFLAGS="%{rpmcflags}" \
476%{__make} -C tools/bpf/bpftool \
4124d533 477 %{makeopts}
ffa90917 478
0a891de9 479CFLAGS="%{rpmcflags}" \
c5a822e3 480%{__make} -C tools/bpf \
4124d533 481 %{makeopts} \
e76f6fde 482 EXTRA_CFLAGS="%{rpmcflags}" \
4124d533 483 %{?with_runqslower:VMLINUX_BTF=$(rpm -ql kernel-vmlinux | head -n 1)}
0a891de9
JB
484
485# perf
486%if %{with perf}
388d18e6 487%{__make} -j1 -C tools/perf all man \
0a891de9
JB
488%ifarch %{x8664}
489 IS_X86_64=1 \
490 %{!?with_multilib:NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1} \
491%endif
a7adb0d5 492 %{?with_gtk:GTK2=1} \
0a891de9
JB
493 %{!?with_libunwind:NO_LIBUNWIND=1} \
494 %{makeopts} \
495 CFLAGS_OPTIMIZE="%{rpmcflags}" \
a7adb0d5 496 VF=1 \
0a891de9
JB
497 WERROR=0 \
498 prefix=%{_prefix} \
499 perfexecdir=%{_datadir}/perf-core \
500 lib=%{_lib} \
501 template_dir=%{_datadir}/perf-core/templates
502%endif
503
49fba13a 504# cpupower
0a891de9 505%if %{with cpupower}
49fba13a 506%{__make} -C tools/power/cpupower \
60972f76 507 %{makeopts} \
fb1ff9fc
JB
508 CPUFREQ_BENCH=false \
509 OPTIMIZATION="%{rpmcflags}" \
510 STRIPCMD=true
49fba13a 511
bedc6c43 512%ifarch %{ix86} x32
49fba13a 513%{__make} -C tools/power/cpupower/debug/i386 centrino-decode powernow-k8-decode \
4124d533 514 %{makeopts} \
fb1ff9fc 515 CFLAGS="%{rpmcflags}"
49fba13a
ER
516%endif
517
bedc6c43 518%ifarch %{x8664} x32
49fba13a 519%{__make} -C tools/power/cpupower/debug/x86_64 centrino-decode powernow-k8-decode \
4124d533 520 %{makeopts} \
fb1ff9fc 521 CFLAGS="%{rpmcflags}"
49fba13a 522%endif
0a891de9 523%endif
49fba13a 524
bedc6c43 525%ifarch %{ix86} %{x8664} x32
ea7d139b 526CFLAGS="%{rpmcflags}" \
49fba13a 527%{__make} -C tools/power/x86/x86_energy_perf_policy \
4124d533 528 %{makeopts}
ea7d139b 529
4b352448 530CFLAGS="%{rpmcflags}" \
49fba13a 531%{__make} -C tools/power/x86/turbostat \
4124d533 532 %{makeopts}
49fba13a
ER
533%endif
534
0a891de9 535%{__make} -C tools/thermal/tmon \
4124d533 536 %{makeopts} \
0a891de9
JB
537 OPTFLAGS="%{rpmcflags}"
538
539# usbip-utils
540%if %{with usbip}
541cd tools/usb/usbip
542%{__libtoolize}
543%{__aclocal}
544%{__autoconf}
545%{__autoheader}
546%{__automake}
547%configure \
ba3b9a67 548 CFLAGS="%{rpmcflags} $Wstringop $Waddressof" \
0a891de9
JB
549 --disable-silent-rules \
550 --with-usbids-dir=/lib/hwdata
551%{__make}
552cd ../../..
553%endif
dbaf19f8 554
f111fe43
JK
555# page-types, slabinfo
556%{__make} -C tools/vm page-types slabinfo \
4124d533 557 %{makeopts}
f111fe43 558 CFLAGS="%{rpmcflags} -Wall -Wextra -I../lib"
701b458f 559
dd28be58
JK
560# gen_init_cpio
561%{__make} -C usr gen_init_cpio \
60972f76 562 %{makeopts} \
fb1ff9fc 563 CFLAGS="%{rpmcflags}"
dd28be58 564
49fba13a
ER
565%install
566rm -rf $RPM_BUILD_ROOT
b1f08c11 567
49fba13a
ER
568cd linux-%{basever}
569
0a891de9 570%if %{with cpupower}
bd620db3 571%{__make} -C tools/power/cpupower install \
49fba13a
ER
572 DESTDIR=$RPM_BUILD_ROOT \
573 libdir=%{_libdir} \
574 mandir=%{_mandir} \
575 CPUFREQ_BENCH=false
576
577%find_lang cpupower
ba3b9a67 578%{__mv} cpupower.lang ..
49fba13a 579
f57fcd71
ER
580install -d $RPM_BUILD_ROOT{/etc/sysconfig,%{systemdunitdir}}
581cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/cpupower.service
582cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/cpupower
583
bedc6c43 584%ifarch %{ix86} x32
701b458f 585install -p tools/power/cpupower/debug/i386/{centrino,powernow-k8}-decode $RPM_BUILD_ROOT%{_bindir}
49fba13a 586%endif
bedc6c43 587%ifarch %{x8664} x32
701b458f 588install -p tools/power/cpupower/debug/x86_64/{centrino,powernow-k8}-decode $RPM_BUILD_ROOT%{_bindir}
49fba13a 589%endif
49fba13a 590%endif
fea1e605
ER
591
592%if %{with perf}
388d18e6 593%{__make} -C tools/perf install install-man \
4dfb9dde
JR
594%ifarch %{x8664}
595 IS_X86_64=1 \
a5af5310 596 %{!?with_multilib:NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1} \
4dfb9dde 597%endif
a7adb0d5 598 %{?with_gtk:GTK2=1} \
5a8bbd03 599 %{!?with_libunwind:NO_LIBUNWIND=1} \
4124d533 600 %{makeopts} \
fb1ff9fc 601 CFLAGS_OPTIMIZE="%{rpmcflags}" \
6e9d46c8 602 WERROR=0 \
fea1e605
ER
603 prefix=%{_prefix} \
604 perfexecdir=%{_datadir}/perf-core \
605 template_dir=%{_datadir}/perf-core/templates \
388d18e6 606 bash_compdir=%{bash_compdir} \
4f4642fc 607 lib=%{_lib} \
fea1e605 608 DESTDIR=$RPM_BUILD_ROOT
db5f9ac9
JB
609
610%py_comp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python
611%py_ocomp $RPM_BUILD_ROOT%{_datadir}/perf-core/scripts/python
a8b28c3a 612
4b352448 613%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/perf-core/tests
49fba13a
ER
614%endif
615
0a891de9
JB
616%if %{with usbip}
617%{__make} -C tools/usb/usbip install \
618 DESTDIR=$RPM_BUILD_ROOT
619
620%{__rm} $RPM_BUILD_ROOT%{_libdir}/libusbip.la
621%endif
622
623install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_mandir}/man8}
624
2c8f0d44 625install -p tools/laptop/dslm/dslm $RPM_BUILD_ROOT%{_sbindir}
0a891de9
JB
626
627install -p tools/gpio/lsgpio $RPM_BUILD_ROOT%{_bindir}
628
629%ifarch %{ix86} %{x8664} x32
630install -p tools/hv/hv_{fcopy,kvp,vss}_daemon $RPM_BUILD_ROOT%{_sbindir}
631# TODO: PLD-specific hv_get_dhcp_info,hv_get_dns_info,hv_set_ifconfig
632%{__sed} -e '1s,/usr/bin/env python,%{__python},' tools/hv/lsvmbus >$RPM_BUILD_ROOT%{_bindir}/lsvmbus
633chmod 755 $RPM_BUILD_ROOT%{_bindir}/lsvmbus
634%endif
635
51feff82 636install -p tools/iio/{iio_event_monitor,iio_generic_buffer,lsiio} $RPM_BUILD_ROOT%{_bindir}
0a891de9
JB
637
638install -p tools/laptop/freefall/freefall $RPM_BUILD_ROOT%{_sbindir}
639
c5a822e3
JB
640%{__make} -C tools/bpf install \
641 prefix=$RPM_BUILD_ROOT%{_prefix} \
e76f6fde
JB
642 bash_compdir=$RPM_BUILD_ROOT%{bash_compdir} \
643 %{?with_verbose:V=1}
c5a822e3 644%{__make} -C tools/bpf/bpftool doc-install \
e76f6fde
JB
645 prefix=$RPM_BUILD_ROOT%{_prefix} \
646 mandir=$RPM_BUILD_ROOT%{_mandir} \
647 %{?with_verbose:V=1}
0a891de9
JB
648
649install -p tools/thermal/tmon/tmon $RPM_BUILD_ROOT%{_bindir}
650cp -p tools/thermal/tmon/tmon.8 $RPM_BUILD_ROOT%{_mandir}/man8
651
652install -p tools/vm/slabinfo $RPM_BUILD_ROOT%{_bindir}
653install -p tools/vm/page-types $RPM_BUILD_ROOT%{_sbindir}
654
655%ifarch %{ix86} %{x8664} x32
656install -d $RPM_BUILD_ROOT%{_mandir}/man8
657%{__make} -C tools/power/x86/x86_energy_perf_policy install \
658 DESTDIR=$RPM_BUILD_ROOT
659
660%{__make} -C tools/power/x86/turbostat install \
661 DESTDIR=$RPM_BUILD_ROOT
662%endif
663
dd28be58 664# gen_init_cpio
60972f76 665install -p usr/gen_init_cpio $RPM_BUILD_ROOT%{_bindir}/gen_init_cpio
dd28be58 666
ba3b9a67
JB
667# packaged in man-pages (5.02)
668%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/bpf-helpers.7*
0813123e 669
49fba13a
ER
670%clean
671rm -rf $RPM_BUILD_ROOT
672
4bc5704a
JK
673%post cpupower-libs -p /sbin/ldconfig
674%postun cpupower-libs -p /sbin/ldconfig
49fba13a 675
f57fcd71
ER
676%post cpupower
677%systemd_post cpupower.service
678
679%preun cpupower
680%systemd_preun cpupower.service
681
682%postun cpupower
683%systemd_reload
684
0a891de9
JB
685%post -n usbip-libs -p /sbin/ldconfig
686%postun -n usbip-libs -p /sbin/ldconfig
687
4bc5704a 688%files
49fba13a 689%defattr(644,root,root,755)
0a891de9
JB
690%attr(755,root,root) %{_bindir}/bpf_asm
691%attr(755,root,root) %{_bindir}/bpf_dbg
692%attr(755,root,root) %{_bindir}/bpf_jit_disasm
701b458f 693%attr(755,root,root) %{_bindir}/gen_init_cpio
0a891de9
JB
694%attr(755,root,root) %{_bindir}/iio_event_monitor
695%attr(755,root,root) %{_bindir}/iio_generic_buffer
0a891de9
JB
696%attr(755,root,root) %{_bindir}/lsgpio
697%attr(755,root,root) %{_bindir}/lsiio
701b458f 698%attr(755,root,root) %{_bindir}/slabinfo
0a891de9 699%attr(755,root,root) %{_bindir}/tmon
c5a822e3 700%attr(755,root,root) %{_sbindir}/bpftool
b1f08c11 701%attr(755,root,root) %{_sbindir}/dslm
0a891de9 702%attr(755,root,root) %{_sbindir}/freefall
f111fe43 703%attr(755,root,root) %{_sbindir}/page-types
c5a822e3 704%{_mandir}/man8/bpftool*.8*
0a891de9 705%{_mandir}/man8/tmon.8*
bedc6c43 706%ifarch %{ix86} %{x8664} x32
49fba13a
ER
707%attr(755,root,root) %{_bindir}/centrino-decode
708%attr(755,root,root) %{_bindir}/powernow-k8-decode
709%endif
bedc6c43 710%ifarch %{ix86} %{x8664} x32
49fba13a
ER
711%attr(755,root,root) %{_bindir}/turbostat
712%attr(755,root,root) %{_bindir}/x86_energy_perf_policy
bd620db3
JB
713%{_mandir}/man8/turbostat.8*
714%{_mandir}/man8/x86_energy_perf_policy.8*
49fba13a
ER
715%endif
716
4bc5704a
JK
717%files cpupower -f cpupower.lang
718%defattr(644,root,root,755)
719%attr(755,root,root) %{_bindir}/cpupower
bd620db3 720%{_mandir}/man1/cpupower*.1*
f57fcd71
ER
721%{systemdunitdir}/cpupower.service
722%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cpupower
4bc5704a
JK
723
724%files cpupower-libs
49fba13a
ER
725%defattr(644,root,root,755)
726%attr(755,root,root) %{_libdir}/libcpupower.so.*.*.*
bd620db3 727%attr(755,root,root) %ghost %{_libdir}/libcpupower.so.0
49fba13a 728
4bc5704a 729%files cpupower-libs-devel
49fba13a 730%defattr(644,root,root,755)
bd620db3 731%attr(755,root,root) %{_libdir}/libcpupower.so
49fba13a 732%{_includedir}/cpufreq.h
dbaf19f8 733%{_includedir}/cpuidle.h
fea1e605 734
388d18e6
JR
735%files -n bash-completion-cpupower
736%defattr(644,root,root,755)
737%{bash_compdir}/cpupower
738
0a891de9
JB
739%ifarch %{ix86} %{x8664} x32
740%files hv
741%defattr(644,root,root,755)
742# TODO: PLDify these scripts and move to bindir
743%doc linux-%{basever}/tools/hv/hv_{get_dhcp_info,get_dns_info,set_ifconfig}.sh
744%attr(755,root,root) %{_bindir}/lsvmbus
745%attr(755,root,root) %{_sbindir}/hv_fcopy_daemon
746%attr(755,root,root) %{_sbindir}/hv_kvp_daemon
747%attr(755,root,root) %{_sbindir}/hv_vss_daemon
748%endif
749
fea1e605 750%if %{with perf}
ae4c1fd4 751%files perf
fea1e605 752%defattr(644,root,root,755)
35be6466 753%attr(755,root,root) %{_bindir}/perf
ae4c1fd4 754%attr(755,root,root) %{_bindir}/trace
fea1e605 755%{_mandir}/man1/perf*.1*
c5a822e3 756%{_docdir}/perf-tip
fea1e605
ER
757%dir %{_datadir}/perf-core
758%attr(755,root,root) %{_datadir}/perf-core/perf-archive
4f4642fc 759%attr(755,root,root) %{_datadir}/perf-core/perf-with-kcore
c5a822e3 760%{_datadir}/perf-core/strace
fea1e605
ER
761
762%dir %{_datadir}/perf-core/scripts
763
764%dir %{_datadir}/perf-core/scripts/perl
765%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util
766%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib
767%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf
768%dir %{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace
769%{_datadir}/perf-core/scripts/perl/Perf-Trace-Util/lib/Perf/Trace/*.pm
770%dir %{_datadir}/perf-core/scripts/perl/bin
771%attr(755,root,root) %{_datadir}/perf-core/scripts/perl/bin/*
772%{_datadir}/perf-core/scripts/perl/*.pl
773
774%dir %{_datadir}/perf-core/scripts/python
775%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util
776%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib
777%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf
778%dir %{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace
db5f9ac9 779%{_datadir}/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace/*.py*
fea1e605
ER
780%dir %{_datadir}/perf-core/scripts/python/bin
781%attr(755,root,root) %{_datadir}/perf-core/scripts/python/bin/*
db5f9ac9
JB
782%{_datadir}/perf-core/scripts/python/*.py*
783
eb373af4
AM
784%dir %{_libdir}/traceevent
785%dir %{_libdir}/traceevent/plugins
786%attr(755,root,root) %{_libdir}/traceevent/plugins/plugin_*.so
787
51522bd6
JB
788%dir %{_prefix}/lib/perf
789%{_prefix}/lib/perf/examples
790%{_prefix}/lib/perf/include
791
a5af5310 792%if %{with multilib}
0a3bb9dd
JR
793%files perf-vdso32
794%defattr(644,root,root,755)
795%attr(755,root,root) %{_bindir}/perf-read-vdso32
796
797%files perf-vdsox32
798%defattr(644,root,root,755)
799%attr(755,root,root) %{_bindir}/perf-read-vdsox32
800%endif
801
bc35d286 802%if %{with gtk}
db5f9ac9
JB
803%files perf-gtk
804%defattr(644,root,root,755)
ae4c1fd4 805%attr(755,root,root) %{_libdir}/libperf-gtk.so
bc35d286 806%endif
db5f9ac9 807
db5f9ac9
JB
808%files -n bash-completion-perf
809%defattr(644,root,root,755)
810/etc/bash_completion.d/perf
fea1e605 811%endif
0a891de9 812
c5a822e3
JB
813%files -n bash-completion-kernel-tools
814%defattr(644,root,root,755)
815%{bash_compdir}/bpftool
816
0a891de9
JB
817%if %{with usbip}
818%files -n usbip
819%defattr(644,root,root,755)
820%doc linux-%{basever}/tools/usb/usbip/{AUTHORS,README}
821%attr(755,root,root) %{_sbindir}/usbip
822%attr(755,root,root) %{_sbindir}/usbipd
823%{_mandir}/man8/usbip.8*
824%{_mandir}/man8/usbipd.8*
825
826%files -n usbip-libs
827%defattr(644,root,root,755)
828%attr(755,root,root) %{_libdir}/libusbip.so.*.*.*
829%attr(755,root,root) %ghost %{_libdir}/libusbip.so.0
830
831%files -n usbip-devel
832%defattr(644,root,root,755)
833%attr(755,root,root) %{_libdir}/libusbip.so
834%{_includedir}/usbip
835
836%files -n usbip-static
837%defattr(644,root,root,755)
838%{_libdir}/libusbip.a
839%endif
This page took 0.230061 seconds and 4 git commands to generate.