__GI_*fork strong

Peter S. Mazinger ps.m at gmx.net
Thu Aug 24 18:52:31 UTC 2006


Hello!

No need to have weak __GI_[v]fork. Only [v]fork should be weak.

Peter

-- 
Peter S. Mazinger <ps dot m at gmx dot net>           ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2
-------------- next part --------------
Index: libc/sysdeps/linux/arm/vfork.S
===================================================================
--- libc/sysdeps/linux/arm/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/arm/vfork.S	(working copy)
@@ -51,5 +51,5 @@
 
 .size __vfork,.-__vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
 #endif
Index: libc/sysdeps/linux/bfin/vfork.S
===================================================================
--- libc/sysdeps/linux/bfin/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/bfin/vfork.S	(working copy)
@@ -17,4 +17,4 @@
 	rts;
 .size ___vfork,.-___vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/common/fork.c
===================================================================
--- libc/sysdeps/linux/common/fork.c	(revision 15976)
+++ libc/sysdeps/linux/common/fork.c	(working copy)
@@ -10,13 +10,11 @@
 #include "syscalls.h"
 #include <unistd.h>
 
-#ifdef __ARCH_USE_MMU__
-#ifdef __NR_fork
+#if defined __NR_fork && defined __ARCH_USE_MMU__
 extern __typeof(fork) __libc_fork;
 #define __NR___libc_fork __NR_fork
 _syscall0(pid_t, __libc_fork);
 libc_hidden_proto(fork)
-weak_alias(__libc_fork,fork)
+strong_alias(__libc_fork,fork)
 libc_hidden_weak(fork)
 #endif
-#endif
Index: libc/sysdeps/linux/common/vfork.c
===================================================================
--- libc/sysdeps/linux/common/vfork.c	(revision 15976)
+++ libc/sysdeps/linux/common/vfork.c	(working copy)
@@ -9,7 +9,7 @@
 #include <sys/types.h>
 #include <sys/syscall.h>
 
-#ifdef __NR_fork
+#if defined __NR_fork && defined __ARCH_USE_MMU__
 libc_hidden_proto(fork)
 
 extern __typeof(vfork) __vfork attribute_hidden;
@@ -18,6 +18,6 @@
     return fork();
 }
 libc_hidden_proto(vfork)
-weak_alias(__vfork,vfork)
+strong_alias(__vfork,vfork)
 libc_hidden_weak(vfork)
 #endif
Index: libc/sysdeps/linux/cris/fork.c
===================================================================
--- libc/sysdeps/linux/cris/fork.c	(revision 15976)
+++ libc/sysdeps/linux/cris/fork.c	(working copy)
@@ -15,5 +15,5 @@
      /* i dunno what the blurb above is useful for. we just return. */
 __asm__("ret\n\tnop");
 libc_hidden_proto(fork)
-weak_alias(__libc_fork,fork)
+strong_alias(__libc_fork,fork)
 libc_hidden_weak(fork)
Index: libc/sysdeps/linux/e1/vfork.c
===================================================================
--- libc/sysdeps/linux/e1/vfork.c	(revision 15976)
+++ libc/sysdeps/linux/e1/vfork.c	(working copy)
@@ -11,5 +11,5 @@
 #define __NR___vfork __NR_vfork
 attribute_hidden _syscall0(pid_t, __vfork);
 libc_hidden_proto(vfork)
-weak_alias(__vfork,vfork)
+strong_alias(__vfork,vfork)
 libc_hidden_weak(vfork)
