[git commit] Revert "sparc: disable cancellable system, as it fails in strange ways right now"

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Thu Aug 28 10:38:34 UTC 2014


commit: http://git.uclibc.org/uClibc/commit/?id=789fca90bff0b0bcd658444cea6afd4cdb43dc5d
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

This reverts commit 1db4f8f8389f6a935ecd83aff7fcce5d1cf2c0f3.

It is unclear in which way this is breaking sparc systems.
With this change added you get following linking error:
libpthread/nptl/libpthread_so.a(pt-system.oS): In function `__libc_system':
libc/stdlib/system.c:64: undefined reference to `__wait4_nocancel'

Signed-off-by: Waldemar Brodkorb <wbx at openadk.org>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 libc/stdlib/system.c |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/libc/stdlib/system.c b/libc/stdlib/system.c
index 151a229..8c5d25d 100644
--- a/libc/stdlib/system.c
+++ b/libc/stdlib/system.c
@@ -18,13 +18,14 @@
 #include <sysdep-cancel.h>
 #endif
 
-extern __typeof(system) __libc_system;
-
-/* TODO: the cancellable version breaks on sparc currently,
- * need to figure out why still
- */
-#if !defined __UCLIBC_HAS_THREADS_NATIVE__ || defined __sparc__
+#if !defined __UCLIBC_HAS_THREADS_NATIVE__
+/* uClinux-2.0 has vfork, but Linux 2.0 doesn't */
+#include <sys/syscall.h>
+#ifndef __NR_vfork
+# define vfork fork
+#endif
 
+extern __typeof(system) __libc_system;
 int __libc_system(const char *command)
 {
 	int wait_val, pid;


More information about the uClibc-cvs mailing list