aboutsummaryrefslogtreecommitdiffstats
path: root/iurt2
diff options
context:
space:
mode:
Diffstat (limited to 'iurt2')
-rwxr-xr-xiurt212
1 files changed, 8 insertions, 4 deletions
diff --git a/iurt2 b/iurt2
index b547109..2befb78 100755
--- a/iurt2
+++ b/iurt2
@@ -206,6 +206,9 @@ $run{todo} = [];
[ "m", "media", -1, "<media 1> <media 2> ... <media 3>",
"Media to rebuild",
sub { ($run{media}) = @_; 1 }, "Adding a media to rebuild" ],
+ [ "", "build-all", 0, "",
+ "Build all packages of the media, even if they are up to date",
+ sub { $run{build_all} = 1 }, "Setting the full build flag" ],
[ "n", "no", 0, "",
"Perform all the check but do not compile anything",
sub { ($run{no_compile}) = 1 }, "Setting the no compilation flag" ],
@@ -840,7 +843,7 @@ do {
$status or next;
$done{$srpm} and next;
$done{$srpm} = 1;
- check_version($srpm, \%srpm_version) or next;
+ check_version(\%run, $srpm, \%srpm_version) or next;
if ($run{debug}) { $run{debug}++ == 2 and exit() }
$done++;
plog('NOTIFY', "Build package $srpm [$done/$to_compile]");
@@ -1222,8 +1225,9 @@ sub process_queue {
}
sub check_version {
- my ($srpm, $srpm_version) = @_;
+ my ($run, $srpm, $srpm_version) = @_;
my ($srpm_name) = $srpm =~ /(.*)-[^-]+-[^-]+\.src\.rpm/;
+ $run->{build_all} and return 1;
if (URPM::ranges_overlap("= $srpm", ">= $srpm_version->{$srpm_name}")) {
$srpm_version->{$srpm_name} = $srpm;
return 1;
@@ -1332,7 +1336,7 @@ sub check_media {
$rarch or next;
$cache->{queue}{$srpm} = 1;
$run{status}{$srpm} = 'ok';
- check_version($srpm, $srpm_version);
+ check_version($run, $srpm, $srpm_version);
}
closedir $rpmdir;
}
@@ -1398,7 +1402,7 @@ sub search_packages {
$run->{status}{$srpm} ||= 0;
if ($config->{unwanted_packages} && $srpm =~ /$config->{unwanted_packages}/) { next }
my $ok = 1;
- if (check_version($srpm, $srpm_version)) {
+ if (check_version($run, $srpm, $srpm_version)) {
if (!$run->{ignore_failure} && defined $cache->{failure}{$srpm}) {
$run->{status}{$srpm} = 'build_failure';
next;