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:
parent
d06bbe736f
commit
e6402c82e3
|
@ -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.
|
||||
|
|
|
@ -43,7 +43,7 @@ versions:
|
|||
3.2-1
|
||||
|
||||
[commands-image-initramfs-generators]
|
||||
initramfs-tools: mkinitramfs-kpkg
|
||||
initramfs-tools: update-initramfs
|
||||
yaird: mkinitrd.yaird
|
||||
|
||||
[relations]
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue