Subject corrected. Apologies. Andrew
On 03/06/10 14:26, Andrew Stubbs wrote:
This patch fixes some issues building SH uclibc with linuxthreads, that seem to have been introduced by the NPTL changes. Signed-off-by: Andrew Stubbs <[email protected]> --- diff --git a/libc/misc/internals/__uClibc_main.c b/libc/misc/internals/__uClibc_main.c index d821268..61f821d 100644 --- a/libc/misc/internals/__uClibc_main.c +++ b/libc/misc/internals/__uClibc_main.c @@ -36,6 +36,9 @@ #include <not-cancel.h> #include <atomic.h> #endif +#ifdef __UCLIBC_HAS_THREADS__ +#include <pthread.h> +#endif #ifndef SHARED diff --git a/libc/sysdeps/linux/sh/Makefile.arch b/libc/sysdeps/linux/sh/Makefile.arch index 3e32e10..727a3f4 100644 --- a/libc/sysdeps/linux/sh/Makefile.arch +++ b/libc/sysdeps/linux/sh/Makefile.arch @@ -10,3 +10,7 @@ CSRC := \ mmap.c pipe.c __init_brk.c brk.c sbrk.c pread_write.c longjmp.c cacheflush.c SSRC := setjmp.S __longjmp.S ___fpscr_values.S + +ifneq ($(UCLIBC_HAS_THREADS_NATIVE),y) +SSRC += vfork.S +endif \ No newline at end of file diff --git a/libc/sysdeps/linux/sh/longjmp.c b/libc/sysdeps/linux/sh/longjmp.c index dd0616d..cda4575 100644 --- a/libc/sysdeps/linux/sh/longjmp.c +++ b/libc/sysdeps/linux/sh/longjmp.c @@ -37,9 +37,11 @@ extern void _longjmp_unwind (jmp_buf env, int val); call there to return VAL, or 1 if VAL is 0. */ void __libc_siglongjmp (sigjmp_buf env, int val) { +#ifdef __UCLIBC_HAS_THREADS_NATIVE__ /* Perform any cleanups needed by the frames being unwound. */ _longjmp_unwind (env, val); +#endif if (env[0].__mask_was_saved) /* Restore the saved signal mask. */
_______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
