r4614 - dists/trunk/utils/kernel-package/kernel
Sven Luther
luther at costa.debian.org
Sun Oct 23 14:32:01 UTC 2005
Author: luther
Date: 2005-10-23 14:32:00 +0000 (Sun, 23 Oct 2005)
New Revision: 4614
Modified:
dists/trunk/utils/kernel-package/kernel/image.preinst
Log:
Adapted the same to the preinst also.
Modified: dists/trunk/utils/kernel-package/kernel/image.preinst
===================================================================
--- dists/trunk/utils/kernel-package/kernel/image.preinst 2005-10-23 14:28:55 UTC (rev 4613)
+++ dists/trunk/utils/kernel-package/kernel/image.preinst 2005-10-23 14:32:00 UTC (rev 4614)
@@ -182,15 +182,37 @@
if ($initrd) {
chomp (my $hostversion = `uname -r`);
- my @ramdisklist =
- grep {
- -x and
- system ("$_ --supported-host-version=$hostversion --supported-target-version=$version 1>/dev/null 2>&1") == 0
+ my @ramdisklist = split (/ /, $ramdisk);
+ if (@ramdisklist == 1) {
+ if (!( -x $ramdisk)) {
+ die ("Failed to create initrd, $ramdisk does not exist or is not executable\n");
}
- (split (/ /, $ramdisk));
+ if (system ("$ramdisk --supported-host-version=$hostversion --supported-target-version=$version 1>/dev/null 2>&1") != 0) {
+ if (($ramdisk eq "/usr/sbin/mkinitrd") &&
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.13") == 1)) {
+ die ("Failed, initrd-tools cannot create ramdisks for kernel version greater than 2.6.12\n");
+ }
+ if (($ramdisk eq "/usr/sbin/mkinitrd") &&
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.12") == 0)) {
+ die ("Failed, initramfs-tools cannot create ramdisks for kernel version prior to 2.6.12\n");
+ }
+ if (($ramdisk eq "/usr/sbin/mkinitrd.yaird") &&
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.8") == 0) &&
+ (system ("dpkg", "--compare-versions", "$hostversion", "lt", "2.6.8") == 0)) {
+ die ("Failed, yaird cannot create ramdisks for kernel version lesser than 2.6.8 or running on kernels older than 2.6.8\n");
+ }
+ }
+ } else {
+ my @ramdisklist =
+ grep {
+ -x and
+ system ("$_ --supported-host-version=$hostversion --supported-target-version=$version 1>/dev/null 2>&1") == 0
+ }
+ (split (/ /, $ramdisk));
- my $ramdiskorig = $ramdisk;
- $ramdisk = shift @ramdisklist;
+ my $ramdiskorig = $ramdisk;
+ $ramdisk = shift @ramdisklist;
+ }
if (! -e $ramdisk) {
print STDERR <<EOERROR;
More information about the Kernel-svn-changes
mailing list