(stuff_char): Use input_fd.
[bpt/emacs.git] / src / m / vax.h
CommitLineData
20c428fd
JB
1/* machine description file for vax.
2 Copyright (C) 1985, 1986 Free Software Foundation, Inc.
3
4This file is part of GNU Emacs.
5
6GNU Emacs is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
17385adc 8the Free Software Foundation; either version 2, or (at your option)
20c428fd
JB
9any later version.
10
11GNU Emacs is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU Emacs; see the file COPYING. If not, write to
18the 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="note"
24
25NOTE-START
26The vax (-machine=vax) runs zillions of different operating systems.
27
28Vax running Berkeley Unix (-opsystem=bsd4-1, -opsystem=bsd4-2 or
29 -opsystem=bsd4-3)
30
31 Works.
32
33Vax running Ultrix (-opsystem=bsd4-2)
34
35 Works. See under Ultrix in share-lib/MACHINES for problems using X
36 windows on Ultrix.
37
38Vax running System V rel 2 (-opsystem=usg5-2)
39
40 18.27 Works.
41
42Vax running System V rel 0 (-opsystem=usg5-0)
43
44 Works as of 18.36.
45
46Vax running VMS (-opsystem=vms)
47
48 18.36 believed to work. Addition of features is necessary to make
49 this Emacs version more usable.
50
51NOTE-END */
52
53/* The following three symbols give information on
54 the size of various data types. */
55
56#define SHORTBITS 16 /* Number of bits in a short */
57
58#define INTBITS 32 /* Number of bits in an int */
59
60#define LONGBITS 32 /* Number of bits in a long */
61
62/* Vax is not big-endian: lowest numbered byte is least significant. */
63
64/* #undef BIG_ENDIAN */
65
20c428fd
JB
66/* #define vax -- appears to be done automatically */
67
68/* Use type int rather than a union, to represent Lisp_Object */
69
70#define NO_UNION_TYPE
71
72/* crt0.c should use the vax-bsd style of entry, with no dummy args. */
73
74#define CRT0_DUMMIES
75
76/* crt0.c should define a symbol `start' and do .globl with a dot. */
77
78#define DOT_GLOBAL_START
79
80#ifdef BSD
81/* USG systems I know of running on Vaxes do not actually
82 support the load average, so disable it for them. */
83
84/* Data type of load average, as read out of kmem. */
85
86#define LOAD_AVE_TYPE double
87
88/* Convert that into an integer that is 100 for a load average of 1.0 */
89
90#define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
91
92#endif /* BSD */
93
94#ifdef VMS
95
96/* Data type of load average, as read out of driver. */
97
98#define LOAD_AVE_TYPE float
99
100/* Convert that into an integer that is 100 for a load average of 1.0 */
101
102#define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
103
104#endif /* VMS */
105
106/* Vax sysV has alloca in the PW library. */
107
108#ifdef USG
109#define LIB_STANDARD -lPW -lc
110#define HAVE_ALLOCA
111
112/* There is some bug in unexec in for usg 5.2 on a vax
113 which nobody who runs such a system has yet tracked down. */
114#ifndef USG5_0
115#define NO_REMAP
116#endif /* USG 5_0 */
117
118#define TEXT_START 0
119#endif /* USG */
120
121#ifdef BSD
122#define HAVE_ALLOCA
123#endif /* BSD */
124
125#ifdef VMS
126#define C_ALLOCA
127#endif
cefeb3a9
RS
128
129#ifdef BSD4_2
130#define HAVE_FTIME
131#endif