diff --git a/build-compare.changes b/build-compare.changes index 73cd70f..6c9b86c 100644 --- a/build-compare.changes +++ b/build-compare.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Thu Oct 28 09:49:14 UTC 2010 - aj@suse.de + +- If source file is different, do not compare binaries with check-all. + +------------------------------------------------------------------- +Wed Oct 27 11:59:15 UTC 2010 - aj@suse.de + +- Handle /usr/lib/texmf/doc/man as well + +------------------------------------------------------------------- +Tue Oct 26 19:43:39 UTC 2010 - aj@suse.de + +- Ignore metafont formats. + +------------------------------------------------------------------- +Tue Oct 26 08:37:35 UTC 2010 - aj@suse.de + +- Enable check-all to check for all differences in all packages. + ------------------------------------------------------------------- Fri Oct 22 18:27:48 UTC 2010 - aj@suse.de diff --git a/rpm-check.sh b/rpm-check.sh index 2cf94ef..c3ba7ba 100644 --- a/rpm-check.sh +++ b/rpm-check.sh @@ -103,6 +103,7 @@ case $RES in exit 0 ;; 1) + echo "RPM meta information is different" exit 1 ;; 2) @@ -307,7 +308,7 @@ check_single_file() sed -i -e 's| 3 "20..-..-.." "perl v5....." "User Contributed Perl Documentation"$| 3 "2009-01-01" "perl v5.10.0" "User Contributed Perl Documentation"|' $f done ;; - /usr/share/man/man*/*) + /usr/share/man/man*/*|/usr/lib/texmf/doc/man/*/*) # Handles lines like: # .TH debhelper 7 "2010-02-27" "7.4.15" "Debhelper" # .TH DIRMNGR-CLIENT 1 2010-02-27 "Dirmngr 1.0.3" "GNU Privacy Guard" @@ -337,8 +338,10 @@ check_single_file() sed -i -e 's|Compiled by abuild@.* on ... ... .. ..:..:.. 20..$|compiled by abuild@buildhost on Wed Jul 01 00:00:00 2009|' $f done ;; - /var/lib/texmf/web2c/*/*fmt) - # binary dump of latex formats, we can ignore them for good + /var/lib/texmf/web2c/*/*fmt |\ + /var/lib/texmf/web2c/metafont/*.base|\ + /var/lib/texmf/web2c/metapost/*.mem) + # binary dump of TeX and Metafont formats, we can ignore them for good echo "difference in $file ignored." return 0 ;; diff --git a/same-build-result.sh b/same-build-result.sh index 42b1fa2..8b5a7d2 100644 --- a/same-build-result.sh +++ b/same-build-result.sh @@ -1,9 +1,10 @@ #!/bin/bash # -# Copyright (c) 2009, 2010 SUSE Linux Product Gmbh, Germany. +# Copyright (c) 2009, 2010 SUSE Linux Product GmbH, Germany. # Licensed under GPL v2, see COPYING file for details. # # Written by Adrian Schroeter +# Enhanced by Andreas Jaeger # # The script decides if the new build differes from the former one, # using rpm-check.sh. @@ -13,6 +14,7 @@ CMPSCRIPT=${0%/*}/rpm-check.sh SCMPSCRIPT=${0%/*}/srpm-check.sh +check_all=1 OLDDIR="$1" shift NEWDIRS="$*" @@ -60,6 +62,7 @@ bash $SCMPSCRIPT "$osrpm" "$nsrpm" || exit 1 OLDRPMS=($(find "$OLDDIR" -name \*rpm -a ! -name \*src.rpm -a ! -name \*.delta.rpm|sort|grep -v -- -32bit-|grep -v -- -64bit-|grep -v -- '-x86-.*\.ia64\.rpm')) NEWRPMS=($(find $NEWDIRS -name \*rpm -a ! -name \*src.rpm -a ! -name \*.delta.rpm|sort --field-separator=/ --key=7|grep -v -- -32bit-|grep -v -- -64bit-|grep -v -- '-x86-.*\.ia64\.rpm')) +SUCCESS=1 rpmqp='rpm -qp --qf %{NAME} --nodigest --nosignature ' for opac in ${OLDRPMS[*]}; do npac=${NEWRPMS[0]} @@ -71,7 +74,10 @@ for opac in ${OLDRPMS[*]}; do echo "names differ: $oname $nname" exit 1 fi - bash $CMPSCRIPT "$opac" "$npac" || exit 1 + bash $CMPSCRIPT "$opac" "$npac" || SUCCESS=0 + if test $SUCCESS -eq 0 -a -z "$check_all"; then + exit 1 + fi done if [ -n "${NEWRPMS[0]}" ]; then @@ -79,5 +85,8 @@ if [ -n "${NEWRPMS[0]}" ]; then exit 1 fi -echo compare validated built as identical ! +if test $SUCCESS -eq 0; then + exit 1 +fi +echo 'compare validated built as identical !' exit 0 diff --git a/srpm-check.sh b/srpm-check.sh index 39ef90b..626d8f4 100644 --- a/srpm-check.sh +++ b/srpm-check.sh @@ -66,7 +66,7 @@ check_single_file() sed -i -e "s,Release:.*$release2,Release: @RELEASE@," new/$file if ! cmp -s old/$file new/$file; then echo "$file differs (spec file)" - diff -u old/$file new/$file | head -n 200 + diff -u old/$file new/$file | head -n 20 return 1 fi return 0