Pablo Greco d6c4c4
# We have to override the new %%install behavior because, well... the kernel is special.
Pablo Greco d6c4c4
%global __spec_install_pre %{___build_pre}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# At the time of this writing (2019-03), RHEL8 packages use w2.xzdio
Pablo Greco d6c4c4
# compression for rpms (xz, level 2).
Pablo Greco d6c4c4
# Kernel has several large (hundreds of mbytes) rpms, they take ~5 mins
Pablo Greco d6c4c4
# to compress by single-threaded xz. Switch to threaded compression,
Pablo Greco d6c4c4
# and from level 2 to 3 to keep compressed sizes close to "w2" results.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# NB: if default compression in /usr/lib/rpm/redhat/macros ever changes,
Pablo Greco d6c4c4
# this one might need tweaking (e.g. if default changes to w3.xzdio,
Pablo Greco d6c4c4
# change below to w4T.xzdio):
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This is disabled on i686 as it triggers oom errors
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifnarch i686
Pablo Greco d6c4c4
%define _binary_payload w3T.xzdio
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Summary: The Linux kernel
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# For a kernel released for public testing, released_kernel should be 1.
Pablo Greco d6c4c4
# For internal testing builds during development, it should be 0.
Pablo Greco d6c4c4
# For rawhide and/or a kernel built from an rc or git snapshot,
Pablo Greco d6c4c4
# released_kernel should be 0.
Pablo Greco d6c4c4
# For a stable, released kernel, released_kernel should be 1.
Pablo Greco d6c4c4
%global released_kernel 1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
%define secure_boot_arch x86_64
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define secure_boot_arch x86_64 aarch64 s390x ppc64le
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Signing for secure boot authentication
Pablo Greco d6c4c4
%ifarch %{secure_boot_arch}
Pablo Greco d6c4c4
%global signkernel 1
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%global signkernel 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Sign modules on all arches
Pablo Greco d6c4c4
%global signmodules 1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Compress modules only for architectures that build modules
Pablo Greco d6c4c4
%ifarch noarch
Pablo Greco d6c4c4
%global zipmodules 0
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%global zipmodules 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{zipmodules}
Pablo Greco d6c4c4
%global zipsed -e 's/\.ko$/\.ko.xz/'
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# define buildid .local
Pablo Greco d6c4c4
Pablo Greco 81a88a
%if 0%{?fedora}%{?centos}
Pablo Greco d6c4c4
%define primary_target fedora
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define primary_target rhel
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# baserelease defines which build revision of this kernel version we're
Pablo Greco d6c4c4
# building.  We used to call this fedora_build, but the magical name
Pablo Greco d6c4c4
# baserelease is matched by the rpmdev-bumpspec tool, which you should use.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# We used to have some extra magic weirdness to bump this automatically,
Pablo Greco d6c4c4
# but now we don't.  Just use: rpmdev-bumpspec -c 'comment for changelog'
Pablo Greco d6c4c4
# When changing base_sublevel below or going from rc to a final kernel,
Pablo Greco d6c4c4
# reset this by hand to 1 (or to 0 and then use rpmdev-bumpspec).
Pablo Greco d6c4c4
# scripts/rebase.sh should be made to do that for you, actually.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# NOTE: baserelease must be > 0 or bad things will happen if you switch
Pablo Greco d6c4c4
#       to a released kernel (released version will be < rc version)
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# For non-released -rc kernels, this will be appended after the rcX and
Pablo Greco d6c4c4
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%global baserelease 200
Pablo Greco d6c4c4
%global fedora_build %{baserelease}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# base_sublevel is the kernel version we're starting with and patching
Pablo Greco d6c4c4
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
Pablo Greco d6c4c4
# which yields a base_sublevel of 0.
Pablo Greco d6c4c4
%define base_sublevel 4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
## If this is a released kernel ##
Pablo Greco d6c4c4
%if 0%{?released_kernel}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Do we have a -stable update to apply?
Pablo Greco d6c4c4
%define stable_update 20
Pablo Greco d6c4c4
# Set rpm version accordingly
Pablo Greco d6c4c4
%if 0%{?stable_update}
Pablo Greco d6c4c4
%define stablerev %{stable_update}
Pablo Greco d6c4c4
%define stable_base %{stable_update}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%define rpmversion 5.%{base_sublevel}.%{stable_update}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
## The not-released-kernel case ##
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
# The next upstream release sublevel (base_sublevel+1)
Pablo Greco d6c4c4
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
Pablo Greco d6c4c4
# The rc snapshot level
Pablo Greco d6c4c4
%global rcrev 0
Pablo Greco d6c4c4
# The git snapshot level
Pablo Greco d6c4c4
%define gitrev 0
Pablo Greco d6c4c4
# Set rpm version accordingly
Pablo Greco d6c4c4
%define rpmversion 5.%{upstream_sublevel}.0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
# Nb: The above rcrev and gitrev values automagically define Patch00 and Patch01 below.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# What parts do we want to build?  We must build at least one kernel.
Pablo Greco d6c4c4
# These are the kernels that are built IF the architecture allows it.
Pablo Greco d6c4c4
# All should default to 1 (enabled) and be flipped to 0 (disabled)
Pablo Greco d6c4c4
# by later arch-specific checks.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# The following build options are enabled by default.
Pablo Greco d6c4c4
# Use either --without <opt> in your rpmbuild command or force values
Pablo Greco d6c4c4
# to 0 in here to disable them.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# standard kernel
Pablo Greco d6c4c4
%define with_up        %{?_without_up:        0} %{?!_without_up:        1}
Pablo Greco d6c4c4
# kernel PAE (only valid for ARM (lpae))
Pablo Greco d6c4c4
%define with_pae       %{?_without_pae:       0} %{?!_without_pae:       1}
Pablo Greco d6c4c4
# kernel-debug
Pablo Greco d6c4c4
%define with_debug     %{?_without_debug:     0} %{?!_without_debug:     1}
Pablo Greco d6c4c4
# kernel-doc
Pablo Greco d6c4c4
%define with_doc       %{?_without_doc:       0} %{?!_without_doc:       1}
Pablo Greco d6c4c4
# kernel-headers
Pablo Greco d6c4c4
%define with_headers   %{?_without_headers:   0} %{?!_without_headers:   1}
Pablo Greco d6c4c4
%define with_cross_headers   %{?_without_cross_headers:   0} %{?!_without_cross_headers:   1}
Pablo Greco d6c4c4
# kernel-debuginfo
Pablo Greco d6c4c4
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
Pablo Greco d6c4c4
# Want to build a the vsdo directories installed
Pablo Greco d6c4c4
%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
Pablo Greco d6c4c4
# kernel-zfcpdump (s390 specific kernel for zfcpdump)
Pablo Greco d6c4c4
%define with_zfcpdump  %{?_without_zfcpdump:  0} %{?!_without_zfcpdump:  1}
Pablo Greco d6c4c4
# kernel-abi-whitelists
Pablo Greco d6c4c4
%define with_kernel_abi_whitelists %{?_without_kernel_abi_whitelists: 0} %{?!_without_kernel_abi_whitelists: 1}
Pablo Greco d6c4c4
# internal samples and selftests
Pablo Greco d6c4c4
%define with_selftests %{?_without_selftests: 0} %{?!_without_selftests: 1}
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Additional options for user-friendly one-off kernel building:
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Only build the base kernel (--with baseonly):
Pablo Greco d6c4c4
%define with_baseonly  %{?_with_baseonly:     1} %{?!_with_baseonly:     0}
Pablo Greco d6c4c4
# Only build the pae kernel (--with paeonly):
Pablo Greco d6c4c4
%define with_paeonly   %{?_with_paeonly:      1} %{?!_with_paeonly:      0}
Pablo Greco d6c4c4
# Only build the debug kernel (--with dbgonly):
Pablo Greco d6c4c4
%define with_dbgonly   %{?_with_dbgonly:      1} %{?!_with_dbgonly:      0}
Pablo Greco d6c4c4
# Control whether we perform a compat. check against published ABI.
Pablo Greco d6c4c4
%define with_kabichk   %{?_without_kabichk:   0} %{?!_without_kabichk:   1}
Pablo Greco d6c4c4
# Temporarily disable kabi checks until RC.
Pablo Greco d6c4c4
%define with_kabichk 0
Pablo Greco d6c4c4
# Control whether we perform a compat. check against DUP ABI.
Pablo Greco d6c4c4
%define with_kabidupchk %{?_with_kabidupchk:  1} %{?!_with_kabidupchk:   0}
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Control whether to run an extensive DWARF based kABI check.
Pablo Greco d6c4c4
# Note that this option needs to have baseline setup in SOURCE300.
Pablo Greco d6c4c4
%define with_kabidwchk %{?_without_kabidwchk: 0} %{?!_without_kabidwchk: 1}
Pablo Greco d6c4c4
%define with_kabidw_base %{?_with_kabidw_base: 1} %{?!_with_kabidw_base: 0}
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# should we do C=1 builds with sparse
Pablo Greco d6c4c4
%define with_sparse    %{?_with_sparse:       1} %{?!_with_sparse:       0}
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Cross compile requested?
Pablo Greco d6c4c4
%define with_cross    %{?_with_cross:         1} %{?!_with_cross:        0}
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# build a release kernel on rawhide
Pablo Greco d6c4c4
%define with_release   %{?_with_release:      1} %{?!_with_release:      0}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# verbose build, i.e. no silent rules and V=1
Pablo Greco d6c4c4
%define with_verbose %{?_with_verbose:        1} %{?!_with_verbose:      0}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# check for mismatched config options
Pablo Greco d6c4c4
%define with_configchecks %{?_without_configchecks:        0} %{?!_without_configchecks:        1}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# gcov support
Pablo Greco d6c4c4
%define with_gcov %{?_with_gcov: 1} %{?!_with_gcov: 0}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# ipa_clone support
Pablo Greco d6c4c4
%define with_ipaclones %{?_without_ipaclones: 0} %{?!_without_ipaclones: 1}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Want to build a vanilla kernel build without any non-upstream patches?
Pablo Greco d6c4c4
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
Pablo Greco d6c4c4
#  and 0 for rawhide (all kernels are debug kernels).
Pablo Greco d6c4c4
# See also 'make debug' and 'make release'.
Pablo Greco d6c4c4
%define debugbuildsenabled 1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
# Kernel headers are being split out into a separate package
Pablo Greco d6c4c4
%define with_headers 0
Pablo Greco d6c4c4
%define with_cross_headers 0
Pablo Greco d6c4c4
# no selftests for now
Pablo Greco d6c4c4
%define with_selftests 0
Pablo Greco d6c4c4
# no ipa_clone for now
Pablo Greco d6c4c4
%define with_ipaclones 0
Pablo Greco d6c4c4
# no whitelist
Pablo Greco d6c4c4
%define with_kernel_abi_whitelists 0
Pablo Greco d6c4c4
# Fedora builds these separately
Pablo Greco d6c4c4
%define with_perf 0
Pablo Greco d6c4c4
%define with_tools 0
Pablo Greco d6c4c4
%define with_bpftool 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_verbose}
Pablo Greco d6c4c4
%define make_opts V=1
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define make_opts -s
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# pkg_release is what we'll fill in for the rpm Release: field
Pablo Greco d6c4c4
%if 0%{?released_kernel}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define pkg_release %{fedora_build}%{?buildid}%{?dist}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# non-released_kernel
Pablo Greco d6c4c4
%if 0%{?rcrev}
Pablo Greco d6c4c4
%define rctag .rc%rcrev
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define rctag .rc0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
%define gittag .git%gitrev
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define gittag .git0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%define pkg_release 0%{?rctag}%{?gittag}.%{fedora_build}%{?buildid}%{?dist}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# The kernel tarball/base version
Pablo Greco d6c4c4
%define kversion 5.%{base_sublevel}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# turn off debug kernel and kabichk for gcov builds
Pablo Greco d6c4c4
%if %{with_gcov}
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%define with_kabichk 0
Pablo Greco d6c4c4
%define with_kabidupchk 0
Pablo Greco d6c4c4
%define with_kabidwchk 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# turn off kABI DWARF-based check if we're generating the base dataset
Pablo Greco d6c4c4
%if %{with_kabidw_base}
Pablo Greco d6c4c4
%define with_kabidwchk 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# kpatch_kcflags are extra compiler flags applied to base kernel
Pablo Greco d6c4c4
# -fdump-ipa-clones is enabled only for base kernels on selected arches
Pablo Greco d6c4c4
%if %{with_ipaclones}
Pablo Greco d6c4c4
%ifarch x86_64 ppc64le
Pablo Greco d6c4c4
%define kpatch_kcflags -fdump-ipa-clones
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define with_ipaclones 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define make_target bzImage
Pablo Greco d6c4c4
%define image_install_path boot
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define KVERREL %{version}-%{release}.%{_target_cpu}
Pablo Greco d6c4c4
%define KVERREL_RE %(echo %KVERREL | sed 's/+/[+]/g')
Pablo Greco d6c4c4
%define hdrarch %_target_cpu
Pablo Greco d6c4c4
%define asmarch %_target_cpu
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{!?nopatches:1}
Pablo Greco d6c4c4
%define nopatches 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_vanilla}
Pablo Greco d6c4c4
%define nopatches 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{nopatches}
Pablo Greco d6c4c4
%define variant -vanilla
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if !%{debugbuildsenabled}
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if !%{with_debuginfo}
Pablo Greco d6c4c4
%define _enable_debug_packages 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%define debuginfodir /usr/lib/debug
Pablo Greco d6c4c4
# Needed because we override almost everything involving build-ids
Pablo Greco d6c4c4
# and debuginfo generation. Currently we rely on the old alldebug setting.
Pablo Greco d6c4c4
%global _build_id_links alldebug
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# kernel PAE is only built on ARMv7
Pablo Greco d6c4c4
%ifnarch armv7hl
Pablo Greco d6c4c4
%define with_pae 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# if requested, only build base kernel
Pablo Greco d6c4c4
%if %{with_baseonly}
Pablo Greco d6c4c4
%define with_pae 0
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# if requested, only build pae kernel
Pablo Greco d6c4c4
%if %{with_paeonly}
Pablo Greco d6c4c4
%define with_up 0
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# if requested, only build debug kernel
Pablo Greco d6c4c4
%if %{with_dbgonly}
Pablo Greco d6c4c4
%if %{debugbuildsenabled}
Pablo Greco d6c4c4
%define with_up 0
Pablo Greco d6c4c4
%define with_pae 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%define with_pae 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# turn off kABI DUP check and DWARF-based check if kABI check is disabled
Pablo Greco d6c4c4
%if !%{with_kabichk}
Pablo Greco d6c4c4
%define with_kabidupchk 0
Pablo Greco d6c4c4
%define with_kabidwchk 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_vdso_install}
Pablo Greco d6c4c4
%define use_vdso 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifnarch noarch
Pablo Greco d6c4c4
%define with_kernel_abi_whitelists 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Overrides for generic default options
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# only package docs noarch
Pablo Greco d6c4c4
%ifnarch noarch
Pablo Greco d6c4c4
%define with_doc 0
Pablo Greco d6c4c4
%define doc_build_fail true
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
# don't do debug builds on anything but i686 and x86_64
Pablo Greco d6c4c4
%ifnarch i686 x86_64
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# don't build noarch kernels or headers (duh)
Pablo Greco d6c4c4
%ifarch noarch
Pablo Greco d6c4c4
%define with_up 0
Pablo Greco d6c4c4
%define with_headers 0
Pablo Greco d6c4c4
%define with_cross_headers 0
Pablo Greco d6c4c4
%define with_selftests 0
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-*.config
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# sparse blows up on ppc
Pablo Greco d6c4c4
%ifnarch ppc64le
Pablo Greco d6c4c4
%define with_sparse 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# zfcpdump mechanism is s390 only
Pablo Greco d6c4c4
%ifnarch s390x
Pablo Greco d6c4c4
%define with_zfcpdump 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
# This is not for Fedora
Pablo Greco d6c4c4
%define with_zfcpdump 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Per-arch tweaks
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch i686
Pablo Greco d6c4c4
%define asmarch x86
Pablo Greco d6c4c4
%define hdrarch i386
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-i?86*.config
Pablo Greco d6c4c4
%define kernel_image arch/x86/boot/bzImage
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch x86_64
Pablo Greco d6c4c4
%define asmarch x86
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-x86_64*.config
Pablo Greco d6c4c4
%define kernel_image arch/x86/boot/bzImage
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch ppc64le
Pablo Greco d6c4c4
%define asmarch powerpc
Pablo Greco d6c4c4
%define hdrarch powerpc
Pablo Greco d6c4c4
%define make_target vmlinux
Pablo Greco d6c4c4
%define kernel_image vmlinux
Pablo Greco d6c4c4
%define kernel_image_elf 1
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-ppc64le*.config
Pablo Greco d6c4c4
%define kcflags -O3
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch s390x
Pablo Greco d6c4c4
%define asmarch s390
Pablo Greco d6c4c4
%define hdrarch s390
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-s390x.config
Pablo Greco d6c4c4
%define kernel_image arch/s390/boot/bzImage
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch %{arm}
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-arm*.config
Pablo Greco d6c4c4
%define skip_nonpae_vdso 1
Pablo Greco d6c4c4
%define asmarch arm
Pablo Greco d6c4c4
%define hdrarch arm
Pablo Greco d6c4c4
%define make_target bzImage
Pablo Greco d6c4c4
%define kernel_image arch/arm/boot/zImage
Pablo Greco d6c4c4
# http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/091404.html
Pablo Greco d6c4c4
%define kernel_mflags KALLSYMS_EXTRA_PASS=1
Pablo Greco d6c4c4
# we only build headers/perf/tools on the base arm arches
Pablo Greco d6c4c4
# just like we used to only build them on i386 for x86
Pablo Greco d6c4c4
%ifnarch armv7hl
Pablo Greco d6c4c4
%define with_headers 0
Pablo Greco d6c4c4
%define with_cross_headers 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
# These currently don't compile on armv7
Pablo Greco d6c4c4
%define with_selftests 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch aarch64
Pablo Greco d6c4c4
%define all_arch_configs kernel-%{version}-aarch64*.config
Pablo Greco d6c4c4
%define asmarch arm64
Pablo Greco d6c4c4
%define hdrarch arm64
Pablo Greco d6c4c4
%define make_target Image.gz
Pablo Greco d6c4c4
%define kernel_image arch/arm64/boot/Image.gz
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Should make listnewconfig fail if there's config options
Pablo Greco d6c4c4
# printed out?
Pablo Greco d6c4c4
%if %{nopatches}
Pablo Greco d6c4c4
%define with_configchecks 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# To temporarily exclude an architecture from being built, add it to
Pablo Greco d6c4c4
# %%nobuildarches. Do _NOT_ use the ExclusiveArch: line, because if we
Pablo Greco d6c4c4
# don't build kernel-headers then the new build system will no longer let
Pablo Greco d6c4c4
# us use the previous build of that package -- it'll just be completely AWOL.
Pablo Greco d6c4c4
# Which is a BadThing(tm).
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# We only build kernel-headers on the following...
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
%define nobuildarches i386
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define nobuildarches i386 i686
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch %nobuildarches
Pablo Greco d6c4c4
%define with_up 0
Pablo Greco d6c4c4
%define with_debug 0
Pablo Greco d6c4c4
%define with_debuginfo 0
Pablo Greco 81a88a
%define with_perf 0
Pablo Greco 81a88a
%define with_tools 0
Pablo Greco 81a88a
%define with_bpftool 0
Pablo Greco d6c4c4
%define with_selftests 0
Pablo Greco d6c4c4
%define with_pae 0
Pablo Greco d6c4c4
%define _enable_debug_packages 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Architectures we build tools/cpupower on
Pablo Greco 81a88a
%if 0%{?fedora}%{?centos}
Pablo Greco d6c4c4
%define cpupowerarchs %{ix86} x86_64 ppc64le %{arm} aarch64
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define cpupowerarchs i686 x86_64 ppc64le aarch64
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{use_vdso}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if 0%{?skip_nonpae_vdso}
Pablo Greco d6c4c4
%define _use_vdso 0
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define _use_vdso 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define _use_vdso 0
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Packages that need to be installed before the kernel is, because the %%post
Pablo Greco d6c4c4
# scripts use them.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_prereq  coreutils, systemd >= 203-2, /usr/bin/kernel-install
Pablo Greco d6c4c4
%define initrd_prereq  dracut >= 027
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Name: kernel%{?variant}
Pablo Greco d6c4c4
License: GPLv2 and Redistributable, no modification permitted
Pablo Greco d6c4c4
URL: https://www.kernel.org/
Pablo Greco d6c4c4
Version: %{rpmversion}
Pablo Greco d6c4c4
Release: %{pkg_release}
Pablo Greco d6c4c4
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
Pablo Greco d6c4c4
# SET %%nobuildarches (ABOVE) INSTEAD
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
ExclusiveArch: x86_64 s390x %{arm} aarch64 ppc64le
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
ExclusiveArch: noarch i386 i686 x86_64 s390x %{arm} aarch64 ppc64le
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
ExclusiveOS: Linux
Pablo Greco d6c4c4
%ifnarch %{nobuildarches}
Pablo Greco d6c4c4
Requires: kernel-core-uname-r = %{KVERREL}%{?variant}
Pablo Greco d6c4c4
Requires: kernel-modules-uname-r = %{KVERREL}%{?variant}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# List the packages used during the kernel build
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
BuildRequires: kmod, patch, bash, tar, git-core
Pablo Greco d6c4c4
BuildRequires: bzip2, xz, findutils, gzip, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk
Pablo Greco d6c4c4
BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex
Pablo Greco d6c4c4
BuildRequires: net-tools, hostname, bc, elfutils-devel
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
BuildRequires: dwarves
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
# Used to mangle unversioned shebangs to be Python 3
Pablo Greco d6c4c4
BuildRequires: python3-devel
Pablo Greco d6c4c4
%if %{with_headers}
Pablo Greco d6c4c4
BuildRequires: rsync
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%if %{with_doc}
Pablo Greco d6c4c4
BuildRequires: xmlto, asciidoc, python3-sphinx
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%if %{with_sparse}
Pablo Greco d6c4c4
BuildRequires: sparse
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%if %{with_selftests}
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
BuildRequires: clang llvm
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
BuildRequires: llvm-toolset
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%ifnarch %{arm}
Pablo Greco d6c4c4
BuildRequires: numactl-devel
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
BuildRequires: libcap-devel libcap-ng-devel rsync
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
Pablo Greco d6c4c4
%if %{with_debuginfo}
Pablo Greco d6c4c4
BuildRequires: rpm-build, elfutils
Pablo Greco d6c4c4
BuildConflicts: rpm < 4.13.0.1-19
Pablo Greco d6c4c4
%if 0%{?fedora}
Pablo Greco d6c4c4
BuildConflicts: dwarves < 1.13
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
# Most of these should be enabled after more investigation
Pablo Greco d6c4c4
%undefine _include_minidebuginfo
Pablo Greco d6c4c4
%undefine _find_debuginfo_dwz_opts
Pablo Greco d6c4c4
%undefine _unique_build_ids
Pablo Greco d6c4c4
%undefine _unique_debug_names
Pablo Greco d6c4c4
%undefine _unique_debug_srcs
Pablo Greco d6c4c4
%undefine _debugsource_packages
Pablo Greco d6c4c4
%undefine _debuginfo_subpackages
Pablo Greco d6c4c4
%global _find_debuginfo_opts -r
Pablo Greco d6c4c4
%global _missing_build_ids_terminate_build 1
Pablo Greco d6c4c4
%global _no_recompute_build_ids 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%if %{with_kabidwchk} || %{with_kabidw_base}
Pablo Greco d6c4c4
BuildRequires: kabi-dw
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{signkernel}%{signmodules}
Pablo Greco d6c4c4
BuildRequires: openssl openssl-devel
Pablo Greco d6c4c4
%if %{signkernel}
Pablo Greco d6c4c4
%ifarch x86_64 aarch64
Pablo Greco d6c4c4
BuildRequires: nss-tools
Pablo Greco d6c4c4
BuildRequires: pesign >= 0.10-4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_cross}
Pablo Greco d6c4c4
BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
Pablo Greco d6c4c4
%define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu-
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source0: https://www.kernel.org/pub/linux/kernel/v5.x/linux-%{kversion}.tar.xz
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Name of the packaged file containing signing key
Pablo Greco d6c4c4
%ifarch ppc64le
Pablo Greco d6c4c4
%define signing_key_filename kernel-signing-ppc.cer
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%ifarch s390x
Pablo Greco d6c4c4
%define signing_key_filename kernel-signing-s390.cer
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source10: x509.genkey.rhel
Pablo Greco d6c4c4
Source11: x509.genkey.fedora
Pablo Greco d6c4c4
%if %{?released_kernel}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source12: securebootca.cer
Pablo Greco d6c4c4
Source13: secureboot.cer
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define secureboot_ca %{SOURCE12}
Pablo Greco d6c4c4
%ifarch x86_64 aarch64
Pablo Greco d6c4c4
%define secureboot_key %{SOURCE13}
Pablo Greco d6c4c4
%define pesign_name redhatsecureboot301
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%else # released_kernel
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source12: redhatsecurebootca2.cer
Pablo Greco d6c4c4
Source13: redhatsecureboot003.cer
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define secureboot_ca %{SOURCE12}
Pablo Greco d6c4c4
%define secureboot_key %{SOURCE13}
Pablo Greco d6c4c4
%define pesign_name redhatsecureboot003
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif # released_kernel
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source15: mod-extra.list.rhel
Pablo Greco d6c4c4
Source16: mod-extra.list.fedora
Pablo Greco d6c4c4
Source17: mod-extra.sh
Pablo Greco d6c4c4
Source18: mod-sign.sh
Pablo Greco d6c4c4
Source19: mod-extra-blacklist.sh
Pablo Greco d6c4c4
Source79: parallel_xz.sh
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source80: filter-x86_64.sh.fedora
Pablo Greco d6c4c4
Source81: filter-armv7hl.sh.fedora
Pablo Greco d6c4c4
Source82: filter-i686.sh.fedora
Pablo Greco d6c4c4
Source83: filter-aarch64.sh.fedora
Pablo Greco d6c4c4
Source86: filter-ppc64le.sh.fedora
Pablo Greco d6c4c4
Source87: filter-s390x.sh.fedora
Pablo Greco d6c4c4
Source89: filter-modules.sh.fedora
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source90: filter-x86_64.sh.rhel
Pablo Greco d6c4c4
Source91: filter-armv7hl.sh.rhel
Pablo Greco d6c4c4
Source92: filter-i686.sh.rhel
Pablo Greco d6c4c4
Source93: filter-aarch64.sh.rhel
Pablo Greco d6c4c4
Source96: filter-ppc64le.sh.rhel
Pablo Greco d6c4c4
Source97: filter-s390x.sh.rhel
Pablo Greco d6c4c4
Source99: filter-modules.sh.rhel
Pablo Greco d6c4c4
%define modsign_cmd %{SOURCE18}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source20: kernel-aarch64-rhel.config
Pablo Greco d6c4c4
Source21: kernel-aarch64-debug-rhel.config
Pablo Greco d6c4c4
Source30: kernel-ppc64le-rhel.config
Pablo Greco d6c4c4
Source31: kernel-ppc64le-debug-rhel.config
Pablo Greco d6c4c4
Source32: kernel-s390x-rhel.config
Pablo Greco d6c4c4
Source33: kernel-s390x-debug-rhel.config
Pablo Greco d6c4c4
Source34: kernel-s390x-zfcpdump-rhel.config
Pablo Greco d6c4c4
Source35: kernel-x86_64-rhel.config
Pablo Greco d6c4c4
Source36: kernel-x86_64-debug-rhel.config
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source37: kernel-aarch64-fedora.config
Pablo Greco d6c4c4
Source38: kernel-aarch64-debug-fedora.config
Pablo Greco d6c4c4
Source39: kernel-armv7hl-fedora.config
Pablo Greco d6c4c4
Source40: kernel-armv7hl-debug-fedora.config
Pablo Greco d6c4c4
Source41: kernel-armv7hl-lpae-fedora.config
Pablo Greco d6c4c4
Source42: kernel-armv7hl-lpae-debug-fedora.config
Pablo Greco d6c4c4
Source43: kernel-i686-fedora.config
Pablo Greco d6c4c4
Source44: kernel-i686-debug-fedora.config
Pablo Greco d6c4c4
Source45: kernel-ppc64le-fedora.config
Pablo Greco d6c4c4
Source46: kernel-ppc64le-debug-fedora.config
Pablo Greco d6c4c4
Source47: kernel-s390x-fedora.config
Pablo Greco d6c4c4
Source48: kernel-s390x-debug-fedora.config
Pablo Greco d6c4c4
Source49: kernel-x86_64-fedora.config
Pablo Greco d6c4c4
Source50: kernel-x86_64-debug-fedora.config
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source51: generate_all_configs.sh
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source52: process_configs.sh
Pablo Greco d6c4c4
Source53: generate_bls_conf.sh
Pablo Greco d6c4c4
Source56: update_scripts.sh
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source54: mod-internal.list
Pablo Greco d6c4c4
Source55: merge.pl
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source200: check-kabi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source201: Module.kabi_aarch64
Pablo Greco d6c4c4
Source202: Module.kabi_ppc64le
Pablo Greco d6c4c4
Source203: Module.kabi_s390x
Pablo Greco d6c4c4
Source204: Module.kabi_x86_64
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Source210: Module.kabi_dup_aarch64
Pablo Greco d6c4c4
Source211: Module.kabi_dup_ppc64le
Pablo Greco d6c4c4
Source212: Module.kabi_dup_s390x
Pablo Greco d6c4c4
Source213: Module.kabi_dup_x86_64
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Source300: kernel-abi-whitelists-%{rpmversion}-%{distro_build}.tar.bz2
Pablo Greco d6c4c4
# Source301: kernel-kabi-dw-%{rpmversion}-%{distro_build}.tar.bz2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Sources for kernel-tools
Pablo Greco d6c4c4
Source2000: cpupower.service
Pablo Greco d6c4c4
Source2001: cpupower.config
Pablo Greco d6c4c4
Pablo Greco d6c4c4
## Patches needed for building this package
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Patch1: patch-%{rpmversion}-redhat.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# empty final patch to facilitate testing of kernel patches
Pablo Greco d6c4c4
# Patch999999: linux-kernel-test.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This file is intentionally left empty in the stock kernel. Its a nicety
Pablo Greco d6c4c4
# added for those wanting to do custom rebuilds with altered config opts.
Pablo Greco d6c4c4
Source1000: kernel-local
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Here should be only the patches up to the upstream canonical Linus tree.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# For a stable release kernel
Pablo Greco d6c4c4
%if 0%{?stable_update}
Pablo Greco d6c4c4
%if 0%{?stable_base}
Pablo Greco d6c4c4
%define    stable_patch_00  patch-5.%{base_sublevel}.%{stable_base}.xz
Pablo Greco d6c4c4
Source5000: %{stable_patch_00}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# non-released_kernel case
Pablo Greco d6c4c4
# These are automagically defined by the rcrev and gitrev values set up
Pablo Greco d6c4c4
# near the top of this spec file.
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%if 0%{?rcrev}
Pablo Greco d6c4c4
Source5000: patch-5.%{upstream_sublevel}-rc%{rcrev}.xz
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
Source5001: patch-5.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}.xz
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
# pre-{base_sublevel+1}-rc1 case
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
Source5000: patch-5.%{base_sublevel}-git%{gitrev}.xz
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
## Patches needed for building this package
Pablo Greco d6c4c4
Pablo Greco d6c4c4
## compile fixes
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if !%{nopatches}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Git trees.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Standalone patches
Pablo Greco d6c4c4
# 100 - Generic long running patches
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# 200 - x86 / secureboot
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# bz 1497559 - Make kernel MODSIGN code not error on missing variables
Pablo Greco d6c4c4
Patch200: 0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch
Pablo Greco d6c4c4
Patch201: 0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch
Pablo Greco d6c4c4
Patch202: 0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Patch204: efi-secureboot.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# 300 - ARM patches
Pablo Greco d6c4c4
Patch300: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# RHBZ Bug 1576593 - work around while vendor investigates
Pablo Greco d6c4c4
Patch301: arm-make-highpte-not-expert.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# https://patchwork.kernel.org/patch/10351797/
Pablo Greco d6c4c4
Patch302: ACPI-scan-Fix-regression-related-to-X-Gene-UARTs.patch
Pablo Greco d6c4c4
# rhbz 1574718
Pablo Greco d6c4c4
Patch303: ACPI-irq-Workaround-firmware-issue-on-X-Gene-based-m400.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# http://www.spinics.net/lists/linux-tegra/msg26029.html
Pablo Greco d6c4c4
Patch304: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
Pablo Greco d6c4c4
# http://patchwork.ozlabs.org/patch/587554/
Pablo Greco d6c4c4
Patch305: ARM-tegra-usb-no-reset.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Tegra bits
Pablo Greco d6c4c4
Patch320: arm64-tegra-jetson-tx1-fixes.patch
Pablo Greco d6c4c4
# https://www.spinics.net/lists/linux-tegra/msg43110.html
Pablo Greco d6c4c4
Patch321: arm64-tegra-Jetson-TX2-Allow-bootloader-to-configure.patch
Pablo Greco d6c4c4
# https://patchwork.kernel.org/patch/11171225/
Pablo Greco d6c4c4
Patch322: mfd-max77620-Do-not-allocate-IRQs-upfront.patch
Pablo Greco d6c4c4
# https://patchwork.ozlabs.org/patch/1170631/
Pablo Greco d6c4c4
Patch323: gpio-max77620-Use-correct-unit-for-debounce-times.patch
Pablo Greco d6c4c4
# https://www.spinics.net/lists/linux-tegra/msg44216.html
Pablo Greco d6c4c4
Patch324: arm64-tegra186-enable-USB-on-Jetson-TX2.patch
Pablo Greco d6c4c4
# https://patchwork.kernel.org/patch/11224177/
Pablo Greco d6c4c4
Patch325: arm64-usb-host-xhci-tegra-set-MODULE_FIRMWARE-for-tegra186.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# 400 - IBM (ppc/s390x) patches
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# 500 - Temp fixes/CVEs etc
Pablo Greco d6c4c4
Patch500: PATCH-v2-selinux-allow-labeling-before-policy-is-loaded.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# rhbz 1431375
Pablo Greco d6c4c4
Patch501: input-rmi4-remove-the-need-for-artifical-IRQ.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# gcc9 fixes
Pablo Greco d6c4c4
Patch502: 0001-Drop-that-for-now.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# https://bugzilla.redhat.com/show_bug.cgi?id=1701096
Pablo Greco d6c4c4
# Submitted upstream at https://lkml.org/lkml/2019/4/23/89
Pablo Greco d6c4c4
Patch503: KEYS-Make-use-of-platform-keyring-for-module-signature.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# it seems CONFIG_OPTIMIZE_INLINING has been forced now and is causing issues on ARMv7
Pablo Greco d6c4c4
# https://lore.kernel.org/patchwork/patch/1132459/
Pablo Greco d6c4c4
# https://lkml.org/lkml/2019/8/29/1772
Pablo Greco d6c4c4
Patch504: ARM-fix-__get_user_check-in-case-uaccess_-calls-are-not-inlined.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# CVE-2019-19054 rhbz 1775063 1775117
Pablo Greco d6c4c4
Patch523: media-rc-prevent-memory-leak-in-cx23888_ir_probe.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# CVE-2019-18808 rhbz 1777418 1777421
Pablo Greco d6c4c4
Patch527: 0001-crypto-ccp-Release-all-allocated-memory-if-sha-type-.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# https://gitlab.freedesktop.org/drm/intel/issues/673
Pablo Greco d6c4c4
Patch531: drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# ALSA code from v5.5 (Intel ASoC Sound Open Firmware driver support)
Pablo Greco d6c4c4
Patch600: alsa-5.5.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# ALSA code from v5.6 (Intel ASoC Sound Open Firmware driver support)
Pablo Greco d6c4c4
Patch601: alsa-5.6.patch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This is already in 5.5 rhbz 1794369
Pablo Greco d6c4c4
Patch603: 0001-e1000e-Add-support-for-Comet-Lake.patch
Pablo Greco d6c4c4
Pablo Greco 81a88a
#CentOS
Pablo Greco 81a88a
Patch9999: 0001-Fix-mt7615.patch
Pablo Greco d6c4c4
# END OF PATCH DEFINITIONS
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%description
Pablo Greco d6c4c4
The kernel meta package
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro does requires, provides, conflicts, obsoletes for a kernel package.
Pablo Greco d6c4c4
#	%%kernel_reqprovconf <subpackage>
Pablo Greco d6c4c4
# It uses any kernel_<subpackage>_conflicts and kernel_<subpackage>_obsoletes
Pablo Greco d6c4c4
# macros defined above.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_reqprovconf \
Pablo Greco d6c4c4
Provides: kernel = %{rpmversion}-%{pkg_release}\
Pablo Greco d6c4c4
Provides: kernel-%{_target_cpu} = %{rpmversion}-%{pkg_release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: kernel-drm-nouveau = 16\
Pablo Greco d6c4c4
Provides: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires(pre): %{kernel_prereq}\
Pablo Greco d6c4c4
Requires(pre): %{initrd_prereq}\
Pablo Greco d6c4c4
Requires(pre): linux-firmware >= 20150904-56.git6ebf5d57\
Pablo Greco d6c4c4
Requires(preun): systemd >= 200\
Pablo Greco d6c4c4
Conflicts: xfsprogs < 4.3.0-1\
Pablo Greco d6c4c4
Conflicts: xorg-x11-drv-vmmouse < 13.0.99\
Pablo Greco d6c4c4
%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}\
Pablo Greco d6c4c4
%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}\
Pablo Greco d6c4c4
%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}\
Pablo Greco d6c4c4
# We can't let RPM do the dependencies automatic because it'll then pick up\
Pablo Greco d6c4c4
# a correct but undesirable perl dependency from the module headers which\
Pablo Greco d6c4c4
# isn't required for the kernel proper to function\
Pablo Greco d6c4c4
AutoReq: no\
Pablo Greco d6c4c4
AutoProv: yes\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%package doc
Pablo Greco d6c4c4
Summary: Various documentation bits found in the kernel source
Pablo Greco d6c4c4
Group: Documentation
Pablo Greco d6c4c4
%description doc
Pablo Greco d6c4c4
This package contains documentation files from the kernel
Pablo Greco d6c4c4
source. Various bits of information about the Linux kernel and the
Pablo Greco d6c4c4
device drivers shipped with it are documented in these files.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
You'll want to install this package if you need a reference to the
Pablo Greco d6c4c4
options that can be passed to Linux kernel modules at load time.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%package headers
Pablo Greco d6c4c4
Summary: Header files for the Linux kernel for use by glibc
Pablo Greco d6c4c4
Obsoletes: glibc-kernheaders < 3.0-46
Pablo Greco d6c4c4
Provides: glibc-kernheaders = 3.0-46
Pablo Greco d6c4c4
%if "0%{?variant}"
Pablo Greco d6c4c4
Obsoletes: kernel-headers < %{rpmversion}-%{pkg_release}
Pablo Greco d6c4c4
Provides: kernel-headers = %{rpmversion}-%{pkg_release}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%description headers
Pablo Greco d6c4c4
Kernel-headers includes the C header files that specify the interface
Pablo Greco d6c4c4
between the Linux kernel and userspace libraries and programs.  The
Pablo Greco d6c4c4
header files define structures and constants that are needed for
Pablo Greco d6c4c4
building most standard programs and are also needed for rebuilding the
Pablo Greco d6c4c4
glibc package.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%package cross-headers
Pablo Greco d6c4c4
Summary: Header files for the Linux kernel for use by cross-glibc
Pablo Greco d6c4c4
%description cross-headers
Pablo Greco d6c4c4
Kernel-cross-headers includes the C header files that specify the interface
Pablo Greco d6c4c4
between the Linux kernel and userspace libraries and programs.  The
Pablo Greco d6c4c4
header files define structures and constants that are needed for
Pablo Greco d6c4c4
building most standard programs and are also needed for rebuilding the
Pablo Greco d6c4c4
cross-glibc package.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%package debuginfo-common-%{_target_cpu}
Pablo Greco d6c4c4
Summary: Kernel source files used by %{name}-debuginfo packages
Pablo Greco d6c4c4
Provides: installonlypkg(kernel)
Pablo Greco d6c4c4
%description debuginfo-common-%{_target_cpu}
Pablo Greco d6c4c4
This package is required by %{name}-debuginfo subpackages.
Pablo Greco d6c4c4
It provides the kernel source files common to all builds.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_selftests}
Pablo Greco d6c4c4
%package selftests-internal
Pablo Greco d6c4c4
Summary: Kernel samples and selftests
Pablo Greco d6c4c4
License: GPLv2
Pablo Greco d6c4c4
Requires: binutils, bpftool, iproute-tc, nmap-ncat
Pablo Greco d6c4c4
Requires: kernel-modules-internal = %{version}-%{release}
Pablo Greco d6c4c4
%description selftests-internal
Pablo Greco d6c4c4
Kernel sample programs and selftests.
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
# Note that this pattern only works right to match the .build-id
Pablo Greco d6c4c4
# symlinks because of the trailing nonmatching alternation and
Pablo Greco d6c4c4
# the leading .*, because of find-debuginfo.sh's buggy handling
Pablo Greco d6c4c4
# of matching the pattern against the symlinks file.
Pablo Greco d6c4c4
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_libexecdir}/(ksamples|kselftests)/.*|XXX' -o selftests-debuginfo.list}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_gcov}
Pablo Greco d6c4c4
%package gcov
Pablo Greco d6c4c4
Summary: gcov graph and source files for coverage data collection.
Pablo Greco d6c4c4
%description gcov
Pablo Greco d6c4c4
kernel-gcov includes the gcov graph and source files for gcov coverage collection.
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%package -n kernel-abi-whitelists
Pablo Greco d6c4c4
Summary: The Red Hat Enterprise Linux kernel ABI symbol whitelists
Pablo Greco d6c4c4
AutoReqProv: no
Pablo Greco d6c4c4
%description -n kernel-abi-whitelists
Pablo Greco d6c4c4
The kABI package contains information pertaining to the Red Hat Enterprise
Pablo Greco d6c4c4
Linux kernel ABI, including lists of kernel symbols that are needed by
Pablo Greco d6c4c4
external Linux kernel modules, and a yum plugin to aid enforcement.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kabidw_base}
Pablo Greco d6c4c4
%package kabidw-base
Pablo Greco d6c4c4
Summary: The baseline dataset for kABI verification using DWARF data
Pablo Greco d6c4c4
Group: System Environment/Kernel
Pablo Greco d6c4c4
AutoReqProv: no
Pablo Greco d6c4c4
%description kabidw-base
Pablo Greco d6c4c4
The kabidw-base package contains data describing the current ABI of the Red Hat
Pablo Greco d6c4c4
Enterprise Linux kernel, suitable for the kabi-dw tool.
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage>-debuginfo package.
Pablo Greco d6c4c4
#	%%kernel_debuginfo_package <subpackage>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Explanation of the find_debuginfo_opts: We build multiple kernels (debug
Pablo Greco d6c4c4
# pae etc.) so the regex filters those kernels appropriately. We also
Pablo Greco d6c4c4
# have to package several binaries as part of kernel-devel but getting
Pablo Greco d6c4c4
# unique build-ids is tricky for these userspace binaries. We don't really
Pablo Greco d6c4c4
# care about debugging those so we just filter those out and remove it.
Pablo Greco d6c4c4
%define kernel_debuginfo_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}debuginfo\
Pablo Greco d6c4c4
Summary: Debug information for package %{name}%{?1:-%{1}}\
Pablo Greco d6c4c4
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel)\
Pablo Greco d6c4c4
AutoReqProv: no\
Pablo Greco d6c4c4
%description %{?1:%{1}-}debuginfo\
Pablo Greco d6c4c4
This package provides debug information for package %{name}%{?1:-%{1}}.\
Pablo Greco d6c4c4
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
Pablo Greco d6c4c4
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*\/usr\/src\/kernels/.*|XXX' -o ignored-debuginfo.list -p '/.*/%%{KVERREL_RE}%{?1:[+]%{1}}/.*|/.*%%{KVERREL_RE}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage>-devel package.
Pablo Greco d6c4c4
#	%%kernel_devel_package <subpackage> <pretty-name>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_devel_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}devel\
Pablo Greco d6c4c4
Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: kernel-devel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel)\
Pablo Greco d6c4c4
AutoReqProv: no\
Pablo Greco d6c4c4
Requires(pre): findutils\
Pablo Greco d6c4c4
Requires: findutils\
Pablo Greco d6c4c4
Requires: perl-interpreter\
Pablo Greco d6c4c4
%description %{?1:%{1}-}devel\
Pablo Greco d6c4c4
This package provides kernel headers and makefiles sufficient to build modules\
Pablo Greco d6c4c4
against the %{?2:%{2} }kernel package.\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# kernel-<variant>-ipaclones-internal package
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_ipaclones_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}ipaclones-internal\
Pablo Greco d6c4c4
Summary: *.ipa-clones files generated by -fdump-ipa-clones for kernel%{?1:-%{1}}\
Pablo Greco d6c4c4
Group: System Environment/Kernel\
Pablo Greco d6c4c4
AutoReqProv: no\
Pablo Greco d6c4c4
%description %{?1:%{1}-}ipaclones-internal\
Pablo Greco d6c4c4
This package provides *.ipa-clones files.\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage>-modules-internal package.
Pablo Greco d6c4c4
#	%%kernel_modules_internal_package <subpackage> <pretty-name>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_internal_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}modules-internal\
Pablo Greco d6c4c4
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Pablo Greco d6c4c4
Group: System Environment/Kernel\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-internal = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel-module)\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-internal-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
AutoReq: no\
Pablo Greco d6c4c4
AutoProv: yes\
Pablo Greco d6c4c4
%description %{?1:%{1}-}modules-internal\
Pablo Greco d6c4c4
This package provides kernel modules for the %{?2:%{2} }kernel package for Red Hat internal usage.\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage>-modules-extra package.
Pablo Greco d6c4c4
#	%%kernel_modules_extra_package <subpackage> <pretty-name>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_extra_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}modules-extra\
Pablo Greco d6c4c4
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-extra = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel-module)\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-extra-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
AutoReq: no\
Pablo Greco d6c4c4
AutoProv: yes\
Pablo Greco d6c4c4
%description %{?1:%{1}-}modules-extra\
Pablo Greco d6c4c4
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage>-modules package.
Pablo Greco d6c4c4
#	%%kernel_modules_package <subpackage> <pretty-name>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_package() \
Pablo Greco d6c4c4
%package %{?1:%{1}-}modules\
Pablo Greco d6c4c4
Summary: kernel modules to match the %{?2:%{2}-}core kernel\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-%{_target_cpu} = %{version}-%{release}\
Pablo Greco d6c4c4
Provides: kernel-modules-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: kernel-modules = %{version}-%{release}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel-module)\
Pablo Greco d6c4c4
Provides: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
AutoReq: no\
Pablo Greco d6c4c4
AutoProv: yes\
Pablo Greco d6c4c4
%description %{?1:%{1}-}modules\
Pablo Greco d6c4c4
This package provides commonly used kernel modules for the %{?2:%{2}-}core kernel package.\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# this macro creates a kernel-<subpackage> meta package.
Pablo Greco d6c4c4
#	%%kernel_meta_package <subpackage>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_meta_package() \
Pablo Greco d6c4c4
%package %{1}\
Pablo Greco d6c4c4
summary: kernel meta-package for the %{1} kernel\
Pablo Greco d6c4c4
Requires: kernel-%{1}-core-uname-r = %{KVERREL}%{?variant}+%{1}\
Pablo Greco d6c4c4
Requires: kernel-%{1}-modules-uname-r = %{KVERREL}%{?variant}+%{1}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel)\
Pablo Greco d6c4c4
%description %{1}\
Pablo Greco d6c4c4
The meta-package for the %{1} kernel\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro creates a kernel-<subpackage> and its -devel and -debuginfo too.
Pablo Greco d6c4c4
#	%%define variant_summary The Linux kernel compiled for <configuration>
Pablo Greco d6c4c4
#	%%kernel_variant_package [-n <pretty-name>] <subpackage>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_variant_package(n:) \
Pablo Greco d6c4c4
%package %{?1:%{1}-}core\
Pablo Greco d6c4c4
Summary: %{variant_summary}\
Pablo Greco d6c4c4
Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Pablo Greco d6c4c4
Provides: installonlypkg(kernel)\
Pablo Greco d6c4c4
%ifarch ppc64le\
Pablo Greco d6c4c4
Obsoletes: kernel-bootwrapper\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%{expand:%%kernel_reqprovconf}\
Pablo Greco d6c4c4
%if %{?1:1} %{!?1:0} \
Pablo Greco d6c4c4
%{expand:%%kernel_meta_package %{?1:%{1}}}\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%{expand:%%kernel_devel_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_extra_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_internal_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
Pablo Greco d6c4c4
%{expand:%%kernel_debuginfo_package %{?1:%{1}}}\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Now, each variant package.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_pae}
Pablo Greco d6c4c4
%define variant_summary The Linux kernel compiled for Cortex-A15
Pablo Greco d6c4c4
%kernel_variant_package lpae
Pablo Greco d6c4c4
%description lpae-core
Pablo Greco d6c4c4
This package includes a version of the Linux kernel with support for
Pablo Greco d6c4c4
Cortex-A15 devices with LPAE and HW virtualisation support
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_zfcpdump}
Pablo Greco d6c4c4
%define variant_summary The Linux kernel compiled for zfcpdump usage
Pablo Greco d6c4c4
%kernel_variant_package zfcpdump
Pablo Greco d6c4c4
%description zfcpdump-core
Pablo Greco d6c4c4
The kernel package contains the Linux kernel (vmlinuz) for use by the
Pablo Greco d6c4c4
zfcpdump infrastructure.
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define variant_summary The Linux kernel compiled with extra debugging enabled
Pablo Greco d6c4c4
%kernel_variant_package debug
Pablo Greco d6c4c4
%description debug-core
Pablo Greco d6c4c4
The kernel package contains the Linux kernel (vmlinuz), the core of any
Pablo Greco d6c4c4
Linux operating system.  The kernel handles the basic functions
Pablo Greco d6c4c4
of the operating system:  memory allocation, process allocation, device
Pablo Greco d6c4c4
input and output, etc.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
This variant of the kernel has numerous debugging options enabled.
Pablo Greco d6c4c4
It should only be installed when trying to gather additional information
Pablo Greco d6c4c4
on kernel bugs, as some of these options impact performance noticably.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# And finally the main -core package
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define variant_summary The Linux kernel
Pablo Greco d6c4c4
%kernel_variant_package
Pablo Greco d6c4c4
%description core
Pablo Greco d6c4c4
The kernel package contains the Linux kernel (vmlinuz), the core of any
Pablo Greco d6c4c4
Linux operating system.  The kernel handles the basic functions
Pablo Greco d6c4c4
of the operating system: memory allocation, process allocation, device
Pablo Greco d6c4c4
input and output, etc.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_ipaclones}
Pablo Greco d6c4c4
%kernel_ipaclones_package
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%prep
Pablo Greco d6c4c4
# do a few sanity-checks for --with *only builds
Pablo Greco d6c4c4
%if %{with_baseonly}
Pablo Greco d6c4c4
%if !%{with_up}%{with_pae}
Pablo Greco d6c4c4
echo "Cannot build --with baseonly, up build is disabled"
Pablo Greco d6c4c4
exit 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if "%{baserelease}" == "0"
Pablo Greco d6c4c4
echo "baserelease must be greater than zero"
Pablo Greco d6c4c4
exit 1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# more sanity checking; do it quietly
Pablo Greco d6c4c4
if [ "%{patches}" != "%%{patches}" ] ; then
Pablo Greco d6c4c4
  for patch in %{patches} ; do
