From: Phil Edwards Date: Tue, 29 Oct 2002 21:37:13 +0000 (+0000) Subject: Makefile.in (gnucompare*): Only record bad comparisons if there really was a bad... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fc556cb99dfba5172eb5d5e52f833879c73fb8b8;p=gcc.git Makefile.in (gnucompare*): Only record bad comparisons if there really was a bad comparison. 2002-10-29 Phil Edwards * Makefile.in (gnucompare*): Only record bad comparisons if there really was a bad comparison. From-SVN: r58635 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c7837fe89d..edd8a7eb247 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-10-29 Phil Edwards + + * Makefile.in (gnucompare*): Only record bad comparisons + if there really was a bad comparison. + Tue Oct 29 19:32:16 CET 2002 Jan Hubicka * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H' diff --git a/gcc/Makefile.in b/gcc/Makefile.in index e97c3025a42..8f2256c1c85 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -3490,18 +3490,21 @@ compare compare3 compare4 compare-lean compare3-lean compare4-lean: force # Compare the object files in the current directory with those in the # stage2 directory. Use gnu cmp (diffutils v2.4 or later) to avoid # running tail and the overhead of twice copying each object file. - +# An exit status of 1 is precisely the result we're looking for (other +# values mean other problems). gnucompare gnucompare3 gnucompare4 gnucompare-lean gnucompare3-lean gnucompare4-lean: force -rm -f .bad_compare case "$@" in gnucompare | gnucompare-lean ) stage=2 ;; * ) stage=`echo $@ | sed -e 's,^gnucompare\([0-9][0-9]*\).*,\1,'` ;; esac; \ for file in *$(objext); do \ - (cmp --ignore-initial=16 $$file stage$$stage/$$file > /dev/null 2>&1 || echo $$file differs >> .bad_compare) || true; \ + cmp --ignore-initial=16 $$file stage$$stage/$$file > /dev/null 2>&1; \ + test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \ done case "$@" in gnucompare | gnucompare-lean ) stage=2 ;; * ) stage=`echo $@ | sed -e 's,^gnucompare\([0-9][0-9]*\).*,\1,'` ;; esac; \ for dir in tmp-foo intl $(SUBDIRS); do \ if [ "`echo $$dir/*$(objext)`" != "$$dir/*$(objext)" ] ; then \ for file in $$dir/*$(objext); do \ - (cmp --ignore-initial=16 $$file stage$$stage/$$file > /dev/null 2>&1 || echo $$file differs >> .bad_compare) || true; \ + cmp --ignore-initial=16 $$file stage$$stage/$$file > /dev/null 2>&1; \ + test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \ done; \ else true; fi; \ done