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