OSDN Git Service

pt-allocrtsig.c is irrelevant for now, remove related too, add libc_hidden_proto...
authorPeter S. Mazinger <ps.m@gmx.net>
Tue, 31 Jan 2006 22:32:17 +0000 (22:32 -0000)
committerPeter S. Mazinger <ps.m@gmx.net>
Tue, 31 Jan 2006 22:32:17 +0000 (22:32 -0000)
libpthread/linuxthreads/Makefile.in
libpthread/linuxthreads/forward.c
libpthread/linuxthreads/libc_pthread_init.c
libpthread/linuxthreads/manager.c
libpthread/linuxthreads/sysdeps/pthread/uClibc-glue.h

index abe59a8..2b6182d 100644 (file)
@@ -50,7 +50,6 @@ pthread_SRC := \
        rwlock semaphore sighandler signals specific spinlock
 pthread_SRC := $(patsubst %,$(libpthread_DIR)/%.c,$(pthread_SRC))
 
-#libpthread_shared_SRC := pt-allocrtsig
 libpthread_static_SRC := pthread_atfork
 libpthread_SRC := $(pthread_arch_SRC) $(pthread_linux_SRC) $(pthread_sysdep_SRC) $(pthread_SRC)
 libpthread_OBJ := $(patsubst $(libpthread_DIR)/%.c,$(libpthread_OUT)/%.o,$(libpthread_SRC))
@@ -69,14 +68,13 @@ libc-static-y += $(libpthread_OUT)/libc_pthread_init.o
 libc-shared-y += $(libpthread_libc_OBJ:.o=.oS)
 
 libpthread-static-y += $(patsubst %,$(libpthread_OUT)/%.o,$(libpthread_static_SRC))
-libpthread-shared-y += $(patsubst %,$(libpthread_OUT)/%.oS,$(libpthread_shared_SRC))
 
 ifeq ($(DOPIC),y)
 libpthread-a-y  += $(libpthread_OBJ:.o=.os) $(libpthread-static-y:.o=.os)
 else
 libpthread-a-y  += $(libpthread_OBJ) $(libpthread-static-y)
 endif
-libpthread-so-y += $(libpthread_OBJ:.o=.os) $(libpthread-shared-y)
+libpthread-so-y += $(libpthread_OBJ:.o=.os)
 
 lib-a-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.a
 lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.so
@@ -101,7 +99,7 @@ else
 endif
        $(do_ar)
 
-$(libpthread_OUT)/libpthread.oS: $(libpthread_SRC) $(patsubst %,$(libpthread_DIR)/%.c,$(libpthread_shared_SRC))
+$(libpthread_OUT)/libpthread.oS: $(libpthread_SRC)
        $(Q)$(RM) $@
        $(compile-m)
 ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
index bec2297..96fef59 100644 (file)
    02111-1307 USA.  */
 
 #include <dlfcn.h>
-#include "internals.h"
 #include <stdlib.h>
 
+/* psm: keep this before internals.h */
+libc_hidden_proto(exit)
+#include "internals.h"
 
 /* Pointers to the libc functions.  */
 struct pthread_functions __libc_pthread_functions attribute_hidden;
index b42751a..5a43eac 100644 (file)
 #endif
 #include "internals.h"
 
+#ifdef SHARED
+libc_hidden_proto(memcpy)
+#endif
+#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__
+libc_hidden_proto(uselocale)
+#endif
+
 int *
 __libc_pthread_init (functions)
      const struct pthread_functions *functions;
@@ -37,10 +44,10 @@ __libc_pthread_init (functions)
          sizeof (__libc_pthread_functions));
 #endif
 
-#if !(USE_TLS && HAVE___THREAD)
+#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__
   /* Initialize thread-locale current locale to point to the global one.
      With __thread support, the variable's initializer takes care of this.  */
-  __uselocale (LC_GLOBAL_LOCALE);
+  uselocale (LC_GLOBAL_LOCALE);
 #endif
 
   return &__libc_multiple_threads;
index d854610..444c481 100644 (file)
@@ -38,6 +38,9 @@
 #include <not-cancel.h>
 
 #define __clone clone
+#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__
+#define __uselocale(x) uselocale(x)
+#endif
 
 /* For debugging purposes put the maximum number of threads in a variable.  */
 const int __linuxthreads_pthread_threads_max = PTHREAD_THREADS_MAX;
@@ -291,7 +294,7 @@ pthread_start_thread(void *arg)
       __sched_setscheduler(THREAD_GETMEM(self, p_pid),
                            SCHED_OTHER, &default_params);
     }
-#if !(USE_TLS && HAVE___THREAD)
+#if !(USE_TLS && HAVE___THREAD) && defined __UCLIBC_HAS_XLOCALE__
   /* Initialize thread-locale current locale to point to the global one.
      With __thread support, the variable's initializer takes care of this.  */
   __uselocale (LC_GLOBAL_LOCALE);
index 51162b9..094c7fc 100644 (file)
@@ -8,18 +8,10 @@
 #ifdef IS_IN_libpthread
 #include "kernel-features.h"
 
-#ifndef _GNU_SOURCE
-# define _GNU_SOURCE
-#endif
-
 #ifndef __GLIBC_HAVE_LONG_LONG
 # define __GLIBC_HAVE_LONG_LONG
 #endif
 
-#ifndef __UCLIBC_HAS_XLOCALE__
-# define __uselocale(x)
-#endif
-
 #define __getpagesize getpagesize
 #define __sched_get_priority_max sched_get_priority_max
 #define __sched_get_priority_min sched_get_priority_min