Skip to content

Commit

Permalink
Mark static gdb/gdbserver EXPERIMENTAL
Browse files Browse the repository at this point in the history
... and default to 'n'.

Signed-off-by: Alexey Neyman <stilor@att.net>
  • Loading branch information
stilor committed Mar 16, 2017
1 parent 75d968a commit 061765c
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 3 deletions.
19 changes: 17 additions & 2 deletions config/debug/gdb.in.gdbserver
Expand Up @@ -15,15 +15,30 @@ config GDB_GDBSERVER_HAS_IPA_LIB
depends on GDB_7_2_or_later
default y

# gdbserver is then linked with "-static -Wl,--dynamic-list=..." which
config GDB_GDBSERVER_STATIC
bool
prompt "Build a static gdbserver"
depends on CONFIGURE_has_static_link
default y
depends on EXPERIMENTAL
help
In case you have trouble with dynamic loading of shared libraries,
you will find that a static gdbserver comes in handy.

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

config GDB_GDBSERVER_BUILD_IPA_LIB
bool
prompt "Build the IPA library"
Expand Down
17 changes: 16 additions & 1 deletion config/debug/gdb.in.native
Expand Up @@ -15,9 +15,24 @@ if GDB_NATIVE
config GDB_NATIVE_STATIC
bool
prompt "Build a static native gdb"
depends on CONFIGURE_has_static_link
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

0 comments on commit 061765c

Please sign in to comment.