summaryrefslogtreecommitdiffstats
path: root/kernel.spec
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2020-01-28 11:00:23 -0600
committerJustin M. Forbes <jforbes@fedoraproject.org>2020-01-28 11:00:23 -0600
commit906b798ddfd729ef96e2f2174632999bf1b9fc54 (patch)
tree0870f6cf835fbc52fda5681d9fa6b5a232c2ca52 /kernel.spec
parent099b513168f8fd11aa838ece0769cdadb16569c6 (diff)
downloadkernel-906b798ddfd729ef96e2f2174632999bf1b9fc54.tar.gz
kernel-906b798ddfd729ef96e2f2174632999bf1b9fc54.tar.xz
kernel-906b798ddfd729ef96e2f2174632999bf1b9fc54.zip
Linux v5.5
Diffstat (limited to 'kernel.spec')
-rw-r--r--kernel.spec507
1 files changed, 413 insertions, 94 deletions
diff --git a/kernel.spec b/kernel.spec
index e7bcb0ff2..e8f39154d 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -77,19 +77,19 @@ Summary: The Linux kernel
# For non-released -rc kernels, this will be appended after the rcX and
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
#
-%global baserelease 300
+%global baserelease 200
%global fedora_build %{baserelease}
# base_sublevel is the kernel version we're starting with and patching
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
# which yields a base_sublevel of 0.
-%define base_sublevel 4
+%define base_sublevel 5
## If this is a released kernel ##
%if 0%{?released_kernel}
# Do we have a -stable update to apply?
-%define stable_update 3
+%define stable_update 0
# Set rpm version accordingly
%if 0%{?stable_update}
%define stablerev %{stable_update}
@@ -130,6 +130,12 @@ Summary: The Linux kernel
# kernel-headers
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
%define with_cross_headers %{?_without_cross_headers: 0} %{?!_without_cross_headers: 1}
+# perf
+%define with_perf %{?_without_perf: 0} %{?!_without_perf: 1}
+# tools
+%define with_tools %{?_without_tools: 0} %{?!_without_tools: 1}
+# bpf tool
+%define with_bpftool %{?_without_bpftool: 0} %{?!_without_bpftool: 1}
# kernel-debuginfo
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
# Want to build a the vsdo directories installed
@@ -317,9 +323,11 @@ Summary: The Linux kernel
%if %{with_dbgonly}
%if %{debugbuildsenabled}
%define with_up 0
-%define with_pae 0
%endif
%define with_pae 0
+%define with_tools 0
+%define with_perf 0
+%define with_bpftool 0
%endif
# turn off kABI DUP check and DWARF-based check if kABI check is disabled
@@ -357,6 +365,9 @@ Summary: The Linux kernel
%define with_up 0
%define with_headers 0
%define with_cross_headers 0
+%define with_tools 0
+%define with_perf 0
+%define with_bpftool 0
%define with_selftests 0
%define with_debug 0
%define all_arch_configs kernel-%{version}-*.config
@@ -459,6 +470,9 @@ Summary: The Linux kernel
%define with_up 0
%define with_debug 0
%define with_debuginfo 0
+%define with_perf 0
+%define with_tools 0
+%define with_bpftool 0
%define with_selftests 0
%define with_pae 0
%define _enable_debug_packages 0
@@ -531,6 +545,24 @@ BuildRequires: xmlto, asciidoc, python3-sphinx
%if %{with_sparse}
BuildRequires: sparse
%endif
+%if %{with_perf}
+BuildRequires: zlib-devel binutils-devel newt-devel perl(ExtUtils::Embed) bison flex xz-devel
+BuildRequires: audit-libs-devel
+BuildRequires: java-devel
+%ifnarch %{arm} s390x
+BuildRequires: numactl-devel
+%endif
+%endif
+%if %{with_tools}
+BuildRequires: gettext ncurses-devel
+%ifnarch s390x
+BuildRequires: pciutils-devel
+%endif
+%endif
+%if %{with_bpftool}
+BuildRequires: python3-docutils
+BuildRequires: zlib-devel binutils-devel
+%endif
%if %{with_selftests}
%if 0%{?fedora}
BuildRequires: clang llvm
@@ -580,6 +612,14 @@ BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
%define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu-
%endif
+# These below are required to build man pages
+%if %{with_perf}
+BuildRequires: xmlto
+%endif
+%if %{with_perf} || %{with_tools}
+BuildRequires: asciidoc
+%endif
+
Source0: https://www.kernel.org/pub/linux/kernel/v5.x/linux-%{kversion}.tar.xz
# Name of the packaged file containing signing key
@@ -596,12 +636,22 @@ Source11: x509.genkey.fedora
Source12: securebootca.cer
Source13: secureboot.cer
+Source14: secureboot_s390.cer
+Source15: secureboot_ppc.cer
%define secureboot_ca %{SOURCE12}
%ifarch x86_64 aarch64
%define secureboot_key %{SOURCE13}
%define pesign_name redhatsecureboot301
%endif
+%ifarch s390x
+%define secureboot_key %{SOURCE14}
+%define pesign_name redhatsecureboot302
+%endif
+%ifarch ppc64le
+%define secureboot_key %{SOURCE15}
+%define pesign_name redhatsecureboot303
+%endif
%else # released_kernel
@@ -614,7 +664,7 @@ Source13: redhatsecureboot003.cer
%endif # released_kernel
-Source15: mod-extra.list.rhel
+Source22: mod-extra.list.rhel
Source16: mod-extra.list.fedora
Source17: mod-extra.sh
Source18: mod-sign.sh
@@ -752,6 +802,8 @@ Patch204: efi-secureboot.patch
Patch205: lift-lockdown-sysrq.patch
+Patch206: s390-Lock-down-the-kernel-when-the-IPL-secure-flag-i.patch
+
# 300 - ARM patches
Patch300: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
@@ -763,23 +815,22 @@ Patch302: ACPI-scan-Fix-regression-related-to-X-Gene-UARTs.patch
# rhbz 1574718
Patch303: ACPI-irq-Workaround-firmware-issue-on-X-Gene-based-m400.patch
-# http://www.spinics.net/lists/linux-tegra/msg26029.html
-Patch304: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
-# http://patchwork.ozlabs.org/patch/587554/
-Patch305: ARM-tegra-usb-no-reset.patch
+Patch304: ARM-tegra-usb-no-reset.patch
+
+# Raspberry Pi
+# https://patchwork.kernel.org/cover/11271017/
+Patch310: Raspberry-Pi-4-PCIe-support.patch
+# https://patchwork.kernel.org/patch/11223139/
+Patch311: ARM-Enable-thermal-support-for-Raspberry-Pi-4.patch
+# https://patchwork.kernel.org/patch/11299997/
+Patch312: bcm283x-gpu-drm-v3d-Add-ARCH_BCM2835-to-DRM_V3D-Kconfig.patch
# Tegra bits
Patch320: arm64-tegra-jetson-tx1-fixes.patch
# https://www.spinics.net/lists/linux-tegra/msg43110.html
Patch321: arm64-tegra-Jetson-TX2-Allow-bootloader-to-configure.patch
-# https://patchwork.kernel.org/patch/11171225/
-Patch322: mfd-max77620-Do-not-allocate-IRQs-upfront.patch
-# https://patchwork.ozlabs.org/patch/1170631/
-Patch323: gpio-max77620-Use-correct-unit-for-debounce-times.patch
-# https://www.spinics.net/lists/linux-tegra/msg44216.html
-Patch324: arm64-tegra186-enable-USB-on-Jetson-TX2.patch
-# https://patchwork.kernel.org/patch/11224177/
-Patch325: arm64-usb-host-xhci-tegra-set-MODULE_FIRMWARE-for-tegra186.patch
+
+Patch322: arm64-usb-host-xhci-tegra-set-MODULE_FIRMWARE-for-tegra186.patch
# 400 - IBM (ppc/s390x) patches
@@ -794,80 +845,17 @@ Patch502: 0001-Drop-that-for-now.patch
# Submitted upstream at https://lkml.org/lkml/2019/4/23/89
Patch503: KEYS-Make-use-of-platform-keyring-for-module-signature.patch
-Patch500: PATCH-v2-selinux-allow-labeling-before-policy-is-loaded.patch
+# Fixes a boot hang on debug kernels
+# https://bugzilla.redhat.com/show_bug.cgi?id=1756655
+Patch504: 0001-mm-kmemleak-skip-late_init-if-not-skip-disable.patch
# it seems CONFIG_OPTIMIZE_INLINING has been forced now and is causing issues on ARMv7
# https://lore.kernel.org/patchwork/patch/1132459/
# https://lkml.org/lkml/2019/8/29/1772
Patch505: ARM-fix-__get_user_check-in-case-uaccess_-calls-are-not-inlined.patch
-# CVE-2019-19070 rhbz 1774957 1774958
-Patch510: spi-gpio-prevent-memory-leak-in-spi_gpio_probe.patch
-
-# CVE-2019-19068 rhbz 1774963 1774965
-Patch511: rtl8xxxu-prevent-leaking-urb.patch
-
-# CVE-2019-19043 rhbz 1774972 1774973
-Patch512: net-next-v2-9-9-i40e-prevent-memory-leak-in-i40e_setup_macvlans.patch
-
-# CVE-2019-19066 rhbz 1774976 1774978
-Patch513: scsi-bfa-release-allocated-memory-in-case-of-error.patch
-
-# CVE-2019-19046 rhbz 1774988 1774989
-Patch514: ipmi-Fix-memory-leak-in-__ipmi_bmc_register.patch
-
-# CVE-2019-19064 rhbz 1775010 1775011
-Patch516: spi-lpspi-fix-memory-leak-in-fsl_lpspi_probe.patch
-
-# CVE-2019-19063 rhbz 1775015 1775016
-Patch517: rtlwifi-prevent-memory-leak-in-rtl_usb_probe.patch
-
-# CVE-2019-19057 rhbz 1775050 1775051
-Patch520: mwifiex-pcie-Fix-memory-leak-in-mwifiex_pcie_init_evt_ring.patch
-
-# CVE-2019-19053 rhbz 1775956 1775110
-Patch521: rpmsg-char-release-allocated-memory.patch
-
-# CVE-2019-19056 rhbz 1775097 1775115
-Patch522: mwifiex-pcie-fix-memory-leak-in-mwifiex_pcie_alloc_cmdrsp_buf.patch
-
-# CVE-2019-19054 rhbz 1775063 1775117
-Patch524: media-rc-prevent-memory-leak-in-cx23888_ir_probe.patch
-
-# CVE-2019-14895 rhbz 1774870 1776139
-Patch526: mwifiex-fix-possible-heap-overflow-in-mwifiex_process_country_ie.patch
-
-# CVE-2019-14896 rhbz 1774875 1776143
-# CVE-2019-14897 rhbz 1774879 1776146
-Patch527: libertas-Fix-two-buffer-overflows-at-parsing-bss-descriptor.patch
-
-# CVE-2019-14901 rhbz 1773519 1776184
-Patch528: mwifiex-Fix-heap-overflow-in-mmwifiex_process_tdls_action_frame.patch
-
-# CVE-2019-19078 rhbz 1776354 1776353
-Patch529: ath10k-fix-memory-leak.patch
-
-# CVE-2019-18808 rhbz 1777418 1777421
-Patch531: 0001-crypto-ccp-Release-all-allocated-memory-if-sha-type-.patch
-
-# CVE-2019-18809 rhbz 1777449 1777451
-Patch532: 0001-media-usb-fix-memory-leak-in-af9005_identify_state.patch
-
-# CVE-2019-16232 rhbz 1760351 1760352
-Patch535: 0001-libertas-fix-a-potential-NULL-pointer-dereference.patch
-
-# rhbz 1769600
-Patch536: powerpc-xive-skip-ioremap-of-ESB-pages-for-LSI-interrupts.patch
-
-# ALSA code from v5.5 (Intel ASoC Sound Open Firmware driver support)
-Patch600: alsa-5.5.patch
-
# ALSA code from v5.6 (Intel ASoC Sound Open Firmware driver support)
-Patch607: alsa-5.6.patch
-
-# rhbz 1706557, both patches are upstream in v5.5-rc2
-Patch608: 0001-drm-nouveau-Move-the-declaration-of-struct-nouveau_c.patch
-Patch609: 0002-drm-nouveau-Fix-drm-core-using-atomic-code-paths-on-.patch
+Patch527: alsa-5.6.patch
# END OF PATCH DEFINITIONS
@@ -949,6 +937,123 @@ Provides: installonlypkg(kernel)
This package is required by %{name}-debuginfo subpackages.
It provides the kernel source files common to all builds.
+%if %{with_perf}
+%package -n perf
+Summary: Performance monitoring for the Linux kernel
+License: GPLv2
+%description -n perf
+This package contains the perf tool, which enables performance monitoring
+of the Linux kernel.
+
+%package -n perf-debuginfo
+Summary: Debug information for package perf
+Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
+AutoReqProv: no
+%description -n perf-debuginfo
+This package provides debug information for the perf package.
+
+# Note that this pattern only works right to match the .build-id
+# symlinks because of the trailing nonmatching alternation and
+# the leading .*, because of find-debuginfo.sh's buggy handling
+# of matching the pattern against the symlinks file.
+%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/perf(\.debug)?|.*%%{_libexecdir}/perf-core/.*|.*%%{_libdir}/traceevent/plugins/.*|.*%%{_libdir}/libperf-jvmti.so(\.debug)?|XXX' -o perf-debuginfo.list}
+
+%package -n python3-perf
+Summary: Python bindings for apps which will manipulate perf events
+%description -n python3-perf
+The python3-perf package contains a module that permits applications
+written in the Python programming language to use the interface
+to manipulate perf events.
+
+%package -n python3-perf-debuginfo
+Summary: Debug information for package perf python bindings
+Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
+AutoReqProv: no
+%description -n python3-perf-debuginfo
+This package provides debug information for the perf python bindings.
+
+# the python_sitearch macro should already be defined from above
+%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{python3_sitearch}/perf.*so(\.debug)?|XXX' -o python3-perf-debuginfo.list}
+
+
+%endif # with_perf
+
+%if %{with_tools}
+%package -n kernel-tools
+Summary: Assortment of tools for the Linux kernel
+License: GPLv2
+%ifarch %{cpupowerarchs}
+Provides: cpupowerutils = 1:009-0.6.p1
+Obsoletes: cpupowerutils < 1:009-0.6.p1
+Provides: cpufreq-utils = 1:009-0.6.p1
+Provides: cpufrequtils = 1:009-0.6.p1
+Obsoletes: cpufreq-utils < 1:009-0.6.p1
+Obsoletes: cpufrequtils < 1:009-0.6.p1
+Obsoletes: cpuspeed < 1:1.5-16
+Requires: kernel-tools-libs = %{version}-%{release}
+%endif
+%define __requires_exclude ^%{_bindir}/python
+%description -n kernel-tools
+This package contains the tools/ directory from the kernel source
+and the supporting documentation.
+
+%package -n kernel-tools-libs
+Summary: Libraries for the kernels-tools
+License: GPLv2
+%description -n kernel-tools-libs
+This package contains the libraries built from the tools/ directory
+from the kernel source.
+
+%package -n kernel-tools-libs-devel
+Summary: Assortment of tools for the Linux kernel
+License: GPLv2
+Requires: kernel-tools = %{version}-%{release}
+%ifarch %{cpupowerarchs}
+Provides: cpupowerutils-devel = 1:009-0.6.p1
+Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
+%endif
+Requires: kernel-tools-libs = %{version}-%{release}
+Provides: kernel-tools-devel
+%description -n kernel-tools-libs-devel
+This package contains the development files for the tools/ directory from
+the kernel source.
+
+%package -n kernel-tools-debuginfo
+Summary: Debug information for package kernel-tools
+Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
+AutoReqProv: no
+%description -n kernel-tools-debuginfo
+This package provides debug information for package kernel-tools.
+
+# Note that this pattern only works right to match the .build-id
+# symlinks because of the trailing nonmatching alternation and
+# the leading .*, because of find-debuginfo.sh's buggy handling
+# of matching the pattern against the symlinks file.
+%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/centrino-decode(\.debug)?|.*%%{_bindir}/powernow-k8-decode(\.debug)?|.*%%{_bindir}/cpupower(\.debug)?|.*%%{_libdir}/libcpupower.*|.*%%{_bindir}/turbostat(\.debug)?|.*%%{_bindir}/x86_energy_perf_policy(\.debug)?|.*%%{_bindir}/tmon(\.debug)?|.*%%{_bindir}/lsgpio(\.debug)?|.*%%{_bindir}/gpio-hammer(\.debug)?|.*%%{_bindir}/gpio-event-mon(\.debug)?|.*%%{_bindir}/iio_event_monitor(\.debug)?|.*%%{_bindir}/iio_generic_buffer(\.debug)?|.*%%{_bindir}/lsiio(\.debug)?|XXX' -o kernel-tools-debuginfo.list}
+
+%endif # with_tools
+
+%if %{with_bpftool}
+
+%package -n bpftool
+Summary: Inspection and simple manipulation of eBPF programs and maps
+License: GPLv2
+%description -n bpftool
+This package contains the bpftool, which allows inspection and simple
+manipulation of eBPF programs and maps.
+
+%package -n bpftool-debuginfo
+Summary: Debug information for package bpftool
+Group: Development/Debug
+Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
+AutoReqProv: no
+%description -n bpftool-debuginfo
+This package provides debug information for the bpftool package.
+
+%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_sbindir}/bpftool(\.debug)?|XXX' -o bpftool-debuginfo.list}
+
+%endif # with_bpftool
+
%if %{with_selftests}
%package selftests-internal
Summary: Kernel samples and selftests
@@ -1433,6 +1538,7 @@ pathfix.py -i "%{__python3} %{py3_shbang_opts}" -p -n \
scripts/show_delta \
scripts/diffconfig \
scripts/bloat-o-meter \
+ scripts/jobserver-exec \
tools/perf/tests/attr.py \
tools/perf/scripts/python/stat-cpi.py \
tools/perf/scripts/python/sched-migration.py \
@@ -1826,7 +1932,6 @@ BuildKernel() {
%endif
# then drop all but the needed Makefiles/Kconfig files
- rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
@@ -2102,6 +2207,54 @@ BuildKernel %make_target %kernel_image %{use_vdso} lpae
BuildKernel %make_target %kernel_image %{_use_vdso}
%endif
+%global perf_make \
+ make -s EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?cross_opts} -C tools/perf V=1 NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 prefix=%{_prefix} PYTHON=%{__python3}
+%if %{with_perf}
+# perf
+# make sure check-headers.sh is executable
+chmod +x tools/perf/check-headers.sh
+%{perf_make} DESTDIR=$RPM_BUILD_ROOT all
+%endif
+
+%if %{with_tools}
+%ifarch %{cpupowerarchs}
+# cpupower
+# make sure version-gen.sh is executable.
+chmod +x tools/power/cpupower/utils/version-gen.sh
+%{make} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
+%ifarch x86_64
+ pushd tools/power/cpupower/debug/x86_64
+ %{make} %{?_smp_mflags} centrino-decode powernow-k8-decode
+ popd
+%endif
+%ifarch x86_64
+ pushd tools/power/x86/x86_energy_perf_policy/
+ %{make}
+ popd
+ pushd tools/power/x86/turbostat
+ %{make}
+ popd
+%endif #turbostat/x86_energy_perf_policy
+%endif
+pushd tools/thermal/tmon/
+%{make}
+popd
+pushd tools/iio/
+%{make}
+popd
+pushd tools/gpio/
+%{make}
+popd
+%endif
+
+%global bpftool_make \
+ make EXTRA_CFLAGS="${RPM_OPT_FLAGS}" EXTRA_LDFLAGS="%{__global_ldflags}" DESTDIR=$RPM_BUILD_ROOT V=1
+%if %{with_bpftool}
+pushd tools/bpf/bpftool
+%{bpftool_make}
+popd
+%endif
+
%if %{with_selftests}
%{make} -s ARCH=$Arch V=1 samples/bpf/
pushd tools/testing/selftests
@@ -2251,6 +2404,80 @@ mkdir -p $INSTALL_KABI_PATH
tar xjvf %{SOURCE300} -C $INSTALL_KABI_PATH
%endif
+%if %{with_perf}
+# perf tool binary and supporting scripts/binaries
+%{perf_make} DESTDIR=$RPM_BUILD_ROOT lib=%{_lib} install-bin install-traceevent-plugins
+# remove the 'trace' symlink.
+rm -f %{buildroot}%{_bindir}/trace
+
+# For both of the below, yes, this should be using a macro but right now
+# it's hard coded and we don't actually want it anyway right now.
+# Whoever wants examples can fix it up!
+
+# remove examples
+rm -rf %{buildroot}/usr/lib/perf/examples
+# remove the stray files that somehow got packaged
+rm -rf %{buildroot}/usr/lib/perf/include/bpf/bpf.h
+rm -rf %{buildroot}/usr/lib/perf/include/bpf/stdio.h
+rm -rf %{buildroot}/usr/lib/perf/include/bpf/linux/socket.h
+rm -rf %{buildroot}/usr/lib/perf/include/bpf/pid_filter.h
+rm -rf %{buildroot}/usr/lib/perf/include/bpf/unistd.h
+
+# python-perf extension
+%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
+
+# perf man pages (note: implicit rpm magic compresses them later)
+mkdir -p %{buildroot}/%{_mandir}/man1
+%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-man
+%endif
+
+%if %{with_tools}
+%ifarch %{cpupowerarchs}
+%{make} -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
+rm -f %{buildroot}%{_libdir}/*.{a,la}
+%find_lang cpupower
+mv cpupower.lang ../
+%ifarch x86_64
+ pushd tools/power/cpupower/debug/x86_64
+ install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
+ install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
+ popd
+%endif
+chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
+mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
+install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
+install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
+%endif
+%ifarch x86_64
+ mkdir -p %{buildroot}%{_mandir}/man8
+ pushd tools/power/x86/x86_energy_perf_policy
+ make DESTDIR=%{buildroot} install
+ popd
+ pushd tools/power/x86/turbostat
+ make DESTDIR=%{buildroot} install
+ popd
+%endif #turbostat/x86_energy_perf_policy
+pushd tools/thermal/tmon
+make INSTALL_ROOT=%{buildroot} install
+popd
+pushd tools/iio
+make DESTDIR=%{buildroot} install
+popd
+pushd tools/gpio
+make DESTDIR=%{buildroot} install
+popd
+pushd tools/kvm/kvm_stat
+make INSTALL_ROOT=%{buildroot} install-tools
+make INSTALL_ROOT=%{buildroot} install-man
+popd
+%endif
+
+%if %{with_bpftool}
+pushd tools/bpf/bpftool
+%{bpftool_make} prefix=%{_prefix} bash_compdir=%{_sysconfdir}/bash_completion.d/ mandir=%{_mandir} install doc-install
+popd
+%endif
+
%if %{with_selftests}
pushd samples
install -d %{buildroot}%{_libexecdir}/ksamples
@@ -2305,6 +2532,14 @@ popd
### scripts
###
+%if %{with_tools}
+%post -n kernel-tools-libs
+/sbin/ldconfig
+
+%postun -n kernel-tools-libs
+/sbin/ldconfig
+%endif
+
#
# This macro defines a %%post script for a kernel*-devel package.
# %%kernel_devel_post [<subpackage>]
@@ -2460,6 +2695,95 @@ fi
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}
%endif
+%if %{with_perf}
+%files -n perf
+%{_bindir}/perf
+%{_libdir}/libperf-jvmti.so
+%dir %{_libdir}/traceevent/plugins
+%{_libdir}/traceevent/plugins/*
+%dir %{_libexecdir}/perf-core
+%{_libexecdir}/perf-core/*
+%{_datadir}/perf-core/*
+%{_mandir}/man[1-8]/perf*
+%{_sysconfdir}/bash_completion.d/perf
+%doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt
+%{_docdir}/perf-tip/tips.txt
+
+%files -n python3-perf
+%{python3_sitearch}/*
+
+%if %{with_debuginfo}
+%files -f perf-debuginfo.list -n perf-debuginfo
+
+%files -f python3-perf-debuginfo.list -n python3-perf-debuginfo
+%endif
+%endif # with_perf
+
+%if %{with_tools}
+%files -n kernel-tools
+%ifarch %{cpupowerarchs}
+%files -n kernel-tools -f cpupower.lang
+%{_bindir}/cpupower
+%{_datadir}/bash-completion/completions/cpupower
+%ifarch x86_64
+%{_bindir}/centrino-decode
+%{_bindir}/powernow-k8-decode
+%endif
+%{_unitdir}/cpupower.service
+%{_mandir}/man[1-8]/cpupower*
+%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
+%ifarch x86_64
+%{_bindir}/x86_energy_perf_policy
+%{_mandir}/man8/x86_energy_perf_policy*
+%{_bindir}/turbostat
+%{_mandir}/man8/turbostat*
+%endif
+%endif # cpupowerarchs
+%{_bindir}/tmon
+%{_bindir}/iio_event_monitor
+%{_bindir}/iio_generic_buffer
+%{_bindir}/lsiio
+%{_bindir}/lsgpio
+%{_bindir}/gpio-hammer
+%{_bindir}/gpio-event-mon
+%{_mandir}/man1/kvm_stat*
+%{_bindir}/kvm_stat
+
+%if %{with_debuginfo}
+%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
+%endif
+
+%ifarch %{cpupowerarchs}
+%files -n kernel-tools-libs
+%{_libdir}/libcpupower.so.0
+%{_libdir}/libcpupower.so.0.0.1
+
+%files -n kernel-tools-libs-devel
+%{_libdir}/libcpupower.so
+%{_includedir}/cpufreq.h
+%endif
+%endif # with_tools
+
+%if %{with_bpftool}
+%files -n bpftool
+%{_sbindir}/bpftool
+%{_sysconfdir}/bash_completion.d/bpftool
+%{_mandir}/man8/bpftool-cgroup.8.gz
+%{_mandir}/man8/bpftool-map.8.gz
+%{_mandir}/man8/bpftool-prog.8.gz
+%{_mandir}/man8/bpftool-perf.8.gz
+%{_mandir}/man8/bpftool.8.gz
+%{_mandir}/man7/bpf-helpers.7.gz
+%{_mandir}/man8/bpftool-net.8.gz
+%{_mandir}/man8/bpftool-feature.8.gz
+%{_mandir}/man8/bpftool-btf.8.gz
+
+%if %{with_debuginfo}
+%files -f bpftool-debuginfo.list -n bpftool-debuginfo
+%defattr(-,root,root)
+%endif
+%endif
+
%if %{with_selftests}
%files selftests-internal
%{_libexecdir}/ksamples
@@ -2514,12 +2838,7 @@ fi
/lib/modules/%{KVERREL}%{?3:+%{3}}/source\
/lib/modules/%{KVERREL}%{?3:+%{3}}/updates\
/lib/modules/%{KVERREL}%{?3:+%{3}}/bls.conf\
-%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}/kernel-signing-ca.cer\
-%ifarch s390x ppc64le\
-%if 0%{!?4:1}\
-%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}/%{signing_key_filename} \
-%endif\
-%endif\
+%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}\
%if %{1}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\
%endif\
@@ -2531,9 +2850,6 @@ fi
%{expand:%%files %{?3:%{3}-}modules-extra}\
%config(noreplace) /etc/modprobe.d/*-blacklist.conf\
/lib/modules/%{KVERREL}%{?3:+%{3}}/extra\
-%%defattr(-,root,root)\
-%defverify(not mtime)\
-/usr/src/kernels/%{KVERREL}%{?3:+%{3}}\
%{expand:%%files %{?3:%{3}-}modules-internal}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/internal\
%if %{with_debuginfo}\
@@ -2570,6 +2886,9 @@ fi
#
#
%changelog
+* Tue Jan 28 2020 Justin M. Forbes <jforbes@fedoraproject.org> - 5.5.0-200
+- Linux v5.5
+
* Tue Dec 17 2019 Hans de Goede <hdegoede@redhat.com>
- Add 2 patches from 5.5 to fix some nouveau issues (rhbz#1706557)