On Mon, Jan 21, 2013 at 06:06:08PM +0100, Jan Kiszka wrote: > This provides the basic infrastructure to load kernel-specific python > helper scripts when debugging the kernel in gdb. > > The loading mechanism is based on gdb loading for <objfile>-gdb.py when > opening <objfile>. Therefore, this places a corresponding link to the > main helper script into the output directory that contains vmlinux. > > The main scripts will pull in submodules containing Linux specific gdb > commands and functions. To avoid polluting the source directory with > compiled python modules, we link to them from the object directory. > > Due to gdb.parse_and_eval, we depend on gdb >= 7.1. We need to > pre-process the version string returned by gdb as some distros tend to > prefix it with their name. > > This feature depends on CONFIG_DEBUG_INFO. > > CC: Michal Marek <mmarek@xxxxxxx> > CC: linux-kbuild@xxxxxxxxxxxxxxx > Signed-off-by: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> > --- > Makefile | 5 ++++- > scripts/Makefile | 3 ++- > scripts/gdb/Makefile | 9 +++++++++ > scripts/gdb/utils.py | 17 +++++++++++++++++ > scripts/gdb/vmlinux-gdb.py | 22 ++++++++++++++++++++++ > 5 files changed, 54 insertions(+), 2 deletions(-) > create mode 100644 scripts/gdb/Makefile > create mode 100644 scripts/gdb/utils.py > create mode 100644 scripts/gdb/vmlinux-gdb.py > > diff --git a/Makefile b/Makefile > index 253a455..fb18794 100644 > --- a/Makefile > +++ b/Makefile > @@ -774,6 +774,9 @@ endif > ifdef CONFIG_BUILD_DOCSRC > $(Q)$(MAKE) $(build)=Documentation > endif > +ifdef CONFIG_DEBUG_INFO > + $(Q)ln -fsn $(srctree)/scripts/gdb/vmlinux-gdb.py > +endif I'm wondering whether it won't be a better idea to make this symlink creation in the toplevel directory only when a user requires it.. I.e., not simply when CONFIG_DEBUG_INFO is enabled (it could be enabled for a lot and different reasons) but only when user wants to really debug the kernel with gdb. Then, having a specific make target could arrange for all the setup like the symlink, gdb version checking, etc, maybe something like this: $ make gdb and all is prepared (or errored out with a sensible message). Hmm.... -- Regards/Gruss, Boris. Sent from a fat crate under my desk. Formatting is fine. -- -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html