Pablo Greco d6c4c4
    if [ ! -f $patch ] ; then
Pablo Greco d6c4c4
      echo "ERROR: Patch  ${patch##/*/}  listed in specfile but is missing"
Pablo Greco d6c4c4
      exit 1
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
  done
Pablo Greco d6c4c4
fi 2>/dev/null
Pablo Greco d6c4c4
Pablo Greco d6c4c4
patch_command='patch -p1 -F1 -s'
Pablo Greco d6c4c4
ApplyPatch()
Pablo Greco d6c4c4
{
Pablo Greco d6c4c4
  local patch=$1
Pablo Greco d6c4c4
  shift
Pablo Greco d6c4c4
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Pablo Greco d6c4c4
    exit 1
Pablo Greco d6c4c4
  fi
Pablo Greco d6c4c4
  if ! grep -E "^Patch[0-9]+: $patch\$" %{_specdir}/${RPM_PACKAGE_NAME%%%%%{?variant}}.spec ; then
Pablo Greco d6c4c4
    if [ "${patch:0:8}" != "patch-5." ] ; then
Pablo Greco d6c4c4
      echo "ERROR: Patch  $patch  not listed as a source patch in specfile"
Pablo Greco d6c4c4
      exit 1
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
  fi 2>/dev/null
Pablo Greco d6c4c4
  case "$patch" in
Pablo Greco d6c4c4
  *.bz2) bunzip2 < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Pablo Greco d6c4c4
  *.gz)  gunzip  < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Pablo Greco d6c4c4
  *.xz)  unxz    < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Pablo Greco d6c4c4
  *) $patch_command ${1+"$@"} < "$RPM_SOURCE_DIR/$patch" ;;
