2010-03-15 20:42:55 +00:00
|
|
|
# Menu for the native gdbserver
|
|
|
|
|
|
|
|
config GDB_GDBSERVER
|
|
|
|
bool
|
|
|
|
prompt "gdbserver"
|
2017-02-10 06:14:36 +00:00
|
|
|
default y
|
2010-03-15 20:42:55 +00:00
|
|
|
depends on ! BARE_METAL
|
2017-07-06 07:25:30 +00:00
|
|
|
select LIBC_UCLIBC_WCHAR if LIBC_UCLIBC && GDB_8_0_or_later
|
2010-03-15 20:42:55 +00:00
|
|
|
help
|
|
|
|
Build and install a gdbserver for the target, to run on the target.
|
|
|
|
|
|
|
|
if GDB_GDBSERVER
|
|
|
|
|
2012-05-17 15:56:27 +00:00
|
|
|
config GDB_GDBSERVER_HAS_IPA_LIB
|
|
|
|
bool
|
|
|
|
depends on GDB_7_2_or_later
|
|
|
|
default y
|
|
|
|
|
2017-03-15 08:22:19 +00:00
|
|
|
# gdbserver is then linked with "-static -Wl,--dynamic-list=..." which
|
2010-03-15 20:42:55 +00:00
|
|
|
config GDB_GDBSERVER_STATIC
|
|
|
|
bool
|
|
|
|
prompt "Build a static gdbserver"
|
2017-03-15 08:22:19 +00:00
|
|
|
depends on EXPERIMENTAL
|
2010-03-15 20:42:55 +00:00
|
|
|
help
|
|
|
|
In case you have trouble with dynamic loading of shared libraries,
|
|
|
|
you will find that a static gdbserver comes in handy.
|
|
|
|
|
2017-03-15 08:22:19 +00:00
|
|
|
However, it has been noticed at least on x86 that enabling this
|
|
|
|
option produces an invalid gdbserver binary. It is linked with
|
|
|
|
"-static -Wl,--dynamic-list=..." which
|
|
|
|
# (a) requests invalid program interpreter
|
|
|
|
# (b) crashes glibc/uClibc-ng and does not work with musl
|
|
|
|
# See https://sourceware.org/ml/libc-alpha/2017-03/msg00267.html
|
|
|
|
|
|
|
|
It is possible it would work with other architectures, hence it is
|
|
|
|
not completely removed. Use with care and report to the mailing list
|
|
|
|
if the resulting gdbserver works.
|
|
|
|
|
|
|
|
For further details, see:
|
|
|
|
https://sourceware.org/bugzilla/show_bug.cgi?id=19617
|
|
|
|
https://sourceware.org/bugzilla/show_bug.cgi?id=21086
|
|
|
|
|
2017-06-17 05:27:04 +00:00
|
|
|
config GDB_GDBSERVER_STATIC_LIBSTDCXX
|
|
|
|
bool
|
|
|
|
prompt "Link against static libstdc+++"
|
|
|
|
depends on !GDB_GDBSERVER_STATIC
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Say 'y' if you do not want gdbserver to require libstdc++.so on the
|
|
|
|
target.
|
|
|
|
|
2012-05-17 15:56:27 +00:00
|
|
|
config GDB_GDBSERVER_BUILD_IPA_LIB
|
|
|
|
bool
|
|
|
|
prompt "Build the IPA library"
|
|
|
|
depends on GDB_GDBSERVER_HAS_IPA_LIB && !GDB_GDBSERVER_STATIC
|
|
|
|
help
|
|
|
|
gdbserver >= 7.2 comes with an optional library to use tracepoints,
|
|
|
|
the In Process Agent (IPA) library, libinproctrace.so.
|
|
|
|
|
|
|
|
Say 'y' if you indend to use tracepoints when debugging your
|
|
|
|
programs with gdbserver.
|
|
|
|
|
|
|
|
Note: Currently, building this library is not possible when the
|
|
|
|
gdbserver is built statically. This is a limitation in
|
|
|
|
crosstool-NG, so do not bug upstream about it...
|
|
|
|
|
2010-03-15 20:42:55 +00:00
|
|
|
endif # GDB_GDBSERVER
|
|
|
|
|
|
|
|
if BARE_METAL
|
|
|
|
comment "In bare-metal, you'll need to "
|
|
|
|
comment "provide your own gdbserver stub."
|
|
|
|
endif # BARE_METAL
|