summaryrefslogtreecommitdiffstats
path: root/perl-install/modules.pm
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2002-03-05 12:08:27 +0000
committerPascal Rigaux <pixel@mandriva.com>2002-03-05 12:08:27 +0000
commitdf1468d3138a89ca912b43247020e5ff22432986 (patch)
treefc206e7efe9dba9a0a4afb6c8ff95cf72889f7e0 /perl-install/modules.pm
parent074103348a5075041505f4d5240fa7fb3906f0d2 (diff)
downloaddrakx-df1468d3138a89ca912b43247020e5ff22432986.tar
drakx-df1468d3138a89ca912b43247020e5ff22432986.tar.gz
drakx-df1468d3138a89ca912b43247020e5ff22432986.tar.bz2
drakx-df1468d3138a89ca912b43247020e5ff22432986.tar.xz
drakx-df1468d3138a89ca912b43247020e5ff22432986.zip
(extract_modules): created (was done in load_raw)
Diffstat (limited to 'perl-install/modules.pm')
-rw-r--r--perl-install/modules.pm11
1 files changed, 8 insertions, 3 deletions
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index aa2188471..54bfbbe10 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -590,8 +590,8 @@ sub cz_file {
"/lib/modules" . (arch() eq 'sparc64' && "64") . ".cz-" . c::kernel_version();
}
-sub load_raw {
- my @l = map { my ($i, @i) = @$_; [ $i, \@i ] } grep { $_->[0] !~ /ignore/ } @_;
+sub extract_modules {
+ my ($dir, @modules) = @_;
my $cz = cz_file();
if (!-e $cz) {
unlink $_ foreach glob_("/lib/modules*.cz*");
@@ -601,8 +601,13 @@ sub load_raw {
eval {
require packdrake;
my $packer = new packdrake($cz, quiet => 1);
- $packer->extract_archive("/tmp", map { "$_->[0].o" } @l);
+ $packer->extract_archive($dir, map { "$_.o" } @modules);
};
+}
+
+sub load_raw {
+ my @l = map { my ($i, @i) = @$_; [ $i, \@i ] } grep { $_->[0] !~ /ignore/ } @_;
+ extract_modules('/tmp', map { $_->[0] } @l);
my @failed = grep {
my $m = "/tmp/$_->[0].o";
if (-e $m && run_program::run(["/usr/bin/insmod_", "insmod"], '2>', '/dev/tty5', $m, @{$_->[1]})) {