annotate src/m/pmax.h @ 2227:8e7b4a0c1a81

[xemacs-hg @ 2004-08-21 17:05:49 by michaels] 2004-08-15 Jan Rychter <jwr@xemacs.org> * window-xemacs.el (really-set-window-configuration): deal gracefully with the case when the buffer previously saved in the configuration (and that we want to switch to) has been killed. Switch to the next buffer on the buffer-list in that case.
author michaels
date Sat, 21 Aug 2004 17:05:51 +0000
parents abe6d1db359e
children ecf1ebac70d8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 /* Synched up with: FSF 19.31. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 /* Machine description file for DEC MIPS machines. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 #include "mips.h"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 /* The following line tells the configuration script what sort of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 operating system this machine is likely to run.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 USUAL-OPSYS="note"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 NOTE-START
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 Use -opsystem=osf1 for OSF/1, and -opsystem=bsd4-3 otherwise.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 NOTE-END */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 #undef LIB_STANDARD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 #undef START_FILES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 #undef COFF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 #undef TERMINFO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 #define MAIL_USE_FLOCK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 #ifdef MACH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 #define START_FILES "pre-crt0.o /usr/lib/crt0.o"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 /* This line starts being needed with ultrix 4.0. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 /* You must delete it for version 3.1. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 #define START_FILES "pre-crt0.o /usr/lib/cmplrs/cc/crt0.o"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 /* Supposedly the following will overcome a kernel bug. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 #undef LD_SWITCH_MACHINE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 #undef DATA_START
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 #define DATA_START 0x10000000
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 #if 0
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 /* I don't see any such conflict in Ultrix 4.2, 4.2a, or 4.3. And
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 the relocating allocator is a real win. -JimB */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 /* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 on defining malloc itself. This should avoid conflicting with it. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 #define SYSTEM_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 /* Override what mips.h says about this. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 #undef LINKER
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 /* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 but it doesn't work right;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 and it causes hanging in read_process_output. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 #define BROKEN_O_NONBLOCK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 #if defined (OSF1) || defined (MACH)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 #undef C_ALLOCA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 #define HAVE_ALLOCA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 /* mcc@timessqr.gc.cuny.edu says this makes Emacs work with DECnet. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 #ifdef HAVE_LIBDNET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 #define LIBS_MACHINE "-ldnet"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 /* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 #undef KERNEL_FILE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 #define KERNEL_FILE "/vmunix"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 #ifndef MACH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 /* Jim Wilson writes:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 [...] The X11 include files that Dec distributes with Ultrix
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 are bogus.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 When __STDC__ is defined (which is true with gcc), the X11 include files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 try to define prototypes. The prototypes however use types which haven't
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 been defined yet, and thus we get syntax/parse errors.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 You can not fix this by changing the include files, because the prototypes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 create circular dependencies, in particular Xutil.h depends on types defined
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 in Xlib.h, and Xlib.h depends on types defined in Xutil.h. So, no matter
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 which order you try to include them in, it will still fail.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 Compiling with -DNeedFunctionPrototypes=0 will solve the problem by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 directly inhibiting the bad prototypes. This could perhaps just be put in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 an a Ultrix configuration file.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 Using the MIT X11 distribution instead of the one provided by Dec will
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 also solve the problem, but I doubt you can convince everyone to do this. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 /* Addendum: the MIT X11 distribution neglects to define certain symbols
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 when NeedFunctionPrototypes is 0, but still tries to use them when
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 NeedVarargsPrototypes is 1 (which is its default value). So if we're
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 going to disable non-variadic prototypes, we also need to disable
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 variadic prototypes. --kwzh@gnu.ai.mit.edu */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 #define C_SWITCH_X_MACHINE "-DNeedFunctionPrototypes=0 -DNeedVarargsPrototypes=0"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 /* XEmacs: the following does nothing at all any more due to cleanup
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 of the create_process() code. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 /* Enable a fix in process.c. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 #define SET_CHILD_PTY_PGRP