Add facility to debug GRUB with gdb under qemu.

* grub-core/gdb_grub.in: New file.
	* grub-core/gmodule.pl.in: Likewise.
	* grub-core/Makefile.core.def (gmodule.pl): New script.
	(gdb_grub): Likewise.
This commit is contained in:
Lubomir Kundrak 2011-11-13 22:59:46 +01:00 committed by Vladimir 'phcoder' Serbinenko
parent bc108a4a8a
commit 2536cf6463
4 changed files with 133 additions and 0 deletions

30
grub-core/gmodule.pl.in Normal file
View file

@ -0,0 +1,30 @@
###
### Generate GDB commands, that load symbols for specified module,
### with proper section relocations. See .gdbinit
###
### $Id: gmodule.pl,v 1.2 2006/05/14 11:38:42 lkundrak Exp lkundrak $
### Lubomir Kundrak <lkudrak@skosi.org>
###
use strict;
while (<>) {
my ($name, %sections) = split;
print "add-symbol-file $name.module";
open (READELF, "readelf -S $name.mod |") or die;
while (<READELF>) {
/\[\s*(\d+)\]\s+(\.\S+)/ or next;
if ($2 eq '.text') {
print " $sections{$1}";
next;
}
print " -s $2 $sections{$1}"
if ($sections{$1} ne '0x0');
};
close (READELF);
print "\n";
}