source: trunk/libs/newlib/src/newlib/libc/machine/cris/sys/signal.h @ 444

Last change on this file since 444 was 444, checked in by satin@…, 6 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 2.4 KB
Line 
1/* This file is to be kept in sync (well, reasonably so, it's quite
2   different) with newlib/libc/include/sys/signal.h on which it is
3   based, except values used or returned by syscalls must be those of
4   the Linux/CRIS kernel.  */
5
6/* sys/signal.h */
7
8#ifndef _SYS_SIGNAL_H
9#define _SYS_SIGNAL_H
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#include "_ansi.h"
15
16typedef unsigned long sigset_t;
17
18/* Adjusted to linux, has unused sa_restorer field and unsigned long
19   sa_flags; relatively unimportant though.  */
20/* Type of a signal handler.  */
21typedef void (*__sighandler_t)(int);
22
23/* The type used in newlib sources.  */
24typedef __sighandler_t _sig_func_ptr;
25
26struct sigaction {
27        __sighandler_t sa_handler;
28        sigset_t sa_mask;
29        unsigned long sa_flags;
30        void (*sa_restorer)(void);
31};
32
33/* Adjusted to glibc; other values.  */
34#define SA_NOCLDSTOP 1  /* only value supported now for sa_flags */
35#define SIG_SETMASK 2   /* set mask with sigprocmask() */
36#define SIG_BLOCK 0     /* set of signals to block */
37#define SIG_UNBLOCK 1   /* set of signals to, well, unblock */
38
39/* These depend upon the type of sigset_t, which right now
40   is always a long.. They're in the POSIX namespace, but
41   are not ANSI. */
42#define sigaddset(what,sig) (*(what) |= (1<<(sig)))
43#define sigemptyset(what)   (*(what) = 0)
44
45int sigprocmask (int __how, const sigset_t *__a, sigset_t *__b);
46
47/* The first argument is really a pid_t, but that's just a typedef'd
48   int, so let's avoid requiring sys/types only for this declaration.  */
49int kill (int, int);
50
51#define SIGHUP           1
52#define SIGINT           2
53#define SIGQUIT          3
54#define SIGILL           4
55#define SIGTRAP          5
56#define SIGABRT          6
57#define SIGIOT           6
58#define SIGBUS           7
59#define SIGFPE           8
60#define SIGKILL          9
61#define SIGUSR1         10
62#define SIGSEGV         11
63#define SIGUSR2         12
64#define SIGPIPE         13
65#define SIGALRM         14
66#define SIGTERM         15
67#define SIGSTKFLT       16
68#define SIGCHLD         17
69#define SIGCONT         18
70#define SIGSTOP         19
71#define SIGTSTP         20
72#define SIGTTIN         21
73#define SIGTTOU         22
74#define SIGURG          23
75#define SIGXCPU         24
76#define SIGXFSZ         25
77#define SIGVTALRM       26
78#define SIGPROF         27
79#define SIGWINCH        28
80#define SIGIO           29
81#define SIGPOLL         SIGIO
82#define SIGPWR          30
83#define NSIG 31
84
85#ifdef __cplusplus
86}
87#endif
88#ifndef _SIGNAL_H_
89/* Some applications take advantage of the fact that <sys/signal.h>
90 * and <signal.h> are equivalent in glibc.  Allow for that here.  */
91#include <signal.h>
92#endif
93#endif /* _SYS_SIGNAL_H */
Note: See TracBrowser for help on using the repository browser.