2003-01-08 Andrew Cagney <ac131313@redhat.com>

* gdb_mbuild.sh: Edit the output of `maint print architecture'
	replacing hex constants with function names and stripping leading
	file name directory prefixes.
This commit is contained in:
Andrew Cagney 2003-01-08 23:49:15 +00:00
parent 7692ea567d
commit dbad9d940f
2 changed files with 27 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2003-01-08 Andrew Cagney <ac131313@redhat.com>
* gdb_mbuild.sh: Edit the output of `maint print architecture'
replacing hex constants with function names and stripping leading
file name directory prefixes.
2003-01-08 Andrew Cagney <cagney@redhat.com>
* gcore.c, i386-linux-tdep.c: Use get_frame_pc, get_next_frame and

View file

@ -279,12 +279,32 @@ EOF
fail "gdb printed no output" ! -s Gdb.log
grep -e internal-error Gdb.log && fail "gdb panic" 1
echo ... cleanup ${target}
# Create a sed script that cleans up the output from GDB.
rm -f mbuild.sed
touch mbuild.sed || exit 1
# Rules to replace <0xNNNN> with the corresponding function's
# name.
sed -n -e '/<0x0*>/d' -e 's/^.*<0x\([0-9a-f]*\)>.*$/0x\1/p' Gdb.log \
| sort -u \
| while read addr
do
func="`addr2line -f -e ./gdb/gdb -s ${addr} | sed -n -e 1p`"
test ${verbose} -gt 0 && echo "${addr} ${func}" 1>&2
echo "s/<${addr}>/<${func}>/g"
done >> mbuild.sed
# Rules to strip the leading paths off of file names.
echo 's/"\/.*\/gdb\//"gdb\//g' >> mbuild.sed
# Replace the build directory with a file as semaphore that stops
# a rebuild. (should the logs be saved?)
cd ${builddir}
rm -f ${target}.tmp
mv ${target}/Gdb.log ${target}.tmp
sed -f ${target}/mbuild.sed ${target}/Gdb.log > ${target}.tmp
rm -rf ${target}
mv ${target}.tmp ${target}