summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/standalone.pm11
1 files changed, 8 insertions, 3 deletions
diff --git a/perl-install/standalone.pm b/perl-install/standalone.pm
index e3b7d29e0..4f039745c 100644
--- a/perl-install/standalone.pm
+++ b/perl-install/standalone.pm
@@ -212,6 +212,11 @@ sub check_kernel_module_packages {
$_->name eq $ext_name and $list{$_->name} = 1;
$_->name =~ /$base_name/ and $list{$_->name} = 1;
}
+ foreach (`rpm --qf '\%{NAME}\n' -qa`) {
+ chomp;
+ $_ eq $ext_name and $list{$_} = 1;
+ /$base_name/ and $list{$_} = 1;
+ }
};
if (!$ext_name || $list{$ext_name}) {
eval {
@@ -220,13 +225,13 @@ sub check_kernel_module_packages {
$version_release = "$1.$2";
$ext = $3 ? "-$3" : "";
$list{"$base_name$ext-$version_release"} or die "no $base_name for current kernel";
- $select{"$base_name$ext$version_release"} = 1;
+ $select{"$base_name$ext-$version_release"} = 1;
} else {
#- kernel version is not recognized, what to do ?
}
- foreach (`rpm -qa kernel*`) {
+ foreach (`rpm -qa`) {
($ext, $version_release) = /kernel[^\-]*(-smp|-enterprise|-secure)?(?:-([^\-]+))$/;
- $list{"$base_name$ext$version_release"} and $select{"$base_name$ext$version_release"} = 1;
+ $list{"$base_name$ext-$version_release"} and $select{"$base_name$ext-$version_release"} = 1;
}
$result = [ keys(%select), if_($ext_name, $ext_name) ];
}