summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2011-01-19 20:33:49 +0000
committerCaolán McNamara <caolanm@redhat.com>2011-01-19 20:33:49 +0000
commit3b1a33287a714fcc4c531181f47a79a2dc559f53 (patch)
treebd826718bbd3a3a58c5dfbe7414caa88686415bc /solenv
parent8f9ab92e25808922af0070f2c778ea2a2aa108eb (diff)
use new differentiated dmake return value to decide if regenerate dependencies
Diffstat (limited to 'solenv')
-rwxr-xr-xsolenv/bin/build.pl5
1 files changed, 3 insertions, 2 deletions
diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl
index 5e424dfd6252..5865dda2d0dd 100755
--- a/solenv/bin/build.pl
+++ b/solenv/bin/build.pl
@@ -785,8 +785,9 @@ sub dmake_dir {
$error_code = run_job($dmake, $job_name);
#if dmake fails, have a go at regenerating the dependencies
- #and try again
- if ($error_code && ($ENV{nodep} eq '') && ($ENV{depend} eq '')) {
+ #and try again. dmakes normal failure is 255, while death on signal is 254
+ my $real_exit_code = $error_code >> 8;
+ if (($real_exit_code == 255) && ($ENV{nodep} eq '') && ($ENV{depend} eq '')) {
print "Forcing regeneration of dependency info\n";
$ENV{depend} = 't';
run_job($dmake, $job_name);