Merge from emacs--devo--0
[emacs.git] / src / m / vax.h
blob850be9d95480b5398d7cd897c0a2bb94adda3780
1 /* machine description file for vax.
2 Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
3 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
5 This file is part of GNU Emacs.
7 GNU Emacs is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3, or (at your option)
10 any later version.
12 GNU Emacs is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU Emacs; see the file COPYING. If not, write to
19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 Boston, MA 02110-1301, USA. */
23 /* The following line tells the configuration script what sort of
24 operating system this machine is likely to run.
25 USUAL-OPSYS="note"
27 NOTE-START
28 The vax (-machine=vax) runs zillions of different operating systems.
30 Vax running Berkeley Unix (-opsystem=bsd4-1, -opsystem=bsd4-2 or
31 -opsystem=bsd4-3)
33 Works.
35 Vax running Ultrix (-opsystem=bsd4-2)
37 Works. See under Ultrix in share-lib/MACHINES for problems using X
38 windows on Ultrix.
40 Vax running System V rel 2 (-opsystem=usg5-2)
42 18.27 Works.
44 Vax running System V rel 0 (-opsystem=usg5-0)
46 Works as of 18.36.
48 Vax running VMS (-opsystem=vms)
50 18.36 believed to work. Addition of features is necessary to make
51 this Emacs version more usable.
53 NOTE-END */
55 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
56 is the most significant byte. */
58 #undef WORDS_BIG_ENDIAN
60 /* #define vax -- appears to be done automatically */
62 /* Use type int rather than a union, to represent Lisp_Object */
64 #define NO_UNION_TYPE
66 /* crt0.c should use the vax-bsd style of entry, with no dummy args. */
68 #define CRT0_DUMMIES
70 /* crt0.c should define a symbol `start' and do .globl with a dot. */
72 #define DOT_GLOBAL_START
74 #ifdef BSD_SYSTEM
75 /* USG systems I know of running on Vaxes do not actually
76 support the load average, so disable it for them. */
78 /* Data type of load average, as read out of kmem. */
80 #define LOAD_AVE_TYPE double
82 /* Convert that into an integer that is 100 for a load average of 1.0 */
84 #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
86 #endif /* BSD_SYSTEM */
88 #ifdef VMS
90 /* Data type of load average, as read out of driver. */
92 #define LOAD_AVE_TYPE float
94 /* Convert that into an integer that is 100 for a load average of 1.0 */
96 #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
98 #endif /* VMS */
100 /* Vax sysV has alloca in the PW library. */
102 #ifdef USG
103 #define LIB_STANDARD -lPW -lc
105 /* There is some bug in unexec in for usg 5.2 on a vax
106 which nobody who runs such a system has yet tracked down. */
107 #ifndef USG5_0
108 #define NO_REMAP
109 #endif /* USG 5_0 */
111 #define TEXT_START 0
112 #endif /* USG */
114 #ifdef BSD4_2
115 #define HAVE_FTIME
116 #endif
118 /* arch-tag: 508bdf7a-01a0-4ce0-8eba-0704d0df55a0
119 (do not change this comment) */