From b9b63da98445dd43881053dd652e56c6f76740c9 Mon Sep 17 00:00:00 2001 From: Marian Buschsieweke Date: Fri, 21 Oct 2022 17:27:45 +0200 Subject: [PATCH] makefiles/tools/gdb.inc.mk: prefer $(target)-gdb over gdb-multiarch In an ideal world everyone would just install `gdb-multiarch` and be happy. However, some MCUs need magic GDB versions sprinkled with unicorn-stardust-Espressif-patches... Since there is little reason to have `$(target)-gdb` installed in addition to `gdb-multiarch` if `gdb-multiarch` would work fine, let's assume the user wants to use `$(target)-gdb` when present over `gdb-multiarch`. Co-authored-by: Gunar Schorcht --- makefiles/tools/gdb.inc.mk | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/makefiles/tools/gdb.inc.mk b/makefiles/tools/gdb.inc.mk index cfe06254d5..5567495cbf 100644 --- a/makefiles/tools/gdb.inc.mk +++ b/makefiles/tools/gdb.inc.mk @@ -1,7 +1,11 @@ -# new versions of gdb will support all architectures in one binary -ifeq ($(shell gdb-multiarch -v > /dev/null 2>&1; echo $$?),0) -export GDB ?= gdb-multiarch +export GDBPREFIX ?= $(PREFIX) + +# If the user installed a magic single target GDB rather than just using +# gdb-multiarch, there typically is a reason for it - e.g. missing support for +# that particular target in gdb-multiarch. +ifeq ($(shell $(GDBPREFIX)gdb -v > /dev/null 2>&1; echo $$?),0) + export GDB ?= $(GDBPREFIX)gdb else -export GDBPREFIX ?= $(PREFIX) -export GDB ?= $(GDBPREFIX)gdb + # gdb-multiarch is normally + export GDB ?= gdb-multiarch endif