This adds *-latest metapackages for main kernels.
They allows for autmatic updating of kernels and kernel-source,
resolving an old outstanding issue discussed to death on the 
Cooker ML.

The *-latest metapackages has been proven to work with kernel-mm
and kernel-tmb series.

Signed-off-by: Thomas Backlund <[EMAIL PROTECTED]>

--- kernel-2.6.spec.old	2006-09-12 19:17:08.000000000 +0300
+++ kernel-2.6.spec	2006-09-12 19:16:55.000000000 +0300
@@ -201,6 +201,23 @@ http://www.mandriva.com/security/kernelu
 %{devel_notice}
 
 #
+# kernel-latest: Metapackage for latest kernel
+#
+
+%package -n %{kname}-latest
+Summary:	Metapackage for latest %{kname}
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		System/Kernel and hardware
+Requires: 	%{kname}-%{mdkversion}
+
+%description -n %{kname}-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname} installed...
+
+%{devel_notice}
+
+#
 # kernel-enterprise: Symmetric MultiProcessing kernel (PAE + 64G)
 #
 
@@ -226,6 +243,23 @@ http://www.mandriva.com/security/kernelu
 %{devel_notice}
 
 #
+# kernel-enterprise-latest: Metapackage for latest kernel-enterprise
+#
+
+%package -n %{kname}-enterprise-latest
+Summary:	Metapackage for latest %{kname}-enterprise
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		System/Kernel and hardware
+Requires: 	%{kname}-enterprise-%{mdkversion}
+
+%description -n %{kname}-enterprise-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-enterprise installed...
+
+%{devel_notice}
+
+#
 # kernel-legacy: Legacy kernel
 # 
 
@@ -249,6 +283,23 @@ http://www.mandriva.com/security/kernelu
 %{devel_notice}
 
 #
+# kernel-legacy-latest: Metapackage for latest kernel-legacy
+#
+
+%package -n %{kname}-legacy-latest
+Summary:	Metapackage for latest %{kname}-legacy
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		System/Kernel and hardware
+Requires: 	%{kname}-legacy-%{mdkversion}
+
+%description -n %{kname}-legacy-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-legacy installed...
+
+%{devel_notice}
+
+#
 # kernel-xen: Xen related kernels (for dom0 & domU)
 #
 
@@ -262,6 +313,23 @@ device services to unprivileged guests.
 
 %{devel_notice}
 
+#
+# kernel-xen0-latest: Metapackage for latest kernel-xen0
+#
+
+%package -n %{kname}-xen0-latest
+Summary:	Metapackage for latest %{kname}-xen0
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Development/Kernel
+Requires: 	%{kname}-xen0-%{mdkversion}
+
+%description -n %{kname}-xen0-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-xen0 installed...
+
+%{devel_notice}
+
 %package -n %{kname}-xenU-%{mdkversion}
 Summary: The XEN guests kernel
 Group: Development/Kernel
@@ -273,6 +341,23 @@ XEN unprivileged guests VMs.
 %{devel_notice}
 
 #
+# kernel-xenU-latest: Metapackage for latest kernel-xenU
+#
+
+%package -n %{kname}-xenU-latest
+Summary:	Metapackage for latest %{kname}-xenU
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Development/Kernel
+Requires: 	%{kname}-xenU-%{mdkversion}
+
+%description -n %{kname}-xenU-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-xenU installed...
+
+%{devel_notice}
+
+#
 # kernel-power5: Power5 kernel
 #
 
@@ -287,6 +372,23 @@ IBM OpenPower series systems.
 %{devel_notice}
 
 #
+# kernel-power5-latest: Metapackage for latest kernel-power5
+#
+
+%package -n %{kname}-power5-latest
+Summary:	Metapackage for latest %{kname}-power5
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Development/Kernel
+Requires: 	%{kname}-power5-%{mdkversion}
+
+%description -n %{kname}-power5-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-power5 installed...
+
+%{devel_notice}
+
+#
 # kernel-source: kernel sources
 #
 
@@ -313,6 +415,27 @@ http://www.mandriva.com/security/kernelu
 
 %{devel_notice}
 
