Commit | Line | Data |
---|---|---|
3423be79 GM |
1 | /* Definitions file for GNU Emacs running on Silicon Graphics Irix system 6.5. |
2 | ||
acaf905b | 3 | Copyright (C) 1999-2012 Free Software Foundation, Inc. |
3423be79 GM |
4 | |
5 | This file is part of GNU Emacs. | |
6 | ||
4b158629 | 7 | GNU Emacs is free software: you can redistribute it and/or modify |
3423be79 | 8 | it under the terms of the GNU General Public License as published by |
4b158629 GM |
9 | the Free Software Foundation, either version 3 of the License, or |
10 | (at your option) any later version. | |
3423be79 GM |
11 | |
12 | GNU Emacs is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
4b158629 | 18 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
3423be79 GM |
19 | |
20 | ||
7fa3ed62 | 21 | #define IRIX6_5 /* used in m/iris4d */ |
1b231651 | 22 | #include "usg5-4-common.h" |
9d2818d6 | 23 | |
9d2818d6 DN |
24 | #undef _longjmp /* use system versions, not conservative aliases */ |
25 | #undef _setjmp | |
26 | ||
27 | #define SETPGRP_RELEASES_CTTY | |
28 | ||
9d2818d6 DN |
29 | #ifdef SYSTEM_TYPE |
30 | #undef SYSTEM_TYPE | |
31 | #endif | |
32 | #define SYSTEM_TYPE "irix" | |
33 | ||
34 | #ifdef SETUP_SLAVE_PTY | |
35 | #undef SETUP_SLAVE_PTY | |
36 | #endif | |
37 | ||
38 | /* thomas@mathematik.uni-bremen.de says this is needed. */ | |
39 | /* Make process_send_signal work by "typing" a signal character on the pty. */ | |
40 | #define SIGNALS_VIA_CHARACTERS | |
41 | ||
c3a398a1 | 42 | /* Letter to use in finding device name of first pty, |
e05aebe9 | 43 | if system supports pty's. 'a' means it is /dev/ptya0 */ |
c3a398a1 DN |
44 | #undef FIRST_PTY_LETTER |
45 | #define FIRST_PTY_LETTER 'q' | |
46 | ||
9d2818d6 | 47 | /* No need to use sprintf to get the tty name--we get that from _getpty. */ |
9d2818d6 DN |
48 | #define PTY_TTY_NAME_SPRINTF |
49 | /* No need to get the pty name at all. */ | |
50 | #ifdef PTY_NAME_SPRINTF | |
51 | #undef PTY_NAME_SPRINTF | |
52 | #endif | |
53 | #define PTY_NAME_SPRINTF | |
54 | #ifdef emacs | |
55 | char *_getpty(); | |
56 | #endif | |
57 | /* We need only try once to open a pty. */ | |
58 | #define PTY_ITERATION | |
59 | /* Here is how to do it. */ | |
60 | #define PTY_OPEN \ | |
61 | { \ | |
62 | struct sigaction ocstat, cstat; \ | |
57048744 | 63 | struct stat stb; \ |
9d2818d6 DN |
64 | char * name; \ |
65 | sigemptyset(&cstat.sa_mask); \ | |
66 | cstat.sa_handler = SIG_DFL; \ | |
67 | cstat.sa_flags = 0; \ | |
68 | sigaction(SIGCLD, &cstat, &ocstat); \ | |
69 | name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0); \ | |
70 | sigaction(SIGCLD, &ocstat, (struct sigaction *)0); \ | |
71 | if (name == 0) \ | |
72 | return -1; \ | |
73 | if (fd < 0) \ | |
74 | return -1; \ | |
75 | if (fstat (fd, &stb) < 0) \ | |
76 | return -1; \ | |
77 | strcpy (pty_name, name); \ | |
78 | } | |
79 | ||
9d2818d6 DN |
80 | /* Ulimit(UL_GMEMLIM) is busted... */ |
81 | #define ULIMIT_BREAK_VALUE 0x14000000 | |
82 | ||
83 | /* Tell process_send_signal to use VSUSP instead of VSWTCH. */ | |
84 | #define PREFER_VSUSP | |
85 | ||
9d2818d6 DN |
86 | #define NARROWPROTO 1 |
87 | ||
808903ab KH |
88 | #undef SA_RESTART |
89 | ||
1b231651 | 90 | #undef TIOCSIGSEND /* defined in usg5-4-common.h */ |
ab5796a9 | 91 | |
77c0df4f RS |
92 | /* Tested on Irix 6.5. SCM worked on earlier versions. */ |
93 | #define GC_SETJMP_WORKS 1 | |
76b397fb DN |
94 | |
95 | ||
96 | /* DATA_SEG_BITS forces extra bits to be or'd in with any pointers which | |
97 | were stored in a Lisp_Object (as Emacs uses fewer than 32 bits for | |
98 | the value field of a LISP_OBJECT). */ | |
99 | #define DATA_START 0x10000000 | |
100 | #define DATA_SEG_BITS 0x10000000 |