Pablo Greco d6c4c4
  esac
Pablo Greco d6c4c4
}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# don't apply patch if it's empty
Pablo Greco d6c4c4
ApplyOptionalPatch()
Pablo Greco d6c4c4
{
Pablo Greco d6c4c4
  local patch=$1
Pablo Greco d6c4c4
  shift
Pablo Greco d6c4c4
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Pablo Greco d6c4c4
    exit 1
Pablo Greco d6c4c4
  fi
Pablo Greco d6c4c4
  local C=$(wc -l $RPM_SOURCE_DIR/$patch | awk '{print $1}')
Pablo Greco d6c4c4
  if [ "$C" -gt 9 ]; then
Pablo Greco d6c4c4
    ApplyPatch $patch ${1+"$@"}
Pablo Greco d6c4c4
  fi
Pablo Greco d6c4c4
}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# First we unpack the kernel tarball.
Pablo Greco d6c4c4
# If this isn't the first make prep, we use links to the existing clean tarball
Pablo Greco d6c4c4
# which speeds things up quite a bit.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Update to latest upstream.
Pablo Greco d6c4c4
%if 0%{?released_kernel}
Pablo Greco d6c4c4
%define vanillaversion 5.%{base_sublevel}
Pablo Greco d6c4c4
# non-released_kernel case
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%if 0%{?rcrev}
Pablo Greco d6c4c4
%define vanillaversion 5.%{upstream_sublevel}-rc%{rcrev}
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
%define vanillaversion 5.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
# pre-{base_sublevel+1}-rc1 case
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
%define vanillaversion 5.%{base_sublevel}-git%{gitrev}
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
%define vanillaversion 5.%{base_sublevel}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# %%{vanillaversion} : the full version name, e.g. 2.6.35-rc6-git3
Pablo Greco d6c4c4
# %%{kversion}       : the base version, e.g. 2.6.34
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Use kernel-%%{kversion}%%{?dist} as the top-level directory name
Pablo Greco d6c4c4
# so we can prep different trees within a single git directory.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Build a list of the other top-level kernel tree directories.
Pablo Greco d6c4c4
# This will be used to hardlink identical vanilla subdirs.
Pablo Greco d6c4c4
sharedirs=$(find "$PWD" -maxdepth 1 -type d -name 'kernel-5.*' \
Pablo Greco d6c4c4
            | grep -x -v "$PWD"/kernel-%{kversion}%{?dist}) ||:
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Delete all old stale trees.
Pablo Greco d6c4c4
if [ -d kernel-%{kversion}%{?dist} ]; then
Pablo Greco d6c4c4
  cd kernel-%{kversion}%{?dist}
