diff options
| -rw-r--r-- | libpthread/nptl/Makefile.in | 2 | ||||
| -rw-r--r-- | libpthread/nptl/init.c | 6 | 
2 files changed, 7 insertions, 1 deletions
diff --git a/libpthread/nptl/Makefile.in b/libpthread/nptl/Makefile.in index d33656532..1e9f98cea 100644 --- a/libpthread/nptl/Makefile.in +++ b/libpthread/nptl/Makefile.in @@ -220,7 +220,7 @@ else  LDFLAGS-libpthread.so := $(LDFLAGS)  endif -LDFLAGS-libpthread.so += $(top_builddir)lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so $(top_builddir)lib/libdl-$(VERSION).so +LDFLAGS-libpthread.so += $(top_builddir)lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so $(top_builddir)lib/libdl-$(VERSION).so -Wl,-z,nodelete,-z,initfirst,-init=__pthread_initialize_minimal_internal  LIBS-libpthread.so := $(LIBS) diff --git a/libpthread/nptl/init.c b/libpthread/nptl/init.c index 44f2c86f1..b70de84fd 100644 --- a/libpthread/nptl/init.c +++ b/libpthread/nptl/init.c @@ -260,6 +260,12 @@ static bool __nptl_initial_report_events __attribute_used__;  void  __pthread_initialize_minimal_internal (void)  { +  static int initialized = 0; + +  if (initialized) +    return; +  initialized = 1; +  #ifndef SHARED    /* Unlike in the dynamically linked case the dynamic linker has not       taken care of initializing the TLS data structures.  */  | 
