(LIBS): Link in shell32.lib.
[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 /* jpff@maths.bath.ac.uk reports `struct exception' is not defined
90 on this system, so inhibit use of matherr. */
91 #define NO_MATHERR
92
93 /* Info from simon@lia.di.epfl.ch (Simon Leinen) suggests this is needed. */
94 #define GETPGRP_NO_ARG
95
96 /* Ulimit(UL_GMEMLIM) is busted... */
97 #define ULIMIT_BREAK_VALUE 0x14000000
98
99 /* Tell process_send_signal to use VSUSP instead of VSWTCH. */
100 #define PREFER_VSUSP
101
102 /* Because unexsgi.c cannot handle a ".sbss" section yet, we must
103 tell the linker to avoid making one. SGI's cc does this by
104 default, but GCC (at least 2.5.8 and 2.6.0) doesn't. */
105 #ifdef __GNUC__
106 #define LD_SWITCH_SYSTEM -G 0
107 #endif
108
109 /* define MAIL_USE_FLOCK if the mailer uses flock
110 to interlock access to /usr/spool/mail/$USER.
111 The alternative is that a lock file named
112 /usr/spool/mail/$USER.lock. */
113
114 #define MAIL_USE_FLOCK
115
116 /* use K&R C */
117 #ifndef __GNUC__
118 #define C_SWITCH_SYSTEM -cckr
119 #endif
120
121 /* -g does not work on Irix, and since gcc warns if you use it,
122 turn off the warning. */
123 #ifdef __GNUC__
124 #define C_DEBUG_SWITCH
125 #endif
126
127 /* Prevent the variable ospeed from being defined by -lcurses
128 because it defines it with too few bytes. */
129 #define ospeed ospeed_