*** empty log message ***
[bpt/emacs.git] / src / s / irix5-0.h
1 #include "usg5-4.h"
2
3 #define IRIX5
4
5 #undef sigsetmask /* use sys_sigsetmask */
6 #undef _longjmp /* use system versions, not conservative aliases */
7 #undef _setjmp
8
9 #define SETPGRP_RELEASES_CTTY
10
11 #ifdef LIBS_SYSTEM
12 #undef LIBS_SYSTEM
13 #endif
14
15 #ifdef LIB_STANDARD
16 #undef LIB_STANDARD
17 #endif
18
19 #ifdef SYSTEM_TYPE
20 #undef SYSTEM_TYPE
21 #endif
22 #define SYSTEM_TYPE "irix"
23
24 #ifdef SETUP_SLAVE_PTY
25 #undef SETUP_SLAVE_PTY
26 #endif
27
28 /* thomas@mathematik.uni-bremen.de says this is needed. */
29 /* Make process_send_signal work by "typing" a signal character on the pty. */
30 #define SIGNALS_VIA_CHARACTERS
31
32 /* Define HAVE_ALLOCA to say that the system provides a properly
33 working alloca function and it should be used. */
34 #define HAVE_ALLOCA
35 #undef C_ALLOCA
36
37 #ifndef NOT_C_CODE
38 #ifndef __GNUC__
39 #include <alloca.h>
40 #endif
41 #endif
42
43 /* SGI has all the fancy wait stuff, but we can't include sys/wait.h
44 because it defines BIG_ENDIAN and LITTLE_ENDIAN (ugh!.) Instead
45 we'll just define WNOHANG right here.
46 (An implicit decl is good enough for wait3.) */
47
48 /* #define WNOHANG 0x1 */
49
50 /* No need to use sprintf to get the tty name--we get that from _getpty. */
51 #ifdef PTY_TTY_NAME_SPRINTF
52 #undef PTY_TTY_NAME_SPRINTF
53 #endif
54 #define PTY_TTY_NAME_SPRINTF
55 /* No need to get the pty name at all. */
56 #ifdef PTY_NAME_SPRINTF
57 #undef PTY_NAME_SPRINTF
58 #endif
59 #define PTY_NAME_SPRINTF
60 #ifdef emacs
61 char *_getpty();
62 #endif
63 /* We need only try once to open a pty. */
64 #define PTY_ITERATION
65 /* Here is how to do it. */
66 #define PTY_OPEN \
67 { \
68 struct sigaction ocstat, cstat; \
69 char * name; \
70 sigemptyset(&cstat.sa_mask); \
71 cstat.sa_handler = SIG_DFL; \
72 cstat.sa_flags = 0; \
73 sigaction(SIGCLD, &cstat, &ocstat); \
74 name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0); \
75 sigaction(SIGCLD, &ocstat, (struct sigaction *)0); \
76 if (name == 0) \
77 return -1; \
78 if (fd < 0) \
79 return -1; \
80 if (fstat (fd, &stb) < 0) \
81 return -1; \
82 strcpy (pty_name, name); \
83 }
84
85 /* Since we use POSIX constructs in PTY_OPEN, we must force POSIX
86 throughout. */
87 #define POSIX_SIGNALS
88
89 /* Info from simon@lia.di.epfl.ch (Simon Leinen) suggests this is needed. */
90 #define GETPGRP_NO_ARG
91
92 /* Ulimit(UL_GMEMLIM) is busted... */
93 #define ULIMIT_BREAK_VALUE 0x14000000
94
95 /* Tell process_send_signal to use VSUSP instead of VSWTCH. */
96 #define PREFER_VSUSP
97
98 /* define MAIL_USE_FLOCK if the mailer uses flock
99 to interlock access to /usr/spool/mail/$USER.
100 The alternative is that a lock file named
101 /usr/spool/mail/$USER.lock. */
102
103 #define MAIL_USE_FLOCK
104
105 /* use K&R C */
106 #if 0
107 #ifndef __GNUC__
108 #define C_SWITCH_SYSTEM -cckr
109 #endif
110 #endif
111
112 /* -g used not to work on Irix unless you used gas, and since gcc
113 warns if you use it, turn off the warning. */
114 /* -g does now work, at least on recent Irix 6 versions with gcc 2.95;
115 I'm not sure about Irix 5 -- fx */
116 #ifdef __GNUC__
117 #define C_DEBUG_SWITCH
118 #endif
119
120 /* Prevent the variable ospeed from being defined by -lcurses
121 because it defines it with too few bytes. */
122 #define ospeed ospeed_
123
124 #define NARROWPROTO 1
125