|
|
1.1 root 1: /* Configuration file for NeXT machine.
2: Copyright (C) 1990 Free Software Foundation, Inc.
3:
4: This file is part of GNU Emacs.
5:
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.
10:
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.
15:
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. */
19:
20: /* Say this machine is a next if not previously defined */
21:
22: #ifndef NeXT
23: #define NeXT
24: #endif
25:
26: /* The following three symbols give information on
27: the size of various data types. */
28:
29: #define SHORTBITS 16 /* Number of bits in a short */
30:
31: #define INTBITS 32 /* Number of bits in an int */
32:
33: #define LONGBITS 32 /* Number of bits in a long */
34:
35: /* Let the compiler tell us what byte order architecture we're compiling for */
36:
37: #ifdef __BIG_ENDIAN__
38: #define BIG_ENDIAN
39: #endif
40:
41: /* Taking a pointer to the first arg doesn't guarantee a pointer to the
42: * arg list on these machines...
43: */
44: #if defined(hppa) || defined(sparc)
45: #define NO_ARG_ARRAY
46: #endif
47:
48: /* Define how to take a char and sign-extend into an int.
49: On machines where char is signed, this is a no-op. */
50:
51: #define SIGN_EXTEND_CHAR(c) (c)
52:
53: /* Use type int rather than a union, to represent Lisp_Object */
54:
55: #define NO_UNION_TYPE
56:
57: /* XINT must explicitly sign-extend */
58:
59: #define EXPLICIT_SIGN_EXTEND
60:
61: /* Data type of load average, as read out of kmem. */
62:
63: #define LOAD_AVE_TYPE long
64:
65: /* Convert that into an integer that is 100 for a load average of 1.0 */
66:
67: #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
68:
69: /* Say that the text segment of a.out includes the header;
70: the header actually occupies the first few bytes of the text segment
71: and is counted in hdr.a_text. */
72:
73: #define A_TEXT_OFFSET(HDR) sizeof (HDR)
74:
75: /* Use dk.h, not dkstat.h, in loadst.c. */
76:
77: #define DK_HEADER_FILE
78:
79: /* Mask for address bits within a memory segment */
80:
81: #define SEGSIZ 0x20000
82: #define SEGMENT_MASK (SEGSIZ - 1)
83:
84: #define HAVE_ALLOCA
85:
86: #define SYSTEM_MALLOC
87:
88: #define HAVE_UNIX_DOMAIN
89:
90: #define LIB_X11_LIB -L/usr/lib/X11 -lX11
91:
92: /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
93:
94: #define NO_T_CHARS_DEFINES
95:
96: /* Use our own unexec routines */
97:
98: #define UNEXEC unexnext.o
99:
100: /* We don't use _start, etext, or edata */
101:
102: #define TEXT_START NULL /* wrong: but nobody uses it anyway */
103: #define TEXT_END get_etext()
104: #define DATA_END get_edata()
105:
106: /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
107:
108: #define LIBS_DEBUG
109:
110: /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
111:
112: #define LIB_GCC
113:
114: /* Compile "strict bsd" to avoid warnings from include files */
115:
116: #define C_SWITCH_MACHINE -bsd
117:
118: /* Link this program just by running cc. */
119: #define ORDINARY_LINK
120:
121: /* This was needed before we used ORDINARY_LINK. */
122: #if 0
123: /* Use our own crt0 routine */
124: #define NO_REMAP
125:
126: /* Standard library is libsys_s, not libc */
127:
128: #define LIB_STANDARD -lsys_s
129: #endif
130:
131: /* Where to find the kernel, for load average. */
132: #define KERNEL_FILE "/mach"
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.