From f737dfd071f12584316ef90f2c71e33c2dc9801e Mon Sep 17 00:00:00 2001 From: Carlos O'Donell Date: Fri, 11 Apr 2014 12:43:58 -0400 Subject: Support _r_debug for static binaries. We initialize _r_debug for static binaries to allows debug agents to treat static binaries a little more like dyanmic ones. This simplifies the work a debug agent has to do to access TLS in a static binary via libthread_db. Tested on x86_64. See: https://sourceware.org/ml/libc-alpha/2014-04/msg00183.html [BZ #16831] * csu/libc-start.c (LIBC_START_MAIN) [!SHARED]: Call _dl_debug_initialize. --- csu/libc-start.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'csu') diff --git a/csu/libc-start.c b/csu/libc-start.c index 3b7092b359..d571a1aca9 100644 --- a/csu/libc-start.c +++ b/csu/libc-start.c @@ -264,6 +264,9 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), GLRO(dl_debug_printf) ("\ntransferring control: %s\n\n", argv[0]); #endif +#ifndef SHARED + _dl_debug_initialize (0, LM_ID_BASE); +#endif #ifdef HAVE_CLEANUP_JMP_BUF /* Memory for the cancellation buffer. */ struct pthread_unwind_buf unwind_buf; -- cgit v1.2.3