aboutsummaryrefslogtreecommitdiff
path: root/config/acx.m4
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2004-05-13 18:14:28 +0000
committerDJ Delorie <dj@redhat.com>2004-05-13 18:14:28 +0000
commit4b1cb4fee6c24a634721053aa48a2217c8b7bc58 (patch)
tree85bb50fba20aa9c7f039ea57a10d92c16892ed48 /config/acx.m4
parent8bfabb045c335e391a22397e6465e673014af878 (diff)
downloadgdb-4b1cb4fee6c24a634721053aa48a2217c8b7bc58.zip
gdb-4b1cb4fee6c24a634721053aa48a2217c8b7bc58.tar.gz
gdb-4b1cb4fee6c24a634721053aa48a2217c8b7bc58.tar.bz2
merge from gcc
Diffstat (limited to 'config/acx.m4')
-rw-r--r--config/acx.m431
1 files changed, 31 insertions, 0 deletions
diff --git a/config/acx.m4 b/config/acx.m4
index 9b40d4f..3652836 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)
+])