Mercurial > emacs
annotate src/m/ibmrs6000.h @ 8555:f1b1537ed3f6
(Fcall_process_region): gcpro filename_string.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 17 Aug 1994 21:44:49 +0000 |
parents | 50216826c507 |
children | c93c9e087810 |
rev | line source |
---|---|
446 | 1 /* R2 AIX machine/system dependent defines |
2 Copyright (C) 1988 Free Software Foundation, Inc. | |
3 | |
4 This file is part of GNU Emacs. | |
5 | |
6 GNU Emacs is free software; you can redistribute it and/or modify | |
7 it under the terms of the GNU General Public License as published by | |
3699 | 8 the Free Software Foundation; either version 2, or (at your option) |
446 | 9 any later version. |
10 | |
11 GNU Emacs 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 GNU Emacs; see the file COPYING. If not, write to | |
18 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |
19 | |
20 | |
21 /* The following line tells the configuration script what sort of | |
22 operating system this machine is likely to run. | |
23 USUAL-OPSYS="aix3-1" */ | |
24 | |
25 /* The following three symbols give information on | |
26 the size of various data types. */ | |
27 | |
28 #define SHORTBITS 16 /* Number of bits in a short */ | |
29 | |
30 #define INTBITS 32 /* Number of bits in an int */ | |
31 | |
32 #define LONGBITS 32 /* Number of bits in a long */ | |
33 | |
34 /* Define BIG_ENDIAN iff lowest-numbered byte in a word | |
35 is the most significant byte. */ | |
36 | |
4581
0cca18841c6d
(BIG_ENDIAN): Don't actually define it.
Richard M. Stallman <rms@gnu.org>
parents:
4568
diff
changeset
|
37 /* This conflicts with something in the system headers, |
0cca18841c6d
(BIG_ENDIAN): Don't actually define it.
Richard M. Stallman <rms@gnu.org>
parents:
4568
diff
changeset
|
38 and isn't currently used, since NO_UNION_TYPE is defined. */ |
0cca18841c6d
(BIG_ENDIAN): Don't actually define it.
Richard M. Stallman <rms@gnu.org>
parents:
4568
diff
changeset
|
39 #if 0 |
446 | 40 #define BIG_ENDIAN |
4568
ea5521edfb75
(BIG_ENDIAN): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4369
diff
changeset
|
41 #endif |
446 | 42 |
43 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | |
44 * group of arguments and treat it as an array of the arguments. */ | |
45 | |
46 #define NO_ARG_ARRAY | |
47 | |
48 /* Now define a symbol for the cpu type, if your compiler | |
49 does not define it automatically. */ | |
50 | |
51 #define IBMR2AIX | |
52 | |
53 /* Use type int rather than a union, to represent Lisp_Object */ | |
54 /* This is desirable for most machines. */ | |
55 | |
56 #define NO_UNION_TYPE | |
57 | |
58 /* Define CANNOT_DUMP on machines where unexec does not work. | |
59 Then the function dump-emacs will not be defined | |
60 and temacs will do (load "loadup") automatically unless told otherwise. */ | |
61 /* #define CANNOT_DUMP */ | |
62 | |
63 #define UNEXEC unexaix.o | |
64 | |
65 /* Define addresses, macros, change some setup for dump */ | |
66 | |
67 #define NO_REMAP | |
68 | |
69 #define TEXT_START 0x10000000 | |
70 #define TEXT_END 0 | |
71 #define DATA_START 0x20000000 | |
72 #define DATA_END 0 | |
73 | |
74 /* The data segment in this machine always starts at address 0x20000000. | |
75 An address of data cannot be stored correctly in a Lisp object; | |
76 we always lose the high bits. We must tell XPNTR to add them back. */ | |
77 | |
78 #define DATA_SEG_BITS 0x20000000 | |
79 | |
80 #ifdef CANNOT_DUMP | |
81 /* Define shared memory segment symbols */ | |
82 | |
83 #define PURE_SEG_BITS 0x30000000 | |
84 | |
85 /* Use shared memory. */ | |
86 /* This is turned off because it does not always work. See etc/AIX.DUMP. */ | |
87 /* #define HAVE_SHM */ | |
88 #define SHMKEY 5305035 /* used for shared memory code segments */ | |
89 #endif /* CANNOT_DUMP */ | |
90 | |
91 #define N_BADMAG(x) BADMAG(x) | |
92 #define N_TXTOFF(x) A_TEXTPOS(x) | |
93 #define N_SYMOFF(x) A_SYMPOS(x) | |
94 #define A_TEXT_OFFSET(HDR) sizeof(HDR) | |
95 /* #define ADJUST_EXEC_HEADER \ | |
96 unexec_text_start += sizeof(hdr); \ | |
97 unexec_data_start = ohdr.a_dbase | |
98 */ | |
99 #undef ADDR_CORRECT | |
100 #define ADDR_CORRECT(x) ((int)(x)) | |
101 | |
102 /* Define C_ALLOCA if this machine does not support a true alloca | |
103 and the one written in C should be used instead. | |
104 Define HAVE_ALLOCA to say that the system provides a properly | |
105 working alloca function and it should be used. | |
106 Define neither one if an assembler-language alloca | |
107 in the file alloca.s should be used. */ | |
108 | |
1906
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
109 /* Note: aix3-2.h defines HAVE_ALLOCA; aix3-1.h doesn't. */ |
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
110 #ifndef HAVE_ALLOCA |
446 | 111 #define C_ALLOCA |
112 #define STACK_DIRECTION -1 /* tell alloca.c which way it grows */ | |
1906
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
113 #endif |
446 | 114 |
1906
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
115 /* Specify the font for X to use. |
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
116 This used to be Rom14.500; that's nice on the X server shipped with |
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
117 the RS/6000, but it's not available on other servers. */ |
158faf65239b
* ibmrs6000.h (C_ALLOCA, STACK_DIRECTION): Only define if HAVE_ALLOCA
Jim Blandy <jimb@redhat.com>
parents:
750
diff
changeset
|
118 #define X_DEFAULT_FONT "fixed" |
446 | 119 |
120 /* Here override various assumptions in ymakefile */ | |
121 | |
122 #define OBJECTS_MACHINE hftctl.o | |
123 #define C_SWITCH_MACHINE -D_BSD | |
4709
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
124 |
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
125 #ifdef AIX3_2 |
3314
a472a3956b2a
* s/aix3-2.h (LIBS_SYSTEM): Remove -lIM and -liconv from here...
Jim Blandy <jimb@redhat.com>
parents:
3107
diff
changeset
|
126 /* IBM's X11R5 use -lIM and -liconv in AIX 3.2.2. */ |
3107
6c0cce3bc5d5
(LIBS_MACHINE): Add -lIM and -liconv.
Richard M. Stallman <rms@gnu.org>
parents:
2641
diff
changeset
|
127 #define LIBS_MACHINE -lrts -lIM -liconv |
4709
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
128 #else |
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
129 #define LIBS_MACHINE -lIM |
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
130 #endif |
c3caa44eff82
(LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
Richard M. Stallman <rms@gnu.org>
parents:
4581
diff
changeset
|
131 |
446 | 132 #define START_FILES |
133 #define HAVE_SYSVIPC | |
134 #define HAVE_GETWD | |
135 /*** BUILD 9008 - FIONREAD problem still exists in X-Windows. ***/ | |
136 #define BROKEN_FIONREAD | |
137 | |
138 /* Don't try to include sioctl.h or ptem.h. */ | |
139 #undef NEED_SIOCTL | |
140 #undef NEED_PTEM_H | |
141 | |
3368
cb9e597ce94f
Delete ! __GNUC__ conditional.
Richard M. Stallman <rms@gnu.org>
parents:
3358
diff
changeset
|
142 #define ORDINARY_LINK |
4177 | 143 /* sfreed@unm.edu says add -bI:/usr/lpp/X11/bin/smt.exp for AIX 3.2.4. */ |
4369
2497c88c03c3
* config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit.
Jim Blandy <jimb@redhat.com>
parents:
4177
diff
changeset
|
144 #ifdef HAVE_AIX_SMT_EXP |
4176
c544fd59ecfd
(LD_SWITCH_MACHINE): Add -bI:/usr/lpp/X11/bin/smt.exp.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
145 #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:/usr/lpp/X11/bin/smt.exp |
4369
2497c88c03c3
* config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit.
Jim Blandy <jimb@redhat.com>
parents:
4177
diff
changeset
|
146 #else |
2497c88c03c3
* config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit.
Jim Blandy <jimb@redhat.com>
parents:
4177
diff
changeset
|
147 #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp |
2497c88c03c3
* config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit.
Jim Blandy <jimb@redhat.com>
parents:
4177
diff
changeset
|
148 #endif |
3372
41adfe8856d6
(NLIST_STRUCT): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
3368
diff
changeset
|
149 |
41adfe8856d6
(NLIST_STRUCT): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
3368
diff
changeset
|
150 /* AIX supposedly doesn't use this interface, but on thr RS/6000 |
41adfe8856d6
(NLIST_STRUCT): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
3368
diff
changeset
|
151 it apparently does. */ |
41adfe8856d6
(NLIST_STRUCT): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
3368
diff
changeset
|
152 #define NLIST_STRUCT |