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 | |
8 | the Free Software Foundation; either version 1, or (at your option) | |
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 | 36 | /* Let the compiler tell us what byte order architecture we're compiling for */ |
64f58c87 | 37 | |
a22b5340 | 38 | #ifdef __BIG_ENDIAN__ |
64f58c87 | 39 | #define BIG_ENDIAN |
a22b5340 | 40 | #endif |
64f58c87 | 41 | |
a22b5340 RS |
42 | /* Define how to take a char and sign-extend into an int. |
43 | On machines where char is signed, this is a no-op. */ | |
64f58c87 | 44 | |
a22b5340 | 45 | #define SIGN_EXTEND_CHAR(c) (c) |
64f58c87 JB |
46 | |
47 | /* Use type int rather than a union, to represent Lisp_Object */ | |
48 | ||
49 | #define NO_UNION_TYPE | |
50 | ||
64f58c87 JB |
51 | /* XINT must explicitly sign-extend */ |
52 | ||
53 | #define EXPLICIT_SIGN_EXTEND | |
54 | ||
55 | /* Data type of load average, as read out of kmem. */ | |
56 | ||
57 | #define LOAD_AVE_TYPE long | |
58 | ||
59 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | |
60 | ||
61 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | |
62 | ||
63 | /* Say that the text segment of a.out includes the header; | |
64 | the header actually occupies the first few bytes of the text segment | |
65 | and is counted in hdr.a_text. */ | |
66 | ||
67 | #define A_TEXT_OFFSET(HDR) sizeof (HDR) | |
68 | ||
64f58c87 JB |
69 | /* Use dk.h, not dkstat.h, in loadst.c. */ |
70 | ||
71 | #define DK_HEADER_FILE | |
a22b5340 | 72 | |
64f58c87 JB |
73 | /* Mask for address bits within a memory segment */ |
74 | ||
75 | #define SEGSIZ 0x20000 | |
76 | #define SEGMENT_MASK (SEGSIZ - 1) | |
77 | ||
78 | #define HAVE_ALLOCA | |
79 | ||
80 | #define SYSTEM_MALLOC | |
81 | ||
82 | #define HAVE_UNIX_DOMAIN | |
83 | ||
a22b5340 RS |
84 | #define LIB_X11_LIB -L/usr/lib/X11 -lX11 |
85 | ||
86 | /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */ | |
87 | ||
88 | #define NO_T_CHARS_DEFINES | |
89 | ||
90 | /* Use our own unexec routines */ | |
91 | ||
92 | #define UNEXEC unexnext.o | |
93 | ||
94 | /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */ | |
95 | ||
96 | #define LIBS_DEBUG | |
97 | ||
98 | /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */ | |
99 | ||
100 | #define LIB_GCC | |
101 | ||
102 | /* Compile "strict bsd" to avoid warnings from include files */ | |
103 | ||
104 | #define C_SWITCH_MACHINE -bsd | |
105 | ||
106 | /* Link this program just by running cc. */ | |
107 | #define ORDINARY_LINK | |
108 | ||
109 | /* start_of_text isn't actually used, so make it compile without error. */ | |
110 | #define TEXT_START 0 | |
111 | /* This seems to be right for end_of_text, but it may not be used anyway. */ | |
112 | #define TEXT_END get_etext () | |
113 | /* This seems to be right for end_of_data, but it may not be used anyway. */ | |
114 | #define DATA_END get_edata () | |
115 | ||
116 | /* Defining KERNEL_FILE causes lossage because sys/file.h | |
117 | stupidly gets confused by it. */ | |
118 | #undef KERNEL_FILE | |
119 | ||
120 | #define LD_SWITCH_MACHINE -X -noseglinkedit | |
121 | ||
122 | #define environ _environ | |
123 | ||
124 | #if 0 /* This is ok for NeXT system version 3.0 or above. */ | |
125 | /* Where to find the kernel, for load average. */ | |
126 | #define KERNEL_FILE "/mach" | |
127 | #endif |