Rename our max_align_t to sxe_max_align_t
[sxemacs] / src / s / rtu.h
1 /* Definitions file for GNU Emacs running on RTU 3.0, ucb universe.
2    Copyright (C) 1986 Free Software Foundation, Inc.
3
4 This file is part of SXEmacs
5
6 SXEmacs is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 SXEmacs is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program.  If not, see <http://www.gnu.org/licenses/>. */
18
19
20 /* Synched up with: FSF 19.31. */
21
22 /*
23  *      Define symbols to identify the version of Unix this is.
24  *      Define all the symbols that apply correctly.
25  */
26
27 #define BSD4_2
28 #define BSD
29 #define RTU
30
31 /* SYSTEM_TYPE should indicate the kind of system you are using.
32  It sets the Lisp variable system-type.  */
33
34 #define SYSTEM_TYPE "rtu"
35
36 /* Letter to use in finding device name of first pty,
37   if system supports pty's.  'a' means it is /dev/ptya0  */
38
39 #define FIRST_PTY_LETTER 'z'    /* i.e. no PTY_LETTERs */
40
41 /*
42  *      Define HAVE_PTYS if the system supports pty devices.
43  */
44
45 #define HAVE_PTYS
46
47 /* If your system uses COFF (Common Object File Format) then define the
48    preprocessor symbol "COFF". */
49
50 #undef COFF
51
52 /* define MAIL_USE_FLOCK if the mailer uses flock
53    to interlock access to /usr/spool/mail/$USER.
54    The alternative is that a lock file named
55    /usr/spool/mail/$USER.lock.  */
56
57 #undef MAIL_USE_FLOCK
58
59 /* The symbol in the kernel where the load average is found
60    is named _avenrun.  */
61
62 #define LDAV_SYMBOL "_avenrun"
63 \f
64 /* Special hacks needed to make Emacs run on this system.  */
65
66 /* On RTU systems (like USG) the system calls are interruptible by signals
67  that the user program has elected to catch.  Thus the system call
68  must be retried in these cases.  To handle this without massive
69  changes in the source code, we remap the standard system call names
70  to names for our own functions in sysdep.c that do the system call
71  with retries. */
72
73 #define INTERRUPTIBLE_OPEN
74 #define INTERRUPTIBLE_IO
75
76 /* The "fsync" call on RTU versions 3.0 and 3.1 is badly broken!
77    This hack below isn't the best solution, but without it this
78    program will cause the whole system to hang!  !@#$#%$ Masscomp!  */
79
80 #define fsync(x) 0              /* "Comment out" fsync calls */
81
82 /* This is how to get the device name of the tty end of a pty.  */
83 #define PTY_TTY_NAME_SPRINTF                                    \
84         do {                                                    \
85                 int sz = snprintf (pty_name, sizeof(pty_name),  \
86                                    "/dev/ttyp%x", i);           \
87                 assert(sz>=0 && sz<sizeof(pty_name));           \
88         } while(0)
89
90 /* This is how to get the device name of the control end of a pty.  */
91 #define PTY_NAME_SPRINTF                                        \
92         do {                                                    \
93                 int sz = snprintf (pty_name, sizeof(pty_name),  \
94                                    "/dev/pty%x", i);            \
95                 assert(sz>=0 && sz<sizeof(pty_name));           \
96         } while(0)
97
98 /* Formerly "BSD_PGRPS" */
99
100 #define SIGIO_REQUIRES_SEPARATE_PROCESS_GROUP