r4626 - dists/trunk/utils/kernel-package/kernel
Sven Luther
luther at costa.debian.org
Mon Oct 24 07:52:52 UTC 2005
Author: luther
Date: 2005-10-24 07:52:51 +0000 (Mon, 24 Oct 2005)
New Revision: 4626
Modified:
dists/trunk/utils/kernel-package/kernel/image.postinst
Log:
Now that the tools return 2, let's do the pruning with fallback for all
elements of the list.
Modified: dists/trunk/utils/kernel-package/kernel/image.postinst
===================================================================
--- dists/trunk/utils/kernel-package/kernel/image.postinst 2005-10-24 07:18:39 UTC (rev 4625)
+++ dists/trunk/utils/kernel-package/kernel/image.postinst 2005-10-24 07:52:51 UTC (rev 4626)
@@ -973,45 +973,35 @@
# symlinks are in
if ($initrd) {
chomp (my $hostversion = `uname -r`);
- my @ramdisklist = split (/ /, $ramdisk);
- if (@ramdisklist == 1) {
- if (!( -x $ramdisk)) {
- die ("Failed to create initrd, $ramdisk does not exist or is not executable\n");
+ my @ramdisklist =
+ grep {
+ my $ret = system ("$_ --supported-host-version=$hostversion --supported-target-version=$version 1>/dev/null 2>&1");
+ -x and (
+ $ret == 0 or (
+ $ret == 1 and (
+ (($ramdisk eq "/usr/sbin/mkinitrd") and
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.13") == 1)) or
+ (($ramdisk eq "/usr/sbin/mkinitramfs") and
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.12") == 0)) or
+ (($ramdisk eq "/usr/sbin/mkinitrd.yaird") and
+ (system ("dpkg", "--compare-versions", "$version", "lt", "2.6.8") == 0) and
+ (system ("dpkg", "--compare-versions", "$hostversion", "lt", "2.6.8") == 0))
+ )
+ )
+ )
}
- 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));
+ (split (/ /, $ramdisk));
- my $ramdiskorig = $ramdisk;
- defined ($ramdisk = shift @ramdisklist)
- or die ("Failed to find suitable ramdisk generation tool for kernel version $version on running kernel $hostversion in $ramdiskorig\n");
+ my $ramdiskorig = $ramdisk;
+ defined ($ramdisk = shift @ramdisklist)
+ or die ("Failed to find suitable ramdisk generation tool for kernel version $version on running kernel $hostversion in $ramdiskorig\n");
- print STDERR <<"EOFIMG";
+ print STDERR <<"EOFIMG";
Using $ramdisk to build the ramdisk.
Other suitable ramdisk generating tools : @ramdisklist.
Full list of probed ramdisk generating tools : $ramdiskorig.
EOFIMG
- ;
- }
+ ;
my $initrd_path = $realimageloc . "initrd.img-$version";
my $ret = system("$ramdisk " .
($mkimage ? "-m '$mkimage' " : "") .
More information about the Kernel-svn-changes
mailing list