diff options
-rw-r--r-- | urpm/args.pm | 29 | ||||
-rwxr-xr-x | urpmf | 47 |
2 files changed, 38 insertions, 38 deletions
diff --git a/urpm/args.pm b/urpm/args.pm index 1b76bfe2..585166f4 100644 --- a/urpm/args.pm +++ b/urpm/args.pm @@ -326,31 +326,10 @@ my %options_spec = ( ); # generate urpmf options callbacks - -foreach my $k (qw( - arch - buildhost - buildtime - conflicts - description - distribution - epoch - filename - files - group - license - obsoletes - packager - provides - requires - size - sourcerpm - suggests - summary - url - vendor -)) { - $options_spec{urpmf}{$k} = add_param_closure($k); +sub add_urpmf_cmdline_tags { + foreach my $k (@_) { + $options_spec{urpmf}{$k} ||= add_param_closure($k); + } } # common options setup @@ -87,6 +87,39 @@ usage: urpmf [options] pattern-expression exit(1); } +my %tags_per_media_info = ( + + synthesis => [ qw( + arch + conflicts + epoch + filename + group + obsoletes + provides + requires + size + suggests + summary + ) ], + + hdlist => [ qw( + buildhost + buildtime + conf_files + description + distribution + files + license + packager + sourcerpm + url + vendor + ) ], +); + +urpm::args::add_urpmf_cmdline_tags(map { @$_ } values %tags_per_media_info); + #- default options. our $env; # bug report directory our $excludemedia = ''; @@ -196,19 +229,7 @@ if ($env) { } my $_lock = urpm::lock::urpmi_db($urpm, '', nofatal => 1, wait => $options{wait_lock}); -my $need_xml = grep { $usedtags{$_} } qw( - buildhost - buildtime - conf_files - description - distribution - files - license - packager - sourcerpm - url - vendor -); +my $need_xml = grep { $usedtags{$_} } @{$tags_per_media_info{hdlist}}; urpm::media::configure($urpm, nocheck_access => 1, no_skiplist => 1, |