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