mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 09:14:14 +08:00
[gdb/testsuite] Fix gdb.dwarf2/fission-relative-dwo.exp with cc-with-gdb-index
When running with target board cc-with-gdb-index, we run into: ... gdb compile failed, warning: Could not find DWO CU \ fission-relative-dwo.dwo(0x1234) referenced by CU at offset 0xc7 \ [in module outputs/gdb.dwarf2/fission-relative-dwo/.tmp/fission-relative-dwo] UNTESTED: gdb.dwarf2/fission-relative-dwo.exp: fission-relative-dwo.exp ERROR: failed to compile fission-relative-dwo ... The problem is that: - the .dwo file is found relative to the executable, and - cc-with-tweaks.sh moves the executable to a temp dir, but not the .dwo file. Fix this by copying the .dwo file alongside the executable in the temp dir. Verified changes using shellcheck. Tested on x86_64-linux. gdb/ChangeLog: 2021-08-02 Tom de Vries <tdevries@suse.de> * contrib/cc-with-tweaks.sh: Copy .dwo files alongside executable.
This commit is contained in:
@ -179,6 +179,19 @@ fi
|
|||||||
if [ "$want_index" = true ]; then
|
if [ "$want_index" = true ]; then
|
||||||
get_tmpdir
|
get_tmpdir
|
||||||
mv "$output_file" "$tmpdir"
|
mv "$output_file" "$tmpdir"
|
||||||
|
output_dir=$(dirname "$output_file")
|
||||||
|
|
||||||
|
# Copy .dwo file alongside, to fix gdb.dwarf2/fission-relative-dwo.exp.
|
||||||
|
# Use copy instead of move to not break
|
||||||
|
# rtf=gdb.dwarf2/fission-absolute-dwo.exp.
|
||||||
|
dwo_pattern="$output_dir/*.dwo"
|
||||||
|
for f in $dwo_pattern; do
|
||||||
|
if [ "$f" = "$dwo_pattern" ]; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
cp "$f" "$tmpdir"
|
||||||
|
done
|
||||||
|
|
||||||
tmpfile="$tmpdir/$(basename $output_file)"
|
tmpfile="$tmpdir/$(basename $output_file)"
|
||||||
# Filter out these messages which would stop dejagnu testcase run:
|
# Filter out these messages which would stop dejagnu testcase run:
|
||||||
# echo "$myname: No index was created for $file" 1>&2
|
# echo "$myname: No index was created for $file" 1>&2
|
||||||
@ -187,6 +200,7 @@ if [ "$want_index" = true ]; then
|
|||||||
| grep -v "^${GDB_ADD_INDEX##*/}: " >&2
|
| grep -v "^${GDB_ADD_INDEX##*/}: " >&2
|
||||||
rc=${PIPESTATUS[0]}
|
rc=${PIPESTATUS[0]}
|
||||||
mv "$tmpfile" "$output_file"
|
mv "$tmpfile" "$output_file"
|
||||||
|
rm -f "$tmpdir"/*.dwo
|
||||||
[ $rc != 0 ] && exit $rc
|
[ $rc != 0 ] && exit $rc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user