ack/plat/osx/libsys/signal.c
George Koehler 02fb480217 Commit a preview of osx386 and osxppc as new platforms.
These produce Mach-o executables for Mac OS X on Intel or PowerPC
processors.  Our code generator for PowerPC (mach/powerpc) still has
bugs.  Some examples seem to run, but startrek crashes.  Our code
generator for Intel (mach/i386) is better.

There is a problem with job control.  If you run paranoia or startrek,
then suspend the job (^Z) and resume it ('fg' in bash), then read(2)
might fail with EINTR.

The larger files in this commit are
 - plat/osx/cvmach/cvmach.c
 - plat/osx/libsys/brk.c
 - plat/osx386/libsys/sigaction.s
 - plat/osxppc/libsys/sigaction.s
2016-10-02 14:58:05 -04:00

17 lines
286 B
C

#include <signal.h>
sig_t signal(int sig, sig_t func)
{
struct sigaction newsa, oldsa;
int i;
newsa.sa_handler = func;
newsa.sa_mask = 0; /* empty set */
newsa.sa_flags = SA_RESTART;
i = sigaction(sig, &newsa, &oldsa);
if (i < 0)
return SIG_ERR;
return oldsa.sa_handler;
}