summaryrefslogtreecommitdiffstats
path: root/perl-install/install_any.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/install_any.pm')
-rw-r--r--perl-install/install_any.pm13
1 files changed, 11 insertions, 2 deletions
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index a686706b2..edc1d9b8c 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -3,7 +3,7 @@ package install_any; # $Id$
use diagnostics;
use strict;
-use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @needToCopy);
+use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @needToCopy @needToCopyIfRequiresSatisfied);
@ISA = qw(Exporter);
%EXPORT_TAGS = (
@@ -36,6 +36,10 @@ XFree86 XFree86-glide-module Device3DFX Glide_V3-DRI Glide_V5 Mesa
dhcpcd pump dhcpxd dhcp-client isdn4net isdn4k-utils dev pptp-adsl-fr rp-pppoe ppp ypbind
rhs-printfilters lpr cups cups-drivers pnm2ppa Lexmark-1100-printer-driver__lm1100 samba ncpfs
);
+#- package that have to be copied only if all their requires are satisfied.
+@needToCopyIfRequiresSatisfied = qw(
+xpp kups
+);
#-######################################################################################
#- Media change variables&functions
@@ -172,8 +176,13 @@ sub setup_postinstall_rpms($$) {
my $pkg = pkgs::packageByName($packages, $_);
pkgs::selectPackage($packages, $pkg, 0, \%toCopy) if $pkg;
}
+ foreach (@needToCopyIfRequiresSatisfied) {
+ my $pkg = pkgs::packageByName($packages, $_);
+ my %newSelection; pkgs::selectPackage($packages, $pkg, 0, \%newSelection) if $pkg;
+ scalar(keys %newSelection) == 1 and @toCopy{keys %newSelection} = ();
+ }
- my @toCopy; push @toCopy, map { pkgs::packageByName($packages, $_) } keys %toCopy;
+ my @toCopy = map { pkgs::packageByName($packages, $_) } keys %toCopy;
#- extract headers of package, this is necessary for getting
#- the complete filename of each package.