Mercurial > emacs
annotate src/s/dgux.h @ 23569:b1255c3676c7
fileio.c (init_fileio_once): New function.
author | Geoff Voelker <voelker@cs.washington.edu> |
---|---|
date | Fri, 30 Oct 1998 03:49:09 +0000 |
parents | 25c6c100c16b |
children | 63fd40a97a75 |
rev | line source |
---|---|
457 | 1 /* Definitions file for GNU Emacs running on Data General's DG/UX |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
2 version 4.32 upto and including 5.4.1. |
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
3 Copyright (C) 1994 Free Software Foundation, Inc. |
457 | 4 |
5 This file is part of GNU Emacs. | |
6 | |
7 GNU Emacs is free software; you can redistribute it and/or modify | |
8 it under the terms of the GNU General Public License as published by | |
3699 | 9 the Free Software Foundation; either version 2, or (at your option) |
457 | 10 any later version. |
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 | |
18 along with GNU Emacs; see the file COPYING. If not, write to | |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
13462
diff
changeset
|
19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
13462
diff
changeset
|
20 Boston, MA 02111-1307, USA. */ |
457 | 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 UNIPLUS */ | |
28 /* #define USG5 */ | |
29 /* #define USG */ | |
30 /* #define HPUX */ | |
31 /* #define UMAX */ | |
32 /* #define BSD4_1 */ | |
33 #define BSD4_2 | |
34 #define BSD4_3 | |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
35 #define BSD4_4 |
16222
e6423699f21c
Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents:
14186
diff
changeset
|
36 #define BSD_SYSTEM |
457 | 37 |
38 /* SYSTEM_TYPE should indicate the kind of system you are using. | |
39 It sets the Lisp variable system-type. */ | |
40 | |
5258
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
41 #define SYSTEM_TYPE "dgux" |
457 | 42 |
43 /* NOMULTIPLEJOBS should be defined if your system's shell | |
44 does not have "job control" (the ability to stop a program, | |
45 run some other program, then continue the first one). */ | |
46 | |
47 /* #define NOMULTIPLEJOBS */ | |
48 | |
49 /* Emacs can read input using SIGIO and buffering characters itself, | |
50 or using CBREAK mode and making C-g cause SIGINT. | |
51 The choice is controlled by the variable interrupt_input. | |
52 Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | |
53 | |
54 SIGIO can be used only on systems that implement it (4.2 and 4.3). | |
3591
507f64624555
Apply typo patches from Paul Eggert.
Jim Blandy <jimb@redhat.com>
parents:
3584
diff
changeset
|
55 CBREAK mode has two disadvantages |
457 | 56 1) At least in 4.2, it is impossible to handle the Meta key properly. |
57 I hear that in system V this problem does not exist. | |
58 2) Control-G causes output to be discarded. | |
59 I do not know whether this can be fixed in system V. | |
60 | |
61 Another method of doing input is planned but not implemented. | |
62 It would have Emacs fork off a separate process | |
63 to read the input and send it to the true Emacs process | |
64 through a pipe. | |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
65 |
457 | 66 */ |
67 | |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
68 #define INTERRUPT_INPUT |
457 | 69 |
70 /* | |
71 * Define HAVE_SOCKETS if the system supports sockets. | |
72 */ | |
73 | |
74 #define HAVE_SOCKETS | |
75 | |
76 /* | |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
77 * Define HAVE_UNIX_DOMAIN if the system supports Unix |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
78 * domain sockets. |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
79 */ |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
80 |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
81 #define HAVE_UNIX_DOMAIN |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
82 |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
83 /* |
457 | 84 * Define HAVE_PTYS if the system supports pty devices. |
85 */ | |
86 | |
87 #define HAVE_PTYS | |
88 | |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
89 /* (Assume) we do have vfork. */ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
90 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
91 #define HAVE_VFORK |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
92 |
457 | 93 /* |
94 * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | |
95 * The 4.2 opendir, etc., library functions. | |
96 */ | |
97 | |
98 /* #define NONSYSTEM_DIR_LIBRARY */ | |
99 | |
100 /* Define this symbol if your system has the functions bcopy, etc. */ | |
101 | |
102 #define BSTRING | |
103 | |
104 /* subprocesses should be defined if you want to | |
105 have code for asynchronous subprocesses | |
106 (as used in M-x compile and M-x shell). | |
107 This is generally OS dependent, and not supported | |
108 under most USG systems. */ | |
109 | |
110 #define subprocesses | |
111 | |
112 /* If your system uses COFF (Common Object File Format) then define the | |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
113 preprocessor symbol "COFF". |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
114 |
2318
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
115 DGUX can use either COFF or ELF; the default is ELF. |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
116 To compile for COFF (or BCS) use the TARGET_BINARY_INTERFACE |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
117 environment variable. */ |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
118 |
2318
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
119 #if defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
120 #undef ELF |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
121 #ifndef COFF |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
122 #define COFF |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
123 #endif /* COFF */ |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
124 #else /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
125 #undef COFF |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
126 #ifndef ELF |
2318
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
127 #define ELF |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
128 #endif /* ELF */ |
50737ca2fd45
Decide automatically whether to use COFF or ELF.
Richard M. Stallman <rms@gnu.org>
parents:
2302
diff
changeset
|
129 #endif /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
130 |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
131 #ifndef COFF /* People will probably find this apparently unreliable |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
132 till the NFS dumping bug is fixed. */ |
457 | 133 |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
134 /* It is possible to undump to ELF with DG/UX 5.4, but for revisions below |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
135 5.4.1 the undump MUST be done on a local file system, or the kernel will |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
136 panic. ELF executables have the advantage of using shared libraries, |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
137 while COFF executables will still work on 4.2x systems. */ |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
138 |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
139 #define UNEXEC unexelf.o |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
140 |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
141 /* This makes sure that all segments in the executable are undumped, |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
142 not just text, data, and bss. In the case of Mxdb and shared |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
143 libraries, additional information is stored in other sections. |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
144 It does not hurt to have this defined if you don't use Mxdb or |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
145 shared libraries. In fact, it makes no difference. */ |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
146 |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
147 /* Necessary for shared libraries and Mxdb debugging information. */ |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
148 #define USG_SHARED_LIBRARIES |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
149 #endif |
457 | 150 |
151 /* define MAIL_USE_FLOCK if the mailer uses flock | |
152 to interlock access to /usr/spool/mail/$USER. | |
153 The alternative is that a lock file named | |
154 /usr/spool/mail/$USER.lock. */ | |
155 | |
156 /* #define MAIL_USE_FLOCK */ | |
157 | |
158 /* Define CLASH_DETECTION if you want lock files to be written | |
159 so that Emacs can tell instantly when you try to modify | |
160 a file that someone else has modified in his Emacs. */ | |
161 | |
162 /* #define CLASH_DETECTION */ | |
163 | |
164 /* Define a replacement for the baud rate switch, since DG/UX uses a different | |
165 from BSD. */ | |
166 | |
167 #define BAUD_CONVERT { 0, 110, 134, 150, 300, 600, 1200, 1800, 2400, \ | |
168 4800, 9600, 19200, 38400 } | |
169 | |
170 /* | |
171 * Define NLIST_STRUCT if the system has nlist.h | |
172 */ | |
173 | |
174 #define NLIST_STRUCT | |
175 | |
176 /* | |
177 * Make WM Interface Compliant. | |
178 */ | |
179 | |
180 #define XICCC | |
181 | |
182 /* Here, on a separate page, add any special hacks needed | |
183 to make Emacs work on this system. For example, | |
184 you might define certain system call names that don't | |
185 exist on your system, or that do different things on | |
186 your system and must be used only through an encapsulation | |
187 (Which you should place, by convention, in sysdep.c). */ | |
188 | |
189 /* Some compilers tend to put everything declared static | |
190 into the initialized data area, which becomes pure after dumping Emacs. | |
191 On these systems, you must #define static as nothing to foil this. | |
192 Note that emacs carefully avoids static vars inside functions. */ | |
193 | |
194 /* #define static */ | |
195 | |
196 /* DG/UX SPECIFIC ADDITIONS TO TEMPLATE FOLLOW: */ | |
197 | |
198 /* Use the Berkeley flavors of the library routines, instead of System V. */ | |
199 | |
200 #define setpgrp(pid,pgrp) setpgrp2(pid,pgrp) | |
201 #define getpgrp(pid) getpgrp2(pid) | |
202 | |
203 /* Act like Berkeley. */ | |
204 | |
205 #define _setjmp(env) sigsetjmp(env,0) | |
206 #define _longjmp(env,val) longjmp(env,val) | |
207 | |
208 /* Use TERMINFO instead of termcap */ | |
209 | |
210 #define TERMINFO | |
211 | |
212 /* | |
5258
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
213 * Send signals to subprocesses using characters. |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
214 * |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
215 */ |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
216 |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
217 #define SIGNALS_VIA_CHARACTERS |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
218 |
8415001e90e2
(SYSTEM_TYPE): Make it dgux.
Richard M. Stallman <rms@gnu.org>
parents:
5094
diff
changeset
|
219 /* |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
220 * Define HAVE_TERMIOS since this is POSIX, |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
221 * for terminal control. Prevent redundant inclusion of termio.h. |
457 | 222 */ |
223 | |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
224 #define HAVE_TERMIOS |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
225 #define NO_TERMIO |
457 | 226 |
227 /* | |
228 * Use a Berkeley style sys/wait.h. | |
229 * This makes WIF* macros operate on structures instead of ints. | |
230 */ | |
231 | |
232 #define _BSD_WAIT_FLAVOR | |
233 | |
234 /* | |
235 * Use BSD and POSIX-style signals. This is crucial! | |
236 */ | |
237 | |
4995
51d0545729fa
(SYSTEM_MALLOC): Turn off.
Richard M. Stallman <rms@gnu.org>
parents:
4485
diff
changeset
|
238 /* #define SYSTEM_MALLOC */ |
3584
06708f4682d0
* s/dgux.h: Move #definition of SYSTEM_MALLOC outside of
Jim Blandy <jimb@redhat.com>
parents:
3544
diff
changeset
|
239 |
457 | 240 /* MAKING_MAKEFILE must be defined in "ymakefile" before including config.h */ |
13462
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
241 #ifndef NOT_C_CODE |
457 | 242 |
243 /* Make sure signal.h is included so macros below don't mess with it. */ | |
244 /* DG/UX include files prevent multiple inclusion. */ | |
245 | |
246 #include <signal.h> | |
247 | |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
248 /* but undefine the sigmask and sigpause macros since they will get |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
249 #define'd later. */ |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
250 #undef sigmask |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
251 #undef sigpause |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
252 |
457 | 253 #define POSIX_SIGNALS |
254 | |
255 /* Define this if you use System 5 Release 4 Streams */ | |
256 #define open sys_open | |
257 #define close sys_close | |
258 #define read sys_read | |
259 #define write sys_write | |
260 | |
3544
a1ccd96244f3
(INTERRUPTIBLE_*): Fix spelling of macros.
Richard M. Stallman <rms@gnu.org>
parents:
3318
diff
changeset
|
261 #define INTERRUPTIBLE_OPEN |
a1ccd96244f3
(INTERRUPTIBLE_*): Fix spelling of macros.
Richard M. Stallman <rms@gnu.org>
parents:
3318
diff
changeset
|
262 #define INTERRUPTIBLE_CLOSE |
457 | 263 /* can't hurt to define these, even though read/write should auto restart */ |
3544
a1ccd96244f3
(INTERRUPTIBLE_*): Fix spelling of macros.
Richard M. Stallman <rms@gnu.org>
parents:
3318
diff
changeset
|
264 #define INTERRUPTIBLE_IO |
457 | 265 |
18096
25c6c100c16b
(signal): Define only if not NO_DGUX_SIGNAL_REDEF.
Richard M. Stallman <rms@gnu.org>
parents:
16222
diff
changeset
|
266 #ifndef NO_DGUX_SIGNAL_REDEF |
457 | 267 /* Can't use sys_signal because then etc/server.c would need sysdep.o. */ |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
268 extern struct sigaction act, oact; |
457 | 269 #define signal(SIG,FUNC) berk_signal(SIG,FUNC) |
18096
25c6c100c16b
(signal): Define only if not NO_DGUX_SIGNAL_REDEF.
Richard M. Stallman <rms@gnu.org>
parents:
16222
diff
changeset
|
270 #endif |
457 | 271 |
13462
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
272 #endif /* not NOT_C_CODE */ |
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
273 |
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
274 #ifndef __GNUC__ |
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
275 #error You must use GCC to compiler Emascs on DGUX |
3096bad240b3
Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
Richard M. Stallman <rms@gnu.org>
parents:
10760
diff
changeset
|
276 #endif |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
277 |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
278 #define ORDINARY_LINK |
3600
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
279 #define START_FILES pre-crt0.o |
c0b91ff8928a
* s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
Jim Blandy <jimb@redhat.com>
parents:
3591
diff
changeset
|
280 #define LIB_GCC /usr/lib/gcc/libgcc.a |
3005
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
281 |
3046
965eb3b38ba2
(NO_GET_LOAD_AVG): Test _M88KBCS_TARGET, not __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
3005
diff
changeset
|
282 #ifdef _M88KBCS_TARGET |
3005
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
283 /* Karl Berry says: the environment |
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
284 recommended by gcc (88/open, a.k.a. m88kbcs) doesn't support some system |
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
285 functions, and gcc doesn't make it easy to switch environments. */ |
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
286 #define NO_GET_LOAD_AVG |
8a5b38421850
(NO_GET_LOAD_AVG): Define, if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
2318
diff
changeset
|
287 #endif |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
288 |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
289 /* definitions for xmakefile production */ |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
290 #ifdef COFF |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
291 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
292 /* Define the following to use all of the available pty's. */ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
293 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
294 #define PTY_ITERATION \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
295 for (c = 'p'; c < 't'; c++) \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
296 for (i = 0; (((c == 'p') && (i < 64)) || ((c != 'p') && (i < 16))); i++) |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
297 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
298 #define PTY_NAME_SPRINTF \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
299 if (c == 'p') \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
300 sprintf (pty_name, "/dev/pty%c%d", c, i); \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
301 else \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
302 sprintf (pty_name, "/dev/pty%c%x", c, i); |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
303 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
304 #define PTY_TTY_NAME_SPRINTF \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
305 if (c == 'p') \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
306 sprintf (pty_name, "/dev/tty%c%d", c, i); \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
307 else \ |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
308 sprintf (pty_name, "/dev/tty%c%x", c, i); |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
309 |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
310 #define C_DEBUG_SWITCH -g |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
311 |
2010
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
312 #else /* not COFF */ |
50b1987ff38a
(ELF): Handle this parameter.
Richard M. Stallman <rms@gnu.org>
parents:
1549
diff
changeset
|
313 |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
314 /* We are generating ELF object format. This makes the system more |
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
315 SVR4 like. */ |
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
316 |
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
317 #define SVR4 |
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
318 |
5094
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
319 /* Pseudo-terminal support under SVR4 only loops to deal with errors. */ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
320 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
321 #define PTY_ITERATION for (i = 0; i < 1; i++) |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
322 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
323 /* This sets the name of the master side of the PTY. */ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
324 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
325 #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
326 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
327 /* This sets the name of the slave side of the PTY. On SysVr4, |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
328 grantpt(3) forks a subprocess, so keep sigchld_handler() from |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
329 intercepting that death. If any child but grantpt's should die |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
330 within, it should be caught after sigrelse(2). */ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
331 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
332 #define PTY_TTY_NAME_SPRINTF \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
333 { \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
334 char *ptsname(), *ptyname; \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
335 \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
336 sigblock(sigmask(SIGCLD)); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
337 if (grantpt(fd) == -1) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
338 fatal("could not grant slave pty"); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
339 sigunblock(sigmask(SIGCLD)); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
340 if (unlockpt(fd) == -1) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
341 fatal("could not unlock slave pty"); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
342 if (!(ptyname = ptsname(fd))) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
343 fatal ("could not enable slave pty"); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
344 strncpy(pty_name, ptyname, sizeof(pty_name)); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
345 pty_name[sizeof(pty_name) - 1] = 0; \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
346 } |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
347 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
348 /* Push various streams modules onto a PTY channel. */ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
349 |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
350 #define SETUP_SLAVE_PTY \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
351 if (ioctl (xforkin, I_PUSH, "ptem") == -1) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
352 fatal ("ioctl I_PUSH ptem", errno); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
353 if (ioctl (xforkin, I_PUSH, "ldterm") == -1) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
354 fatal ("ioctl I_PUSH ldterm", errno); \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
355 if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \ |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
356 fatal ("ioctl I_PUSH ttcompat", errno); |
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
357 |
10209
6a4d66df8a31
(C_DEBUG_SWITCH): Define this only if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
8892
diff
changeset
|
358 #ifdef __GNUC__ |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
359 #define C_DEBUG_SWITCH -g -V2 -mversion-03.00 -mstandard |
10209
6a4d66df8a31
(C_DEBUG_SWITCH): Define this only if __GNUC__.
Richard M. Stallman <rms@gnu.org>
parents:
8892
diff
changeset
|
360 #endif |
5094
8b59fb13665e
(PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
Richard M. Stallman <rms@gnu.org>
parents:
5062
diff
changeset
|
361 |
7236
b7d077dccd9e
Remove the SVR4 macro. Move the kernel INTERRUPT_INPUT bug note to
Paul Reilly <pmr@pajato.com>
parents:
7131
diff
changeset
|
362 #endif /* ELF */ |
3601
d83673a740e8
* s/dgux.h (BROKEN_FASYNC): #define this.
Jim Blandy <jimb@redhat.com>
parents:
3600
diff
changeset
|
363 |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
364 /* Extra stuff which probably should be someplace else but is here out |
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
365 of expediency. */ |
4485 | 366 |
5008
0f979427b6ac
(INTERRUPT_INPUT): Undefined.
Richard M. Stallman <rms@gnu.org>
parents:
4995
diff
changeset
|
367 #define LIB_X11_LIB -lX11 |
10760
3d5e9b84bc8f
(LIB_MOTIF): Add -lgen to provide provide the symbols
Paul Reilly <pmr@pajato.com>
parents:
10209
diff
changeset
|
368 #define LIB_MOTIF -lXm -lgen |
5966 | 369 |
370 /* Process groups work in the traditional BSD manner. */ | |
371 | |
372 #define BSD_PGRPS |