瀏覽代碼

Joakim Tjernlund writes:

Hi Erik

It seems to me that __pthread_once and __pthread_initialize_minimal could be made
WEAKs with no stub. The code in rpc_thread.c and __uClibc_main.c appears to expect this.
Also, __pthread_return_0 __pthread_return_1 and __pthread_return_void can be static, not to
pollute the name space.

  Jocke
Eric Andersen 21 年之前
父節點
當前提交
2900ba4408
共有 2 個文件被更改,包括 7 次插入11 次删除
  1. 1 1
      libc/inet/rpc/rpc_thread.c
  2. 6 10
      libc/misc/pthread/weaks.c

+ 1 - 1
libc/inet/rpc/rpc_thread.c

@@ -35,7 +35,7 @@ __rpc_thread_destroy (void)
 }
 
 
-extern int __pthread_once (pthread_once_t *__once_control,
+extern int weak_function __pthread_once (pthread_once_t *__once_control,
 			   void (*__init_routine) (void));
 
 # define __libc_once_define(CLASS, NAME) \

+ 6 - 10
libc/misc/pthread/weaks.c

@@ -21,9 +21,9 @@
 #include <limits.h>
 #include <stdlib.h>
 
-extern int __pthread_return_0 __P ((void));
-extern int __pthread_return_1 __P ((void));
-extern void __pthread_return_void __P ((void));
+static int __pthread_return_0 __P ((void));
+static int __pthread_return_1 __P ((void));
+static void __pthread_return_void __P ((void));
 
 /**********************************************************************/
 /* Weaks for application/library use.
@@ -105,25 +105,21 @@ weak_alias (__pthread_return_0, __pthread_mutex_lock)
 weak_alias (__pthread_return_0, __pthread_mutex_trylock)
 weak_alias (__pthread_return_0, __pthread_mutex_unlock)
 
-/* Weaks used internally by the C library rpc code only. */
-weak_alias (__pthread_return_0, __pthread_once)
-weak_alias (__pthread_return_void, __pthread_initialize_minimal)
-
 /**********************************************************************/
 
-int
+static int
 __pthread_return_0 (void)
 {
   return 0;
 }
 
-int
+static int
 __pthread_return_1 (void)
 {
   return 1;
 }
 
-void
+static void
 __pthread_return_void (void)
 {
 }