*** empty log message ***
[bpt/emacs.git] / src / s / irix5-0.h
CommitLineData
b7a11e21
RS
1#include "usg5-4.h"
2
aa724480
RS
3#define IRIX5
4
99487ce4
RS
5#undef sigsetmask /* use sys_sigsetmask */
6#undef _longjmp /* use system versions, not conservative aliases */
7#undef _setjmp
22549f8b 8
aa724480
RS
9#define SETPGRP_RELEASES_CTTY
10
7260e339
JB
11#ifdef LIBS_SYSTEM
12#undef LIBS_SYSTEM
13#endif
14
b7a11e21
RS
15#ifdef LIB_STANDARD
16#undef LIB_STANDARD
17#endif
18
7260e339
JB
19#ifdef SYSTEM_TYPE
20#undef SYSTEM_TYPE
21#endif
0c98c572 22#define SYSTEM_TYPE "irix"
7260e339
JB
23
24#ifdef SETUP_SLAVE_PTY
25#undef SETUP_SLAVE_PTY
26#endif
4ef37be4 27
77fb57d8
RS
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
4ef37be4
JB
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
b7a11e21
RS
36
37#ifndef NOT_C_CODE
38#ifndef __GNUC__
39#include <alloca.h>
40#endif
41#endif
4ef37be4 42
4ef37be4
JB
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
7260e339 48/* #define WNOHANG 0x1 */
4ef37be4
JB
49
50/* No need to use sprintf to get the tty name--we get that from _getpty. */
7260e339
JB
51#ifdef PTY_TTY_NAME_SPRINTF
52#undef PTY_TTY_NAME_SPRINTF
53#endif
4ef37be4
JB
54#define PTY_TTY_NAME_SPRINTF
55/* No need to get the pty name at all. */
7260e339
JB
56#ifdef PTY_NAME_SPRINTF
57#undef PTY_NAME_SPRINTF
58#endif
4ef37be4
JB
59#define PTY_NAME_SPRINTF
60#ifdef emacs
61char *_getpty();
62#endif
63/* We need only try once to open a pty. */
64#define PTY_ITERATION
65/* Here is how to do it. */
6e27eb5e
RS
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); \
4ef37be4 83}
6e27eb5e 84
434727b6
KH
85/* Since we use POSIX constructs in PTY_OPEN, we must force POSIX
86 throughout. */
87#define POSIX_SIGNALS
88
b7a11e21
RS
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
882d8079
RS
94
95/* Tell process_send_signal to use VSUSP instead of VSWTCH. */
96#define PREFER_VSUSP
0d55a560 97
503ffb1e
RS
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
001e1e47 105/* use K&R C */
9482c3ea 106#if 0
001e1e47
RS
107#ifndef __GNUC__
108#define C_SWITCH_SYSTEM -cckr
109#endif
9482c3ea 110#endif
87850793 111
df7c0cb4
DL
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 */
87850793
KH
116#ifdef __GNUC__
117#define C_DEBUG_SWITCH
118#endif
55ac4e93
RS
119
120/* Prevent the variable ospeed from being defined by -lcurses
121 because it defines it with too few bytes. */
122#define ospeed ospeed_
2327e4a0
GM
123
124#define NARROWPROTO 1
125