%endif
%define rel 1
-%define basever 5.9
-%define postver .6
+%define basever 5.10
+%define postver .48
# define this to '-%{basever}' for longterm branch
-%define versuffix %{nil}
+%define versuffix -%{basever}
# __alt_kernel is list of features, empty string if none set
# _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
License: GPL v2
Group: Base/Kernel
Source0: https://www.kernel.org/pub/linux/kernel/v5.x/linux-%{basever}.tar.xz
-# Source0-md5: 0959d759fd19e146367221aff504ad91
+# Source0-md5: 753adc474bf799d569dec4f165ed92c3
%if "%{postver}" != ".0"
Patch0: https://www.kernel.org/pub/linux/kernel/v5.x/patch-%{version}.xz
-# Patch0-md5: 01883c3d208932f52bd7cba117f0a26e
+# Patch0-md5: 08c72ea21b9ced650622874ee15bb8e3
%endif
Source1: kernel.sysconfig
# Patch creation:
# git clone git://github.com/sfjro/aufs5-standalone.git
# cd aufs5-standalone
-# git checkout -b aufs5.8 origin/aufs5.8
+# git checkout -b aufs5.10 origin/aufs5.10
# cat aufs5-kbuild.patch aufs5-base.patch aufs5-mmap.patch aufs5-standalone.patch > ~/rpm/packages/kernel/kernel-aufs5.patch
# rm -rf linux && mkdir linux; cp -a Documentation fs include linux
# diff -urN /usr/share/empty linux | filterdiff -x linux/include/uapi/linux/Kbuild >> ~/rpm/packages/kernel/kernel-aufs5.patch
# based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
Patch7000: kernel-inittmpfs.patch
+# ARM only
+Patch8000: rpi-wm8804.patch
+Patch8001: kernel-pinebook-pro.patch
+Patch8002: kernel-rk3399-afbc-ytr.patch
+
# Do not remove this line, please. It is easier for me to uncomment two lines, then patch
# kernel.spec every time.
#Patch50000: kernel-usb_reset.patch
BuildRequires: kmod >= %{kmod_ver}
BuildRequires: libstdc++-devel
BuildRequires: openssl-devel
+BuildRequires: openssl-tools
BuildRequires: perl-base
BuildRequires: rpm-build >= 4.5-24
-BuildRequires: rpmbuild(macros) >= 1.743
+BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: tar >= 1:1.22
%ifarch ppc
BuildRequires: uboot-mkimage
%endif
Requires: linux-firmware
Provides: %{name}(netfilter) = 20070806
Provides: %{name}(vermagic) = %{kernel_release}
-Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100
-Obsoletes: kernel%{_alt_kernel}-char-lirc-it87
-Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709
-Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb
-Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap
-Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
-Obsoletes: kernel-firmware
-Obsoletes: kernel-misc-acer_acpi
-Obsoletes: kernel-misc-fuse
-Obsoletes: kernel-misc-uvc
-Obsoletes: kernel-modules
-Obsoletes: kernel-net-ar81
-Obsoletes: kernel-net-hostap
-Obsoletes: kernel-net-ieee80211
-Obsoletes: kernel-net-ipp2p
-Obsoletes: kernel-net-rt61
-Obsoletes: kernel-smp
+Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100 < 0.9.0
+Obsoletes: kernel%{_alt_kernel}-char-lirc-it87 < 0.9.0
+Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709 < 0.9.0
+Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb < 0.9.0
+Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap < 0.9.0
+Obsoletes: kernel%{_alt_kernel}-isdn-mISDN < 2.0.35
+Obsoletes: kernel-firmware < 3:2.6.33
+Obsoletes: kernel-misc-acer_acpi < 0.3-2
+Obsoletes: kernel-misc-fuse < 2.8.5-2
+Obsoletes: kernel-misc-uvc < 0.215.1-10
+Obsoletes: kernel-modules < 2.2.2-2
+Obsoletes: kernel-net-ar81 < 1.0.1.0-3
+Obsoletes: kernel-net-hostap < 0.4.7-2
+Obsoletes: kernel-net-ieee80211 < 1.2.18-7
+Obsoletes: kernel-net-ipp2p < 0.8.2.-17
+Obsoletes: kernel-net-rt61 < 1.1.0-2.2007122707.13
+Obsoletes: kernel-smp < 3:2.6.21
Conflicts: e2fsprogs < 1.29
Conflicts: isdn4k-utils < 3.1pre1
Conflicts: jfsutils < 1.1.3
Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
Group: Base/Kernel
-Obsoletes: kernel-smp-vmlinux
+Obsoletes: kernel-smp-vmlinux < 3:2.6.21
%description vmlinux
vmlinux - uncompressed kernel image.
Requires(postun): %{name} = %{epoch}:%{version}-%{release}
Requires: %{name} = %{epoch}:%{version}-%{release}
Provides: kernel(vboxvideo) = %{kernel_release}
-Obsoletes: kernel-smp-drm
+Obsoletes: kernel-smp-drm < 3:2.6.21
AutoReqProv: no
%description drm
Group: Base/Kernel
Requires(postun): %{name} = %{epoch}:%{version}-%{release}
Requires: %{name} = %{epoch}:%{version}-%{release}
-Obsoletes: kernel-smp-pcmcia
+Obsoletes: kernel-smp-pcmcia < 3:2.6.21
Conflicts: pcmcia-cs < 3.1.21
Conflicts: pcmciautils < 004
AutoReqProv: no
Group: Base/Kernel
Requires(postun): %{name} = %{epoch}:%{version}-%{release}
Requires: %{name} = %{epoch}:%{version}-%{release}
-Obsoletes: kernel-smp-sound-alsa
+Obsoletes: kernel-smp-sound-alsa < 3:2.6.21
AutoReqProv: no
%description sound-alsa
Group: Development/Building
Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
AutoReqProv: no
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description source
This is the source code for the Linux kernel. You can build a custom
Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
Group: Documentation
AutoReqProv: no
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc
This is the documentation for the Linux kernel, as found in
%patch7000 -p1
%endif
+%ifarch %{arm} aarch64
+%patch8000 -p1
+%patch8001 -p1
+%patch8002 -p1
+%endif
+
%if %{with rt}
%patch500 -p1
rm -f localversion-rt
find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
find -name '*.py' -print0 | \
- xargs -0 %{__sed} -i -e '1s,/usr/bin/python,%{__python},' \
- -e '1s,/usr/bin/env python,%{__python},' \
- -e '1s,/usr/bin/env python3,%{__python3},'
+ xargs -0 %{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
+ -e '1s,/usr/bin/env python$,%{__python},' \
+ -e '1s,/usr/bin/env python3$,%{__python3},'
-%{__sed} -i -e '1s,/usr/bin/python,%{__python},' \
- -e '1s,/usr/bin/env python,%{__python},' \
- -e '1s,/usr/bin/env python3,%{__python3},' \
+%{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
+ -e '1s,/usr/bin/env python$,%{__python},' \
+ -e '1s,/usr/bin/env python3$,%{__python3},' \
drivers/staging/greybus/tools/lbtest \
scripts/bloat-o-meter \
scripts/diffconfig \
scripts/documentation-file-ref-check \
scripts/get_dvb_firmware \
scripts/kernel-doc \
+ scripts/sphinx-pre-install \
scripts/stackdelta
+%{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+bash(\s|$),#!/bin/bash\\1,' \
+ scripts/config
+
%build
install -d %{objdir}
cat > %{targetobj}.mk <<'EOF'
CONFIG_NFS_FS=y
CONFIG_ROOT_NFS=y
%endif
+
+%ifarch x32
+ CONFIG_BPF_PRELOAD=n
+%endif
EOCONFIG
%if %{with rescuecd}
%endif
%exclude %dir %{_kernelsrcdir}/arch/um
%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
-%{_kernelsrcdir}/arch/*/kernel/module.lds
%{_kernelsrcdir}/arch/*/kernel/sigframe*.h
%{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
%{_kernelsrcdir}/kernel/bounds.c
%{_kernelsrcdir}/scripts/mod/modpost.h
%attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
%{_kernelsrcdir}/scripts/mkmakefile
-%{_kernelsrcdir}/scripts/module-common.lds
%attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
%{_kernelsrcdir}/scripts/subarch.include
%{_kernelsrcdir}/scripts/*.c
%{_kernelsrcdir}/arch/s390/kvm
%{_kernelsrcdir}/arch/x86/kvm
%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
-%exclude %{_kernelsrcdir}/arch/*/kernel/module.lds
%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
%exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
%{_kernelsrcdir}/block
%exclude %{_kernelsrcdir}/scripts/mkcompile_h
%exclude %{_kernelsrcdir}/scripts/mkmakefile
%exclude %{_kernelsrcdir}/scripts/mod
-%exclude %{_kernelsrcdir}/scripts/module-common.lds
%exclude %{_kernelsrcdir}/scripts/setlocalversion
%exclude %{_kernelsrcdir}/scripts/subarch.include
%exclude %{_kernelsrcdir}/scripts/*.c