Mercurial > emacs
annotate src/m/pmax.h @ 42254:ffef7ba0b65d
(view-order-manuals, view-emacs-news, describe-copying)
(describe-distribution, describe-project): Use view-file.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 22 Dec 2001 01:27:19 +0000 |
parents | 325eddf4eb21 |
children | 4be8406ebef9 |
rev | line source |
---|---|
1113 | 1 /* Machine description file for DEC MIPS machines. */ |
2 | |
456 | 3 #include "mips.h" |
4 | |
5 /* The following line tells the configuration script what sort of | |
6 operating system this machine is likely to run. | |
1113 | 7 USUAL-OPSYS="note" |
8 | |
9 NOTE-START | |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
10 The operating system would be either osf1, ultrix, or NetBSD. |
1113 | 11 NOTE-END */ |
456 | 12 |
9095
23f72b18b420
(WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents:
8892
diff
changeset
|
13 #undef WORDS_BIG_ENDIAN |
1113 | 14 #undef LIB_STANDARD |
15 #undef START_FILES | |
16 #undef COFF | |
17 #undef TERMINFO | |
18 #define MAIL_USE_FLOCK | |
19 #define HAVE_UNION_WAIT | |
456 | 20 |
12419
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
21 |
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
22 #ifdef MACH |
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
23 #define START_FILES pre-crt0.o /usr/lib/crt0.o |
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
24 #else |
456 | 25 /* This line starts being needed with ultrix 4.0. */ |
1113 | 26 /* You must delete it for version 3.1. */ |
456 | 27 #define START_FILES pre-crt0.o /usr/lib/cmplrs/cc/crt0.o |
12419
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
28 #endif |
456 | 29 |
19795
319a43900b56
Test __OpenBSD__ along with __NetBSD__.
Richard M. Stallman <rms@gnu.org>
parents:
16484
diff
changeset
|
30 #if defined (__NetBSD__) || defined (__OpenBSD__) |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
31 #undef START_FILES |
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
32 #undef RUN_TIME_REMAP |
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
33 #undef UNEXEC |
27923
325eddf4eb21
(START_FILES, CANNOT_DUMP) [__NetBSD__ || __OpenBSD__]: Don't define.
Gerd Moellmann <gerd@gnu.org>
parents:
19795
diff
changeset
|
34 #define UNEXEC unexelf.o |
19795
319a43900b56
Test __OpenBSD__ along with __NetBSD__.
Richard M. Stallman <rms@gnu.org>
parents:
16484
diff
changeset
|
35 #endif /* NetBSD || OpenBSD */ |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
36 |
456 | 37 /* Supposedly the following will overcome a kernel bug. */ |
38 #undef LD_SWITCH_MACHINE | |
39 #undef DATA_START | |
40 #define DATA_START 0x10000000 | |
41 #define DATA_SEG_BITS 0x10000000 | |
42 | |
1582
689f1697d285
* m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents:
1113
diff
changeset
|
43 #if 0 |
689f1697d285
* m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents:
1113
diff
changeset
|
44 /* I don't see any such conflict in Ultrix 4.2, 4.2a, or 4.3. And |
689f1697d285
* m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents:
1113
diff
changeset
|
45 the relocating allocator is a real win. -JimB */ |
689f1697d285
* m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents:
1113
diff
changeset
|
46 |
456 | 47 /* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist |
48 on defining malloc itself. This should avoid conflicting with it. */ | |
49 #define SYSTEM_MALLOC | |
1582
689f1697d285
* m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents:
1113
diff
changeset
|
50 #endif |
1113 | 51 |
12419
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
52 /* Override what mips.h says about this. */ |
27923
325eddf4eb21
(START_FILES, CANNOT_DUMP) [__NetBSD__ || __OpenBSD__]: Don't define.
Gerd Moellmann <gerd@gnu.org>
parents:
19795
diff
changeset
|
53 #if !defined (__NetBSD__) |
1113 | 54 #undef LINKER |
27923
325eddf4eb21
(START_FILES, CANNOT_DUMP) [__NetBSD__ || __OpenBSD__]: Don't define.
Gerd Moellmann <gerd@gnu.org>
parents:
19795
diff
changeset
|
55 #endif |
1113 | 56 |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
57 #ifdef ultrix |
1113 | 58 /* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK |
59 but it doesn't work right; | |
60 and it causes hanging in read_process_output. */ | |
61 #define BROKEN_O_NONBLOCK | |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
62 #endif |
1113 | 63 |
12419
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
64 #if defined (OSF1) || defined (MACH) |
1113 | 65 #undef C_ALLOCA |
66 #define HAVE_ALLOCA | |
67 #endif | |
3396
56ffd7d79f05
(LIBS_MACHINE): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
1582
diff
changeset
|
68 |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
69 #ifndef __NetBSD__ |
3571
6c1a1b79536c
* config.h.in (HAVE_LIBDNET): New macro, to be defined by
Jim Blandy <jimb@redhat.com>
parents:
3406
diff
changeset
|
70 /* mcc@timessqr.gc.cuny.edu says this makes Emacs work with DECnet. */ |
6c1a1b79536c
* config.h.in (HAVE_LIBDNET): New macro, to be defined by
Jim Blandy <jimb@redhat.com>
parents:
3406
diff
changeset
|
71 #ifdef HAVE_LIBDNET |
3396
56ffd7d79f05
(LIBS_MACHINE): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
1582
diff
changeset
|
72 #define LIBS_MACHINE -ldnet |
3571
6c1a1b79536c
* config.h.in (HAVE_LIBDNET): New macro, to be defined by
Jim Blandy <jimb@redhat.com>
parents:
3406
diff
changeset
|
73 #endif |
3403 | 74 |
3406
829998469d86
(KERNEL_FILE): New override definition.
Richard M. Stallman <rms@gnu.org>
parents:
3403
diff
changeset
|
75 /* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a. */ |
3403 | 76 #undef KERNEL_FILE |
3406
829998469d86
(KERNEL_FILE): New override definition.
Richard M. Stallman <rms@gnu.org>
parents:
3403
diff
changeset
|
77 #define KERNEL_FILE "/vmunix" |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
78 #endif |
4001
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
79 |
16484
96df462c5f15
(BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents:
14036
diff
changeset
|
80 #ifdef ultrix |
4001
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
81 /* Jim Wilson writes: |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
82 [...] The X11 include files that Dec distributes with Ultrix |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
83 are bogus. |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
84 |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
85 When __STDC__ is defined (which is true with gcc), the X11 include files |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
86 try to define prototypes. The prototypes however use types which haven't |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
87 been defined yet, and thus we get syntax/parse errors. |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
88 |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
89 You can not fix this by changing the include files, because the prototypes |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
90 create circular dependencies, in particular Xutil.h depends on types defined |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
91 in Xlib.h, and Xlib.h depends on types defined in Xutil.h. So, no matter |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
92 which order you try to include them in, it will still fail. |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
93 |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
94 Compiling with -DNeedFunctionPrototypes=0 will solve the problem by |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
95 directly inhibiting the bad prototypes. This could perhaps just be put in |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
96 an a Ultrix configuration file. |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
97 |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
98 Using the MIT X11 distribution instead of the one provided by Dec will |
20abae0de304
* m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents:
3571
diff
changeset
|
99 also solve the problem, but I doubt you can convince everyone to do this. */ |
6889
8b9decfed36f
(C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents:
5256
diff
changeset
|
100 /* Addendum: the MIT X11 distribution neglects to define certain symbols |
8b9decfed36f
(C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents:
5256
diff
changeset
|
101 when NeedFunctionPrototypes is 0, but still tries to use them when |
14036 | 102 NeedVarargsPrototypes is 1 (which is its default value). So if we're |
6889
8b9decfed36f
(C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents:
5256
diff
changeset
|
103 going to disable non-variadic prototypes, we also need to disable |
8b9decfed36f
(C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents:
5256
diff
changeset
|
104 variadic prototypes. --kwzh@gnu.ai.mit.edu */ |
8b9decfed36f
(C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents:
5256
diff
changeset
|
105 #define C_SWITCH_X_MACHINE -DNeedFunctionPrototypes=0 -DNeedVarargsPrototypes=0 |
12419
818d7bcf63b0
[MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents:
9095
diff
changeset
|
106 #endif |
5256
cd8db400928f
(SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
4001
diff
changeset
|
107 |
cd8db400928f
(SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
4001
diff
changeset
|
108 /* Enable a fix in process.c. */ |
cd8db400928f
(SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
4001
diff
changeset
|
109 #define SET_CHILD_PTY_PGRP |