Commit | Line | Data |
---|---|---|
a22b5340 RS |
1 | /* Configuration file for the NeXT machine. |
2 | Copyright (C) 1990 Free Software Foundation, Inc. | |
64f58c87 JB |
3 | |
4 | This file is part of GNU Emacs. | |
5 | ||
a22b5340 RS |
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 | |
17385adc | 8 | the Free Software Foundation; either version 2, or (at your option) |
a22b5340 | 9 | any later version. |
64f58c87 | 10 | |
a22b5340 RS |
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. | |
64f58c87 | 15 | |
a22b5340 RS |
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. */ | |
64f58c87 JB |
19 | |
20 | ||
a22b5340 | 21 | /* Say this machine is a next if not previously defined */ |
64f58c87 | 22 | |
a22b5340 RS |
23 | #ifndef NeXT |
24 | #define NeXT | |
25 | #endif | |
64f58c87 JB |
26 | |
27 | /* The following three symbols give information on | |
a22b5340 | 28 | the size of various data types. */ |
64f58c87 JB |
29 | |
30 | #define SHORTBITS 16 /* Number of bits in a short */ | |
31 | ||
32 | #define INTBITS 32 /* Number of bits in an int */ | |
33 | ||
34 | #define LONGBITS 32 /* Number of bits in a long */ | |
35 | ||
a22b5340 RS |
36 | /* Define how to take a char and sign-extend into an int. |
37 | On machines where char is signed, this is a no-op. */ | |
64f58c87 | 38 | |
a22b5340 | 39 | #define SIGN_EXTEND_CHAR(c) (c) |
64f58c87 JB |
40 | |
41 | /* Use type int rather than a union, to represent Lisp_Object */ | |
42 | ||
43 | #define NO_UNION_TYPE | |
44 | ||
64f58c87 JB |
45 | /* XINT must explicitly sign-extend */ |
46 | ||
47 | #define EXPLICIT_SIGN_EXTEND | |
48 | ||
49 | /* Data type of load average, as read out of kmem. */ | |
50 | ||
51 | #define LOAD_AVE_TYPE long | |
52 | ||
53 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | |
54 | ||
55 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | |
56 | ||
57 | /* Say that the text segment of a.out includes the header; | |
58 | the header actually occupies the first few bytes of the text segment | |
59 | and is counted in hdr.a_text. */ | |
60 | ||
61 | #define A_TEXT_OFFSET(HDR) sizeof (HDR) | |
62 | ||
64f58c87 JB |
63 | /* Use dk.h, not dkstat.h, in loadst.c. */ |
64 | ||
65 | #define DK_HEADER_FILE | |
a22b5340 | 66 | |
64f58c87 JB |
67 | /* Mask for address bits within a memory segment */ |
68 | ||
69 | #define SEGSIZ 0x20000 | |
70 | #define SEGMENT_MASK (SEGSIZ - 1) | |
71 | ||
72 | #define HAVE_ALLOCA | |
73 | ||
74 | #define SYSTEM_MALLOC | |
75 | ||
76 | #define HAVE_UNIX_DOMAIN | |
77 | ||
a22b5340 RS |
78 | #define LIB_X11_LIB -L/usr/lib/X11 -lX11 |
79 | ||
c455d34d RS |
80 | /* This avoids a problem in Xos.h when using co-Xist 3.01. */ |
81 | #define X_NOT_POSIX | |
82 | ||
a22b5340 RS |
83 | /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */ |
84 | ||
85 | #define NO_T_CHARS_DEFINES | |
86 | ||
87 | /* Use our own unexec routines */ | |
88 | ||
89 | #define UNEXEC unexnext.o | |
90 | ||
91 | /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */ | |
92 | ||
93 | #define LIBS_DEBUG | |
94 | ||
95 | /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */ | |
96 | ||
97 | #define LIB_GCC | |
98 | ||
01d00719 | 99 | #if 0 /* ohl@chico.harvard.edu says to do this. */ |
a22b5340 RS |
100 | /* Compile "strict bsd" to avoid warnings from include files */ |
101 | ||
102 | #define C_SWITCH_MACHINE -bsd | |
01d00719 | 103 | #endif |
a22b5340 RS |
104 | |
105 | /* Link this program just by running cc. */ | |
106 | #define ORDINARY_LINK | |
107 | ||
108 | /* start_of_text isn't actually used, so make it compile without error. */ | |
109 | #define TEXT_START 0 | |
110 | /* This seems to be right for end_of_text, but it may not be used anyway. */ | |
111 | #define TEXT_END get_etext () | |
112 | /* This seems to be right for end_of_data, but it may not be used anyway. */ | |
113 | #define DATA_END get_edata () | |
114 | ||
115 | /* Defining KERNEL_FILE causes lossage because sys/file.h | |
116 | stupidly gets confused by it. */ | |
117 | #undef KERNEL_FILE | |
118 | ||
119 | #define LD_SWITCH_MACHINE -X -noseglinkedit | |
120 | ||
121 | #define environ _environ | |
122 | ||
123 | #if 0 /* This is ok for NeXT system version 3.0 or above. */ | |
124 | /* Where to find the kernel, for load average. */ | |
125 | #define KERNEL_FILE "/mach" | |
126 | #endif | |
ef469729 RS |
127 | |
128 | /* This should be true for recent NeXT systems. At least since 3.2. */ | |
129 | #define HAVE_MACH_MACH_H |