@@ -1,6 +1,11 @@
config BR2_PACKAGE_GDB
bool "gdb"
- select BR2_PACKAGE_GDB_SERVER if !BR2_PACKAGE_GDB_DEBUGGER
+ # When the external toolchain gdbserver is copied to the
+ # target, we don't allow building a sepaate gdbserver. The one
+ # from the external toolchain should be used.
+ select BR2_PACKAGE_GDB_SERVER if \
+ (!BR2_PACKAGE_GDB_DEBUGGER && !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY)
+ select BR2_PACKAGE_GDB_DEBUGGER if BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
help
GDB, the GNU Project debugger, allows you to see what is
going on `inside' another program while it executes -- or
@@ -21,6 +26,7 @@ if BR2_PACKAGE_GDB
config BR2_PACKAGE_GDB_SERVER
bool "gdbserver"
+ depends on !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
help
Build the gdbserver stub to run on the target.
A full gdb is needed to debug the progam.
@@ -1,5 +1,9 @@
config BR2_PACKAGE_HOST_GDB
bool "Build cross gdb for the host"
+ # When the external toolchain gdbserver is used, we shouldn't
+ # allow to build a cross-gdb, as the one of the external
+ # toolchain should be used.
+ depends on !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
help
Build a cross gdb that runs on the host machine and debugs
programs running on the target. It requires 'gdbserver'
When an external toolchain is used, and the user has chosen to copy the external toolchain gdbserver to the target, then we should allow the user to build a gdbserver and/or a cross-gdb: the ones of the external toolchain should be used. The reasoning is that one must use a gdbserver and cross-gdb of identical versions to be sure that debugging will work properly. Change suggested by Yann E. Morin. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- package/gdb/Config.in | 8 +++++++- package/gdb/Config.in.host | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-)