From faa9a76e3bbe293893a7ad95ffb8a43199f9bc6d Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Tue, 20 Jan 2004 11:49:48 +0000 Subject: kernel 2.6 .ko adaptation --- perl-install/modules.pm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'perl-install/modules.pm') diff --git a/perl-install/modules.pm b/perl-install/modules.pm index c4e6186ae..8252057ce 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -360,6 +360,13 @@ sub read_already_loaded() { when_load($_) foreach reverse loaded_modules(); } +my $module_extension = c::kernel_version() =~ /^\Q2.4/ ? 'o' : 'ko'; + +sub name2file { + my ($name) = @_; + "$name.$module_extension"; +} + sub when_load { my ($name, @options) = @_; @@ -402,7 +409,8 @@ sub extract_modules { eval { require packdrake; my $packer = new packdrake($cz, quiet => 1); - $packer->extract_archive($dir, map { "$_.o" } @modules); + $packer->extract_archive($dir, map { name2file($_) } @modules); + map { $dir . '/' . name2file($_) } @modules; }; } @@ -411,7 +419,7 @@ sub load_raw { extract_modules('/tmp', map { $_->[0] } @l); my @failed = grep { - my $m = "/tmp/$_->[0].o"; + my $m = '/tmp/' . name2file($_->[0]); if (-e $m && run_program::run(["/usr/bin/insmod_", "insmod"], '2>', '/dev/tty5', $m, @{$_->[1]})) { unlink $m; ''; -- cgit v1.2.1