annotate src/m/pmax.h @ 24841:d2d412758428

(clear_cached_bitmap_slots): Remove. (get_bitmap_with_cache): Check if CreateBitmap failed. Adjust cache size dynamically so cache is never larger than the system limit of GDI resources. Do cache clearing inline. Move global variables to local scope.
author Jason Rumney <jasonr@gnu.org>
date Sun, 13 Jun 1999 17:49:12 +0000
parents 319a43900b56
children 325eddf4eb21
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
1 /* Machine description file for DEC MIPS machines. */
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
2
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3 #include "mips.h"
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5 /* The following line tells the configuration script what sort of
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
6 operating system this machine is likely to run.
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
7 USUAL-OPSYS="note"
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
8
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
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
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
11 NOTE-END */
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
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
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
14 #undef LIB_STANDARD
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
15 #undef START_FILES
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
16 #undef COFF
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
17 #undef TERMINFO
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
18 #define MAIL_USE_FLOCK
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
19 #define HAVE_UNION_WAIT
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
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
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
25 /* This line starts being needed with ultrix 4.0. */
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
26 /* You must delete it for version 3.1. */
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
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
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
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 #define START_FILES pre-crt0.o /usr/lib/crt0.o
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
34 #define CANNOT_DUMP
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
35 #undef UNEXEC
19795
319a43900b56 Test __OpenBSD__ along with __NetBSD__.
Richard M. Stallman <rms@gnu.org>
parents: 16484
diff changeset
36 #endif /* NetBSD || OpenBSD */
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
37
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
38 /* Supposedly the following will overcome a kernel bug. */
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
39 #undef LD_SWITCH_MACHINE
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
40 #undef DATA_START
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
41 #define DATA_START 0x10000000
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
42 #define DATA_SEG_BITS 0x10000000
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
43
1582
689f1697d285 * m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
44 #if 0
689f1697d285 * m/pmax.h: Don't define SYSTEM_MALLOC; this was only necessary
Jim Blandy <jimb@redhat.com>
parents: 1113
diff changeset
45 /* 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
46 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
47
456
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48 /* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
49 on defining malloc itself. This should avoid conflicting with it. */
c0335c02f1d7 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
50 #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
51 #endif
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
52
12419
818d7bcf63b0 [MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents: 9095
diff changeset
53 /* Override what mips.h says about this. */
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
54 #undef LINKER
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
55
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
56 #ifdef ultrix
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
57 /* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
58 but it doesn't work right;
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
59 and it causes hanging in read_process_output. */
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
60 #define BROKEN_O_NONBLOCK
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
61 #endif
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
62
12419
818d7bcf63b0 [MACH]: Use built-in alloca, set START_FILES.
Richard M. Stallman <rms@gnu.org>
parents: 9095
diff changeset
63 #if defined (OSF1) || defined (MACH)
1113
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
64 #undef C_ALLOCA
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
65 #define HAVE_ALLOCA
0ffcf74fb8ad entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 456
diff changeset
66 #endif
3396
56ffd7d79f05 (LIBS_MACHINE): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 1582
diff changeset
67
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
68 #ifndef __NetBSD__
3571
6c1a1b79536c * config.h.in (HAVE_LIBDNET): New macro, to be defined by
Jim Blandy <jimb@redhat.com>
parents: 3406
diff changeset
69 /* 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
70 #ifdef HAVE_LIBDNET
3396
56ffd7d79f05 (LIBS_MACHINE): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 1582
diff changeset
71 #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
72 #endif
3403
4151b7a0e415 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 3396
diff changeset
73
3406
829998469d86 (KERNEL_FILE): New override definition.
Richard M. Stallman <rms@gnu.org>
parents: 3403
diff changeset
74 /* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a. */
3403
4151b7a0e415 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 3396
diff changeset
75 #undef KERNEL_FILE
3406
829998469d86 (KERNEL_FILE): New override definition.
Richard M. Stallman <rms@gnu.org>
parents: 3403
diff changeset
76 #define KERNEL_FILE "/vmunix"
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
77 #endif
4001
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
78
16484
96df462c5f15 (BROKEN_O_NONBLOCK): Define only if Ultrix.
Richard M. Stallman <rms@gnu.org>
parents: 14036
diff changeset
79 #ifdef ultrix
4001
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
80 /* Jim Wilson writes:
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
81 [...] 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
82 are bogus.
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
83
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
84 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
85 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
86 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
87
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
88 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
89 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
90 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
91 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
92
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
93 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
94 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
95 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
96
20abae0de304 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
Jim Blandy <jimb@redhat.com>
parents: 3571
diff changeset
97 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
98 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
99 /* 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
100 when NeedFunctionPrototypes is 0, but still tries to use them when
14036
621a575db6f7 Comment fixes.
Karl Heuer <kwzh@gnu.org>
parents: 13017
diff changeset
101 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
102 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
103 variadic prototypes. --kwzh@gnu.ai.mit.edu */
8b9decfed36f (C_SWITCH_X_MACHINE): add -DNeedVarargsProrotypes=0.
Karl Heuer <kwzh@gnu.org>
parents: 5256
diff changeset
104 #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
105 #endif
5256
cd8db400928f (SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 4001
diff changeset
106
cd8db400928f (SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 4001
diff changeset
107 /* Enable a fix in process.c. */
cd8db400928f (SET_CHILD_PTY_PGRP): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 4001
diff changeset
108 #define SET_CHILD_PTY_PGRP