testsuite: Disable ccache
authorJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 15 Sep 2016 12:04:20 +0000 (14:04 +0200)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 15 Sep 2016 12:06:11 +0000 (14:06 +0200)
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.

gdb/testsuite/ChangeLog
2016-09-15  Jan Kratochvil  <jan.kratochvil@redhat.com>

* lib/future.exp: Set CCACHE_DISABLE, clear CCACHE_NODISABLE.

gdb/testsuite/ChangeLog
gdb/testsuite/lib/future.exp

index c63ea72e5f9696f90275d0b80d775547127142b0..cf49f25fb303523c76a34efd1519e84407ed160f 100644 (file)
@@ -1,3 +1,7 @@
+2016-09-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * lib/future.exp: Set CCACHE_DISABLE, clear CCACHE_NODISABLE.
+
 2016-09-11  Sergio Durigan Junior  <sergiodj@redhat.com>
            Jan Kratochvil  <jan.kratochvil@redhat.com>
 
index 2ecff2ef20076727fef078b3a41858f7572b530b..e7c9d9ae3a84d665d8fd6f52e34632f63f19e0bc 100644 (file)
@@ -666,3 +666,8 @@ if {[info procs lreverse] == ""} {
        return $retval
     }
 }
+
+# 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)