$build_priority, %new_vers, $binNMUver, %merge_srcvers, %merge_binsrc,
$printformat, $ownprintformat, $privmode
);
+our $Pas = '/org/buildd.debian.org/etc/packages-arch-specific/Packages-arch-specific';
our $simulate = 0;
# global vars
my %options =
(# flags
+ simulate => { flag => \$simulate }, # this is not supported by all operations (yet)!
verbose => { short => "v", flag => \$verbose },
override => { short => "o", flag => \$opt_override },
"create-db" => { flag => \$opt_create_db },
} },
"format" => { arg => \$printformat },
"own-format" => { arg => \$ownprintformat },
+ "Pas" => { arg => \$Pas },
# special actions
export => { arg => \$export_to, mode => "export" },
import => { arg => \$import_from, mode => "import" },
# call with installed-packages+ . installed-sources+ [ . available-for-build-packages+ ]
# in case available-for-build-packages is not specified, installed-packages are used
lock_table() unless $simulate;
+ my $replacemap = { '%ARCH%' => $arch, '%SUITE%' => $distribution };
+ map { my $k = $_; grep { $k =~ s,$_,$replacemap->{$_}, } keys %{$replacemap}; $_ = $k; } @ARGV;
my @ipkgs = &parse_argv( \@ARGV, '.');
my @isrcs = &parse_argv( \@ARGV, '.');
my @bpkgs = &parse_argv( \@ARGV, '.');
use WB::QD;
- my $srcs = WB::QD::readsourcebins($arch, '/org/buildd.debian.org/etc/packages-arch-specific/Packages-arch-specific', \@isrcs, \@ipkgs);
+ my $srcs = WB::QD::readsourcebins($arch, $Pas, \@isrcs, \@ipkgs);
parse_all_v3($$srcs);
@bpkgs = @ipkgs unless @bpkgs;
call_edos_depcheck( {'arch' => $arch, 'pkgs' => @bpkgs, 'srcs' => $$srcs, 'depwait' => 1 });
}
if ($change) {
log_ta( $pkg, "--merge-all (edos)" ) unless $simulate;
- print "edos-builddebchange changed state of ${key}_$pkg->{'version'} to $pkg->{'state'}\n" if $verbose || $simulate;
+ print "edos-builddebchange changed state of ${key}_$pkg->{'version'} ($args->{'arch'}) to $pkg->{'state'}\n" if $verbose || $simulate;
}
if ($change || $problemchange) {
update_source_info($pkg) unless $simulate;
for my $key (keys %interesting_packages_depwait) {
if ($interesting_packages_depwait{$key}) {
- print "dependency on $key not fullfiled yet\n" if $verbose || $simulate;
+ print "dep-wait for $key ($args->{'arch'}) not fullfiled yet\n" if $verbose || $simulate;
next;
}
my $pkg = $db->{$key};
}
log_ta( $pkg, "edos_depcheck: depwait" ) unless $simulate;
update_source_info($pkg) unless $simulate;
- print "edos-builddebchange changed state of ${key}_$pkg->{'version'} to $pkg->{'state'}\n" if $verbose || $simulate;
+ print "edos-builddebchange changed state of ${key}_$pkg->{'version'} ($args->{'arch'}) from dep-wait to $pkg->{'state'}\n" if $verbose || $simulate;
}
}
# does at least one binary exist in the database and is more recent - if so, we're probably just outdated, ignore the source package
for my $bin (@{$pkgs->{'binary'}}) {
if ($binary->{$bin} and vercmp($pkgs->{'version'}, $binary->{$bin}) < 0) {
- print "merge-v3: skiping $name\n" if $verbose;
+ print "merge-v3: skiping $name ($arch)\n" if $verbose || $simulate;
next SRCS;
}
}
+ $pkg->{'package'} = $name;
}
if ($pkgs->{'status'} eq 'installed' && $pkg->{'binary_nmu_version'} && $pkgs->{'binnmu'} < $pkg->{'binary_nmu_version'}) {
$pkg->{'binary_nmu_version'} = $pkgs->{'binnmu'};
$pkg->{'section'} = $pkgs->{'section'};
$pkg->{'priority'} = $pkgs->{'priority'};
- print "should set $name to installed\n" if $simulate;
+ print "merge-v3: set $name ($arch) to installed\n" if $verbose || $simulate;
log_ta( $pkg, "--merge-v3: installed" ) unless $simulate;
- update_source_info($pkg) unless $simulate;
+ update_source_info($pkg) unless $simulate;
}
next;
}
delete $pkg->{'binary_nmu_changelog'};
log_ta( $pkg, "--merge-v3: needs-build" ) unless $simulate;
update_source_info($pkg) unless $simulate;
- print "$name ($pkgs->{'version'}) needs rebuilding now.\n" if $verbose || $simulate;
+ print "$name ($pkgs->{'version'} / $arch) needs rebuilding now.\n" if $verbose || $simulate;
}
foreach my $name (keys %$db) {
# package disappeared - delete
change_state( \$pkg, 'deleted' );
log_ta( $pkg, "--merge-v3: deleted" ) unless $simulate;
- print "$name ($pkg->{'version'}): deleted from database\n" if $verbose || $simulate;
+ print "$name ($pkg->{'version'} / $arch) deleted from database\n" if $verbose || $simulate;
del_source_info($name) unless $simulate;
delete $db->{$name};
}