- Compare also supplements and recomments (issue#18)
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Tools/build-compare?expand=0&rev=238
This commit is contained in:
parent
ca41c23878
commit
52093351ac
@ -1,3 +1,8 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 27 12:05:25 UTC 2017 - olaf@aepfle.de
|
||||||
|
|
||||||
|
- Compare also supplements and recomments (issue#18)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Mar 31 13:44:11 UTC 2017 - olaf@aepfle.de
|
Fri Mar 31 13:44:11 UTC 2017 - olaf@aepfle.de
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Summary: Build Result Compare Script
|
|||||||
License: GPL-2.0+
|
License: GPL-2.0+
|
||||||
Group: Development/Tools/Building
|
Group: Development/Tools/Building
|
||||||
Url: https://github.com/openSUSE/build-compare
|
Url: https://github.com/openSUSE/build-compare
|
||||||
Version: 20170331T154431.96db83e
|
Version: 20170727T140623.5b2169e
|
||||||
Release: 0
|
Release: 0
|
||||||
Source1: COPYING
|
Source1: COPYING
|
||||||
Source2: same-build-result.sh
|
Source2: same-build-result.sh
|
||||||
|
@ -21,6 +21,8 @@ QF_PROVIDES="[%{PROVIDENAME} %{PROVIDEFLAGS} %{PROVIDEVERSION}\\n]\\n"
|
|||||||
QF_PROVIDES="${QF_PROVIDES}[%{REQUIRENAME} %{REQUIREFLAGS} %{REQUIREVERSION}\\n]\\n"
|
QF_PROVIDES="${QF_PROVIDES}[%{REQUIRENAME} %{REQUIREFLAGS} %{REQUIREVERSION}\\n]\\n"
|
||||||
QF_PROVIDES="${QF_PROVIDES}[%{CONFLICTNAME} %{CONFLICTFLAGS} %{CONFLICTVERSION}\\n]\\n"
|
QF_PROVIDES="${QF_PROVIDES}[%{CONFLICTNAME} %{CONFLICTFLAGS} %{CONFLICTVERSION}\\n]\\n"
|
||||||
QF_PROVIDES="${QF_PROVIDES}[%{OBSOLETENAME} %{OBSOLETEFLAGS} %{OBSOLETEVERSION}\\n]\\n"
|
QF_PROVIDES="${QF_PROVIDES}[%{OBSOLETENAME} %{OBSOLETEFLAGS} %{OBSOLETEVERSION}\\n]\\n"
|
||||||
|
QF_PROVIDES="${QF_PROVIDES}[%{RECOMMENDNAME} %{RECOMMENDFLAGS} %{RECOMMENDVERSION}\\n]\\n"
|
||||||
|
QF_PROVIDES="${QF_PROVIDES}[%{SUPPLEMENTNAME} %{SUPPLEMENTFLAGS} %{SUPPLEMENTVERSION}\\n]\\n"
|
||||||
|
|
||||||
# don't look at RELEASE, it contains our build number
|
# don't look at RELEASE, it contains our build number
|
||||||
QF_TAGS="%{NAME} %{VERSION} %{EPOCH}\\n"
|
QF_TAGS="%{NAME} %{VERSION} %{EPOCH}\\n"
|
||||||
|
221
pkg-diff.sh
221
pkg-diff.sh
@ -7,6 +7,10 @@
|
|||||||
# Enhanced by Andreas Jaeger
|
# Enhanced by Andreas Jaeger
|
||||||
|
|
||||||
FUNCTIONS=${0%/*}/functions.sh
|
FUNCTIONS=${0%/*}/functions.sh
|
||||||
|
: ${buildcompare_head:="head -n 200"}
|
||||||
|
nofilter=${buildcompare_nofilter}
|
||||||
|
sort=sort
|
||||||
|
[[ $nofilter ]] && sort=cat
|
||||||
|
|
||||||
check_all=
|
check_all=
|
||||||
case $1 in
|
case $1 in
|
||||||
@ -114,9 +118,107 @@ function unjar_l()
|
|||||||
filter_disasm()
|
filter_disasm()
|
||||||
{
|
{
|
||||||
local file=$1
|
local file=$1
|
||||||
|
[[ $nofilter ]] && return
|
||||||
sed -i -e 's/^ *[0-9a-f]\+://' -e 's/\$0x[0-9a-f]\+/$something/' -e 's/callq *[0-9a-f]\+/callq /' -e 's/# *[0-9a-f]\+/# /' -e 's/\(0x\)\?[0-9a-f]\+(/offset(/' -e 's/[0-9a-f]\+ </</' -e 's/^<\(.*\)>:/\1:/' -e 's/<\(.*\)+0x[0-9a-f]\+>/<\1 + ofs>/' ${file}
|
sed -i -e 's/^ *[0-9a-f]\+://' -e 's/\$0x[0-9a-f]\+/$something/' -e 's/callq *[0-9a-f]\+/callq /' -e 's/# *[0-9a-f]\+/# /' -e 's/\(0x\)\?[0-9a-f]\+(/offset(/' -e 's/[0-9a-f]\+ </</' -e 's/^<\(.*\)>:/\1:/' -e 's/<\(.*\)+0x[0-9a-f]\+>/<\1 + ofs>/' ${file}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
filter_zip_flist()
|
||||||
|
{
|
||||||
|
local file=$1
|
||||||
|
[[ $nofilter ]] && return
|
||||||
|
# 10-05-2010 14:39
|
||||||
|
sed -i -e "s, [0-9][0-9]-[0-9][0-9]-[0-9]\+ [0-9][0-9]:[0-9][0-9] , date ," $file
|
||||||
|
# 2012-02-03 07:59
|
||||||
|
sed -i -e "s, 20[0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] , date ," $file
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_xenefi() {
|
||||||
|
# PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
|
||||||
|
perl -e "open fh, '+<', '$f'; seek fh, 0x80 + 0x08, SEEK_SET; print fh 'time'; seek fh, 0x80 + 0x58, SEEK_SET; print fh 'chck';"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_pyc() {
|
||||||
|
perl -e "open fh, '+<', '$f'; seek fh, 4, SEEK_SET; print fh '0000';"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_dvi() {
|
||||||
|
# Opcodes 247: pre; i[1], num[4], den[4], mag[4], k[1], x[k]
|
||||||
|
perl -e "
|
||||||
|
my \$rec;
|
||||||
|
open fh, '+<', '$f';
|
||||||
|
my \$dummy = read fh, \$rec, 15;
|
||||||
|
(\$pre, \$i, \$num, \$den, \$mag, \$k) = unpack('C2 N3 C', \$rec);
|
||||||
|
seek fh, 15, SEEK_SET;
|
||||||
|
while (\$k > 0) {
|
||||||
|
print fh '0';
|
||||||
|
\$k--;
|
||||||
|
}
|
||||||
|
"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_png() {
|
||||||
|
convert "$f" +set date:create +set date:modify "${f}.$PPID.$$"
|
||||||
|
mv -f "${f}.$PPID.$$" "${f}"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_emacs_lisp() {
|
||||||
|
sed -i -e '
|
||||||
|
s|^;;; .ompiled by abuild@.* on ... ... .. ..:..:.. ....|;;; compiled by abuild@buildhost on Wed Jul 01 00:00:00 2009|
|
||||||
|
s|^;;; from file .*\.el|;;; from file /home/abuild/rpmbuild/BUILD/anthy-9100h/src-util/elc.8411/anthy-azik.el|
|
||||||
|
s|^;;; emacs version .*|;;; emacs version 21.5 (beta34) "kale" XEmacs Lucid.|
|
||||||
|
s|^;;; bytecomp version .*|;;; bytecomp version 2.28 XEmacs; 2009-08-09.|
|
||||||
|
' "$f"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_pdf() {
|
||||||
|
# PDF files contain a unique ID, remove it
|
||||||
|
# Format of the ID is:
|
||||||
|
# /ID [<9ACE247A70CF9BEAFEE15E116259BD6D> <9ACE247A70CF9BEAFEE15E116259BD6D>]
|
||||||
|
# with optional spaces. pdftex creates also:
|
||||||
|
# /CreationDate (D:20120103083206Z)
|
||||||
|
# /ModDate (D:20120103083206Z)
|
||||||
|
# and possibly XML metadata as well
|
||||||
|
sed -i \
|
||||||
|
'/obj/,/endobj/{
|
||||||
|
s%/ID \?\[ \?<[^>]\+> \?<[^>]\+> \?\]%/IDrandom%g;
|
||||||
|
s%/CreationDate \?(D:[^)]*)%/CreationDate (D: XXX)%g;
|
||||||
|
s%/ModDate \?(D:[^)]*)%/ModDate (D: XXX)%g;
|
||||||
|
s%<pdf:CreationDate>[^<]*</pdf:CreationDate>%<pdf:CreationDate>XXX</pdf:CreationDate>%g;
|
||||||
|
s%<pdf:ModDate>[^<]*</pdf:ModDate>%<pdf:ModDate>XXX</pdf:ModDate>%g;
|
||||||
|
s%<xap:CreateDate>[^<]*</xap:CreateDate>%<xap:CreateDate>XXX</xap:CreateDate>%g;
|
||||||
|
s%<xap:ModifyDate>[^<]*</xap:ModifyDate>%<xap:ModifyDate>XXX</xap:ModifyDate>%g;
|
||||||
|
s%<xap:MetadataDate>[^<]*</xap:MetadataDate>%<xap:MetadataDate>XXX</xap:MetadataDate>%g;
|
||||||
|
}' "$f"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_ps() {
|
||||||
|
sed -i -e '
|
||||||
|
/^%%CreationDate:[[:blank:]]/d
|
||||||
|
/^%%Creator:[[:blank:]]groff[[:blank:]]version[[:blank:]]/d
|
||||||
|
/^%DVIPSSource:[[:blank:]]/d
|
||||||
|
' "$f"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_mo() {
|
||||||
|
sed -i -e "s,POT-Creation-Date: ....-..-.. ..:..+....,POT-Creation-Date: 1970-01-01 00:00+0000," "$f"
|
||||||
|
}
|
||||||
|
|
||||||
|
filter_linuxrc_config() {
|
||||||
|
sed -i '/^InitrdID:/s@^.*@InitrdID: something@' "$f"
|
||||||
|
}
|
||||||
|
|
||||||
|
# call specified filter on old and new file
|
||||||
|
filter_generic()
|
||||||
|
{
|
||||||
|
filtertype=$1
|
||||||
|
[[ $nofilter ]] && return
|
||||||
|
local f
|
||||||
|
for f in "old/$file" "new/$file" ; do
|
||||||
|
eval "filter_$filtertype $f"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
echo "Comparing `basename $oldpkg` to `basename $newpkg`"
|
echo "Comparing `basename $oldpkg` to `basename $newpkg`"
|
||||||
|
|
||||||
case $oldpkg in
|
case $oldpkg in
|
||||||
@ -195,7 +297,7 @@ diff_two_files()
|
|||||||
hexdump -C old/$file > $file1 &
|
hexdump -C old/$file > $file1 &
|
||||||
hexdump -C new/$file > $file2 &
|
hexdump -C new/$file > $file2 &
|
||||||
wait
|
wait
|
||||||
diff -u $file1 $file2 | head -n 200
|
diff -u $file1 $file2 | $buildcompare_head
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -205,6 +307,7 @@ trim_man_first_line()
|
|||||||
#.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28)
|
#.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28)
|
||||||
#.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.43.3.
|
#.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.43.3.
|
||||||
local f=$1
|
local f=$1
|
||||||
|
[[ $nofilter ]] && return
|
||||||
sed -i -e '1{
|
sed -i -e '1{
|
||||||
s|^\.\\"[[:blank:]]\+Automatically[[:blank:]]generated[[:blank:]]by[[:blank:]]Pod::Man[[:blank:]].*|.\\" Overly verbose Pod::Man|
|
s|^\.\\"[[:blank:]]\+Automatically[[:blank:]]generated[[:blank:]]by[[:blank:]]Pod::Man[[:blank:]].*|.\\" Overly verbose Pod::Man|
|
||||||
s|^\.\\"[[:blank:]]\+DO[[:blank:]]NOT[[:blank:]]MODIFY[[:blank:]]THIS[[:blank:]]FILE![[:blank:]]\+It[[:blank:]]was[[:blank:]]generated[[:blank:]]by[[:blank:]]help2man[[:blank:]].*|.\\" Overly verbose help2man|
|
s|^\.\\"[[:blank:]]\+DO[[:blank:]]NOT[[:blank:]]MODIFY[[:blank:]]THIS[[:blank:]]FILE![[:blank:]]\+It[[:blank:]]was[[:blank:]]generated[[:blank:]]by[[:blank:]]help2man[[:blank:]].*|.\\" Overly verbose help2man|
|
||||||
@ -231,6 +334,7 @@ trim_man_TH()
|
|||||||
# .TH "GCM-CALIBRATE" "1" "03 February 2012" "" ""
|
# .TH "GCM-CALIBRATE" "1" "03 February 2012" "" ""
|
||||||
#.TH Locale::Po4a::Xml.pm 3pm "2015-01-30" "Po4a Tools" "Po4a Tools"
|
#.TH Locale::Po4a::Xml.pm 3pm "2015-01-30" "Po4a Tools" "Po4a Tools"
|
||||||
local f=$1
|
local f=$1
|
||||||
|
[[ $nofilter ]] && return
|
||||||
# (.TH quoted section) (quoted_date)(*)
|
# (.TH quoted section) (quoted_date)(*)
|
||||||
sed -i -e 's|^\([[:blank:]]*\.TH[[:blank:]]\+"[^"]\+"[[:blank:]]\+[^[:blank:]]\+\)[[:blank:]]\+\("[^"]\+"\)\([[:blank:]]\+.*\)\?|\1 "qq2000-01-01"\3|' $f
|
sed -i -e 's|^\([[:blank:]]*\.TH[[:blank:]]\+"[^"]\+"[[:blank:]]\+[^[:blank:]]\+\)[[:blank:]]\+\("[^"]\+"\)\([[:blank:]]\+.*\)\?|\1 "qq2000-01-01"\3|' $f
|
||||||
# (.TH unquoted section) (quoted_date)(*)
|
# (.TH unquoted section) (quoted_date)(*)
|
||||||
@ -254,6 +358,7 @@ strip_numbered_anchors()
|
|||||||
# <div id="ftn.id43927" class="footnote">
|
# <div id="ftn.id43927" class="footnote">
|
||||||
# <div class="section" id="id46">
|
# <div class="section" id="id46">
|
||||||
|
|
||||||
|
[[ $nofilter ]] && return
|
||||||
for f in old/$file new/$file; do
|
for f in old/$file new/$file; do
|
||||||
sed -ie '
|
sed -ie '
|
||||||
1 {
|
1 {
|
||||||
@ -385,7 +490,7 @@ check_single_file()
|
|||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
*.cpio)
|
*.cpio)
|
||||||
flist=`cpio --quiet --list --force-local < "new/$file" | sort`
|
flist=`cpio --quiet --list --force-local < "new/$file" | $sort`
|
||||||
pwd=$PWD
|
pwd=$PWD
|
||||||
fdir=$file.extract.$PPID.$$
|
fdir=$file.extract.$PPID.$$
|
||||||
mkdir old/$fdir new/$fdir
|
mkdir old/$fdir new/$fdir
|
||||||
@ -407,7 +512,7 @@ check_single_file()
|
|||||||
return $ret
|
return $ret
|
||||||
;;
|
;;
|
||||||
*.squashfs)
|
*.squashfs)
|
||||||
flist=`unsquashfs -no-progress -ls -dest '' "new/$file" | grep -Ev '^(Parallel unsquashfs:|[0-9]+ inodes )' | sort`
|
flist=`unsquashfs -no-progress -ls -dest '' "new/$file" | grep -Ev '^(Parallel unsquashfs:|[0-9]+ inodes )' | $sort`
|
||||||
fdir=$file.extract.$PPID.$$
|
fdir=$file.extract.$PPID.$$
|
||||||
unsquashfs -no-progress -dest old/$fdir "old/$file"
|
unsquashfs -no-progress -dest old/$fdir "old/$file"
|
||||||
unsquashfs -no-progress -dest new/$fdir "new/$file"
|
unsquashfs -no-progress -dest new/$fdir "new/$file"
|
||||||
@ -444,17 +549,13 @@ check_single_file()
|
|||||||
return $ret
|
return $ret
|
||||||
;;
|
;;
|
||||||
*.zip|*.jar|*.war)
|
*.zip|*.jar|*.war)
|
||||||
cd old
|
for dir in old new ; do
|
||||||
unjar_l ./$file |sort > flist
|
(
|
||||||
# 10-05-2010 14:39
|
cd $dir
|
||||||
sed -i -e "s, [0-9][0-9]-[0-9][0-9]-[0-9]\+ [0-9][0-9]:[0-9][0-9] , date ," flist
|
unjar_l ./$file | $sort > flist
|
||||||
# 2012-02-03 07:59
|
filter_zip_flist flist
|
||||||
sed -i -e "s, 20[0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] , date ," flist
|
)
|
||||||
cd ../new
|
done
|
||||||
unjar_l ./$file |sort> flist
|
|
||||||
sed -i -e "s, [0-9][0-9]-[0-9][0-9]-[0-9]\+ [0-9][0-9]:[0-9][0-9] , date ,; " flist
|
|
||||||
sed -i -e "s, 20[0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] , date ," flist
|
|
||||||
cd ..
|
|
||||||
if ! cmp -s old/flist new/flist; then
|
if ! cmp -s old/flist new/flist; then
|
||||||
echo "$file has different file list"
|
echo "$file has different file list"
|
||||||
diff -u old/flist new/flist
|
diff -u old/flist new/flist
|
||||||
@ -479,38 +580,13 @@ check_single_file()
|
|||||||
done
|
done
|
||||||
return $ret;;
|
return $ret;;
|
||||||
*/xen*.efi)
|
*/xen*.efi)
|
||||||
# PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
|
filter_generic xenefi
|
||||||
perl -e "open fh, '+<', 'old/$file'; seek fh, 0x80 + 0x08, SEEK_SET; print fh 'time'; seek fh, 0x80 + 0x58, SEEK_SET; print fh 'chck';"
|
|
||||||
perl -e "open fh, '+<', 'new/$file'; seek fh, 0x80 + 0x08, SEEK_SET; print fh 'time'; seek fh, 0x80 + 0x58, SEEK_SET; print fh 'chck';"
|
|
||||||
;;
|
;;
|
||||||
*.pyc|*.pyo)
|
*.pyc|*.pyo)
|
||||||
perl -e "open fh, '+<', 'old/$file'; seek fh, 4, SEEK_SET; print fh '0000';"
|
filter_generic pyc
|
||||||
perl -e "open fh, '+<', 'new/$file'; seek fh, 4, SEEK_SET; print fh '0000';"
|
|
||||||
;;
|
;;
|
||||||
*.dvi)
|
*.dvi)
|
||||||
# Opcodes 247: pre; i[1], num[4], den[4], mag[4], k[1], x[k]
|
filter_generic dvi
|
||||||
perl -e "
|
|
||||||
my \$rec;
|
|
||||||
open fh, '+<', 'old/$file';
|
|
||||||
my \$dummy = read fh, \$rec, 15;
|
|
||||||
(\$pre, \$i, \$num, \$den, \$mag, \$k) = unpack('C2 N3 C', \$rec);
|
|
||||||
seek fh, 15, SEEK_SET;
|
|
||||||
while (\$k > 0) {
|
|
||||||
print fh '0';
|
|
||||||
\$k--;
|
|
||||||
}
|
|
||||||
"
|
|
||||||
perl -e "
|
|
||||||
my \$rec;
|
|
||||||
open fh, '+<', 'new/$file';
|
|
||||||
my \$dummy = read fh, \$rec, 15;
|
|
||||||
(\$pre, \$i, \$num, \$den, \$mag, \$k) = unpack('C2 N3 C', \$rec);
|
|
||||||
seek fh, 15, SEEK_SET;
|
|
||||||
while (\$k > 0) {
|
|
||||||
print fh '0';
|
|
||||||
\$k--;
|
|
||||||
}
|
|
||||||
"
|
|
||||||
;;
|
;;
|
||||||
*.bz2)
|
*.bz2)
|
||||||
bunzip2 -c old/$file > old/${file/.bz2/}
|
bunzip2 -c old/$file > old/${file/.bz2/}
|
||||||
@ -531,10 +607,7 @@ check_single_file()
|
|||||||
*png)
|
*png)
|
||||||
# Try to remove timestamps, only if convert from ImageMagick is installed
|
# Try to remove timestamps, only if convert from ImageMagick is installed
|
||||||
if [[ $(type -p convert) ]]; then
|
if [[ $(type -p convert) ]]; then
|
||||||
convert old/$file +set date:create +set date:modify old/${file}.$PPID.$$
|
filter_generic png
|
||||||
convert new/$file +set date:create +set date:modify new/${file}.$PPID.$$
|
|
||||||
mv -f old/${file}.$PPID.$$ old/${file}
|
|
||||||
mv -f new/${file}.$PPID.$$ new/${file}
|
|
||||||
if ! diff_two_files; then
|
if ! diff_two_files; then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -542,9 +615,7 @@ check_single_file()
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
/usr/share/locale/*/LC_MESSAGES/*.mo|/usr/share/locale-bundle/*/LC_MESSAGES/*.mo|/usr/share/vdr/locale/*/LC_MESSAGES/*.mo)
|
/usr/share/locale/*/LC_MESSAGES/*.mo|/usr/share/locale-bundle/*/LC_MESSAGES/*.mo|/usr/share/vdr/locale/*/LC_MESSAGES/*.mo)
|
||||||
for f in old/$file new/$file; do
|
filter_generic mo
|
||||||
sed -i -e "s,POT-Creation-Date: ....-..-.. ..:..+....,POT-Creation-Date: 1970-01-01 00:00+0000," $f
|
|
||||||
done
|
|
||||||
;;
|
;;
|
||||||
*/rdoc/files/*.html)
|
*/rdoc/files/*.html)
|
||||||
# ruby documentation
|
# ruby documentation
|
||||||
@ -615,7 +686,7 @@ check_single_file()
|
|||||||
# deprecated-list is randomly ordered, sort it for comparison
|
# deprecated-list is randomly ordered, sort it for comparison
|
||||||
case $f in
|
case $f in
|
||||||
*/deprecated-list.html)
|
*/deprecated-list.html)
|
||||||
sort -o $f $f
|
[[ $nofilter ]] || sort -o $f $f
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
@ -629,7 +700,7 @@ check_single_file()
|
|||||||
*/fonts.scale|*/fonts.dir|*/encodings.dir)
|
*/fonts.scale|*/fonts.dir|*/encodings.dir)
|
||||||
for f in old/$file new/$file; do
|
for f in old/$file new/$file; do
|
||||||
# sort files before comparing
|
# sort files before comparing
|
||||||
sort -o $f $f
|
[[ $nofilter ]] || sort -o $f $f
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
/var/adm/perl-modules/*)
|
/var/adm/perl-modules/*)
|
||||||
@ -655,15 +726,7 @@ check_single_file()
|
|||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
*.elc)
|
*.elc)
|
||||||
# emacs lisp files
|
filter_generic emacs_lisp
|
||||||
for f in old/$file new/$file; do
|
|
||||||
sed -i -e '
|
|
||||||
s|^;;; .ompiled by abuild@.* on ... ... .. ..:..:.. ....|;;; compiled by abuild@buildhost on Wed Jul 01 00:00:00 2009|
|
|
||||||
s|^;;; from file .*\.el|;;; from file /home/abuild/rpmbuild/BUILD/anthy-9100h/src-util/elc.8411/anthy-azik.el|
|
|
||||||
s|^;;; emacs version .*|;;; emacs version 21.5 (beta34) "kale" XEmacs Lucid.|
|
|
||||||
s|^;;; bytecomp version .*|;;; bytecomp version 2.28 XEmacs; 2009-08-09.|
|
|
||||||
' $f
|
|
||||||
done
|
|
||||||
;;
|
;;
|
||||||
/var/lib/texmf/web2c/*/*fmt |\
|
/var/lib/texmf/web2c/*/*fmt |\
|
||||||
/var/lib/texmf/web2c/metafont/*.base|\
|
/var/lib/texmf/web2c/metafont/*.base|\
|
||||||
@ -708,40 +771,14 @@ check_single_file()
|
|||||||
sed -i "s/${name_ver_rel_new_regex_l}/@NAME_VER_REL@/" new/$file
|
sed -i "s/${name_ver_rel_new_regex_l}/@NAME_VER_REL@/" new/$file
|
||||||
;;
|
;;
|
||||||
*.ps)
|
*.ps)
|
||||||
for f in "old/$file" "new/$file"; do
|
filter_generic ps
|
||||||
sed -i -e '
|
|
||||||
/^%%CreationDate:[[:blank:]]/d
|
|
||||||
/^%%Creator:[[:blank:]]groff[[:blank:]]version[[:blank:]]/d
|
|
||||||
/^%DVIPSSource:[[:blank:]]/d
|
|
||||||
' "$f"
|
|
||||||
done
|
|
||||||
;;
|
;;
|
||||||
*pdf)
|
*pdf)
|
||||||
# PDF files contain a unique ID, remove it
|
filter_generic pdf
|
||||||
# Format of the ID is:
|
|
||||||
# /ID [<9ACE247A70CF9BEAFEE15E116259BD6D> <9ACE247A70CF9BEAFEE15E116259BD6D>]
|
|
||||||
# with optional spaces. pdftex creates also:
|
|
||||||
# /CreationDate (D:20120103083206Z)
|
|
||||||
# /ModDate (D:20120103083206Z)
|
|
||||||
# and possibly XML metadata as well
|
|
||||||
for f in "old/$file" "new/$file"; do
|
|
||||||
sed -i \
|
|
||||||
'/obj/,/endobj/{
|
|
||||||
s%/ID \?\[ \?<[^>]\+> \?<[^>]\+> \?\]%/IDrandom%g;
|
|
||||||
s%/CreationDate \?(D:[^)]*)%/CreationDate (D: XXX)%g;
|
|
||||||
s%/ModDate \?(D:[^)]*)%/ModDate (D: XXX)%g;
|
|
||||||
s%<pdf:CreationDate>[^<]*</pdf:CreationDate>%<pdf:CreationDate>XXX</pdf:CreationDate>%g;
|
|
||||||
s%<pdf:ModDate>[^<]*</pdf:ModDate>%<pdf:ModDate>XXX</pdf:ModDate>%g;
|
|
||||||
s%<xap:CreateDate>[^<]*</xap:CreateDate>%<xap:CreateDate>XXX</xap:CreateDate>%g;
|
|
||||||
s%<xap:ModifyDate>[^<]*</xap:ModifyDate>%<xap:ModifyDate>XXX</xap:ModifyDate>%g;
|
|
||||||
s%<xap:MetadataDate>[^<]*</xap:MetadataDate>%<xap:MetadataDate>XXX</xap:MetadataDate>%g;
|
|
||||||
}' "$f"
|
|
||||||
done
|
|
||||||
;;
|
;;
|
||||||
*/linuxrc.config)
|
*/linuxrc.config)
|
||||||
echo "${file}"
|
echo "${file}"
|
||||||
sed -i '/^InitrdID:/s@^.*@InitrdID: something@' "old/$file"
|
filter_generic linuxrc_config
|
||||||
sed -i '/^InitrdID:/s@^.*@InitrdID: something@' "new/$file"
|
|
||||||
;;
|
;;
|
||||||
*/ld.so.cache|*/etc/machine-id)
|
*/ld.so.cache|*/etc/machine-id)
|
||||||
# packaged by libguestfs
|
# packaged by libguestfs
|
||||||
@ -789,7 +826,7 @@ check_single_file()
|
|||||||
elfdiff=
|
elfdiff=
|
||||||
if ! diff --speed-large-files -u $file1 $file2 > $dfile; then
|
if ! diff --speed-large-files -u $file1 $file2 > $dfile; then
|
||||||
echo "$file differs in assembler output"
|
echo "$file differs in assembler output"
|
||||||
head -n 200 $dfile
|
$buildcompare_head $dfile
|
||||||
elfdiff="1"
|
elfdiff="1"
|
||||||
fi
|
fi
|
||||||
echo "" >$file1
|
echo "" >$file1
|
||||||
@ -801,7 +838,7 @@ check_single_file()
|
|||||||
$OBJDUMP -s -j $section new/$file | sed "s,^new/,," > $file2
|
$OBJDUMP -s -j $section new/$file | sed "s,^new/,," > $file2
|
||||||
if ! diff -u $file1 $file2 > $dfile; then
|
if ! diff -u $file1 $file2 > $dfile; then
|
||||||
echo "$file differs in ELF section $section"
|
echo "$file differs in ELF section $section"
|
||||||
head -n 200 $dfile
|
$buildcompare_head $dfile
|
||||||
elfdiff="1"
|
elfdiff="1"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@ -814,7 +851,7 @@ check_single_file()
|
|||||||
*ASCII*|*text*)
|
*ASCII*|*text*)
|
||||||
if ! cmp -s old/$file new/$file; then
|
if ! cmp -s old/$file new/$file; then
|
||||||
echo "$file differs ($ftype)"
|
echo "$file differs ($ftype)"
|
||||||
diff -u old/$file new/$file | head -n 200
|
diff -u old/$file new/$file | $buildcompare_head
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
Loading…
Reference in New Issue
Block a user