xref: /plan9/sys/src/cmd/rc/unix.h (revision bad30d5d5a5510556b3d04cddb2a7590f26fb546)
1*bad30d5dSDavid du Colombier #undef _BSD_EXTENSION		/* avoid multiple def'n if predefined */
2*bad30d5dSDavid du Colombier #undef _PLAN9_SOURCE
3*bad30d5dSDavid du Colombier #undef _POSIX_SOURCE
4*bad30d5dSDavid du Colombier #undef _RESEARCH_SOURCE
5*bad30d5dSDavid du Colombier #undef _SUSV2_SOURCE
6*bad30d5dSDavid du Colombier 
7*bad30d5dSDavid du Colombier #define _BSD_EXTENSION
8*bad30d5dSDavid du Colombier #define _PLAN9_SOURCE
9*bad30d5dSDavid du Colombier #define _POSIX_SOURCE
10*bad30d5dSDavid du Colombier #define _RESEARCH_SOURCE
11*bad30d5dSDavid du Colombier #define _SUSV2_SOURCE
12*bad30d5dSDavid du Colombier 
13*bad30d5dSDavid du Colombier #include <stdlib.h>
14*bad30d5dSDavid du Colombier #include <stdarg.h>
15*bad30d5dSDavid du Colombier #include <string.h>
16*bad30d5dSDavid du Colombier #include <unistd.h>
17*bad30d5dSDavid du Colombier #include <fcntl.h>
18*bad30d5dSDavid du Colombier #include <signal.h>
19*bad30d5dSDavid du Colombier #include <inttypes.h>
20*bad30d5dSDavid du Colombier 
21*bad30d5dSDavid du Colombier #ifndef NSIG
22*bad30d5dSDavid du Colombier #define NSIG 32
23*bad30d5dSDavid du Colombier #endif
24*bad30d5dSDavid du Colombier 
25*bad30d5dSDavid du Colombier /* plan 9 compatibility */
26*bad30d5dSDavid du Colombier #define RFPROC 1
27*bad30d5dSDavid du Colombier #define RFFDG 1
28*bad30d5dSDavid du Colombier #define RFNOTEG 1
29*bad30d5dSDavid du Colombier 
30*bad30d5dSDavid du Colombier #define uintptr uintptr_t
31*bad30d5dSDavid du Colombier 
32*bad30d5dSDavid du Colombier char *strdup(const char *);
33*bad30d5dSDavid du Colombier 
34*bad30d5dSDavid du Colombier #define nil ((void*)0)
35*bad30d5dSDavid du Colombier 
36*bad30d5dSDavid du Colombier /* in case uchar, etc. are built-in types */
37*bad30d5dSDavid du Colombier #define uchar	_fmtuchar
38*bad30d5dSDavid du Colombier #define ushort	_fmtushort
39*bad30d5dSDavid du Colombier #define uint	_fmtuint
40*bad30d5dSDavid du Colombier #define ulong	_fmtulong
41*bad30d5dSDavid du Colombier #define vlong	_fmtvlong
42*bad30d5dSDavid du Colombier #define uvlong	_fmtuvlong
43*bad30d5dSDavid du Colombier 
44*bad30d5dSDavid du Colombier typedef unsigned char		uchar;
45*bad30d5dSDavid du Colombier typedef unsigned short		ushort;
46*bad30d5dSDavid du Colombier typedef unsigned int		uint;
47*bad30d5dSDavid du Colombier typedef unsigned long		ulong;
48*bad30d5dSDavid du Colombier typedef unsigned long long	uvlong;
49*bad30d5dSDavid du Colombier 
50*bad30d5dSDavid du Colombier #define OREAD	O_RDONLY
51*bad30d5dSDavid du Colombier #define OWRITE	O_WRONLY
52*bad30d5dSDavid du Colombier #define ORDWR	O_RDWR
53*bad30d5dSDavid du Colombier #define OCEXEC	0
54