+#
+# kernel-source-latest: Metapackage for latest kernel-source
+#
+
+%package -n %{kname}-source-latest
+Summary:	Metapackage for latest %{kname}-source
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Development/Kernel
+Requires: 	%{kname}-source-%{mdkversion}
+
+%description -n %{kname}-source-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-source installed...
+
+%{devel_notice}
+
+#
+# kernel-source-stripped: kernel sources
+#
+
 %package -n %{kname}-source-stripped-%{mdkversion}
 Version: %{rpmversion}
 Release: %{rpmrelease}
@@ -335,6 +458,23 @@ doing).
 %{devel_notice}
 
 #
+# kernel-source--stripped-latest: Metapackage for latest kernel-source-stripped
+#
+
+%package -n %{kname}-source-stripped-latest
+Summary:	Metapackage for latest %{kname}-source-stripped
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Development/Kernel
+Requires: 	%{kname}-source-stripped-%{mdkversion}
+
+%description -n %{kname}-source-stripped-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-source-stripped installed...
+
+%{devel_notice}
+
+#
 # kernel-doc: documentation for the Linux kernel
 #
 
@@ -357,6 +497,23 @@ http://www.mandriva.com/security/kernelu
 %{devel_notice}
 
 #
+# kernel-doc-latest: Metapackage for latest kernel-doc
+#
+
+%package -n %{kname}-doc-latest
+Summary:	Metapackage for latest %{kname}-doc
+Version:	%{realversion}
+Release:	%{realrelease}
+Group:		Books/Computer books
+Requires: 	%{kname}-doc-%{mdkversion}
+
+%description -n %{kname}-doc-latest
+This package is a metapackage that aims to make sure you always have the
+latest %{kname}-doc installed...
+
+%{devel_notice}
+
+#
 # End packages - here begins build stage
 #
 %prep
@@ -591,7 +748,7 @@ CreateKernelNoName() {
 # DO it...
 ###
 
-# Create a simulacro of %buildroot
+# Create a simulacro of buildroot
 rm -rf %{temp_root}
 install -d %{temp_root}
 
@@ -867,22 +1024,34 @@ exit 0
 ###
 
 %files -f kernel_files.%{KVERREL}
+%files -n %{kname}-latest
+%defattr(-,root,root)
 
 %if %build_legacy
 %files -n %{kname}-legacy-%{mdkversion} -f kernel_files.%{KVERREL}legacy
+%files -n %{kname}-legacy-latest
+%defattr(-,root,root)
 %endif
 
 %if %build_xen
 %files -n %{kname}-xen0-%{mdkversion} -f kernel_files.%{KVERREL}xen0
 %files -n %{kname}-xenU-%{mdkversion} -f kernel_files.%{KVERREL}xenU
+%files -n %{kname}-xen0-latest
+%defattr(-,root,root)
+%files -n %{kname}-xenU-latest
+%defattr(-,root,root)
 %endif
 
 %if %build_enterprise
 %files -n %{kname}-enterprise-%{mdkversion} -f kernel_files.%{KVERREL}enterprise
+%files -n %{kname}-enterprise-latest
+%defattr(-,root,root)
 %endif
 
 %if %build_power5
 %files -n %{kname}-power5-%{mdkversion} -f kernel_files.%{KVERREL}p5
+%files -n %{kname}-power5-latest
+%defattr(-,root,root)
 %endif
 
 
@@ -960,6 +1129,9 @@ exit 0
 %doc README.kernel-sources
 %doc README.MandrivaLinux
 
+%files -n %{kname}-source-latest
+%defattr(-,root,root)
+
 # source-stripped
 %files -n %{kname}-source-stripped-%{mdkversion}
 %defattr(-,root,root)
@@ -1017,6 +1189,9 @@ exit 0
 %{_kerneldir}/include/xen
 %doc README.kernel-sources
 %doc README.MandrivaLinux
+
+%files -n %{kname}-source-stripped-latest
+%defattr(-,root,root)
 #endif %build_source
 %endif
 
@@ -1024,6 +1199,9 @@ exit 0
 %files -n %{kname}-doc-%{mdkversion}
 %defattr(-,root,root)
 %doc linux-%{tar_version}/Documentation/*
+
+%files -n %{kname}-doc-latest
+%defattr(-,root,root)
 %endif
 
 %changelog

Reply via email to