Name: kernel-fedora Version: 7.2.0 Release: 61.fedora%{?dist} Summary: Custom Linux kernel for Fedora License: GPL-2.0-only URL: https://www.kernel.org/ Source0: https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.tar.xz Source1: kernel-x86_64-fedora.config Source2: Makefile.rhelver Source3: kernel.sbat.template Patch0: patch-7.2-redhat.patch ExclusiveArch: x86_64 %global debug_package %{nil} BuildRequires: bc BuildRequires: binutils BuildRequires: bison BuildRequires: dwarves BuildRequires: elfutils-devel BuildRequires: elfutils-libelf-devel BuildRequires: flex BuildRequires: gcc BuildRequires: kmod BuildRequires: make BuildRequires: openssl BuildRequires: openssl-devel BuildRequires: perl-interpreter BuildRequires: python3 BuildRequires: rsync BuildRequires: xz %bcond_with secureboot %if %{with secureboot} BuildRequires: sbsigntools %{!?_secureboot_key:%{error:Define _secureboot_key for --with secureboot}} %{!?_secureboot_cert:%{error:Define _secureboot_cert for --with secureboot}} %endif %global kernel_release %{version}-%{release}.%{_target_cpu} %global makeflags ARCH=x86_64 KERNELRELEASE=%{kernel_release} Provides: installonlypkg(kernel) Provides: kernel = %{version}-%{release} Provides: kernel-core = %{version}-%{release} Provides: kernel-core-uname-r = %{kernel_release} Provides: kernel-modules = %{version}-%{release} Provides: kernel-modules-core = %{version}-%{release} Provides: kernel-modules-core-uname-r = %{kernel_release} Provides: kernel-modules-uname-r = %{kernel_release} Provides: kernel-uname-r = %{kernel_release} Requires(post): coreutils Requires(post): dracut Requires(post): kmod Requires(post): systemd Requires(preun): systemd Recommends: linux-firmware %description A single-purpose x86_64 kernel package built from kernel-x86_64-fedora.config. The kernel image and all configured modules are kept together instead of being split into Fedora kernel variants. %package devel Summary: Development files for %{name} %{kernel_release} Provides: kernel-devel = %{version}-%{release} Provides: kernel-devel-uname-r = %{kernel_release} AutoReqProv: no %description devel Headers and makefiles required to build external modules for %{kernel_release}. %prep %autosetup -n linux-7.2 -p1 cp %{SOURCE2} Makefile.rhelver cp %{SOURCE1} .config %if %{with secureboot} sed -e 's/@KVER/%{kernel_release}/g' -e 's/@SBAT_SUFFIX/fedora/g' \ %{SOURCE3} > kernel.sbat scripts/config --file .config --set-str EFI_SBAT_FILE kernel.sbat %endif make %{makeflags} olddefconfig %build make %{?_smp_mflags} %{makeflags} KBUILD_BUILD_VERSION=%{release} bzImage modules %install module_dir=%{buildroot}/lib/modules/%{kernel_release} mkdir -p "$module_dir" make %{?_smp_mflags} %{makeflags} \ INSTALL_MOD_PATH=%{buildroot} \ INSTALL_MOD_STRIP=1 \ DEPMOD=true \ modules_install install -m 0644 arch/x86/boot/bzImage "$module_dir/vmlinuz" install -m 0644 System.map "$module_dir/System.map" install -m 0644 .config "$module_dir/config" %if %{with secureboot} sbsign --key %{_secureboot_key} --cert %{_secureboot_cert} \ --output "$module_dir/vmlinuz.signed" "$module_dir/vmlinuz" mv "$module_dir/vmlinuz.signed" "$module_dir/vmlinuz" %endif make %{makeflags} run-command \ KBUILD_RUN_COMMAND='${srctree}/scripts/package/install-extmod-build %{buildroot}/usr/src/kernels/%{kernel_release}' ln -sfn /usr/src/kernels/%{kernel_release} "$module_dir/build" %{_sbindir}/depmod -b %{buildroot} %{kernel_release} cat > %{_builddir}/kernel-fedora.list <