Index: libc/sysdeps/linux/frv/vfork.S
===================================================================
--- libc/sysdeps/linux/frv/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/frv/vfork.S	(working copy)
@@ -44,4 +44,4 @@
        .size   __vfork,.-__vfork
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/h8300/vfork.S
===================================================================
--- libc/sysdeps/linux/h8300/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/h8300/vfork.S	(working copy)
@@ -38,4 +38,4 @@
 	jmp	@er1                     /* don't return,  just jmp directly */
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/i386/vfork.S
===================================================================
--- libc/sysdeps/linux/i386/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/i386/vfork.S	(working copy)
@@ -29,4 +29,4 @@
 .size __vfork,.-__vfork
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/i960/vfork.S
===================================================================
--- libc/sysdeps/linux/i960/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/i960/vfork.S	(working copy)
@@ -30,4 +30,4 @@
         ret
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/ia64/fork.S
===================================================================
--- libc/sysdeps/linux/ia64/fork.S	(revision 15976)
+++ libc/sysdeps/linux/ia64/fork.S	(working copy)
@@ -36,7 +36,7 @@
 	ret
 PSEUDO_END(__libc_fork)
 
-weak_alias (__libc_fork, __fork)
-libc_hidden_def (__fork)
+/*weak_alias (__libc_fork, __fork)
+libc_hidden_def (__fork)*/
 weak_alias (__libc_fork, fork)
-libc_hidden_weak (fork)
+libc_hidden_def (fork)
Index: libc/sysdeps/linux/ia64/vfork.S
===================================================================
--- libc/sysdeps/linux/ia64/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/ia64/vfork.S	(working copy)
@@ -41,4 +41,4 @@
 PSEUDO_END(__vfork)
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/m68k/vfork.S
===================================================================
--- libc/sysdeps/linux/m68k/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/m68k/vfork.S	(working copy)
@@ -42,4 +42,4 @@
 
 .size __vfork,.-__vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/microblaze/vfork.S
===================================================================
--- libc/sysdeps/linux/microblaze/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/microblaze/vfork.S	(working copy)
@@ -41,4 +41,4 @@
 	nop
 C_END(__vfork)
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/nios/vfork.S
===================================================================
--- libc/sysdeps/linux/nios/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/nios/vfork.S	(working copy)
@@ -51,4 +51,4 @@
 
 .size __vfork,.-__vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/nios2/vfork.S
===================================================================
--- libc/sysdeps/linux/nios2/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/nios2/vfork.S	(working copy)
@@ -53,4 +53,4 @@
 
 .size __vfork,.-__vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/powerpc/vfork.S
===================================================================
--- libc/sysdeps/linux/powerpc/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/powerpc/vfork.S	(working copy)
@@ -26,4 +26,4 @@
 .size __vfork,.-__vfork
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/sh/vfork.S
===================================================================
--- libc/sysdeps/linux/sh/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/sh/vfork.S	(working copy)
@@ -109,6 +109,6 @@
 
 .size   __vfork, .-__vfork
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
 
 #include "syscall_error.S"
Index: libc/sysdeps/linux/sparc/fork.S
===================================================================
--- libc/sysdeps/linux/sparc/fork.S	(revision 15976)
+++ libc/sysdeps/linux/sparc/fork.S	(working copy)
@@ -46,4 +46,4 @@
 
 .size __libc_fork,.-__libc_fork
 weak_alias(__libc_fork,fork)
-libc_hidden_weak(fork)
+libc_hidden_def(fork)
Index: libc/sysdeps/linux/sparc/vfork.S
===================================================================
--- libc/sysdeps/linux/sparc/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/sparc/vfork.S	(working copy)
@@ -52,4 +52,4 @@
 .size __vfork,.-__vfork
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/v850/vfork.S
===================================================================
--- libc/sysdeps/linux/v850/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/v850/vfork.S	(working copy)
@@ -39,4 +39,4 @@
 	jmp	[lp]			// error return
 C_END(__vfork)
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)
Index: libc/sysdeps/linux/x86_64/vfork.S
===================================================================
--- libc/sysdeps/linux/x86_64/vfork.S	(revision 15976)
+++ libc/sysdeps/linux/x86_64/vfork.S	(working copy)
@@ -56,4 +56,4 @@
 .size __vfork,.-__vfork
 
 weak_alias(__vfork,vfork)
-libc_hidden_weak(vfork)
+libc_hidden_def(vfork)


More information about the uClibc mailing list