Sync to HEAD
[bpt/emacs.git] / src / s / irix4-0.h
CommitLineData
66c7840d
RS
1#include "irix3-3.h"
2
3#define USG5_3
2b80da0a 4#define IRIX4
92ab4af6
RS
5/* XPointer is not defined in the older X headers -- JPff@maths.bath.ac.uk */
6#define XPointer caddr_t
66c7840d 7
f4531fd6 8#undef NEED_SIOCTL
66c7840d 9
e79a0e1b
RS
10/* Include unistd.h, even though we don't define POSIX. */
11#define NEED_UNISTD_H
12
42084123
RS
13/* Make process_send_signal work by "typing" a signal character on the pty. */
14#define SIGNALS_VIA_CHARACTERS
15
dcb70223 16#ifndef __GNUC__
b3bd5cbc
RS
17/* use K&R C */
18/* We need to increase the expression tree space with -Wf,-XNh
19 (ghazi@caip.rutgers.edu 7/8/97.)
20*/
620e6ddb 21#define C_SWITCH_SYSTEM -cckr -Wf,-XNh4000
dcb70223 22#endif
66c7840d
RS
23
24/* SGI has all the fancy wait stuff, but we can't include sys/wait.h
25 because it defines BIG_ENDIAN and LITTLE_ENDIAN (ugh!.) Instead
26 we'll just define WNOHANG right here.
27 (An implicit decl is good enough for wait3.) */
28
29#define WNOHANG 0x1
30
31/* No need to use sprintf to get the tty name--we get that from _getpty. */
00c582c7 32#undef PTY_TTY_NAME_SPRINTF
66c7840d
RS
33#define PTY_TTY_NAME_SPRINTF
34/* No need to get the pty name at all. */
35#define PTY_NAME_SPRINTF
66c7840d
RS
36/* We need only try once to open a pty. */
37#define PTY_ITERATION
38/* Here is how to do it. */
39/* It is necessary to prevent SIGCHLD signals within _getpty.
40 So we block them. */
41#define PTY_OPEN \
42{ \
43 int mask = sigblock (sigmask (SIGCHLD)); \
44 char *name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0); \
45 sigsetmask(mask); \
46 if (name == 0) \
47 return -1; \
48 if (fd < 0) \
49 return -1; \
50 if (fstat (fd, &stb) < 0) \
51 return -1; \
52 strcpy (pty_name, name); \
53}
6b61353c
KH
54
55/* arch-tag: cfd7e200-a4dc-4f67-9a32-4184c10b0c57
56 (do not change this comment) */