%bcond_without doc # don't build kernel-doc package
%bcond_with verbose # verbose build (V=1)
-%define basever 3.16
-%define postver 4
+%define basever 4.14
+%define postver 133
%define rel 1
-%define alt_kernel 3.16-vanilla
+%define alt_kernel 4.14-vanilla
# kernel release (used in filesystem and eventually in uname -r)
# modules will be looked from /lib/modules/%{kernel_release}
Epoch: 3
License: GPL v2
Group: Base/Kernel
-Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
-# Source0-md5: 5c569ed649a0c9711879f333e90c5386
+Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%{basever}.tar.xz
+# Source0-md5: bacdb9ffdcd922aa069a5e1520160e24
%if "%{postver}" != "0"
-Source1: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz
-# Source1-md5: 38298e5acfdf188e264cc2984e50410c
+Source1: http://www.kernel.org/pub/linux/kernel/v4.x/patch-%{version}.xz
+# Source1-md5: 636afd0a0e839bc7b8c5f7449e222d4d
%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 >= 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}" != "0"
%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
-# generate simple initramfs/initrd image
-if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
- /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
+# 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
-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 || :
-fi
%post drm
%depmod %{kernel_release}
%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
%{_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/x86/ia32/[!M]*
%{_kernelsrcdir}/arch/arm/kvm
%{_kernelsrcdir}/arch/arm64/kvm
-%{_kernelsrcdir}/arch/ia64/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}/CREDITS
%{_kernelsrcdir}/MAINTAINERS
%{_kernelsrcdir}/README
-%{_kernelsrcdir}/REPORTING-BUGS
%endif