crosstool-ng/config/debug/gdb.in.native
Alexey Neyman 16d166c2c8 Force wide char support in uClibc if GDB8 is enabled
GDB8 (or rather gnulib that is a part of it) provides a fallback mbstate_t
definition - but GCC's C++ headers (which are used via stdint.h since GDB8
uses C++) provide another mbstate_t if libc does not have wide char support.
These two definitions conflict with each other.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-06-08 00:06:17 -07:00

41 lines
1.3 KiB
Plaintext

# Menu for the native GDB
config GDB_NATIVE
bool
prompt "Native gdb"
depends on ! BARE_METAL
depends on ! LIBC_bionic
depends on CC_LANG_CXX || !GDB_8_0_or_later
select LIBC_UCLIBC_WCHAR if LIBC_uClibc && GDB_8_0_or_later
select EXPAT_TARGET
select NCURSES_TARGET
help
Build and install a native gdb for the target, to run on the target.
if GDB_NATIVE
config GDB_NATIVE_STATIC
bool
prompt "Build a static native gdb"
depends on EXPERIMENTAL
help
In case you have trouble with dynamic loading of shared libraries,
you will find that a static gdb comes in handy.
However, it has been noticed at least on x86 that enabling this
option produces an invalid gdb 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
endif # GDB_NATIVE