comparison src/m/ibm370aix.h @ 4464:3fbda0e7f793

Total rewrite; includes ibmps2-aix.h.
author Richard M. Stallman <rms@gnu.org>
date Fri, 06 Aug 1993 01:01:53 +0000
parents d76398601a0b
children aceaf48ee60d
comparison
equal deleted inserted replaced
4463:2a1f8e922ec8 4464:3fbda0e7f793
1 /* ibm370.h 1 /* m/ file for IBM 370 running AIX. */
2 For IBM 3090 type systems running AIX370.
3 Concocted by Scott Schwartz <schwartz@cs.psu.edu>
4 Copyright (C) 1985, 1986 Free Software Foundation, Inc.
5 2
6 This file is part of GNU Emacs. 3 #include "ibmps2-aix.h"
7 4
8 GNU Emacs is free software; you can redistribute it and/or modify 5 #define AIX
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
11 any later version.
12 6
13 GNU Emacs is distributed in the hope that it will be useful, 7 /* i370 is big-endian */
14 but WITHOUT ANY WARRANTY; without even the implied warranty of 8 #define BIG_ENDIAN
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17 9
18 You should have received a copy of the GNU General Public License 10 #undef TEXT_START
19 along with GNU Emacs; see the file COPYING. If not, write to 11 #undef SEGMENT_MASK
20 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ 12 #undef DATA_SECTION_ALIGNMENT
21 13
14 #define TEXT_START 0
15 #define SEGMENT_MASK 0
16 #define DATA_SECTION_ALIGNMENT 0x00001000
22 17
23 18 #undef LOAD_AVE_CVT
24 /* The following three symbols give information on 19 #undef LOAD_AVE_TYPE
25 the size of various data types. */
26
27 #define SHORTBITS 16 /* Number of bits in a short */
28
29 #define INTBITS 32 /* Number of bits in an int */
30
31 #define LONGBITS 32 /* Number of bits in a long */
32
33 /* Define BIG_ENDIAN iff lowest-numbered byte in a word
34 is the most significant byte. */
35
36 #define BIG_ENDIAN
37
38 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
39 * group of arguments and treat it as an array of the arguments. */
40
41 #define NO_ARG_ARRAY
42
43 /* Define WORD_MACHINE if addresses and such have
44 * to be corrected before they can be used as byte counts. */
45
46 /* #define WORD_MACHINE */
47
48 /* Now define a symbol for the cpu type, if your compiler
49 does not define it automatically:
50 Ones defined so far include vax, m68000, ns16000, pyramid,
51 orion, tahoe, APOLLO and many others */
52 /* high-c defines _AIX370 */
53
54 /* Use type int rather than a union, to represent Lisp_Object */
55 /* This is desirable for most machines. */
56
57 #define NO_UNION_TYPE
58
59 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
60 the 24-bit bit field into an int. In other words, if bit fields
61 are always unsigned.
62
63 If you use NO_UNION_TYPE, this flag does not matter. */
64
65 #define EXPLICIT_SIGN_EXTEND
66
67 /* Data type of load average, as read out of kmem. */ 20 /* Data type of load average, as read out of kmem. */
68 21 #define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0)
69 #define LOAD_AVE_TYPE double 22 #define LOAD_AVE_TYPE double
70 23
71 /* Convert that into an integer that is 100 for a load average of 1.0 */ 24 #undef LIBS_MACHINE
25 #define LIBS_MACHINE
72 26
73 /* XXX */ 27 #undef LD_SWITCH_MACHINE
74 #define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0) 28 #define LD_SWITCH_MACHINE -xa
75
76 /* Define CANNOT_DUMP on machines where unexec does not work.
77 Then the function dump-emacs will not be defined
78 and temacs will do (load "loadup") automatically unless told otherwise. */
79
80 #define CANNOT_DUMP
81 #define CANNOT_UNEXEC
82
83 /* Define VIRT_ADDR_VARIES if the virtual addresses of
84 pure and impure space as loaded can vary, and even their
85 relative order cannot be relied on.
86
87 Otherwise Emacs assumes that text space precedes data space,
88 numerically. */
89
90 #define VIRT_ADDR_VARIES
91
92 /* Define C_ALLOCA if this machine does not support a true alloca
93 and the one written in C should be used instead.
94 Define HAVE_ALLOCA to say that the system provides a properly
95 working alloca function and it should be used.
96 Define neither one if an assembler-language alloca
97 in the file alloca.s should be used. */
98
99 /* #define C_ALLOCA */
100 #define HAVE_ALLOCA
101
102 #ifndef NO_SHORTNAMES
103 #include <alloca.h>
104 #include <setjmp.h>
105 #endif
106
107 /* Define NO_REMAP if memory segmentation makes it not work well
108 to change the boundary between the text section and data section
109 when Emacs is dumped. If you define this, the preloaded Lisp
110 code will not be sharable; but that's better than failing completely. */
111
112 #define NO_REMAP
113
114 /* Don't try to include sioctl.h. */
115 #undef NEED_SIOCTL
116 /* That probably means we shouldn't try ptem.h either. */
117 #undef NEED_PTEM_H
118
119 /* Note we do not define IBMAIX, since the `hft' features
120 don't exist on this machine. */
121
122 #define LIBS_DEBUG -lg
123 #ifndef LD_SWITCH_SYSTEM
124 #define LD_SWITCH_SYSTEM
125 #endif
126
127 #define LIBS_SYSTEM -lbsd
128
129 /* The symbol in the kernel where the load average is found
130 is named _avenrun. */
131
132 #undef LDAV_SYMBOL
133 #define LDAV_SYMBOL "_avenrun"
134
135 /* define MAIL_USE_FLOCK if the mailer uses flock
136 to interlock access to /usr/spool/mail/$USER.
137 The alternative is that a lock file named
138 /usr/spool/mail/$USER.lock. */
139 #define MAIL_USE_FLOCK
140
141 /* Define CLASH_DETECTION if you want lock files to be written
142 so that Emacs can tell instantly when you try to modify
143 a file that someone else has modified in his Emacs. */
144 #define CLASH_DETECTION
145
146 #define BSTRING
147
148 /* First pty name is /dev/ptyp0. */
149 #define FIRST_PTY_LETTER 'p'
150
151 /*
152 * Define HAVE_TIMEVAL if the system supports the BSD style clock values.
153 * Look in <sys/time.h> for a timeval structure.
154 */
155 #define HAVE_TIMEVAL
156
157 /*
158 * Define HAVE_SELECT if the system supports the `select' system call.
159 */
160 #define HAVE_SELECT
161
162 /*
163 * Define HAVE_PTYS if the system supports pty devices.
164 */
165 #define HAVE_PTYS
166
167 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
168
169 #define HAVE_SOCKETS