X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=runner%2Fadt-testreport-onepackage;h=87d33a7b935f5bc9e55598a4c48730354ec62f86;hb=9ec27e1871f68419ffab18530a4de36811f90898;hp=0839e5a26d31c5fd1fe0a88da4ef6211eeb94f2d;hpb=55825a83df8486c69676eceb9b89d810793970c8;p=autopkgtest.git diff --git a/runner/adt-testreport-onepackage b/runner/adt-testreport-onepackage index 0839e5a..87d33a7 100755 --- a/runner/adt-testreport-onepackage +++ b/runner/adt-testreport-onepackage @@ -76,6 +76,12 @@ now=`date +%s` progress selecting +if test $target = source; then + blacklist="$blacklistsourcepackages" +else + blacklist="$blacklistbinarypackages" +fi + if [ "x$pkg" = x ]; then pkg="`perl -e ' use IO::Handle; @@ -93,17 +99,19 @@ if [ "x$pkg" = x ]; then printf SCORE "%$_[1]s", $_[0] or die $!; } - $suppresspackages= "'"$suppresspackages"'"; - if (length $suppresspackages) { - unshift @ARGV, $suppresspackages; f1(); + sub readpkglist ($$) { + my ($arrayref, $filename) = @_; + return unless length $filename; + unshift @ARGV, $filename; f1(); while () { next if m/^\#/ or !m/\S/; die unless m/^($pre)\s*$/; -#print STDERR "SUPPRESS GOT $1\n"; - $suppress{$1}= 1; + $arrayref->{$1}= 1; } f2(); } + readpkglist(\%suppress, "'"$suppresspackages"'"); + readpkglist(\%blacklist, "'"$blacklist"'"); f1(); while () { @@ -116,7 +124,8 @@ if [ "x$pkg" = x ]; then f1(); $best_score= -2e9; sub scorepackage () { - return if $skip; + return if length $skip; + return if $blacklist{$package}; return if $score < $best_score or ($score==$best_score and \ $package gt $best_package); @@ -159,7 +168,9 @@ if [ "x$pkg" = x ]; then $score -= 2e7; $scorechars.="s"; } - pscore("-$scorechars",-5); + $scorechars.="[$skip]" if length $skip; + + pscore("-$scorechars",-7); pscore("$score",10); #print STDERR "SCORE package=$package score $score source=$source\n"; @@ -183,7 +194,7 @@ if [ "x$pkg" = x ]; then } elsif (m/^Architecture:.*/ && !m/\s(?:'$arch'|all|any)\s/) { #printf STDERR " <----- skip %s %s\n", $&, "'$arch'"; - $skip= 1; + $skip .= 'a'; } elsif (m/^$/) { endpackage(); } @@ -324,7 +335,7 @@ esac progress "RESULTS $summary" if [ "x$suppresspackages" != x ] \ - && grep -x "$pkg" "$suppresspackages" >/dev/null; then + && grep -x "$src" "$suppresspackages" >/dev/null; then printf >&3 "email-suppressed " email='' fi