aboutsummaryrefslogtreecommitdiffstats
path: root/URPM/Resolve.pm
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2003-12-09 19:40:02 +0000
committerFrancois Pons <fpons@mandriva.com>2003-12-09 19:40:02 +0000
commit050622c35226e11ed6f1896777b37e479f6dad94 (patch)
tree1b6aeac3037d0dd3e5560cb216bb49e13c65e6f3 /URPM/Resolve.pm
parent6f1934d7f1c38db5fbf9d9b23178d60b606b94d3 (diff)
downloadperl-URPM-050622c35226e11ed6f1896777b37e479f6dad94.tar
perl-URPM-050622c35226e11ed6f1896777b37e479f6dad94.tar.gz
perl-URPM-050622c35226e11ed6f1896777b37e479f6dad94.tar.bz2
perl-URPM-050622c35226e11ed6f1896777b37e479f6dad94.tar.xz
perl-URPM-050622c35226e11ed6f1896777b37e479f6dad94.zip
added support for RH 7.3
Diffstat (limited to 'URPM/Resolve.pm')
-rw-r--r--URPM/Resolve.pm18
1 files changed, 9 insertions, 9 deletions
diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm
index 30849cd..853f0df 100644
--- a/URPM/Resolve.pm
+++ b/URPM/Resolve.pm
@@ -413,7 +413,7 @@ sub resolve_requested {
#- take the best choice possible.
my @chosen = $urpm->find_chosen_packages($db, $state, $dep->{required});
-
+
#- if no choice are given, this means that nothing possible can be selected
#- according to $dep, we need to retry the selection allowing all packages that
#- conflicts or anything similar to see which strategy can be tried.
@@ -474,7 +474,7 @@ sub resolve_requested {
exists $dep->{psel} ? (psel => $dep->{psel}) : @{[]},
$pkg->flag_disable_obsolete ? (install => 1) : @{[]},
};
-
+
$pkg->set_flag_required;
#- check if package is not already installed before trying to use it, compute
@@ -502,18 +502,18 @@ sub resolve_requested {
#- examine rpm db too (but only according to packages name as a fix in rpm itself)
$db->traverse_tag('name', [ $n ], sub {
my ($p) = @_;
-
+
#- without an operator, anything (with the same name) is matched.
#- with an operator, check with package EVR with the obsoletes EVR.
my $satisfied = !$o || eval($p->compare($v) . $o . 0);
$p->name eq $pkg->name || $satisfied or return;
-
+
#- do not propagate now the broken dependencies as they are
#- computed later.
my $rv = $state->{rejected}{$p->fullname} ||= {};
$rv->{closure}{$pkg->fullname} = undef;
$rv->{size} = $p->size;
-
+
if ($p->name eq $pkg->name) {
#- all packages older than the current one are obsoleted,
#- the others are simply removed (the result is the same).
@@ -546,7 +546,7 @@ sub resolve_requested {
});
}
}
-
+
push @diff_provides, map { +{ name => $_, pkg => $pkg } } keys %diff_provides;
}
@@ -555,12 +555,12 @@ sub resolve_requested {
exists $dep->{promote} ? (promote => $dep->{promote}) : @{[]},
exists $dep->{psel} ? (psel => $dep->{psel}) : @{[]},
} } $urpm->unsatisfied_requires($db, $state, $pkg);
-
+
#- keep in mind what is requiring each item (for unselect to work).
foreach ($pkg->requires_nosense) {
$state->{whatrequires}{$_}{$pkg->id} = undef;
}
-
+
#- examine conflicts, an existing package conflicting with this selection should
#- be upgraded to a new version which will be safe, else it should be removed.
foreach ($pkg->conflicts) {
@@ -638,7 +638,7 @@ sub resolve_requested {
}
}
});
-
+
#- keep existing package and therefore cancel current one.
if (@keep) {
unshift @properties, $urpm->backtrack_selected($db, $state, +{ keep => \@keep, psel => $pkg }, %options);