summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-12-31 16:37:33 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2010-12-31 16:37:33 +0100
commita5b840d770cb5e9a06a8828e4756b776a10ca152 (patch)
tree96cd239719d43705a3e0945a8d5d042f0ac0c77b
parent6b51877976866dfb054c6fdcef0fe9844d6a4dad (diff)
revert common uClibc vfork implementation. the new one does not work with cris architecture
-rw-r--r--toolchain/uClibc/patches/revert-vfork.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches/revert-vfork.patch b/toolchain/uClibc/patches/revert-vfork.patch
new file mode 100644
index 000000000..29073c123
--- /dev/null
+++ b/toolchain/uClibc/patches/revert-vfork.patch
@@ -0,0 +1,41 @@
+diff -Nur uClibc-0.9.32-rc1.orig/libc/sysdeps/linux/common/vfork.c uClibc-0.9.32-rc1/libc/sysdeps/linux/common/vfork.c
+--- uClibc-0.9.32-rc1.orig/libc/sysdeps/linux/common/vfork.c 2010-12-17 20:05:17.000000000 +0100
++++ uClibc-0.9.32-rc1/libc/sysdeps/linux/common/vfork.c 2010-12-31 14:28:19.259431750 +0100
+@@ -4,30 +4,24 @@
+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+ */
+
++/* Trivial implementation for arches that lack vfork */
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/syscall.h>
+
+-extern __typeof(vfork) __vfork attribute_hidden;
+-
+-#ifdef __NR_vfork
+-
+-# define __NR___vfork __NR_vfork
+-_syscall0(pid_t, __vfork)
+-
+-weak_alias(__vfork,vfork)
+-libc_hidden_weak(vfork)
+-
+-#elif defined __ARCH_USE_MMU__ && defined __NR_fork
++#ifdef __ARCH_USE_MMU__
+
+-/* Trivial implementation for arches that lack vfork */
++#ifdef __NR_fork
++/* libc_hidden_proto(fork) */
+
++extern __typeof(vfork) __vfork attribute_hidden;
+ pid_t __vfork(void)
+ {
+ return fork();
+ }
+-
++/* libc_hidden_proto(vfork) */
+ weak_alias(__vfork,vfork)
+ libc_hidden_weak(vfork)
++#endif
+
+ #endif