(__libc_global_ctors): Call __pthread_initialize_minimal if this
authordrepper <drepper>
Thu, 27 Apr 2000 20:12:54 +0000 (20:12 +0000)
committerdrepper <drepper>
Thu, 27 Apr 2000 20:12:54 +0000 (20:12 +0000)
function is available.

elf/soinit.c

index 1dee73c..7db054e 100644 (file)
@@ -40,6 +40,9 @@ extern void __deregister_frame (const void *);
 # endif
 #endif
 
+/* We have to initialize the thread library at least if bit.  */
+extern void __pthread_initialize_minimal (void) __attribute__ ((weak));
+
 /* This function will be called from _init in init-first.c.  */
 void
 __libc_global_ctors (void)
@@ -48,6 +51,11 @@ __libc_global_ctors (void)
   run_hooks (__CTOR_LIST__);
 #ifdef HAVE_DWARF2_UNWIND_INFO
 # ifdef HAVE_DWARF2_UNWIND_INFO_STATIC
+  /* Initialize the thread library at least a bit since the libgcc functions
+     are using thread functions if these are available.  */
+  if (__pthread_initialize_minimal)
+    __pthread_initialize_minimal ();
+
   {
     static struct object ob;
     __register_frame_info (__EH_FRAME_BEGIN__, &ob);