From 7690e5cbaa64e6fc0cd4f0bf18e393740343407a Mon Sep 17 00:00:00 2001 From: Francois Pons Date: Thu, 6 Mar 2003 15:21:56 +0000 Subject: added check_kernel_module_packages for checking prioprietary base kernel package. --- perl-install/install_any.pm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm index cdfb7e19b..10046bae1 100644 --- a/perl-install/install_any.pm +++ b/perl-install/install_any.pm @@ -1179,6 +1179,25 @@ sub ensure_is_installed { 1; } +sub check_kernel_module_packages { + my ($do, $base_name, $ext_name) = @_; + + if (!$ext_name || pkgs::packageByName($do->{o}{packages}, $ext_name)) { + my @rpms; + foreach my $p (@{$do->{o}{packages}{depslist}}) { + my ($ext, $version, $release) = $p->name =~ /kernel[^-]*(-smp|-enterprise|-secure)?(?:-(\d+\.\d+\.\d+)\.(\d+mdk))?$/ + or next; + $p->flag_available or next; + $version or ($version, $release) = ($p->version, $p->release); + my $name = "$base_name$version-$release$ext"; + pkgs::packageByName($do->{o}{packages}, $name) or next; + push @rpms, $name; + } + @rpms > 0 and return [ @rpms, if_($ext_name, $ext_name) ]; + } + return undef; +} + sub what_provides { my ($do, $name) = @_; map { $do->{o}{packages}{depslist}[$_]->name } keys %{$do->{o}{packages}{provides}{$name} || {}}; -- cgit v1.2.1