From e029f5e73de2c195d0a87e5816f28fb09594e80f Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 19 May 2010 15:59:50 -0700 Subject: mips: Add vfork to libc * When using NPTL get clone.o from nptl. * Only use vfork if syscall is there. * Add libc_a_SSRC to LINUX_LIBC_ARCH_OBJ. * Use CLEAN_* for clean target. Signed-off-by: Khem Raj --- libc/sysdeps/linux/mips/Makefile.arch | 4 +++- libc/sysdeps/linux/mips/vfork.S | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'libc') diff --git a/libc/sysdeps/linux/mips/Makefile.arch b/libc/sysdeps/linux/mips/Makefile.arch index 73e64991c..e8925e438 100644 --- a/libc/sysdeps/linux/mips/Makefile.arch +++ b/libc/sysdeps/linux/mips/Makefile.arch @@ -10,15 +10,17 @@ CSRC := \ cacheflush.c pread_write.c sysmips.c _test_and_set.c \ readahead.c +SSRC := bsd-_setjmp.S bsd-setjmp.S setjmp.S syscall.S pipe.S + ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y) CSRC += posix_fadvise.c posix_fadvise64.c endif ifneq ($(UCLIBC_HAS_THREADS_NATIVE),y) CSRC += sigaction.c +SSRC += vfork.S clone.S endif -SSRC := bsd-_setjmp.S bsd-setjmp.S setjmp.S clone.S syscall.S pipe.S ARCH_HEADERS := sgidefs.h # regdef.h diff --git a/libc/sysdeps/linux/mips/vfork.S b/libc/sysdeps/linux/mips/vfork.S index 8400df052..b30744759 100644 --- a/libc/sysdeps/linux/mips/vfork.S +++ b/libc/sysdeps/linux/mips/vfork.S @@ -29,6 +29,7 @@ #define RESTORE_PID #endif +#ifdef __NR_fork /* int vfork() */ @@ -93,5 +94,7 @@ L(error): #endif END(__vfork) -.weak vfork; - vfork = __vfork +weak_alias(__vfork,vfork) +libc_hidden_weak(vfork) + +#endif -- cgit v1.2.3