# updated every time the PL kernel is updated.
%define vini_pl_patch 561
-%define release vs%{vsversion}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
+#%define updatelevel 1
+
+%define kernelrelease vs%{vsversion}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}%{?updatelevel:.%{updatelevel}}
+%define packagerelease %{kernelrelease}
+
+
%{!?pldistro:%global pldistro planetlab}
%define signmodules 0
%define make_target bzImage
-%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}
+%define KVERREL %{PACKAGE_VERSION}-%{kernelrelease}
# Override generic defaults with per-arch defaults
Group: System Environment/Kernel
License: GPLv2
Version: %{rpmversion}
-Release: %{release}
+Release: %{packagerelease}
ExclusiveOS: Linux
Provides: kernel = %{version}
Provides: kernel-drm = 4.3.0
-Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}
-Provides: kernel-smp = %{rpmversion}-%{release}
-Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{release}
+Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
+Provides: kernel-smp = %{rpmversion}-%{kernelrelease}
+Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
Prereq: %{kernel_prereq}
Conflicts: %{kernel_dot_org_conflicts}
Conflicts: %{package_conflicts}
%endif
Patch010: linux-2.6-010-e1000e.patch
+Patch015: linux-2.6-015-igb.patch
Patch020: linux-2.6-020-build-id.patch
Patch030: linux-2.6-030-netns.patch
Patch040: linux-2.6-040-i_mutex-check.patch
+Patch050: linux-2.6-050-getline.patch
# These are patches picked up from Fedora/RHEL
Patch100: linux-2.6-100-build-nonintconfig.patch
Patch525: linux-2.6-525-sknid-elevator.patch
Patch526: linux-2.6-526-tun-tap.patch
Patch527: linux-2.6-527-iptables-classify-add-mark.patch
+Patch528: linux-2.6-528-enable-stdtun.patch
Patch530: linux-2.6-530-built-by-support.patch
Patch540: linux-2.6-540-oom-kill.patch
Patch550: linux-2.6-550-raise-default-nfile-ulimit.patch
Patch721: linux-2.6-721-bonding-layer3.patch
Patch722: linux-2.6-722-bonding-rr.patch
+Patch800: linux-2.6-800-fix-4-bit-apicid-assumption.patch
+
# See also the file named 'sources' here for the related checksums
# NOTE. iwlwifi should be in-kernel starting from 2.6.24
# see http://bughost.org/bugzilla/show_bug.cgi?id=1584
Summary: Development package for building kernel modules to match the kernel.
Group: System Environment/Kernel
AutoReqProv: no
-Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}
-Provides: kernel-smp-devel = %{rpmversion}-%{release}
-Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{release}
+Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
+Provides: kernel-smp-devel = %{rpmversion}-%{kernelrelease}
+Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
Prereq: /usr/bin/find
%description devel
Group: System Environment/Kernel
Provides: kernel = %{version}
-Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xenU
+Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}xenU
Prereq: %{kernel_prereq}
Conflicts: %{kernel_dot_org_conflicts}
Conflicts: %{package_conflicts}
Summary: Development package for building kernel modules to match the kernel.
Group: System Environment/Kernel
AutoReqProv: no
-Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{release}
-Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xenU
-Provides: kernel-devel = %{rpmversion}-%{release}xenU
+Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
+Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}xenU
+Provides: kernel-devel = %{rpmversion}-%{kernelrelease}xenU
Prereq: /usr/sbin/hardlink, /usr/bin/find
%description xenU-devel
%package uml-devel
Summary: Development package for building kernel modules to match the UML kernel.
Group: System Environment/Kernel
-Provides: kernel-uml-devel-%{_target_cpu} = %{rpmversion}-%{release}
-Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}smp
-Provides: kernel-devel = %{rpmversion}-%{release}smp
+Provides: kernel-uml-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
+Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}smp
+Provides: kernel-devel = %{rpmversion}-%{kernelrelease}smp
AutoReqProv: no
Prereq: /usr/sbin/hardlink, /usr/bin/find
Group: System Environment/Kernel
Provides: kernel = %{version}
Provides: kernel-drm = 4.3.0
-Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}
+Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}
%description vserver
VServers do not require and cannot use kernels, but some RPMs have
cd kernel-%{kversion}
fi
+%if "0%{updatelevel}"
+echo "This is a trivial maintenance update. There will be no reboot following installation."
+%endif
+
KERNEL_PREVIOUS=vanilla
# Dark RPM-magic to apply each patch to a hardlinked copy of the tree.
%define ApplyPatch() \
%endif
%ApplyPatch 10
+%ApplyPatch 15
%ApplyPatch 20
# NetNS patch for VINI
%ApplyPatch 30
%endif
%ApplyPatch 40
+%ApplyPatch 50
%ApplyPatch 100
%ApplyPatch 525
%ApplyPatch 526
%ApplyPatch 527
+%ApplyPatch 528
%ApplyPatch 530
%ApplyPatch 540
%ApplyPatch 670
%endif
%ApplyPatch 680
-%ApplyPatch 690
%ApplyPatch 700
%ApplyPatch 710
%ApplyPatch 720
%ApplyPatch 721
%ApplyPatch 722
+%ApplyPatch 800
# NetNS conflict-resolving patch for VINI. Will work with patch vini_pl_patch-1 but may
DevelLink=
fi
- KernelVer=%{version}-%{release}$Flavour
+ KernelVer=%{version}-%{kernelrelease}$Flavour
echo BUILDING A KERNEL FOR $Flavour %{_target_cpu}...
# make sure EXTRAVERSION says what we want it to say
- perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?patchlevel:.%{patchlevel}}-%{release}$Flavour/" Makefile
+ perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?patchlevel:.%{patchlevel}}-%{kernelrelease}$Flavour/" Makefile
# and now to start the build process
fi
fi
-[ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}
+[ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{kernelrelease}
#/sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install %{KVERREL}
# Older modutils do not support --package option
/sbin/new-kernel-pkg --mkinitrd --depmod --install %{KVERREL}
# ask for a reboot
mkdir -p /etc/planetlab
+
+%if "%{updatelevel}"==""
touch /etc/planetlab/update-reboot
+%endif
%post devel
[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel