From 04bbb6fdfae0b5bc9e39a6f51894796df0cd35fb Mon Sep 17 00:00:00 2001
From: "Peter S. Mazinger" <ps.m@gmx.net>
Date: Fri, 24 Mar 2006 13:45:02 +0000
Subject: Now new linuxthreads builds w/ SHARED

---
 libpthread/linuxthreads/ptfork.c                      | 3 ++-
 libpthread/linuxthreads/pthread.c                     | 8 ++++++--
 libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h | 8 --------
 3 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/libpthread/linuxthreads/ptfork.c b/libpthread/linuxthreads/ptfork.c
index 9e2eabf8d..853aeea92 100644
--- a/libpthread/linuxthreads/ptfork.c
+++ b/libpthread/linuxthreads/ptfork.c
@@ -78,7 +78,8 @@ pid_t __pthread_fork (struct fork_block *b)
   return pid;
 }
 
-#ifdef SHARED
+/* psm: have no idea why these are here, sjhill? */
+#if 0 /*def SHARED*/
 pid_t __fork (void)
 {
   return __libc_fork ();
diff --git a/libpthread/linuxthreads/pthread.c b/libpthread/linuxthreads/pthread.c
index 0874b325e..9eb89142d 100644
--- a/libpthread/linuxthreads/pthread.c
+++ b/libpthread/linuxthreads/pthread.c
@@ -449,7 +449,9 @@ __pthread_init_max_stacksize(void)
     }
 }
 
-#ifdef SHARED
+/* psm: we do not have any ld.so support yet
+ *	 remove the USE_TLS guard if nptl is added */
+#if defined SHARED && defined USE_TLS
 # if USE___THREAD
 /* When using __thread for this, we do it in libc so as not
    to give libpthread its own TLS segment just for this.  */
@@ -587,7 +589,9 @@ static void pthread_initialize(void)
   /* How many processors.  */
   __pthread_smp_kernel = is_smp_system ();
 
-#ifdef SHARED
+/* psm: we do not have any ld.so support yet
+ *	 remove the USE_TLS guard if nptl is added */
+#if defined SHARED && defined USE_TLS
   /* Transfer the old value from the dynamic linker's internal location.  */
   *__libc_dl_error_tsd () = *(*GL(dl_error_catch_tsd)) ();
   GL(dl_error_catch_tsd) = &__libc_dl_error_tsd;
diff --git a/libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h b/libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h
index 17c4b24b3..f81c22945 100644
--- a/libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h
+++ b/libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h
@@ -29,14 +29,6 @@
 #define __libc_current_sigrtmin_private __libc_current_sigrtmin
 #define __clone clone
 
-/* taken from ldsodefs.h, modified */
-#ifdef SHARED
-# define GL(name) _##name
-void (*_dl_rtld_lock_recursive) (void *);
-void (*_dl_rtld_unlock_recursive) (void *);
-void **(*_dl_error_catch_tsd) (void) __attribute__ ((const));
-#endif
-
 extern void *__libc_stack_end;
 extern int __cxa_atexit (void (*func) (void *), void *arg, void *d);
 
-- 
cgit v1.2.3