aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPhil Edwards <pme@gcc.gnu.org>2002-10-29 21:37:13 +0000
committerPhil Edwards <pme@gcc.gnu.org>2002-10-29 21:37:13 +0000
commitfc556cb99dfba5172eb5d5e52f833879c73fb8b8 (patch)
tree4da43448ee813775875fe305c5f8d7e56fc260b0 /gcc
parentf8ca792302bcc455bf7d45f807d71a9f06c4add8 (diff)
downloadgcc-fc556cb99dfba5172eb5d5e52f833879c73fb8b8.zip
gcc-fc556cb99dfba5172eb5d5e52f833879c73fb8b8.tar.gz
gcc-fc556cb99dfba5172eb5d5e52f833879c73fb8b8.tar.bz2
Makefile.in (gnucompare*): Only record bad comparisons if there really was a bad comparison.
2002-10-29 Phil Edwards <pme@gcc.gnu.org> * Makefile.in (gnucompare*): Only record bad comparisons if there really was a bad comparison. From-SVN: r58635
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/Makefile.in9
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7c7837f..edd8a7e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-10-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.in (gnucompare*): Only record bad comparisons
+ if there really was a bad comparison.
+
Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
* i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index e97c302..8f2256c 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