initramfs-tools: update-initramfs

don't use mkinitramfs-kpkg vestiges.
preinst and postinst needed a bit of surge to not call
the old mkinitramfs-kpkg interfaces. just check which initramfs
binary is around and call them.
 they support all relevant linux-2.6 versions.

svn path=/dists/trunk/linux-2.6/; revision=12828
This commit is contained in:
Maximilian Attems 2009-02-18 01:35:38 +00:00
parent d06bbe736f
commit e6402c82e3
4 changed files with 29 additions and 36 deletions

3
debian/changelog vendored
View File

@ -70,6 +70,9 @@ linux-2.6 (2.6.28-1~experimental.1) UNRELEASED; urgency=low
* [x86_64] set NR_CPUS to 512. (closes: #491309)
* [686-bigmem] set modular XEN_FBDEV_FRONTEND.
* Newer Standards-Version 3.8.0 without changes.
* Use update-initramfs for initramfs-tools.
* Fix preinst and postinst call to not use deprecated mkinitramfs-kpkg
interfaces.
[ Martin Michlmayr ]
* [mips/r4k-ip22, mips/sb1-bcm91250a] Don't build in ISO9660.

View File

@ -43,7 +43,7 @@ versions:
3.2-1
[commands-image-initramfs-generators]
initramfs-tools: mkinitramfs-kpkg
initramfs-tools: update-initramfs
yaird: mkinitrd.yaird
[relations]

View File

@ -956,27 +956,24 @@ if ( -d "$modules_base/$version" ) {
sub find_inird_tool {
my $hostversion = shift;
my $version = shift;
my @ramdisks =
grep {
my $args =
"$_ " .
"--supported-host-version=$hostversion " .
"--supported-target-version=$version " .
"1>/dev/null 2>&1"
;
system($args) == 0;
}
split (/[:,\s]+/, $ramdisk);
my $ramdisk = shift;
my (@ramdisks, $initramfs_cmd);
foreach $initramfs_cmd (split(/[:,\s]+/, $ramdisk)) {
if (system("test -x \"\$(command -v $initramfs_cmd)\"") == 0) {
push(@ramdisks, $initramfs_cmd);
}
}
return @ramdisks;
}
# The initrd symlink should probably be in the same dir that the
# symlinks are in
if ($initrd) {
chomp (my $hostversion = `uname -r`);
my @ramdisklist;
@ramdisklist = find_inird_tool($hostversion, $version, $ramdisk) if $ramdisk;
@ramdisklist = find_inird_tool($ramdisk) if $ramdisk;
die "Failed to find suitable ramdisk generation tool for kernel version \n" .
"$version on running kernel $hostversion in $ramdisk\n"
if $#ramdisklist < 0;
@ -988,15 +985,12 @@ if ($initrd) {
my $initrd_path = $realimageloc . "initrd.img-$version";
my $ret = system("$ramdisk_cmd " .
($mkimage ? "-m '$mkimage' " : "") .
"-o $initrd_path.new $modules_base/$version");
"-c -t -k $version");
if ($ret) {
warn "$ramdisk_cmd failed to create initrd image.\n";
}
else {
rename("$initrd_path.new", "$initrd_path")
or die("Failed to rename initrd ($initrd_path)\n");
$success = 1;
last;
} else {
$success = 1;
last;
}
}
die "Failed to create initrd image.\n" unless $success;

View File

@ -178,19 +178,15 @@ $ENV{KERNEL_ARCH}=$kernel_arch if $kernel_arch;
# this package.
sub find_inird_tool {
my $hostversion = shift;
my $version = shift;
my @ramdisks =
grep {
my $args =
"$_ " .
"--supported-host-version=$hostversion " .
"--supported-target-version=$version " .
"1>/dev/null 2>&1"
;
system($args) == 0;
}
split (/[:,\s]+/, $ramdisk);
my $ramdisk = shift;
my (@ramdisks, $initramfs_cmd);
foreach $initramfs_cmd (split(/[:,\s]+/, $ramdisk)) {
if (system("test -x \"\$(command -v $initramfs_cmd)\"") == 0) {
push(@ramdisks, $initramfs_cmd);
}
}
return @ramdisks;
}
# For some versions of kernel-package, we had this warning in the
@ -202,7 +198,7 @@ $initrd=~ s/^$pattern$//;
if ($initrd) {
chomp (my $hostversion = `uname -r`);
my @ramdisklist;
@ramdisklist = find_inird_tool($hostversion, $version, $ramdisk) if $ramdisk;
@ramdisklist = find_inird_tool($ramdisk) if $ramdisk;
if ($#ramdisklist < 0) {
my $ret;
my $seen;