From 256b6a30b5af407288cf3c3eaa857922d30e2a30 Mon Sep 17 00:00:00 2001 From: Rafael Garcia-Suarez Date: Fri, 20 May 2005 05:52:25 +0000 Subject: Implement -RR in urpmq to search through virtual packages as well. (bug 15895) --- man/C/urpmq.8 | 3 ++- urpm/args.pm | 2 +- urpmq | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/man/C/urpmq.8 b/man/C/urpmq.8 index 7866518b..a397ecb3 100644 --- a/man/C/urpmq.8 +++ b/man/C/urpmq.8 @@ -115,7 +115,8 @@ Search in provides to find package (this is the opposite of \fB-P\fP). Do not search in provides to find package (this is the opposite of \fB-p\fP and is the default). .IP "\fB\-R\fP" -Reverse search to what requires the package given. +Reverse search to what requires the package given. If you specify this option +twice, looks also through virtual packages to find the dependencies. .IP "\fB\-y\fP" This is the same as \fB--fuzzy\fP. .IP "\fB\-Y\fP" diff --git a/urpm/args.pm b/urpm/args.pm index 44742a9b..af7d02ef 100644 --- a/urpm/args.pm +++ b/urpm/args.pm @@ -216,7 +216,7 @@ my %options_spec = ( g => \$options{group}, p => \$options{use_provides}, P => sub { $options{use_provides} = 0 }, - R => \$options{what_requires}, + R => sub { ++$options{what_requires} }, y => sub { $options{fuzzy} = $options{all} = 1 }, Y => sub { $options{fuzzy} = $options{all} = $options{caseinsensitive} = 1 }, v => \$options{verbose}, diff --git a/urpmq b/urpmq index c212cde0..a1d4cca1 100755 --- a/urpmq +++ b/urpmq @@ -85,6 +85,7 @@ usage: ") . N(" -p - search in provides to find package. ") . N(" -r - print version and release with name also. ") . N(" -R - reverse search to what requires package. +") . N(" -RR - extended reverse search (includes virtual packages). ") . N(" -s - next package is a source package (same as --src). ") . N(" -u - remove package if a more recent version is already installed. ") . N(" -v - verbose mode. @@ -260,7 +261,7 @@ if ($urpm::args::options{list_aliases}) { #- NOTE. if the "provides" has no version specification, we happily #- assume that it can be skipped, because it most probably refers #- to a virtual package. - next if $s eq ''; + next if $s eq '' && $urpm::args::options{what_requires} <= 1; foreach (map { $urpm->{depslist}[$_] } grep { ! exists $state->{selected}{$_} && ! exists $properties{$_} } keys %{$requires{$n} || {}}) { -- cgit v1.2.1