From 697dfd2cb2acd640324565ec3298645b6f6bd4c5 Mon Sep 17 00:00:00 2001 From: bonzini Date: Thu, 29 Apr 2004 07:40:05 +0000 Subject: 2004-04-28 Paolo Bonzini * config/acx.m4: Fix fastcompare support for new-bootstrap. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81281 138bc75d-0d04-0410-961f-82ee72b054a4 --- config/acx.m4 | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'config') diff --git a/config/acx.m4 b/config/acx.m4 index 9b40d4f0771..3652836bb8d 100644 --- a/config/acx.m4 +++ b/config/acx.m4 @@ -193,3 +193,34 @@ else have_gnat=no fi ]) + +dnl 'make compare' can be significantly faster, if cmp itself can +dnl skip bytes instead of using tail. The test being performed is +dnl "if cmp --ignore-initial=2 t1 t2 && ! cmp --ignore-initial=1 t1 t2" +dnl but we need to sink errors and handle broken shells. We also test +dnl for the parameter format "cmp file1 file2 skip1 skip2" which is +dnl accepted by cmp on some systems. +AC_DEFUN([ACX_PROG_CMP_IGNORE_INITIAL], +[AC_CACHE_CHECK([how to compare bootstrapped objects], gcc_cv_prog_cmp_skip, +[ echo abfoo >t1 + echo cdfoo >t2 + gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' + if cmp t1 t2 2 2 > /dev/null 2>&1; then + if cmp t1 t2 1 1 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' + fi + fi + if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then + if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' + fi + fi + rm t1 t2 +]) +do_compare="$gcc_cv_prog_cmp_skip" +AC_SUBST(do_compare) +]) -- cgit v1.2.1