blob: 080e38c4329c0c60bc8ac45ed8f5382e266a7e77 [file] [log] [blame]
/*
* fork.c
*
* This is normally just a syscall stub, but at least one system
* doesn't have sys_fork, only sys_clone...
*/
#include <sys/syscall.h>
#include <signal.h>
#include <unistd.h>
#ifdef __NR_fork
#ifdef __sparc__
_syscall0_forkish(pid_t,fork);
#else
_syscall0(pid_t,fork);
#endif
#else /* __NR_fork */
static inline _syscall2(pid_t,clone,unsigned long,flags,void *,newsp);
pid_t fork(void)
{
return clone(SIGCHLD, 0);
}
#endif /* __NR_fork */