Pablo Greco d6c4c4
  for i in linux-*
Pablo Greco d6c4c4
  do
Pablo Greco d6c4c4
     if [ -d $i ]; then
Pablo Greco d6c4c4
       # Just in case we ctrl-c'd a prep already
Pablo Greco d6c4c4
       rm -rf deleteme.%{_target_cpu}
Pablo Greco d6c4c4
       # Move away the stale away, and delete in background.
Pablo Greco d6c4c4
       mv $i deleteme-$i
Pablo Greco d6c4c4
       rm -rf deleteme* &
Pablo Greco d6c4c4
     fi
Pablo Greco d6c4c4
  done
Pablo Greco d6c4c4
  cd ..
Pablo Greco d6c4c4
fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Generate new tree
Pablo Greco d6c4c4
if [ ! -d kernel-%{kversion}%{?dist}/vanilla-%{vanillaversion} ]; then
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  if [ -d kernel-%{kversion}%{?dist}/vanilla-%{kversion} ]; then
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # The base vanilla version already exists.
Pablo Greco d6c4c4
    cd kernel-%{kversion}%{?dist}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Any vanilla-* directories other than the base one are stale.
Pablo Greco d6c4c4
    for dir in vanilla-*; do
Pablo Greco d6c4c4
      [ "$dir" = vanilla-%{kversion} ] || rm -rf $dir &
Pablo Greco d6c4c4
    done
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  else
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    rm -f pax_global_header
Pablo Greco d6c4c4
    # Look for an identical base vanilla dir that can be hardlinked.
Pablo Greco d6c4c4
    for sharedir in $sharedirs ; do
Pablo Greco d6c4c4
      if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Pablo Greco d6c4c4
        break
Pablo Greco d6c4c4
      fi
Pablo Greco d6c4c4
    done
Pablo Greco d6c4c4
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Pablo Greco d6c4c4
%setup -q -n kernel-%{kversion}%{?dist} -c -T
Pablo Greco d6c4c4
      cp -al $sharedir/vanilla-%{kversion} .
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
%setup -q -n kernel-%{kversion}%{?dist} -c
Pablo Greco d6c4c4
      mv linux-%{kversion} vanilla-%{kversion}
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if "%{kversion}" != "%{vanillaversion}"
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  for sharedir in $sharedirs ; do
Pablo Greco d6c4c4
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Pablo Greco d6c4c4
      break
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
  done
Pablo Greco d6c4c4
  if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    cp -al $sharedir/vanilla-%{vanillaversion} .
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  else
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Need to apply patches to the base vanilla version.
Pablo Greco d6c4c4
    cp -al vanilla-%{kversion} vanilla-%{vanillaversion}
Pablo Greco d6c4c4
    cd vanilla-%{vanillaversion}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cp %{SOURCE12} .
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Update vanilla to the latest upstream.
Pablo Greco d6c4c4
# (non-released_kernel case only)
Pablo Greco d6c4c4
%if 0%{?rcrev}
Pablo Greco d6c4c4
    xzcat %{SOURCE5000} | patch -p1 -F1 -s
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
    xzcat %{SOURCE5001} | patch -p1 -F1 -s
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%else
Pablo Greco d6c4c4
# pre-{base_sublevel+1}-rc1 case
Pablo Greco d6c4c4
%if 0%{?gitrev}
Pablo Greco d6c4c4
    xzcat %{SOURCE5000} | patch -p1 -F1 -s
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
    git init
Pablo Greco d6c4c4
    git config user.email "kernel-team@fedoraproject.org"
Pablo Greco d6c4c4
    git config user.name "Fedora Kernel Team"
Pablo Greco d6c4c4
    git config gc.auto 0
Pablo Greco d6c4c4
    git add .
Pablo Greco d6c4c4
    git commit -a -q -m "baseline"
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    cd ..
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
else
Pablo Greco d6c4c4
Pablo Greco d6c4c4
  # We already have all vanilla dirs, just change to the top-level directory.
Pablo Greco d6c4c4
  cd kernel-%{kversion}%{?dist}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Now build the fedora kernel tree.
Pablo Greco d6c4c4
cp -al vanilla-%{vanillaversion} linux-%{KVERREL}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cd linux-%{KVERREL}
Pablo Greco d6c4c4
if [ ! -d .git ]; then
Pablo Greco d6c4c4
    git init
Pablo Greco d6c4c4
    git config user.email "kernel-team@fedoraproject.org"
Pablo Greco d6c4c4
    git config user.name "Fedora Kernel Team"
Pablo Greco d6c4c4
    git config gc.auto 0
Pablo Greco d6c4c4
    git add .
Pablo Greco d6c4c4
    git commit -a -q -m "baseline"
Pablo Greco d6c4c4
fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# released_kernel with possible stable updates
Pablo Greco d6c4c4
%if 0%{?stable_base}
Pablo Greco d6c4c4
# This is special because the kernel spec is hell and nothing is consistent
Pablo Greco d6c4c4
xzcat %{SOURCE5000} | patch -p1 -F1 -s
Pablo Greco d6c4c4
git commit -a -m "Stable update"
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Note: Even in the "nopatches" path some patches (build tweaks and compile
Pablo Greco d6c4c4
# fixes) will always get applied; see patch defition above for details
Pablo Greco d6c4c4
Pablo Greco d6c4c4
git am %{patches}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# END OF PATCH APPLICATIONS
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Any further pre-build tree manipulations happen here.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
chmod +x scripts/checkpatch.pl
Pablo Greco d6c4c4
chmod +x tools/objtool/sync-check.sh
Pablo Greco d6c4c4
mv COPYING COPYING-%{version}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This Prevents scripts/setlocalversion from mucking with our version numbers.
Pablo Greco d6c4c4
touch .scmversion
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Mangle /usr/bin/python shebangs to /usr/bin/python3
Pablo Greco d6c4c4
# Mangle all Python shebangs to be Python 3 explicitly
Pablo Greco d6c4c4
# -p preserves timestamps
Pablo Greco d6c4c4
# -n prevents creating ~backup files
Pablo Greco d6c4c4
# -i specifies the interpreter for the shebang
Pablo Greco d6c4c4
# This fixes errors such as
Pablo Greco d6c4c4
# *** ERROR: ambiguous python shebang in /usr/bin/kvm_stat: #!/usr/bin/python. Change it to python3 (or python2) explicitly.
Pablo Greco d6c4c4
# We patch all sources below for which we got a report/error.
Pablo Greco d6c4c4
pathfix.py -i "%{__python3} %{py3_shbang_opts}" -p -n \
Pablo Greco d6c4c4
	tools/kvm/kvm_stat/kvm_stat \
Pablo Greco d6c4c4
	scripts/show_delta \
Pablo Greco d6c4c4
	scripts/diffconfig \
Pablo Greco d6c4c4
	scripts/bloat-o-meter \
Pablo Greco d6c4c4
	tools/perf/tests/attr.py \
Pablo Greco d6c4c4
	tools/perf/scripts/python/stat-cpi.py \
Pablo Greco d6c4c4
	tools/perf/scripts/python/sched-migration.py \
Pablo Greco d6c4c4
	Documentation \
Pablo Greco d6c4c4
	scripts/gen_compile_commands.py
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# only deal with configs if we are going to build for the arch
Pablo Greco d6c4c4
%ifnarch %nobuildarches
Pablo Greco d6c4c4
Pablo Greco d6c4c4
if [ -L configs ]; then
Pablo Greco d6c4c4
	rm -f configs
Pablo Greco d6c4c4
fi
Pablo Greco d6c4c4
# Deal with configs stuff
Pablo Greco d6c4c4
mkdir configs
Pablo Greco d6c4c4
cd configs
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Drop some necessary files from the source dir into the buildroot
Pablo Greco d6c4c4
cp $RPM_SOURCE_DIR/kernel-*.config .
Pablo Greco d6c4c4
cp %{SOURCE1000} .
Pablo Greco d6c4c4
cp %{SOURCE55} .
Pablo Greco d6c4c4
cp %{SOURCE51} .
Pablo Greco d6c4c4
VERSION=%{version} ./generate_all_configs.sh %{primary_target} %{debugbuildsenabled}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Merge in any user-provided local config option changes
Pablo Greco d6c4c4
%ifnarch %nobuildarches
Pablo Greco d6c4c4
for i in %{all_arch_configs}
Pablo Greco d6c4c4
do
Pablo Greco d6c4c4
  mv $i $i.tmp
Pablo Greco d6c4c4
  ./merge.pl %{SOURCE1000} $i.tmp > $i
Pablo Greco d6c4c4
  rm $i.tmp
Pablo Greco d6c4c4
done
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if !%{debugbuildsenabled}
Pablo Greco d6c4c4
rm -f kernel-%{version}-*debug.config
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# enable GCOV kernel config options if gcov is on
Pablo Greco d6c4c4
%if %{with_gcov}
Pablo Greco d6c4c4
for i in *.config
Pablo Greco d6c4c4
do
Pablo Greco d6c4c4
  sed -i 's/# CONFIG_GCOV_KERNEL is not set/CONFIG_GCOV_KERNEL=y\nCONFIG_GCOV_PROFILE_ALL=y\n/' $i
Pablo Greco d6c4c4
done
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cp %{SOURCE52} .
Pablo Greco d6c4c4
OPTS=""
Pablo Greco d6c4c4
%if %{with_configchecks}
Pablo Greco d6c4c4
	OPTS="$OPTS -w -n -c"
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
./process_configs.sh $OPTS kernel %{rpmversion}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cp %{SOURCE56} .
Pablo Greco d6c4c4
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh %{primary_target}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# end of kernel config
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cd ..
Pablo Greco d6c4c4
# # End of Configs stuff
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# get rid of unwanted files resulting from patch fuzz
Pablo Greco d6c4c4
find . \( -name "*.orig" -o -name "*~" \) -delete >/dev/null
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# remove unnecessary SCM files
Pablo Greco d6c4c4
find . -name .gitignore -delete >/dev/null
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cd ..
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### build
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
%build
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_sparse}
Pablo Greco d6c4c4
%define sparse_mflags	C=1
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cp_vmlinux()
Pablo Greco d6c4c4
{
Pablo Greco d6c4c4
  eu-strip --remove-comment -o "$2" "$1"
Pablo Greco d6c4c4
}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# These are for host programs that get built as part of the kernel and
Pablo Greco d6c4c4
# are required to be packaged in kernel-devel for building external modules.
Pablo Greco d6c4c4
# Since they are userspace binaries, they are required to pickup the hardening
Pablo Greco d6c4c4
# flags defined in the macros. The --build-id=uuid is a trick to get around
Pablo Greco d6c4c4
# debuginfo limitations: Typically, find-debuginfo.sh will update the build
Pablo Greco d6c4c4
# id of all binaries to allow for parllel debuginfo installs. The kernel
Pablo Greco d6c4c4
# can't use this because it breaks debuginfo for the vDSO so we have to
Pablo Greco d6c4c4
# use a special mechanism for kernel and modules to be unique. Unfortunately,
Pablo Greco d6c4c4
# we still have userspace binaries which need unique debuginfo and because
Pablo Greco d6c4c4
# they come from the kernel package, we can't just use find-debuginfo.sh to
Pablo Greco d6c4c4
# rewrite only those binaries. The easiest option right now is just to have
Pablo Greco d6c4c4
# the build id be a uuid for the host programs.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Note we need to disable these flags for cross builds because the flags
Pablo Greco d6c4c4
# from redhat-rpm-config assume that host == target so target arch
Pablo Greco d6c4c4
# flags cause issues with the host compiler.
Pablo Greco d6c4c4
%if !%{with_cross}
Pablo Greco d6c4c4
%define build_hostcflags  %{?build_cflags}
Pablo Greco d6c4c4
%define build_hostldflags %{?build_ldflags}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define make make %{?cross_opts} %{?make_opts} HOSTCFLAGS="%{?build_hostcflags}" HOSTLDFLAGS="%{?build_hostldflags}"
Pablo Greco d6c4c4
Pablo Greco d6c4c4
BuildKernel() {
Pablo Greco d6c4c4
    MakeTarget=$1
Pablo Greco d6c4c4
    KernelImage=$2
Pablo Greco d6c4c4
    Flavour=$4
Pablo Greco d6c4c4
    DoVDSO=$3
Pablo Greco d6c4c4
    Flav=${Flavour:++${Flavour}}
Pablo Greco d6c4c4
    InstallName=${5:-vmlinuz}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    DoModules=1
Pablo Greco d6c4c4
    if [ "$Flavour" = "zfcpdump" ]; then
Pablo Greco d6c4c4
	    DoModules=0
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Pick the right config file for the kernel we're building
Pablo Greco d6c4c4
    Config=kernel-%{version}-%{_target_cpu}${Flavour:+-${Flavour}}.config
Pablo Greco d6c4c4
    DevelDir=/usr/src/kernels/%{KVERREL}${Flav}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # When the bootable image is just the ELF kernel, strip it.
Pablo Greco d6c4c4
    # We already copy the unstripped file into the debuginfo package.
Pablo Greco d6c4c4
    if [ "$KernelImage" = vmlinux ]; then
Pablo Greco d6c4c4
      CopyKernel=cp_vmlinux
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
      CopyKernel=cp
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    KernelVer=%{version}-%{release}.%{_target_cpu}${Flav}
Pablo Greco d6c4c4
    echo BUILDING A KERNEL FOR ${Flavour} %{_target_cpu}...
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %if 0%{?stable_update}
Pablo Greco d6c4c4
    # make sure SUBLEVEL is incremented on a stable release.  Sigh 3.x.
Pablo Greco d6c4c4
    perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{?stablerev}/" Makefile
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # make sure EXTRAVERSION says what we want it to say
Pablo Greco d6c4c4
    perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}${Flav}/" Makefile
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # if pre-rc1 devel kernel, must fix up PATCHLEVEL for our versioning scheme
Pablo Greco d6c4c4
    %if !0%{?rcrev}
Pablo Greco d6c4c4
    %if 0%{?gitrev}
Pablo Greco d6c4c4
    perl -p -i -e 's/^PATCHLEVEL.*/PATCHLEVEL = %{upstream_sublevel}/' Makefile
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # and now to start the build process
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %{make} %{?_smp_mflags} mrproper
Pablo Greco d6c4c4
    cp configs/$Config .config
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %if %{signkernel}%{signmodules}
Pablo Greco d6c4c4
    cp $RPM_SOURCE_DIR/x509.genkey certs/.
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    Arch=`head -1 .config | cut -b 3-`
Pablo Greco d6c4c4
    echo USING ARCH=$Arch
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    KCFLAGS="%{?kcflags}"
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # add kpatch flags for base kernel
Pablo Greco d6c4c4
    if [ "$Flavour" == "" ]; then
Pablo Greco d6c4c4
        KCFLAGS="$KCFLAGS %{?kpatch_kcflags}"
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %{make} ARCH=$Arch olddefconfig >/dev/null
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # This ensures build-ids are unique to allow parallel debuginfo
Pablo Greco d6c4c4
    perl -p -i -e "s/^CONFIG_BUILD_SALT.*/CONFIG_BUILD_SALT=\"%{KVERREL}\"/" .config
