galileo: Add 'debug' rule

This patch the 'debug' rule to simplify the debugging process. This new
rule runs OpenOCD and gdb with the right parameters. OpenOCD runs in
background and its output will be redirected to a log file in the
application's path called LOG_OPENOCD. Once gdb client is detached,
OpenOCD is terminated.

The 'debug' rule is defined in Makefile.customrules-galileo file (create
by this patch) which is included by the Contiki's buildsystem. So to
debug a Contiki application for Galileo board, run the following command:
$ make TARGET=galileo debug

If you use a gdb front-end, you can define the "GDB" environment variable
and your gdb front-end will be used instead of default gdb. For instance,
if you want to use cgdb front-end, just run the command:
$ make BOARD=galileo debug GDB=cgdb
This commit is contained in:
Andre Guedes 2015-07-01 19:12:38 -03:00 committed by Jesus Sanchez-Palencia
parent f14f9aba41
commit 1fb7800110
3 changed files with 21 additions and 1 deletions

3
.gitignore vendored
View file

@ -113,5 +113,6 @@ platform/galileo/bsp/libc/newlib-2.2.0-1*
platform/galileo/bsp/grub/src/ platform/galileo/bsp/grub/src/
platform/galileo/bsp/grub/bin/ platform/galileo/bsp/grub/bin/
# galileo build artefacts # galileo build and debug artefacts
*.galileo *.galileo
LOG_OPENOCD

View file

@ -0,0 +1,8 @@
GDB ?= gdb
OPENOCD_SCRIPTS = $(CONTIKI)/platform/galileo/bsp/openocd-scripts
.PHONY: debug
debug: $(CONTIKI_PROJECT).$(TARGET)
@openocd -s $(OPENOCD_SCRIPTS) -f debug.cfg &> $(shell pwd)/LOG_OPENOCD &
@$(GDB) $< -ex "target remote :3333"

View file

@ -0,0 +1,11 @@
source [find interface/ftdi/flyswatter2.cfg];
source [find board/quark_x10xx_board.cfg];
quark_x10xx.cpu configure -event gdb-attach {
halt
}
quark_x10xx.cpu configure -event gdb-detach {
resume
shutdown
}