%bcond_without doc # don't build kernel-doc package
%bcond_with verbose # verbose build (V=1)
-%define basever 3.8
-%define postver .10
+%define basever 4.19
+%define postver 43
%define rel 1
-%define alt_kernel 3.8-vanilla
+%define alt_kernel 4.19-vanilla
# kernel release (used in filesystem and eventually in uname -r)
# modules will be looked from /lib/modules/%{kernel_release}
Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
Summary(pl.UTF-8): Jądro Linuksa
Name: kernel%{_alt_kernel}
-Version: %{basever}%{postver}
+Version: %{basever}.%{postver}
Release: %{rel}
Epoch: 3
License: GPL v2
Group: Base/Kernel
-Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
-# Source0-md5: 1c738edfc54e7c65faeb90c436104e2f
-%if "%{_postver}" != "%{nil}"
-Source1: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
-# Source1-md5: 477cf19d53b706e659756ee2bbd5d8c6
+Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%{basever}.tar.xz
+# Source0-md5: 740a90cf810c2105df8ee12e5d0bb900
+%if "%{postver}" != "0"
+Source1: http://www.kernel.org/pub/linux/kernel/v4.x/patch-%{version}.xz
+# Source1-md5: de59f616dfe3f55ee03ccb06e59481ef
%endif
-Source2: kernel.sysconfig
-Source3: kernel-module-build.pl
-Source4: kernel.make
+Source2: kernel-module-build.pl
+Source3: kernel.make
Source10: kernel-vanilla-x86.config
Source11: kernel-vanilla-x86_64.config
URL: http://www.kernel.org/
BuildRequires: binutils >= 3:2.18
+BuildRequires: bison
BuildRequires: /sbin/depmod
+BuildRequires: elfutils-devel
+BuildRequires: flex
BuildRequires: gcc >= 5:3.2
+BuildRequires: gcc-plugin-devel
BuildRequires: xz >= 1:4.999.7
AutoReqProv: no
BuildRequires: hostname
BuildRequires: kmod
+BuildRequires: openssl-devel
BuildRequires: perl-base
-BuildRequires: rpm-build >= 4.5-24
+BuildRequires: rpm >= 4.5-74
BuildRequires: rpmbuild(macros) >= 1.652
Requires(post): coreutils
-Requires(post): geninitrd >= 12639-1
+Requires(post): dracut
Requires(post): kmod >= 12-2
Requires: /sbin/depmod
Requires: coreutils
-Requires: geninitrd >= 12639-1
+Requires: dracut
Requires: kmod >= 12-2
%ifarch i686
Requires: cpuinfo(pae)
%endif
Suggests: crda
-Suggests: dracut
Suggests: keyutils
Suggests: linux-firmware
Provides: %{name}(netfilter) = 20070806
%description sound-alsa -l pl.UTF-8
Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
-%package sound-oss
-Summary: OSS kernel modules
-Summary(de.UTF-8): OSS Kernel Module
-Summary(pl.UTF-8): Sterowniki dźwięku OSS
-Group: Base/Kernel
-Requires(postun): %{name} = %{epoch}:%{version}-%{release}
-Requires: %{name} = %{epoch}:%{version}-%{release}
-Obsoletes: kernel-smp-sound-oss
-AutoReqProv: no
-
-%description sound-oss
-OSS (Open Sound System) drivers.
-
-%description sound-oss -l de.UTF-8
-OSS (Open Sound System) Treiber.
-
-%description sound-oss -l pl.UTF-8
-Sterowniki dźwięku OSS (Open Sound System).
-
%package headers
Summary: Header files for the Linux kernel
Summary(de.UTF-8): Header Dateien für den Linux-Kernel
%prep
%setup -qc
-ln -s %{SOURCE3} kernel-module-build.pl
-ln -s %{SOURCE4} Makefile
+ln -s %{SOURCE2} kernel-module-build.pl
+ln -s %{SOURCE3} Makefile
cd linux-%{basever}
-%if "%{_postver}" != "%{nil}"
-%{__bzip2} -dc %{SOURCE1} | patch -p1 -s
+%if "%{postver}" != "0"
+%{__xz} -dc %{SOURCE1} | patch -p1 -s
%endif
# Fix EXTRAVERSION in main Makefile
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
+%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install \
-C %{objdir} \
%{?with_verbose:V=1} \
DEPMOD=%{DepMod} \
+ mod_compress_cmd=true \
INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
- INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
KERNELRELEASE=%{kernel_release}
install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
# ghosted initrd
-touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.img
touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
%if "%{_target_base_arch}" != "%{_host_base_arch}"
# /etc/modrobe.d
install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
-install -d $RPM_BUILD_ROOT/etc/sysconfig
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/kernel
-
# /usr/src/linux
install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
%depmod %{kernel_release}
%posttrans
-[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
-if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
- # generate initrd after all dependant modules are installed
- /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.img %{kernel_release}
-fi
-
-# if dracut is present then generate full-featured initramfs
-if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
+# generate initramfs
+if [ -x /sbin/dracut ]; then
/sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
fi
-
-# update boot loaders
-[ -x /sbin/update-grub -a -f /etc/sysconfig/grub ] && . /etc/sysconfig/grub
-if [[ "$UPDATE_GRUB" != [Nn][Oo] ]]; then
- /sbin/update-grub
-fi
-if [ -x /sbin/new-kernel-pkg ]; then
- /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.img --install %{kernel_release} --banner "TLD Linux%{?alt_kernel: %{alt_kernel}}"
-fi
-if [ -x /sbin/rc-boot ]; then
- /sbin/rc-boot 1>&2 || :
+# update boot loader
+if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
+ if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-yes})" = "yes" ]; then
+ /sbin/update-grub >/dev/null
+ fi
fi
%post drm
%postun sound-alsa
%depmod %{kernel_release}
-%post sound-oss
-%depmod %{kernel_release}
-
-%postun sound-oss
-%depmod %{kernel_release}
-
%post headers
ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
%files
%defattr(644,root,root,755)
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
/boot/vmlinuz-%{kernel_release}
/boot/System.map-%{kernel_release}
/boot/config-%{kernel_release}
-%ghost %{initrd_dir}/initrd-%{kernel_release}.img
%ghost %{initrd_dir}/initramfs-%{kernel_release}.img
-/lib/firmware/%{kernel_release}
%dir /lib/modules/%{kernel_release}
%dir /lib/modules/%{kernel_release}/kernel
/lib/modules/%{kernel_release}/kernel/arch
+/lib/modules/%{kernel_release}/kernel/block
/lib/modules/%{kernel_release}/kernel/crypto
/lib/modules/%{kernel_release}/kernel/drivers
%exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
%exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
/lib/modules/%{kernel_release}/kernel/security
+/lib/modules/%{kernel_release}/kernel/virt
%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
/lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
/lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
-/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
/lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
/lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
/lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
%exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
%exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/sound/oss
-/lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
/lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
/lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
/lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
-%files sound-oss
-%defattr(644,root,root,755)
-/lib/modules/%{kernel_release}/kernel/sound/oss
-
%files headers -f files.headers_exclude_kbuild
%defattr(644,root,root,755)
%dir %{_kernelsrcdir}
%exclude %dir %{_kernelsrcdir}/arch/um
%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
%{_kernelsrcdir}/arch/*/kernel/sigframe*.h
-%{_kernelsrcdir}/drivers/lguest/lg.h
%{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
%{_kernelsrcdir}/kernel/bounds.c
%{_kernelsrcdir}/scripts/basic/*.c
%attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
-%{_kernelsrcdir}/scripts/kconfig/*.in
-%{_kernelsrcdir}/scripts/kconfig/*_shipped
%{_kernelsrcdir}/scripts/kconfig/*.pl
%{_kernelsrcdir}/scripts/kconfig/*.glade
-%{_kernelsrcdir}/scripts/kconfig/*.gperf
%{_kernelsrcdir}/scripts/kconfig/*.cc
%{_kernelsrcdir}/scripts/kconfig/*.y
%{_kernelsrcdir}/scripts/kconfig/*.l
%{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
%{_kernelsrcdir}/scripts/kconfig/lxdialog
%{_kernelsrcdir}/scripts/mod/*.c
-%{_kernelsrcdir}/scripts/mod/[^e]*.h
+%{_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/*.c
+%{_kernelsrcdir}/scripts/*.h
%attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
%{_kernelsrcdir}/scripts/selinux/genheaders/*.c
%{_kernelsrcdir}/scripts/selinux/mdp/*.c
%{_docdir}/%{name}-%{version}/[jkz]*.txt
%{_docdir}/%{name}-%{version}/kbuild
%{_docdir}/%{name}-%{version}/kdump
-%lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
-%lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
-%lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
+%{_docdir}/%{name}-%{version}/kernel-hacking
%endif
%if %{with source}
%{_kernelsrcdir}/arch/m68k/install.sh
%{_kernelsrcdir}/arch/parisc/install.sh
%{_kernelsrcdir}/arch/x86/ia32/[!M]*
-%{_kernelsrcdir}/arch/ia64/kvm
+%{_kernelsrcdir}/arch/arm/kvm
+%{_kernelsrcdir}/arch/arm64/kvm
+%{_kernelsrcdir}/arch/mips/kvm
%{_kernelsrcdir}/arch/powerpc/kvm
%{_kernelsrcdir}/arch/s390/kvm
%{_kernelsrcdir}/arch/x86/kvm
%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
-%exclude %{_kernelsrcdir}/drivers/lguest/lg.h
%exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
%{_kernelsrcdir}/block
+%{_kernelsrcdir}/certs
%{_kernelsrcdir}/crypto
%{_kernelsrcdir}/drivers
%{_kernelsrcdir}/firmware
%exclude %{_kernelsrcdir}/scripts/module-common.lds
%exclude %{_kernelsrcdir}/scripts/setlocalversion
%exclude %{_kernelsrcdir}/scripts/*.c
+%exclude %{_kernelsrcdir}/scripts/*.h
%exclude %{_kernelsrcdir}/scripts/*.sh
%exclude %dir %{_kernelsrcdir}/scripts/selinux
%exclude %{_kernelsrcdir}/scripts/selinux/Makefile
%{_kernelsrcdir}/usr
%{_kernelsrcdir}/COPYING
%{_kernelsrcdir}/CREDITS
+%{_kernelsrcdir}/LICENSES
%{_kernelsrcdir}/MAINTAINERS
%{_kernelsrcdir}/README
-%{_kernelsrcdir}/REPORTING-BUGS
%endif