This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
dejagnu: Disable ccache
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: dejagnu at gnu dot org
- Cc: gdb-patches at sourceware dot org
- Date: Sun, 4 Sep 2016 10:44:27 +0200
- Subject: dejagnu: Disable ccache
- Authentication-results: sourceware.org; auth=none
Hi,
there were always various problems with compatibility with ccache:
https://bugzilla.redhat.com/show_bug.cgi?id=488863
https://bugzilla.redhat.com/show_bug.cgi?id=759592
https://sourceware.org/ml/gdb-patches/2009-02/msg00397.html
IMO in a summary ccache finds more a benefit of faster compilation despite the
debug info is no longer exactly the same (as without ccache).
Although for example in this case ccache helped to find a real GDB bug:
https://sourceware.org/ml/gdb-patches/2015-01/msg00497.html
For the GDB testcases ccache has (IMO) no real performance advantage and it
just brings heisenbugs - false FAILs - from time to time:
Breakpoint 1, main () at gdb/testsuite/gdb.base/vdso-warning.c:21^M
21 return 0;^M
(gdb) PASS: gdb.base/vdso-warning.exp: run: startup
->
Breakpoint 1, main () at gdb/testsuite/gdb.base/hbreak-unmapped.c:21^M
21 return 0;^M
(gdb) FAIL: gdb.base/vdso-warning.exp: run: startup
So I find most safe and easy to just disable ccache for all testsuites.
I guess this issues can be considered more general than just for the GDB
testsuite, therefore posting it for dejagnu.
Jan
diff --git a/ChangeLog b/ChangeLog
index 4880003..916fa04 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2016-09-04 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * runtest.exp: Set CCACHE_DISABLE, clear CCACHE_NODISABLE.
+
2016-06-28 Ben Elliston <bje@gnu.org>
* aclocal.m4, Makefile.in: Regenerate with automake 1.15.
diff --git a/runtest.exp b/runtest.exp
index 2c6ca5d..0415e4e 100644
--- a/runtest.exp
+++ b/runtest.exp
@@ -87,6 +87,11 @@ set target_cpu "" ;# type of the cpu tests are running on
set target_alias "" ;# standard abbreviation of target
set compiler_flags "" ;# the flags used by the compiler
+# Various ccache versions provide incorrect debug info such as ignoring
+# different current directory, breaking GDB testsuite.
+set env(CCACHE_DISABLE) 1
+unset -nocomplain env(CCACHE_NODISABLE)
+
#
# some convenience abbreviations
#