Pablo Greco d6c4c4
    %{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
Pablo Greco d6c4c4
    if [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	%{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
Pablo Greco d6c4c4
%if %{with_debuginfo}
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/%{image_install_path}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifarch %{arm} aarch64
Pablo Greco d6c4c4
    %{make} ARCH=$Arch dtbs INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
Pablo Greco d6c4c4
    %{make} ARCH=$Arch dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
Pablo Greco d6c4c4
    cp -r $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/dtb
Pablo Greco d6c4c4
    find arch/$Arch/boot/dts -name '*.dtb' -type f -delete
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Start installing the results
Pablo Greco d6c4c4
    install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
Pablo Greco d6c4c4
    install -m 644 .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/config
Pablo Greco d6c4c4
    install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
Pablo Greco d6c4c4
    install -m 644 System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/System.map
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # We estimate the size of the initramfs because rpm needs to take this size
Pablo Greco d6c4c4
    # into consideration when performing disk space calculations. (See bz #530778)
Pablo Greco d6c4c4
    dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-$KernelVer.img bs=1M count=20
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    if [ -f arch/$Arch/boot/zImage.stub ]; then
Pablo Greco d6c4c4
      cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
Pablo Greco d6c4c4
      cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/lib/modules/$KernelVer/zImage.stub-$KernelVer || :
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %if %{signkernel}
Pablo Greco d6c4c4
    if [ "$KernelImage" = vmlinux ]; then
Pablo Greco d6c4c4
        # We can't strip and sign $KernelImage in place, because
Pablo Greco d6c4c4
        # we need to preserve original vmlinux for debuginfo.
Pablo Greco d6c4c4
        # Use a copy for signing.
Pablo Greco d6c4c4
        $CopyKernel $KernelImage $KernelImage.tosign
Pablo Greco d6c4c4
        KernelImage=$KernelImage.tosign
Pablo Greco d6c4c4
        CopyKernel=cp
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Sign the image if we're using EFI
Pablo Greco d6c4c4
    # aarch64 kernels are gziped EFI images
Pablo Greco d6c4c4
    KernelExtension=${KernelImage##*.}
Pablo Greco d6c4c4
    if [ "$KernelExtension" == "gz" ]; then
Pablo Greco d6c4c4
        SignImage=${KernelImage%.*}
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
        SignImage=$KernelImage
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    %ifarch x86_64 aarch64
Pablo Greco d6c4c4
    %pesign -s -i $SignImage -o vmlinuz.signed -a %{secureboot_ca} -c %{secureboot_key} -n %{pesign_name}
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
    %ifarch s390x ppc64le
Pablo Greco d6c4c4
    if [ -x /usr/bin/rpm-sign ]; then
Pablo Greco d6c4c4
	rpm-sign --key "%{pesign_name}" --lkmsign $SignImage --output vmlinuz.signed
Pablo Greco d6c4c4
    elif [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	chmod +x scripts/sign-file
Pablo Greco d6c4c4
	./scripts/sign-file -p sha256 certs/signing_key.pem certs/signing_key.x509 $SignImage vmlinuz.signed
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
	mv $SignImage vmlinuz.signed
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    if [ ! -s vmlinuz.signed ]; then
Pablo Greco d6c4c4
        echo "pesigning failed"
Pablo Greco d6c4c4
        exit 1
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    mv vmlinuz.signed $SignImage
Pablo Greco d6c4c4
    if [ "$KernelExtension" == "gz" ]; then
Pablo Greco d6c4c4
        gzip -f9 $SignImage
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
    $CopyKernel $KernelImage \
Pablo Greco d6c4c4
                $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Pablo Greco d6c4c4
    chmod 755 $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Pablo Greco d6c4c4
    cp $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/$InstallName
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # hmac sign the kernel for FIPS
Pablo Greco d6c4c4
    echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
Pablo Greco d6c4c4
    ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Pablo Greco d6c4c4
    sha512hmac $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer | sed -e "s,$RPM_BUILD_ROOT,," > $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac;
Pablo Greco d6c4c4
    cp $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac $RPM_BUILD_ROOT/lib/modules/$KernelVer/.vmlinuz.hmac
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    if [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	# Override $(mod-fw) because we don't want it to install any firmware
Pablo Greco d6c4c4
	# we'll get it from the linux-firmware package and we don't want conflicts
Pablo Greco d6c4c4
	%{make} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT %{?_smp_mflags} modules_install KERNELRELEASE=$KernelVer mod-fw=
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_gcov}
Pablo Greco d6c4c4
    # install gcov-needed files to $BUILDROOT/$BUILD/...:
Pablo Greco d6c4c4
    #   gcov_info->filename is absolute path
Pablo Greco d6c4c4
    #   gcno references to sources can use absolute paths (e.g. in out-of-tree builds)
Pablo Greco d6c4c4
    #   sysfs symlink targets (set up at compile time) use absolute paths to BUILD dir
Pablo Greco d6c4c4
    find . \( -name '*.gcno' -o -name '*.[chS]' \) -exec install -D '{}' "$RPM_BUILD_ROOT/$(pwd)/{}" \;
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # add an a noop %%defattr statement 'cause rpm doesn't like empty file list files
Pablo Greco d6c4c4
    echo '%%defattr(-,-,-)' > ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
Pablo Greco d6c4c4
    if [ $DoVDSO -ne 0 ]; then
Pablo Greco d6c4c4
        %{make} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
Pablo Greco d6c4c4
        if [ -s ldconfig-kernel.conf ]; then
Pablo Greco d6c4c4
             install -D -m 444 ldconfig-kernel.conf \
Pablo Greco d6c4c4
                $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernel-$KernelVer.conf
Pablo Greco d6c4c4
	     echo /etc/ld.so.conf.d/kernel-$KernelVer.conf >> ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
Pablo Greco d6c4c4
        fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
        rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/vdso/.build-id
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # And save the headers/makefiles etc for building modules against
Pablo Greco d6c4c4
    #
Pablo Greco d6c4c4
    # This all looks scary, but the end result is supposed to be:
Pablo Greco d6c4c4
    # * all arch relevant include/ files
Pablo Greco d6c4c4
    # * all Makefile/Kconfig files
Pablo Greco d6c4c4
    # * all script/ files
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
Pablo Greco d6c4c4
    # dirs for additional modules per module-init-tools, kbuild/modules.txt
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/internal
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
Pablo Greco d6c4c4
    # CONFIG_KERNEL_HEADER_TEST generates some extra files in the process of
Pablo Greco d6c4c4
    # testing so just delete
Pablo Greco d6c4c4
    find . -name *.h.s -delete
Pablo Greco d6c4c4
    # first copy everything
Pablo Greco d6c4c4
    cp --parents `find  -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    cp System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    if [ -s Module.markers ]; then
Pablo Greco d6c4c4
      cp Module.markers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # create the kABI metadata for use in packaging
Pablo Greco d6c4c4
    # NOTENOTE: the name symvers is used by the rpm backend
Pablo Greco d6c4c4
    # NOTENOTE: to discover and run the /usr/lib/rpm/fileattrs/kabi.attr
Pablo Greco d6c4c4
    # NOTENOTE: script which dynamically adds exported kernel symbol
Pablo Greco d6c4c4
    # NOTENOTE: checksums to the rpm metadata provides list.
Pablo Greco d6c4c4
    # NOTENOTE: if you change the symvers name, update the backend too
Pablo Greco d6c4c4
    echo "**** GENERATING kernel ABI metadata ****"
Pablo Greco d6c4c4
    gzip -c9 < Module.symvers > $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz
Pablo Greco d6c4c4
    cp $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz $RPM_BUILD_ROOT/lib/modules/$KernelVer/symvers.gz
Pablo Greco d6c4c4
%if %{with_kabichk}
Pablo Greco d6c4c4
    echo "**** kABI checking is enabled in kernel SPEC file. ****"
Pablo Greco d6c4c4
    chmod 0755 $RPM_SOURCE_DIR/check-kabi
Pablo Greco d6c4c4
    if [ -e $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Flavour ]; then
Pablo Greco d6c4c4
        cp $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Flavour $RPM_BUILD_ROOT/Module.kabi
Pablo Greco d6c4c4
        $RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
Pablo Greco d6c4c4
        rm $RPM_BUILD_ROOT/Module.kabi # for now, don't keep it around.
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
        echo "**** NOTE: Cannot find reference Module.kabi file. ****"
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kabidupchk}
Pablo Greco d6c4c4
    echo "**** kABI DUP checking is enabled in kernel SPEC file. ****"
Pablo Greco d6c4c4
    if [ -e $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour ]; then
Pablo Greco d6c4c4
        cp $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour $RPM_BUILD_ROOT/Module.kabi
Pablo Greco d6c4c4
        $RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
Pablo Greco d6c4c4
        rm $RPM_BUILD_ROOT/Module.kabi # for now, don't keep it around.
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
        echo "**** NOTE: Cannot find DUP reference Module.kabi file. ****"
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kabidw_base}
Pablo Greco d6c4c4
    # Don't build kabi base for debug kernels
Pablo Greco d6c4c4
    if [ "$Flavour" != "kdump" -a "$Flavour" != "debug" ]; then
Pablo Greco d6c4c4
        mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
        tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
Pablo Greco d6c4c4
        mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/whitelists
Pablo Greco d6c4c4
        tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/whitelists
Pablo Greco d6c4c4
Pablo Greco d6c4c4
        echo "**** GENERATING DWARF-based kABI baseline dataset ****"
Pablo Greco d6c4c4
        chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
Pablo Greco d6c4c4
        $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
Pablo Greco d6c4c4
            "$RPM_BUILD_ROOT/kabi-dwarf/whitelists/kabi-current/kabi_whitelist_%{_target_cpu}" \
Pablo Greco d6c4c4
            "$(pwd)" \
Pablo Greco d6c4c4
            "$RPM_BUILD_ROOT/kabidw-base/%{_target_cpu}${Flavour:+.${Flavour}}" || :
Pablo Greco d6c4c4
Pablo Greco d6c4c4
        rm -rf $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kabidwchk}
Pablo Greco d6c4c4
    if [ "$Flavour" != "kdump" ]; then
Pablo Greco d6c4c4
        mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
        tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
        if [ -d "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}" ]; then
Pablo Greco d6c4c4
            mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/whitelists
Pablo Greco d6c4c4
            tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/whitelists
Pablo Greco d6c4c4
Pablo Greco d6c4c4
            echo "**** GENERATING DWARF-based kABI dataset ****"
Pablo Greco d6c4c4
            chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
Pablo Greco d6c4c4
            $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
Pablo Greco d6c4c4
                "$RPM_BUILD_ROOT/kabi-dwarf/whitelists/kabi-current/kabi_whitelist_%{_target_cpu}" \
Pablo Greco d6c4c4
                "$(pwd)" \
Pablo Greco d6c4c4
                "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}.tmp" || :
Pablo Greco d6c4c4
Pablo Greco d6c4c4
            echo "**** kABI DWARF-based comparison report ****"
Pablo Greco d6c4c4
            $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh compare \
Pablo Greco d6c4c4
                "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}" \
Pablo Greco d6c4c4
                "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}.tmp" || :
Pablo Greco d6c4c4
            echo "**** End of kABI DWARF-based comparison report ****"
Pablo Greco d6c4c4
        else
Pablo Greco d6c4c4
            echo "**** Baseline dataset for kABI DWARF-BASED comparison report not found ****"
Pablo Greco d6c4c4
        fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
        rm -rf $RPM_BUILD_ROOT/kabi-dwarf
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # then drop all but the needed Makefiles/Kconfig files
Pablo Greco d6c4c4
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
Pablo Greco d6c4c4
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
Pablo Greco d6c4c4
    cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/tracing
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/spdxcheck.py
Pablo Greco d6c4c4
    if [ -f tools/objtool/objtool ]; then
Pablo Greco d6c4c4
      cp -a tools/objtool/objtool $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    if [ -d arch/$Arch/scripts ]; then
Pablo Greco d6c4c4
      cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    if [ -f arch/$Arch/*lds ]; then
Pablo Greco d6c4c4
      cp -a arch/$Arch/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    if [ -f arch/%{asmarch}/kernel/module.lds ]; then
Pablo Greco d6c4c4
      cp -a --parents arch/%{asmarch}/kernel/module.lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
Pablo Greco d6c4c4
%ifarch ppc64le
Pablo Greco d6c4c4
    cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
    if [ -d arch/%{asmarch}/include ]; then
Pablo Greco d6c4c4
      cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%ifarch aarch64
Pablo Greco d6c4c4
    # arch/arm64/include/asm/xen references arch/arm
Pablo Greco d6c4c4
    cp -a --parents arch/arm/include/asm/xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    # arch/arm64/include/asm/opcodes.h references arch/arm
Pablo Greco d6c4c4
    cp -a --parents arch/arm/include/asm/opcodes.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
    # include the machine specific headers for ARM variants, if available.
Pablo Greco d6c4c4
%ifarch %{arm}
Pablo Greco d6c4c4
    if [ -d arch/%{asmarch}/mach-${Flavour}/include ]; then
Pablo Greco d6c4c4
      cp -a --parents arch/%{asmarch}/mach-${Flavour}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    # include a few files for 'make prepare'
Pablo Greco d6c4c4
    cp -a --parents arch/arm/tools/gen-mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/arm/tools/mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
    cp -a include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
Pablo Greco d6c4c4
%ifarch i686 x86_64
Pablo Greco d6c4c4
    # files for 'make prepare' to succeed with kernel-devel
Pablo Greco d6c4c4
    cp -a --parents arch/x86/entry/syscalls/syscall_32.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/entry/syscalls/syscalltbl.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/entry/syscalls/syscallhdr.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/entry/syscalls/syscall_64.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/tools/relocs_32.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/tools/relocs_64.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/tools/relocs.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/tools/relocs_common.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/tools/relocs.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents tools/include/tools/le_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/purgatory/purgatory.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/purgatory/stack.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/purgatory/setup-x86_64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/purgatory/entry64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/boot/string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/boot/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
    cp -a --parents arch/x86/boot/ctype.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
    # Make sure the Makefile and version.h have a matching timestamp so that
Pablo Greco d6c4c4
    # external modules can be built
Pablo Greco d6c4c4
    touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/generated/uapi/linux/version.h
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Copy .config to include/config/auto.conf so "make prepare" is unnecessary.
Pablo Greco d6c4c4
    cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_debuginfo}
Pablo Greco d6c4c4
    eu-readelf -n vmlinux | grep "Build ID" | awk '{print $NF}' > vmlinux.id
Pablo Greco d6c4c4
    cp vmlinux.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.id
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    #
Pablo Greco d6c4c4
    # save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
Pablo Greco d6c4c4
    #
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Pablo Greco d6c4c4
    cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # mark modules executable so that strip-to-file can strip them
Pablo Greco d6c4c4
    xargs --no-run-if-empty chmod u+x < modnames
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Generate a list of modules for block and networking.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    grep -F /drivers/ modnames | xargs --no-run-if-empty nm -upA |
Pablo Greco d6c4c4
    sed -n 's,^.*/\([^/]*\.ko\):  *U \(.*\)$,\1 \2,p' > drivers.undef
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    collect_modules_list()
Pablo Greco d6c4c4
    {
Pablo Greco d6c4c4
      sed -r -n -e "s/^([^ ]+) \\.?($2)\$/\\1/p" drivers.undef |
Pablo Greco d6c4c4
        LC_ALL=C sort -u > $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
Pablo Greco d6c4c4
      if [ ! -z "$3" ]; then
Pablo Greco d6c4c4
        sed -r -e "/^($3)\$/d" -i $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
Pablo Greco d6c4c4
      fi
Pablo Greco d6c4c4
    }
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    collect_modules_list networking \
Pablo Greco d6c4c4
      'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe|register_netdevice'
Pablo Greco d6c4c4
    collect_modules_list block \
Pablo Greco d6c4c4
      'ata_scsi_ioctl|scsi_add_host|scsi_add_host_with_dma|blk_alloc_queue|blk_init_queue|register_mtd_blktrans|scsi_esp_register|scsi_register_device_handler|blk_queue_physical_block_size' 'pktcdvd.ko|dm-mod.ko'
Pablo Greco d6c4c4
    collect_modules_list drm \
Pablo Greco d6c4c4
      'drm_open|drm_init'
Pablo Greco d6c4c4
    collect_modules_list modesetting \
Pablo Greco d6c4c4
      'drm_crtc_init'
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # detect missing or incorrect license tags
Pablo Greco d6c4c4
    ( find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name '*.ko' | xargs /sbin/modinfo -l | \
Pablo Greco d6c4c4
        grep -E -v 'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' ) && exit 1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # remove files that will be auto generated by depmod at rpm -i time
Pablo Greco d6c4c4
    pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
Pablo Greco d6c4c4
        rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
Pablo Greco d6c4c4
    popd
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Call the modules-extra script to move things around
Pablo Greco d6c4c4
    %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer $RPM_SOURCE_DIR/mod-extra.list
Pablo Greco d6c4c4
    # Blacklist net autoloadable modules in modules-extra
Pablo Greco d6c4c4
    %{SOURCE19} $RPM_BUILD_ROOT lib/modules/$KernelVer
Pablo Greco d6c4c4
    # Call the modules-extra script for internal modules
Pablo Greco d6c4c4
    %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer %{SOURCE54} internal
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    #
Pablo Greco d6c4c4
    # Generate the kernel-core and kernel-modules files lists
Pablo Greco d6c4c4
    #
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Copy the System.map file for depmod to use, and create a backup of the
Pablo Greco d6c4c4
    # full module tree so we can restore it after we're done filtering
Pablo Greco d6c4c4
    cp System.map $RPM_BUILD_ROOT/.
Pablo Greco d6c4c4
    pushd $RPM_BUILD_ROOT
Pablo Greco d6c4c4
    mkdir restore
Pablo Greco d6c4c4
    cp -r lib/modules/$KernelVer/* restore/.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # don't include anything going into k-m-e in the file lists
Pablo Greco d6c4c4
    rm -rf lib/modules/$KernelVer/{extra,internal}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    if [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	# Find all the module files and filter them out into the core and
Pablo Greco d6c4c4
	# modules lists.  This actually removes anything going into -modules
Pablo Greco d6c4c4
	# from the dir.
Pablo Greco d6c4c4
	find lib/modules/$KernelVer/kernel -name *.ko | sort -n > modules.list
Pablo Greco d6c4c4
	cp $RPM_SOURCE_DIR/filter-*.sh .
Pablo Greco d6c4c4
	./filter-modules.sh modules.list %{_target_cpu}
Pablo Greco d6c4c4
	rm filter-*.sh
Pablo Greco d6c4c4
Pablo Greco d6c4c4
	# Run depmod on the resulting module tree and make sure it isn't broken
Pablo Greco d6c4c4
	depmod -b . -aeF ./System.map $KernelVer &> depmod.out
Pablo Greco d6c4c4
	if [ -s depmod.out ]; then
Pablo Greco d6c4c4
	    echo "Depmod failure"
Pablo Greco d6c4c4
	    cat depmod.out
Pablo Greco d6c4c4
	    exit 1
Pablo Greco d6c4c4
	else
Pablo Greco d6c4c4
	    rm depmod.out
Pablo Greco d6c4c4
	fi
Pablo Greco d6c4c4
    else
Pablo Greco d6c4c4
	# Ensure important files/directories exist to let the packaging succeed
Pablo Greco d6c4c4
	echo '%%defattr(-,-,-)' > modules.list
Pablo Greco d6c4c4
	echo '%%defattr(-,-,-)' > k-d.list
Pablo Greco d6c4c4
	mkdir -p lib/modules/$KernelVer/kernel
Pablo Greco d6c4c4
	# Add files usually created by make modules, needed to prevent errors
Pablo Greco d6c4c4
	# thrown by depmod during package installation
Pablo Greco d6c4c4
	touch lib/modules/$KernelVer/modules.order
Pablo Greco d6c4c4
	touch lib/modules/$KernelVer/modules.builtin
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # remove files that will be auto generated by depmod at rpm -i time
Pablo Greco d6c4c4
    pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
Pablo Greco d6c4c4
        rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
Pablo Greco d6c4c4
    popd
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Go back and find all of the various directories in the tree.  We use this
Pablo Greco d6c4c4
    # for the dir lists in kernel-core
Pablo Greco d6c4c4
    find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Cleanup
Pablo Greco d6c4c4
    rm System.map
Pablo Greco d6c4c4
    cp -r restore/* lib/modules/$KernelVer/.
Pablo Greco d6c4c4
    rm -rf restore
Pablo Greco d6c4c4
    popd
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Make sure the files lists start with absolute paths or rpmbuild fails.
Pablo Greco d6c4c4
    # Also add in the dir entries
Pablo Greco d6c4c4
    sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Flavour:+-${Flavour}}-modules.list
Pablo Greco d6c4c4
    sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Flavour:+-${Flavour}}-core.list
Pablo Greco d6c4c4
    sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Flavour:+-${Flavour}}-core.list
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Cleanup
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/k-d.list
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/modules.list
Pablo Greco d6c4c4
    rm -f $RPM_BUILD_ROOT/module-dirs.list
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{signmodules}
Pablo Greco d6c4c4
    if [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	# Save the signing keys so we can sign the modules in __modsign_install_post
Pablo Greco d6c4c4
	cp certs/signing_key.pem certs/signing_key.pem.sign${Flav}
Pablo Greco d6c4c4
	cp certs/signing_key.x509 certs/signing_key.x509.sign${Flav}
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Move the devel headers out of the root file system
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
Pablo Greco d6c4c4
    mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # This is going to create a broken link during the build, but we don't use
Pablo Greco d6c4c4
    # it after this point.  We need the link to actually point to something
Pablo Greco d6c4c4
    # when kernel-devel is installed, and a relative link doesn't work across
Pablo Greco d6c4c4
    # the F17 UsrMove feature.
Pablo Greco d6c4c4
    ln -sf $DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # prune junk from kernel-devel
Pablo Greco d6c4c4
    find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -delete
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # build a BLS config for this kernel
Pablo Greco d6c4c4
    %{SOURCE53} "$KernelVer" "$RPM_BUILD_ROOT" "%{?variant}"
Pablo Greco d6c4c4
Pablo Greco d6c4c4
    # Red Hat UEFI Secure Boot CA cert, which can be used to authenticate the kernel
Pablo Greco d6c4c4
    mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer
Pablo Greco d6c4c4
    install -m 0644 %{secureboot_ca} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
Pablo Greco d6c4c4
    %ifarch s390x ppc64le
Pablo Greco d6c4c4
    if [ $DoModules -eq 1 ]; then
Pablo Greco d6c4c4
	if [ -x /usr/bin/rpm-sign ]; then
Pablo Greco d6c4c4
	    install -m 0644 %{secureboot_key} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
Pablo Greco d6c4c4
	else
Pablo Greco d6c4c4
	    install -m 0644 certs/signing_key.x509.sign${Flav} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
Pablo Greco d6c4c4
	    openssl x509 -in certs/signing_key.pem.sign${Flav} -outform der -out $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
Pablo Greco d6c4c4
	    chmod 0644 $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
Pablo Greco d6c4c4
	fi
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    %endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_ipaclones}
Pablo Greco d6c4c4
    MAXPROCS=$(echo %{?_smp_mflags} | sed -n 's/-j\s*\([0-9]\+\)/\1/p')
Pablo Greco d6c4c4
    if [ -z "$MAXPROCS" ]; then
Pablo Greco d6c4c4
        MAXPROCS=1
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
    if [ "$Flavour" == "" ]; then
Pablo Greco d6c4c4
        mkdir -p $RPM_BUILD_ROOT/$DevelDir-ipaclones
Pablo Greco d6c4c4
        find . -name '*.ipa-clones' | xargs -i{} -r -n 1 -P $MAXPROCS install -m 644 -D "{}" "$RPM_BUILD_ROOT/$DevelDir-ipaclones/{}"
Pablo Greco d6c4c4
    fi
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
# DO it...
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# prepare directories
Pablo Greco d6c4c4
rm -rf $RPM_BUILD_ROOT
Pablo Greco d6c4c4
mkdir -p $RPM_BUILD_ROOT/boot
Pablo Greco d6c4c4
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cd linux-%{KVERREL}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_debug}
Pablo Greco d6c4c4
BuildKernel %make_target %kernel_image %{_use_vdso} debug
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_zfcpdump}
Pablo Greco d6c4c4
BuildKernel %make_target %kernel_image %{_use_vdso} zfcpdump
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_pae}
Pablo Greco d6c4c4
BuildKernel %make_target %kernel_image %{use_vdso} lpae
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_up}
Pablo Greco d6c4c4
BuildKernel %make_target %kernel_image %{_use_vdso}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_selftests}
Pablo Greco d6c4c4
%{make} -s ARCH=$Arch V=1 samples/bpf/
Pablo Greco d6c4c4
pushd tools/testing/selftests
Pablo Greco d6c4c4
# We need to install here because we need to call make with ARCH set which
Pablo Greco d6c4c4
# doesn't seem possible to do in the install section.
Pablo Greco d6c4c4
%{make} -s ARCH=$Arch V=1 TARGETS="bpf livepatch net" INSTALL_PATH=%{buildroot}%{_libexecdir}/kselftests install
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_doc}
Pablo Greco d6c4c4
# Make the HTML pages.
Pablo Greco d6c4c4
make htmldocs || %{doc_build_fail}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# sometimes non-world-readable files sneak into the kernel source tree
Pablo Greco d6c4c4
chmod -R a=rX Documentation
Pablo Greco d6c4c4
find Documentation -type d | xargs chmod u+w
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# In the modsign case, we do 3 things.  1) We check the "flavour" and hard
Pablo Greco d6c4c4
# code the value in the following invocations.  This is somewhat sub-optimal
Pablo Greco d6c4c4
# but we're doing this inside of an RPM macro and it isn't as easy as it
Pablo Greco d6c4c4
# could be because of that.  2) We restore the .tmp_versions/ directory from
Pablo Greco d6c4c4
# the one we saved off in BuildKernel above.  This is to make sure we're
Pablo Greco d6c4c4
# signing the modules we actually built/installed in that flavour.  3) We
Pablo Greco d6c4c4
# grab the arch and invoke mod-sign.sh command to actually sign the modules.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# We have to do all of those things _after_ find-debuginfo runs, otherwise
Pablo Greco d6c4c4
# that will strip the signature off of the modules.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Don't sign modules for the zfcpdump flavour as it is monolithic.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define __modsign_install_post \
Pablo Greco d6c4c4
  if [ "%{signmodules}" -eq "1" ]; then \
Pablo Greco d6c4c4
    if [ "%{with_pae}" -ne "0" ]; then \
Pablo Greco d6c4c4
       %{modsign_cmd} certs/signing_key.pem.sign+lpae certs/signing_key.x509.sign+lpae $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+lpae/ \
Pablo Greco d6c4c4
    fi \
Pablo Greco d6c4c4
    if [ "%{with_debug}" -ne "0" ]; then \
Pablo Greco d6c4c4
      %{modsign_cmd} certs/signing_key.pem.sign+debug certs/signing_key.x509.sign+debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+debug/ \
Pablo Greco d6c4c4
    fi \
Pablo Greco d6c4c4
    if [ "%{with_up}" -ne "0" ]; then \
Pablo Greco d6c4c4
      %{modsign_cmd} certs/signing_key.pem.sign certs/signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
Pablo Greco d6c4c4
    fi \
Pablo Greco d6c4c4
  fi \
Pablo Greco d6c4c4
  if [ "%{zipmodules}" -eq "1" ]; then \
Pablo Greco d6c4c4
    find $RPM_BUILD_ROOT/lib/modules/ -type f -name '*.ko' | %{SOURCE79} %{?_smp_mflags}; \
Pablo Greco d6c4c4
  fi \
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### Special hacks for debuginfo subpackages.
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This macro is used by %%install, so we must redefine it before that.
Pablo Greco d6c4c4
%define debug_package %{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_debuginfo}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%ifnarch noarch
Pablo Greco d6c4c4
%global __debug_package 1
Pablo Greco d6c4c4
%files -f debugfiles.list debuginfo-common-%{_target_cpu}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# We don't want to package debuginfo for self-tests and samples but
Pablo Greco d6c4c4
# we have to delete them to avoid an error messages about unpackaged
Pablo Greco d6c4c4
# files.
Pablo Greco d6c4c4
# Delete the debuginfo for for kernel-devel files
Pablo Greco d6c4c4
%define __remove_unwanted_dbginfo_install_post \
Pablo Greco d6c4c4
  if [ "%{with_selftests}" -ne "0" ]; then \
Pablo Greco d6c4c4
    rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/ksamples; \
Pablo Greco d6c4c4
    rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/kselftests; \
Pablo Greco d6c4c4
  fi \
Pablo Greco d6c4c4
  rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/src; \
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# Disgusting hack alert! We need to ensure we sign modules *after* all
Pablo Greco d6c4c4
# invocations of strip occur, which is in __debug_install_post if
Pablo Greco d6c4c4
# find-debuginfo.sh runs, and __os_install_post if not.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define __spec_install_post \
Pablo Greco d6c4c4
  %{?__debug_package:%{__debug_install_post}}\
Pablo Greco d6c4c4
  %{__arch_install_post}\
Pablo Greco d6c4c4
  %{__os_install_post}\
Pablo Greco d6c4c4
  %{__remove_unwanted_dbginfo_install_post}\
Pablo Greco d6c4c4
  %{__modsign_install_post}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### install
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%install
Pablo Greco d6c4c4
Pablo Greco d6c4c4
cd linux-%{KVERREL}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_doc}
Pablo Greco d6c4c4
docdir=$RPM_BUILD_ROOT%{_datadir}/doc/kernel-doc-%{rpmversion}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# copy the source over
Pablo Greco d6c4c4
mkdir -p $docdir
Pablo Greco d6c4c4
tar -h -f - --exclude=man --exclude='.*' -c Documentation | tar xf - -C $docdir
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# We have to do the headers install before the tools install because the
Pablo Greco d6c4c4
# kernel headers_install will remove any header files in /usr/include that
Pablo Greco d6c4c4
# it doesn't install itself.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_headers}
Pablo Greco d6c4c4
# Install kernel headers
Pablo Greco d6c4c4
make ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_install
Pablo Greco d6c4c4
Pablo Greco d6c4c4
find $RPM_BUILD_ROOT/usr/include \
Pablo Greco d6c4c4
     \( -name .install -o -name .check -o \
Pablo Greco d6c4c4
        -name ..install.cmd -o -name ..check.cmd \) -delete
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_cross_headers}
Pablo Greco d6c4c4
HDR_ARCH_LIST='arm arm64 powerpc s390 x86'
Pablo Greco d6c4c4
mkdir -p $RPM_BUILD_ROOT/usr/tmp-headers
Pablo Greco d6c4c4
Pablo Greco d6c4c4
for arch in $HDR_ARCH_LIST; do
Pablo Greco d6c4c4
	mkdir $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}
Pablo Greco d6c4c4
	make ARCH=${arch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch} headers_install
Pablo Greco d6c4c4
done
Pablo Greco d6c4c4
Pablo Greco d6c4c4
find $RPM_BUILD_ROOT/usr/tmp-headers \
Pablo Greco d6c4c4
     \( -name .install -o -name .check -o \
Pablo Greco d6c4c4
        -name ..install.cmd -o -name ..check.cmd \) -delete
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# Copy all the architectures we care about to their respective asm directories
Pablo Greco d6c4c4
for arch in $HDR_ARCH_LIST ; do
Pablo Greco d6c4c4
	mkdir -p $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include
Pablo Greco d6c4c4
	mv $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}/include/* $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/
Pablo Greco d6c4c4
done
Pablo Greco d6c4c4
Pablo Greco d6c4c4
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kernel_abi_whitelists}
Pablo Greco d6c4c4
# kabi directory
Pablo Greco d6c4c4
INSTALL_KABI_PATH=$RPM_BUILD_ROOT/lib/modules/
Pablo Greco d6c4c4
mkdir -p $INSTALL_KABI_PATH
Pablo Greco d6c4c4
# install kabi releases directories
Pablo Greco d6c4c4
tar xjvf %{SOURCE300} -C $INSTALL_KABI_PATH
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_selftests}
Pablo Greco d6c4c4
pushd samples
Pablo Greco d6c4c4
install -d %{buildroot}%{_libexecdir}/ksamples
Pablo Greco d6c4c4
# install bpf samples
Pablo Greco d6c4c4
pushd bpf
Pablo Greco d6c4c4
install -d %{buildroot}%{_libexecdir}/ksamples/bpf
Pablo Greco d6c4c4
find -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/bpf \;
Pablo Greco d6c4c4
install -m755 *.sh %{buildroot}%{_libexecdir}/ksamples/bpf
Pablo Greco d6c4c4
# test_lwt_bpf.sh compiles test_lwt_bpf.c when run; this works only from the
Pablo Greco d6c4c4
# kernel tree. Just remove it.
Pablo Greco d6c4c4
rm %{buildroot}%{_libexecdir}/ksamples/bpf/test_lwt_bpf.sh
Pablo Greco d6c4c4
install -m644 tcp_bpf.readme %{buildroot}%{_libexecdir}/ksamples/bpf
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
# install pktgen samples
Pablo Greco d6c4c4
pushd pktgen
Pablo Greco d6c4c4
install -d %{buildroot}%{_libexecdir}/ksamples/pktgen
Pablo Greco d6c4c4
find . -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
Pablo Greco d6c4c4
find . -type f ! -executable -exec install -m644 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
# install drivers/net/mlxsw selftests
Pablo Greco d6c4c4
pushd tools/testing/selftests/drivers/net/mlxsw
Pablo Greco d6c4c4
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
Pablo Greco d6c4c4
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
Pablo Greco d6c4c4
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
# install net/forwarding selftests
Pablo Greco d6c4c4
pushd tools/testing/selftests/net/forwarding
Pablo Greco d6c4c4
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
Pablo Greco d6c4c4
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
Pablo Greco d6c4c4
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
# install tc-testing selftests
Pablo Greco d6c4c4
pushd tools/testing/selftests/tc-testing
Pablo Greco d6c4c4
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
Pablo Greco d6c4c4
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
Pablo Greco d6c4c4
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
# install livepatch selftests
Pablo Greco d6c4c4
pushd tools/testing/selftests/livepatch
Pablo Greco d6c4c4
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
Pablo Greco d6c4c4
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
Pablo Greco d6c4c4
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
Pablo Greco d6c4c4
popd
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### clean
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### scripts
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%post script for a kernel*-devel package.
Pablo Greco d6c4c4
#	%%kernel_devel_post [<subpackage>]
Pablo Greco d6c4c4
# Note we don't run hardlink if ostree is in use, as ostree is
Pablo Greco d6c4c4
# a far more sophisticated hardlink implementation.
Pablo Greco d6c4c4
# https://github.com/projectatomic/rpm-ostree/commit/58a79056a889be8814aa51f507b2c7a4dccee526
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_devel_post() \
Pablo Greco d6c4c4
%{expand:%%post %{?1:%{1}-}devel}\
Pablo Greco d6c4c4
if [ -f /etc/sysconfig/kernel ]\
Pablo Greco d6c4c4
then\
Pablo Greco d6c4c4
    . /etc/sysconfig/kernel || exit $?\
Pablo Greco d6c4c4
fi\
Pablo Greco d6c4c4
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink -a ! -e /run/ostree-booted ] \
Pablo Greco d6c4c4
then\
Pablo Greco d6c4c4
    (cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\
Pablo Greco d6c4c4
     /usr/bin/find . -type f | while read f; do\
Pablo Greco d6c4c4
       hardlink -c /usr/src/kernels/*%{?dist}.*/$f $f\
Pablo Greco d6c4c4
     done)\
Pablo Greco d6c4c4
fi\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%post script for a kernel*-modules-extra package.
Pablo Greco d6c4c4
# It also defines a %%postun script that does the same thing.
Pablo Greco d6c4c4
#	%%kernel_modules_extra_post [<subpackage>]
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_extra_post() \
Pablo Greco d6c4c4
%{expand:%%post %{?1:%{1}-}modules-extra}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}\
Pablo Greco d6c4c4
%{expand:%%postun %{?1:%{1}-}modules-extra}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%post script for a kernel*-modules-internal package.
Pablo Greco d6c4c4
# It also defines a %%postun script that does the same thing.
Pablo Greco d6c4c4
#	%%kernel_modules_internal_post [<subpackage>]
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_internal_post() \
Pablo Greco d6c4c4
%{expand:%%post %{?1:%{1}-}modules-internal}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}\
Pablo Greco d6c4c4
%{expand:%%postun %{?1:%{1}-}modules-internal}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%post script for a kernel*-modules package.
Pablo Greco d6c4c4
# It also defines a %%postun script that does the same thing.
Pablo Greco d6c4c4
#	%%kernel_modules_post [<subpackage>]
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_modules_post() \
Pablo Greco d6c4c4
%{expand:%%post %{?1:%{1}-}modules}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}\
Pablo Greco d6c4c4
%{expand:%%postun %{?1:%{1}-}modules}\
Pablo Greco d6c4c4
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This macro defines a %%posttrans script for a kernel package.
Pablo Greco d6c4c4
#	%%kernel_variant_posttrans [<subpackage>]
Pablo Greco d6c4c4
# More text can follow to go at the end of this variant's %%post.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_variant_posttrans() \
Pablo Greco d6c4c4
%{expand:%%posttrans %{?1:%{1}-}core}\
Pablo Greco d6c4c4
/bin/kernel-install add %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%post script for a kernel package and its devel package.
Pablo Greco d6c4c4
#	%%kernel_variant_post [-v <subpackage>] [-r <replace>]
Pablo Greco d6c4c4
# More text can follow to go at the end of this variant's %%post.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_variant_post(v:r:) \
Pablo Greco d6c4c4
%{expand:%%kernel_devel_post %{?-v*}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_post %{?-v*}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_extra_post %{?-v*}}\
Pablo Greco d6c4c4
%{expand:%%kernel_modules_internal_post %{?-v*}}\
Pablo Greco d6c4c4
%{expand:%%kernel_variant_posttrans %{?-v*}}\
Pablo Greco d6c4c4
%{expand:%%post %{?-v*:%{-v*}-}core}\
Pablo Greco d6c4c4
%{-r:\
Pablo Greco d6c4c4
if [ `uname -i` == "x86_64" -o `uname -i` == "i386" ] &&\
Pablo Greco d6c4c4
   [ -f /etc/sysconfig/kernel ]; then\
Pablo Greco d6c4c4
  /bin/sed -r -i -e 's/^DEFAULTKERNEL=%{-r*}$/DEFAULTKERNEL=kernel%{?-v:-%{-v*}}/' /etc/sysconfig/kernel || exit $?\
Pablo Greco d6c4c4
fi}\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines a %%preun script for a kernel package.
Pablo Greco d6c4c4
#	%%kernel_variant_preun <subpackage>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_variant_preun() \
Pablo Greco d6c4c4
%{expand:%%preun %{?1:%{1}-}core}\
Pablo Greco d6c4c4
/bin/kernel-install remove %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%kernel_variant_preun
Pablo Greco d6c4c4
%kernel_variant_post -r kernel-smp
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_pae}
Pablo Greco d6c4c4
%kernel_variant_preun lpae
Pablo Greco d6c4c4
%kernel_variant_post -v lpae -r (kernel|kernel-smp)
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%kernel_variant_preun debug
Pablo Greco d6c4c4
%kernel_variant_post -v debug
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_zfcpdump}
Pablo Greco d6c4c4
%kernel_variant_preun zfcpdump
Pablo Greco d6c4c4
%kernel_variant_post -v zfcpdump
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
if [ -x /sbin/ldconfig ]
Pablo Greco d6c4c4
then
Pablo Greco d6c4c4
    /sbin/ldconfig -X || exit $?
Pablo Greco d6c4c4
fi
Pablo Greco d6c4c4
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
### file lists
Pablo Greco d6c4c4
###
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_headers}
Pablo Greco d6c4c4
%files headers
Pablo Greco d6c4c4
/usr/include/*
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_cross_headers}
Pablo Greco d6c4c4
%files cross-headers
Pablo Greco d6c4c4
/usr/*-linux-gnu/include/*
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kernel_abi_whitelists}
Pablo Greco d6c4c4
%files -n kernel-abi-whitelists
Pablo Greco d6c4c4
/lib/modules/kabi-*
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_kabidw_base}
Pablo Greco d6c4c4
%ifarch x86_64 s390x ppc64 ppc64le aarch64
Pablo Greco d6c4c4
%files kabidw-base
Pablo Greco d6c4c4
%defattr(-,root,root)
Pablo Greco d6c4c4
/kabidw-base/%{_target_cpu}/*
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# only some architecture builds need kernel-doc
Pablo Greco d6c4c4
%if %{with_doc}
Pablo Greco d6c4c4
%files doc
Pablo Greco d6c4c4
%defattr(-,root,root)
Pablo Greco d6c4c4
%{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation/*
Pablo Greco d6c4c4
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation
Pablo Greco d6c4c4
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_selftests}
Pablo Greco d6c4c4
%files selftests-internal
Pablo Greco d6c4c4
%{_libexecdir}/ksamples
Pablo Greco d6c4c4
%{_libexecdir}/kselftests
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# empty meta-package
Pablo Greco d6c4c4
%ifnarch %nobuildarches noarch
Pablo Greco d6c4c4
%files
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%if %{with_gcov}
Pablo Greco d6c4c4
%ifarch x86_64 s390x ppc64le aarch64
Pablo Greco d6c4c4
%files gcov
Pablo Greco d6c4c4
%{_builddir}
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
%endif
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# This is %%{image_install_path} on an arch where that includes ELF files,
Pablo Greco d6c4c4
# or empty otherwise.
Pablo Greco d6c4c4
%define elf_image_install_path %{?kernel_image_elf:%{image_install_path}}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
# This macro defines the %%files sections for a kernel package
Pablo Greco d6c4c4
# and its devel and debuginfo packages.
Pablo Greco d6c4c4
#	%%kernel_variant_files [-k vmlinux] <condition> <subpackage> <without_modules>
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%define kernel_variant_files(k:) \
Pablo Greco d6c4c4
%if %{2}\
Pablo Greco d6c4c4
%{expand:%%files -f kernel-%{?3:%{3}-}core.list %{?1:-f kernel-%{?3:%{3}-}ldsoconf.list} %{?3:%{3}-}core}\
Pablo Greco d6c4c4
%{!?_licensedir:%global license %%doc}\
Pablo Greco d6c4c4
%license linux-%{KVERREL}/COPYING-%{version}\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}\
Pablo Greco d6c4c4
%ghost /%{image_install_path}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-%{KVERREL}%{?3:+%{3}}\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/.vmlinuz.hmac \
Pablo Greco d6c4c4
%ghost /%{image_install_path}/.vmlinuz-%{KVERREL}%{?3:+%{3}}.hmac \
Pablo Greco d6c4c4
%ifarch %{arm} aarch64\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/dtb \
Pablo Greco d6c4c4
%ghost /%{image_install_path}/dtb-%{KVERREL}%{?3:+%{3}} \
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%attr(600,root,root) /lib/modules/%{KVERREL}%{?3:+%{3}}/System.map\
Pablo Greco d6c4c4
%ghost /boot/System.map-%{KVERREL}%{?3:+%{3}}\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/symvers.gz\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/config\
Pablo Greco d6c4c4
%ghost /boot/symvers-%{KVERREL}%{?3:+%{3}}.gz\
Pablo Greco d6c4c4
%ghost /boot/config-%{KVERREL}%{?3:+%{3}}\
Pablo Greco d6c4c4
%ghost /boot/initramfs-%{KVERREL}%{?3:+%{3}}.img\
Pablo Greco d6c4c4
%dir /lib/modules\
Pablo Greco d6c4c4
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
Pablo Greco d6c4c4
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}/kernel\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/build\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/source\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/updates\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/bls.conf\
Pablo Greco d6c4c4
%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}/kernel-signing-ca.cer\
Pablo Greco d6c4c4
%ifarch s390x ppc64le\
Pablo Greco d6c4c4
%if 0%{!?4:1}\
Pablo Greco d6c4c4
%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}/%{signing_key_filename} \
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%if %{1}\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.*\
Pablo Greco d6c4c4
%{expand:%%files -f kernel-%{?3:%{3}-}modules.list %{?3:%{3}-}modules}\
Pablo Greco d6c4c4
%{expand:%%files %{?3:%{3}-}devel}\
Pablo Greco d6c4c4
%defverify(not mtime)\
Pablo Greco d6c4c4
/usr/src/kernels/%{KVERREL}%{?3:+%{3}}\
Pablo Greco d6c4c4
%{expand:%%files %{?3:%{3}-}modules-extra}\
Pablo Greco d6c4c4
%config(noreplace) /etc/modprobe.d/*-blacklist.conf\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/extra\
Pablo Greco d6c4c4
%{expand:%%files %{?3:%{3}-}modules-internal}\
Pablo Greco d6c4c4
/lib/modules/%{KVERREL}%{?3:+%{3}}/internal\
Pablo Greco d6c4c4
%if %{with_debuginfo}\
Pablo Greco d6c4c4
%ifnarch noarch\
Pablo Greco d6c4c4
%{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%if %{?3:1} %{!?3:0}\
Pablo Greco d6c4c4
%{expand:%%files %{3}}\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%kernel_variant_files %{_use_vdso} %{with_up}
Pablo Greco d6c4c4
%kernel_variant_files %{_use_vdso} %{with_debug} debug
Pablo Greco d6c4c4
%kernel_variant_files %{use_vdso} %{with_pae} lpae
Pablo Greco d6c4c4
%kernel_variant_files %{_use_vdso} %{with_zfcpdump} zfcpdump 1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%define kernel_variant_ipaclones(k:) \
Pablo Greco d6c4c4
%if %{1}\
Pablo Greco d6c4c4
%if %{with_ipaclones}\
Pablo Greco d6c4c4
%{expand:%%files %{?2:%{2}-}ipaclones-internal}\
Pablo Greco d6c4c4
%defattr(-,root,root)\
Pablo Greco d6c4c4
%defverify(not mtime)\
Pablo Greco d6c4c4
/usr/src/kernels/%{KVERREL}%{?2:+%{2}}-ipaclones\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%endif\
Pablo Greco d6c4c4
%{nil}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
%kernel_variant_ipaclones %{with_up}
Pablo Greco d6c4c4
Pablo Greco d6c4c4
# plz don't put in a version string unless you're going to tag
Pablo Greco d6c4c4
# and build.
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
#
Pablo Greco d6c4c4
%changelog
Pablo Greco d6c4c4
* Mon Feb 17 2020 Jeremy Cline <jcline@redhat.com> - 5.4.20-200
Pablo Greco d6c4c4
- Linux v5.4.20
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Feb 11 2020 Jeremy Cline <jcline@redhat.com> - 5.4.19-200
Pablo Greco d6c4c4
- Linux v5.4.19
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Feb 10 2020 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Remove sysrq support to lift lockdown (rhbz 1800859)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Feb 06 2020 Jeremy Cline <jcline@redhat.com> - 5.4.18-200
Pablo Greco d6c4c4
- Linux v5.4.18
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sat Feb 01 2020 Jeremy Cline <jcline@redhat.com> - 5.4.17-200
Pablo Greco d6c4c4
- Linux v5.4.17
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jan 30 2020 Jeremy Cline <jcline@redhat.com> - 5.4.16-200
Pablo Greco d6c4c4
- Linux v5.4.16
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jan 29 2020 Justin Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Add support for Comet Lake (rhbz 1794369)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 27 2020 Jeremy Cline <jcline@redhat.com> - 5.4.15-200
Pablo Greco d6c4c4
- Linux v5.4.15
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jan 23 2020 Jeremy Cline <jcline@redhat.com> - 5.4.14-200
Pablo Greco d6c4c4
- Linux v5.4.14
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jan 21 2020 Jeremy Cline <jcline@redhat.com> - 5.4.13-201
Pablo Greco d6c4c4
- Re-add the Intel ASoC Sound Open Firmware driver support
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 20 2020 Jeremy Cline <jcline@redhat.com> - 5.4.13-200
Pablo Greco d6c4c4
- Linux v5.4.13
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jan 14 2020 Jeremy Cline <jcline@redhat.com> - 5.4.12-200
Pablo Greco d6c4c4
- Linux v5.4.12
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 13 2020 Justin M. Forbes <jforbes@fedoraproject.org> - 5.4.10-202
Pablo Greco d6c4c4
- Add Documentation back to kernel-devel as it has Kconfig now (rhbz 1789641)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 13 2020 Peter Robinson <pbrobinson@gmail.com> - 5.4.11-200
Pablo Greco d6c4c4
- Linux v5.4.11
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jan 09 2020 Jeremy Cline <jcline@redhat.com> - 5.4.10-200
Pablo Greco d6c4c4
- Linux v5.4.10
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 06 2020 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Fix for tpm usercopy (rhbz 1788653)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 06 2020 Hans de Goede <hdegoede@redhat.com>
Pablo Greco d6c4c4
- Make the MFD Intel LPSS driver builtin, some devices require this to be
Pablo Greco d6c4c4
  available early during boot (rhbz#1787997)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 06 2020 Jeremy Cline <jcline@redhat.com> - 5.4.8-200
Pablo Greco d6c4c4
- Linux v5.4.8
Pablo Greco d6c4c4
- Fix a firmware load issue on some Intel wireless cards (rhbz 1788150)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Dec 31 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.4.7-200
Pablo Greco d6c4c4
- Linux v5.4.7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Dec 23 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.4.6-300
Pablo Greco d6c4c4
- Linux v5.4.6
Pablo Greco d6c4c4
- Fix rhbz 1781288
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Dec 19 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.4.5-300
Pablo Greco d6c4c4
- Linux v5.4.5 rebase
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Dec 18 2019 Laura Abbott <labbott@redhat.com> - 5.3.18-300
Pablo Greco d6c4c4
- Linux v5.3.18
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Dec 17 2019 Laura Abbott <labbott@redhat.com> - 5.3.17-300
Pablo Greco d6c4c4
- Linux v5.3.17
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Dec 13 2019 Laura Abbott <labbott@redhat.com> - 5.3.16-300
Pablo Greco d6c4c4
- Linux v5.3.16
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Dec 05 2019 Laura Abbott <labbott@redhat.com> - 5.3.15-300
Pablo Greco d6c4c4
- Linux v5.3.15
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Dec 04 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Add powerpc virt fix (rhbz 1769600)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Dec 02 2019 Laura Abbott <labbott@redhat.com> - 5.3.14-300
Pablo Greco d6c4c4
- Linux v5.3.14
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Dec 02 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Fix CVE-2019-18808 (rhbz 1777418 1777421)
Pablo Greco d6c4c4
- Fix CVE-2019-18809 (rhbz 1777449 1777451)
Pablo Greco d6c4c4
- Fix CVE-2019-18811 (rhbz 1777455 1777456)
Pablo Greco d6c4c4
- Fix CVE-2019-18812 (rhbz 1777458 1777459)
Pablo Greco d6c4c4
- Fix CVE-2019-16232 (rhbz 1760351 1760352)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Nov 26 2019 Justin M. Forbes <jforbes@fedoraproject.org> 
Pablo Greco d6c4c4
- Fix CVE-2019-19082 (rhbz 1776832 1776833)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Nov 25 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.3.13-300
Pablo Greco d6c4c4
- Fix CVE-2019-14895 (rhbz 1774870 1776139)
Pablo Greco d6c4c4
- Fix CVE-2019-14896 (rhbz 1774875 1776143)
Pablo Greco d6c4c4
- Fix CVE-2019-14897 (rhbz 1774879 1776146)
Pablo Greco d6c4c4
- Fix CVE-2019-14901 (rhbz 1773519 1776184)
Pablo Greco d6c4c4
- Fix CVE-2019-19078 (rhbz 1776354 1776353)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Nov 25 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Linux v5.3.13
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Nov 22 2019 Justin M. Forbes <jforbes@fedoraproject.org> 
Pablo Greco d6c4c4
- Fix CVE-2019-19077 rhbz 1775724 1775725
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Nov 21 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.3.12-300
Pablo Greco d6c4c4
- Fix CVE-2019-19074 (rhbz 1774933 1774934)
Pablo Greco d6c4c4
- Fix CVE-2019-19073 (rhbz 1774937 1774939)
Pablo Greco d6c4c4
- Fix CVE-2019-19072 (rhbz 1774946 1774947)
Pablo Greco d6c4c4
- Fix CVE-2019-19071 (rhbz 1774949 1774950)
Pablo Greco d6c4c4
- Fix CVE-2019-19070 (rhbz 1774957 1774958)
Pablo Greco d6c4c4
- Fix CVE-2019-19068 (rhbz 1774963 1774965)
Pablo Greco d6c4c4
- Fix CVE-2019-19043 (rhbz 1774972 1774973)
Pablo Greco d6c4c4
- Fix CVE-2019-19066 (rhbz 1774976 1774978)
Pablo Greco d6c4c4
- Fix CVE-2019-19046 (rhbz 1774988 1774989)
Pablo Greco d6c4c4
- Fix CVE-2019-19050 (rhbz 1774998 1775002)
Pablo Greco d6c4c4
- Fix CVE-2019-19062 (rhbz 1775021 1775023)
Pablo Greco d6c4c4
- Fix CVE-2019-19064 (rhbz 1775010 1775011)
Pablo Greco d6c4c4
- Fix CVE-2019-19063 (rhbz 1775015 1775016)
Pablo Greco d6c4c4
- Fix CVE-2019-19059 (rhbz 1775042 1775043)
Pablo Greco d6c4c4
- Fix CVE-2019-19058 (rhbz 1775047 1775048)
Pablo Greco d6c4c4
- Fix CVE-2019-19057 (rhbz 1775050 1775051)
Pablo Greco d6c4c4
- Fix CVE-2019-19053 (rhbz 1775956 1775110)
Pablo Greco d6c4c4
- Fix CVE-2019-19056 (rhbz 1775097 1775115)
Pablo Greco d6c4c4
- Fix CVE-2019-19055 (rhbz 1775074 1775116)
Pablo Greco d6c4c4
- Fix CVE-2019-19054 (rhbz 1775063 1775117)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Nov 21 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Linux v5.3.12
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Nov 12 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.3.11-300
Pablo Greco d6c4c4
- Linux v5.3.11
Pablo Greco d6c4c4
- Fixes CVE-2019-11135	(rhbz 1753062 1771649)
Pablo Greco d6c4c4
- Fixes CVE-2018-12207	(rhbz 1646768 1771645)
Pablo Greco d6c4c4
- Fixes CVE-2019-0154	(rhbz 1724393 1771642)
Pablo Greco d6c4c4
- Fixes CVE-2019-0155	(rhbz 1724398 1771644)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Nov 11 2019 Laura Abbott <labbott@redhat.com> - 5.3.10-300
Pablo Greco d6c4c4
- Linux v5.3.10
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Nov 07 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Add support for a number of Macbook keyboards and touchpads (rhbz 1769465)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Nov 06 2019 Laura Abbott <labbott@redhat.com> - 5.3.9-300
Pablo Greco d6c4c4
- Linux v5.3.9
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Oct 29 2019 Laura Abbott <labbott@redhat.com> - 5.3.8-300
Pablo Greco d6c4c4
- Linux v5.3.8
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Oct 21 2019 Laura Abbott <labbott@redhat.com> - 5.3.7-301
Pablo Greco d6c4c4
- Fix CVE-2019-17666 (rhbz 1763692)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Oct 18 2019 Laura Abbott <labbott@redhat.com> - 5.3.7-300
Pablo Greco d6c4c4
- Linux v5.3.7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Oct 14 2019 Laura Abbott <labbott@redhat.com> - 5.3.6-300
Pablo Greco d6c4c4
- Linux v5.3.6
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Oct 11 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Fix disappearing cursor issue (rhbz 1738614)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Oct 11 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Last iwlwifi fix for the recent firmware issues (rhbz 1733369)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Oct 08 2019 Laura Abbott <labbott@redhat.com> - 5.3.5-300
Pablo Greco d6c4c4
- Linux v5.3.5
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Oct  7 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- selinux fix (rhbz 1758597)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Oct  7 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.3.4-300
Pablo Greco d6c4c4
- Linux v5.3.4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sun Oct  6 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Fixes for RockPro64
Pablo Greco d6c4c4
- Fixes for Jetson-TX series devices
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Oct 03 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Fix CVE-2019-17052 CVE-2019-17053 CVE-2019-17054 CVE-2019-17055 CVE-2019-17056
Pablo Greco d6c4c4
  (rhbz 1758239 1758240 1758242 1758243 1758245 1758246 1758248 1758249 1758256 1758257)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Oct 01 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.3.2-300
Pablo Greco d6c4c4
- Linux v5.3.2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Sep 30 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Fix for tpm crashes (rhbz 1752961)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Sep 23 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.3.1-300
Pablo Greco d6c4c4
- Upstream patch for iwlwifi 8000 series FW issues (rhbz: 1749949)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Sep 23 2019 Laura Abbott <labbott@redhat.com> - 5.3.1-100
Pablo Greco d6c4c4
- Linux v5.3.1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Sep 19 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Fix for dwc3 (rhbz 1753099)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Sep 16 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-1
Pablo Greco d6c4c4
- Linux v5.3
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Sep 10 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc8.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc8
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Sep 10 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Sep 05 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc7.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc7-2-g3b47fd5ca9ea
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Sep 05 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Sep 03 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc7.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Sep 03 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Aug 29 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc6.git2.1
Pablo Greco d6c4c4
- Linux v5.3-rc6-119-g9cf6b756cdf2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 28 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc6.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc6-115-g9e8312f5e160
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 28 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 26 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc6.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc6
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 26 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Aug 23 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc5.git2.1
Pablo Greco d6c4c4
- Linux v5.3-rc5-224-gdd469a456047
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Aug 22 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc5.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc5-149-gbb7ba8069de9
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Aug 22 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 19 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc5.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc5
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 19 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Aug 16 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc4.git3.1
Pablo Greco d6c4c4
- Linux v5.3-rc4-71-ga69e90512d9d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Aug 15 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc4.git2.1
Pablo Greco d6c4c4
- Linux v5.3-rc4-53-g41de59634046
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 14 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc4.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc4-4-gee1c7bd33e66
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 14 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Aug 13 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc4.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Aug 13 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 07 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc3.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc3-282-g33920f1ec5bf
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Aug 07 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 05 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc3.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc3
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Aug 05 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Aug 02 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc2.git4.1
Pablo Greco d6c4c4
- Linux v5.3-rc2-70-g1e78030e5e5b
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Aug 01 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc2.git3.1
Pablo Greco d6c4c4
- Linux v5.3-rc2-60-g5c6207539aea
Pablo Greco d6c4c4
- Enable 8250 serial ports on powerpc
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 31 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.3.0-0.rc2.git2.2
Pablo Greco d6c4c4
- Enable IMA Appraisal
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 31 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc2.git2.1
Pablo Greco d6c4c4
- Linux v5.3-rc2-51-g4010b622f1d2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 30 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc2.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc2-11-g2a11c76e5301
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 30 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jul 29 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc2.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jul 29 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jul 26 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc1.git4.1
Pablo Greco d6c4c4
- Linux v5.3-rc1-96-g6789f873ed37
Pablo Greco d6c4c4
- Enable nvram driver (rhbz 1732612)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jul 25 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc1.git3.1
Pablo Greco d6c4c4
- Linux v5.3-rc1-82-gbed38c3e2dca
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 24 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc1.git2.1
Pablo Greco d6c4c4
- Linux v5.3-rc1-59-gad5e427e0f6b
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 23 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc1.git1.1
Pablo Greco d6c4c4
- Linux v5.3-rc1-56-g7b5cf701ea9c
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 23 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sun Jul 21 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc1.git0.1
Pablo Greco d6c4c4
- Linux v5.3-rc1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sun Jul 21 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jul 19 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- RHBZ Bug 1576593 - work around while vendor investigates
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jul 18 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git7.1
Pablo Greco d6c4c4
- Linux v5.2-11564-g22051d9c4a57
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 17 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git6.1
Pablo Greco d6c4c4
- Linux v5.2-11043-g0a8ad0ffa4d8
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 16 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Fix a firmware crash in Intel 7000 and 8000 devices (rhbz 1716334)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 16 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git5.1
Pablo Greco d6c4c4
- Linux v5.2-10808-g9637d517347e
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jul 12 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Turn off i686 builds
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jul 12 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git4.1
Pablo Greco d6c4c4
- Linux v5.2-7109-gd7d170a8e357
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jul 11 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git3.1
Pablo Greco d6c4c4
- Linux v5.2-3311-g5450e8a316a6
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 10 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git2.1
Pablo Greco d6c4c4
- Linux v5.2-3135-ge9a83bd23220
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 09 2019 Laura Abbott <labbott@redhat.com> - 5.3.0-0.rc0.git1.1
Pablo Greco d6c4c4
- Linux v5.2-915-g5ad18b2e60b7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jul 09 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jul 08 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-1
Pablo Greco d6c4c4
- Linux v5.2.0
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jul 03 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc7.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc7-8-geca94432934f
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jul 01 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc7.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jul 01 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 28 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc6.git2.1
Pablo Greco d6c4c4
- Linux v5.2-rc6-93-g556e2f6020bf
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jun 25 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc6.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc6-15-g249155c20f9b
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 24 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc6.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc6
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 24 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sat Jun 22 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- QCom ACPI fixes
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 21 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc5.git4.1
Pablo Greco d6c4c4
- Linux v5.2-rc5-290-g4ae004a9bca8
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jun 20 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc5.git3.1
Pablo Greco d6c4c4
- Linux v5.2-rc5-239-g241e39004581
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jun 19 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc5.git2.1
Pablo Greco d6c4c4
- Linux v5.2-rc5-224-gbed3c0d84e7e
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jun 18 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc5.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc5-177-g29f785ff76b6
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 17 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc5.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc5
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 17 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 14 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc4.git3.1
Pablo Greco d6c4c4
- Linux v5.2-rc4-129-g72a20cee5d99
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 14 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Fix the long-standing bluetooth breakage
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 14 2019 Hans de Goede <hdegoede@redhat.com>
Pablo Greco d6c4c4
- Fix the LCD panel an Asus EeePC 1025C not lighting up (rhbz#1697069)
Pablo Greco d6c4c4
- Add small bugfix for new Logitech wireless keyboard support
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jun 13 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc4.git2.1
Pablo Greco d6c4c4
- Linux v5.2-rc4-45-gc11fb13a117e
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jun 12 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Raspberry Pi: move to cpufreq driver accepted for upstream \o/
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jun 12 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc4.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc4-20-gaa7235483a83
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 10 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc4.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 10 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jun 07 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc3.git3.1
Pablo Greco d6c4c4
- Linux v5.2-rc3-77-g16d72dd4891f
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jun 06 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Fix incorrect permission denied with lock down off (rhbz 1658675)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jun 06 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc3.git2.1
Pablo Greco d6c4c4
- Linux v5.2-rc3-37-g156c05917e09
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jun 04 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc3.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc3-24-g788a024921c4
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 03 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc3.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc3
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jun 03 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri May 31 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.2.0-0.rc2.git1.2
Pablo Greco d6c4c4
- Bump for ARMv7 fix
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu May 30 2019 Justin M. Forbes <jforbes@redhat.com> - 5.2.0-0.rc2.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc2-24-gbec7550cca10
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May 27 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc2.git0.1
Pablo Greco d6c4c4
- Linux v5.2-rc2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May 27 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri May 24 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc1.git3.1
Pablo Greco d6c4c4
- Linux v5.2-rc1-233-g0a72ef899014
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed May 22 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc1.git2.1
Pablo Greco d6c4c4
- Linux v5.2-rc1-165-g54dee406374c
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue May 21 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc1.git1.1
Pablo Greco d6c4c4
- Linux v5.2-rc1-129-g9c7db5004280
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue May 21 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc1.git0.2
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May 20 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc1.git0.1
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
- Linux V5.2-rc1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sun May 19 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Arm config updates
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri May 17 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git9.1
Pablo Greco d6c4c4
- Linux v5.1-12505-g0ef0fd351550
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu May 16 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git8.1
Pablo Greco d6c4c4
- Linux v5.1-12065-g8c05f3b965da
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed May 15 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git7.1
Pablo Greco d6c4c4
- Linux v5.1-10909-g2bbacd1a9278
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue May 14 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git6.1
Pablo Greco d6c4c4
- Linux v5.1-10326-g7e9890a3500d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May 13 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git5.1
Pablo Greco d6c4c4
- Linux v5.1-10135-ga13f0655503a
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri May 10 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git4.1
Pablo Greco d6c4c4
- Linux v5.1-9573-gb970afcfcabd
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu May 09 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git3.1
Pablo Greco d6c4c4
- Linux v5.1-8122-ga2d635decbfa
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed May 08 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git2.1
Pablo Greco d6c4c4
- Linux v5.1-5445-g80f232121b69
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue May 07 2019 Justin M. Forbes <jforbes@fedoraproject.org> - 5.2.0-0.rc0.git1.1
Pablo Greco d6c4c4
- Linux v5.1-1199-g71ae5fc87c34
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May  6 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Enable Arm STM32MP1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon May 06 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-1
Pablo Greco d6c4c4
- Linux v5.1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri May 03 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc7.git4.1
Pablo Greco d6c4c4
- Linux v5.1-rc7-131-gea9866793d1e
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu May 02 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc7.git3.1
Pablo Greco d6c4c4
- Linux v5.1-rc7-29-g600d7258316d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed May 01 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc7.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc7-16-gf2bc9c908dfe
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 30 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc7.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc7-5-g83a50840e72a
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 30 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 30 2019 Hans de Goede <hdegoede@redhat.com>
Pablo Greco d6c4c4
- Fix wifi on various ideapad models not working (rhbz#1703338)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 29 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc7.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc7
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 29 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Apr 26 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc6.git4.1
Pablo Greco d6c4c4
- Linux v5.1-rc6-72-g8113a85f8720
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Apr 25 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc6.git3.1
Pablo Greco d6c4c4
- Linux v5.1-rc6-64-gcd8dead0c394
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Apr 25 2019 Justin M. Forbes <jforbes@fedoraproject.org>
Pablo Greco d6c4c4
- Fix CVE-2019-3900 (rhbz 1698757 1702940)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Apr 24 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc6.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc6-15-gba25b50d582f
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 23 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc6.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc6-4-g7142eaa58b49
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 23 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 23 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Allow modules signed by keys in the platform keyring (rbhz 1701096)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 22 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc6.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc6
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 22 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Apr 17 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc5.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc5-36-g444fe9913539
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 16 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc5.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc5-10-g618d919cae2f
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 16 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 15 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc5.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc5
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 15 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Apr 12 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc4.git4.1
Pablo Greco d6c4c4
- Linux v5.1-rc4-184-g8ee15f324866
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Apr 11 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc4.git3.1
Pablo Greco d6c4c4
- Linux v5.1-rc4-58-g582549e3fbe1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Apr 10 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc4.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc4-43-g771acc7e4a6e
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 09 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc4.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc4-34-g869e3305f23d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 09 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 08 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc4.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 08 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Apr 05 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc3.git3.1
Pablo Greco d6c4c4
- Linux v5.1-rc3-206-gea2cec24c8d4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Apr 03 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc3.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc3-35-g8ed86627f715
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 02 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc3.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc3-14-g5e7a8ca31926
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Apr 02 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 01 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc3.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc3
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Apr 01 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Mar 29 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc2.git4.1
Pablo Greco d6c4c4
- Linux v5.1-rc2-247-g9936328b41ce
Pablo Greco d6c4c4
- Pick up a mm fix causing hangs (rhbz 1693525)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Mar 28 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc2.git3.1
Pablo Greco d6c4c4
- Linux v5.1-rc2-243-g8c7ae38d1ce1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 27 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc2.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc2-24-g14c741de9386
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 27 2019 Jeremy Cline <jeremy@jcline.org>
Pablo Greco d6c4c4
- Build iptable_filter as module
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 26 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc2.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc2-16-g65ae689329c5
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 26 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 26 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Initial NXP i.MX8 enablement
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 25 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc2.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc2
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 25 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sat Mar 23 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Fixes for Tegra Jetson TX series
Pablo Greco d6c4c4
- Initial support for NVIDIA Jetson Nano
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Mar 22 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc1.git2.1
Pablo Greco d6c4c4
- Linux v5.1-rc1-66-gfd1f297b794c
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 20 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc1.git1.1
Pablo Greco d6c4c4
- Linux v5.1-rc1-15-gbabf09c3837f
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 20 2019 Hans de Goede <hdegoede@redhat.com>
Pablo Greco d6c4c4
- Make the mainline vboxguest drv feature set match VirtualBox 6.0.x (#1689750)
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 18 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc1.git0.1
Pablo Greco d6c4c4
- Linux v5.1-rc1
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 18 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Sun Mar 17 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Updates for Arm
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Mar 15 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git9.1
Pablo Greco d6c4c4
- Linux v5.0-11520-gf261c4e529da
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Mar 14 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git8.1
Pablo Greco d6c4c4
- Linux v5.0-11139-gfa3d493f7a57
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 13 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git7.1
Pablo Greco d6c4c4
- Linux v5.0-11053-gebc551f2b8f9
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 12 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git6.1
Pablo Greco d6c4c4
- Linux v5.0-10742-gea295481b6e3
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 12 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Arm config updates and fixes
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 11 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git5.1
Pablo Greco d6c4c4
- Linux v5.0-10360-g12ad143e1b80
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Mar 08 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git4.1
Pablo Greco d6c4c4
- Linux v5.0-7001-g610cd4eadec4
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Mar 07 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git3.1
Pablo Greco d6c4c4
- Linux v5.0-6399-gf90d64483ebd
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Mar 06 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git2.1
Pablo Greco d6c4c4
- Linux v5.0-3452-g3717f613f48d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 05 2019 Jeremy Cline <jcline@redhat.com> - 5.1.0-0.rc0.git1.1
Pablo Greco d6c4c4
- Linux v5.0-510-gcd2a3bf02625
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Mar 05 2019 Jeremy Cline <jcline@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Mar 04 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-1
Pablo Greco d6c4c4
- Linux v5.0.0
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Feb 26 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc8.git1.1
Pablo Greco d6c4c4
- Linux v5.0-rc8-3-g7d762d69145a
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Feb 26 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Feb 25 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc8.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc8
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Feb 22 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc7.git3.1
Pablo Greco d6c4c4
- Linux v5.0-rc7-118-g8a61716ff2ab
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 20 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Improvements to 96boards Rock960
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 20 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc7.git2.1
Pablo Greco d6c4c4
- Linux v5.0-rc7-85-g2137397c92ae
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Feb 19 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc7.git1.1
Pablo Greco d6c4c4
- Linux v5.0-rc7-11-gb5372fe5dc84
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Feb 19 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Feb 18 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc7.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc7
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 13 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc6.git1.1
Pablo Greco d6c4c4
- Linux v5.0-rc6-42-g1f947a7a011f
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 13 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 13 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Feb 13 2019 Peter Robinson <pbrobinson@fedoraproject.org>
Pablo Greco d6c4c4
- Enable NXP Freescale Layerscape platform
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Feb 11 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc6.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc6
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
- Tweaks to gcc9 fixes
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Feb 04 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc5.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc5
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Feb 01 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc4.git3.1
Pablo Greco d6c4c4
- Linux v5.0-rc4-106-g5b4746a03199
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Thu Jan 31 2019 Hans de Goede <hdegoede@redhat.com>
Pablo Greco d6c4c4
- Add patches from -next to enable i915.fastboot by default on Skylake+ for
Pablo Greco d6c4c4
  https://fedoraproject.org/wiki/Changes/FlickerFreeBoot
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jan 30 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc4.git2.1
Pablo Greco d6c4c4
- Linux v5.0-rc4-59-g62967898789d
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jan 29 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc4.git1.1
Pablo Greco d6c4c4
- Linux v5.0-rc4-1-g4aa9fc2a435a
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Tue Jan 29 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 28 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc4.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc4
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jan 23 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc3.git1.1
Pablo Greco d6c4c4
- Linux v5.0-rc3-53-g333478a7eb21
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Wed Jan 23 2019 Laura Abbott <labbott@redhat.com>
Pablo Greco d6c4c4
- Reenable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Mon Jan 21 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc3.git0.1
Pablo Greco d6c4c4
- Linux v5.0-rc3
Pablo Greco d6c4c4
- Disable debugging options.
Pablo Greco d6c4c4
Pablo Greco d6c4c4
* Fri Jan 18 2019 Laura Abbott <labbott@redhat.com> - 5.0.0-0.rc2.git4.1
Pablo Greco d6c4c4
- Linux v5.0-rc2-211-gd7393226d15a
Pablo Greco d6c4c4
Pablo Greco