[gdb/testsuite] Fix gdb.dwarf2/per-bfd-sharing.exp with cc-with-gdb-index
authorTom de Vries <tdevries@suse.de>
Mon, 2 Aug 2021 13:31:51 +0000 (15:31 +0200)
committerTom de Vries <tdevries@suse.de>
Mon, 2 Aug 2021 13:31:51 +0000 (15:31 +0200)
When running with target board cc-with-gdb-index, we run into:
...
rm: cannot remove '/tmp/tmp.JmYTeiuFjj/*.gdb-index': \
  No such file or directory^M
FAIL: gdb.dwarf2/per-bfd-sharing.exp: \
  couldn't remove files in temporary cache dir
...

Fix this, as in gdb.base/index-cache.exp, by only FAILing when
$expecting_index_cache_use.

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2021-08-02  Tom de Vries  <tdevries@suse.de>

* gdb.dwarf2/per-bfd-sharing.exp: Only expect index-cache files
when $expecting_index_cache_use.

gdb/testsuite/gdb.dwarf2/per-bfd-sharing.exp

index 48a30fa741c07507d97e8faa70f01837447633b8..6891cd774465814db18484c1542b96386ce63a6d 100644 (file)
@@ -23,6 +23,10 @@ if { [build_executable "failed to prepare" $testfile $srcfile \
     return
 }
 
+set has_index_section [exec_has_index_section $binfile]
+set uses_readnow [expr [string first "-readnow" $GDBFLAGS] != -1]
+set expecting_index_cache_use [expr !$has_index_section && !$uses_readnow]
+
 lassign [remote_exec host mktemp -d] ret cache_dir
 
 # The output of mktemp contains an end of line, remove it.
@@ -93,7 +97,7 @@ foreach_with_prefix first $methods {
 }
 
 lassign [remote_exec host sh "-c \"rm $cache_dir/*.gdb-index\""] ret
-if { $ret != 0 } {
+if { $ret != 0 && $expecting_index_cache_use } {
     fail "couldn't remove files in temporary cache dir"
     return
 }