1/* Definitions file for GNU Emacs running on AT&T's System V Release 3
2   Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
3                 2005, 2006, 2007  Free Software Foundation, Inc.
4
5This file is part of GNU Emacs.
6
7GNU Emacs is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2, or (at your option)
10any later version.
11
12GNU Emacs is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with GNU Emacs; see the file COPYING.  If not, write to
19the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20Boston, MA 02110-1301, USA.  */
21
22
23/*
24 *	Define symbols to identify the version of Unix this is.
25 *	Define all the symbols that apply correctly.
26 */
27
28#define USG				/* System III, System V, etc */
29
30#define USG5
31
32#define USG5_3
33
34/* SYSTEM_TYPE should indicate the kind of system you are using.
35 It sets the Lisp variable system-type.  */
36
37#define SYSTEM_TYPE "usg-unix-v"
38
39/* nomultiplejobs should be defined if your system's shell
40 does not have "job control" (the ability to stop a program,
41 run some other program, then continue the first one).  */
42
43#define NOMULTIPLEJOBS
44
45/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
46
47/* #define INTERRUPT_INPUT */
48
49/* Letter to use in finding device name of first pty,
50  if system supports pty's.  'p' means it is /dev/ptyp0  */
51
52#define FIRST_PTY_LETTER 'p'
53
54/*
55 *	Define HAVE_TERMIO if the system provides sysV-style ioctls
56 *	for terminal control.
57 */
58
59#define HAVE_TERMIO
60
61/*
62 *	Define HAVE_PTYS if the system supports pty devices.
63 */
64
65/* Some versions of V.3 have this, but not all.
66   #define HAVE_PTYS
67   #define SYSV_PTYS  */
68
69/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
70
71/* #define HAVE_SOCKETS */
72
73/*
74 *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
75 *      The 4.2 opendir, etc., library functions.
76 */
77
78/* #define NONSYSTEM_DIR_LIBRARY */
79
80/*
81 * 	Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
82 *	library functions.  Almost, but not quite the same as
83 *	the 4.2 functions
84 */
85#define SYSV_SYSTEM_DIR
86
87/* Define this symbol if your system has the functions bcopy, etc. */
88
89/* #define BSTRING */
90
91/* subprocesses should be defined if you want to
92 have code for asynchronous subprocesses
93 (as used in M-x compile and M-x shell).
94 This is supposed to work now on system V release 2.  */
95
96#define subprocesses
97
98/* If your system uses COFF (Common Object File Format) then define the
99   preprocessor symbol "COFF". */
100
101#define COFF
102
103/* define MAIL_USE_FLOCK if the mailer uses flock
104   to interlock access to /usr/spool/mail/$USER.
105   The alternative is that a lock file named
106   /usr/spool/mail/$USER.lock.  */
107
108/* #define MAIL_USE_FLOCK */
109
110/* Define CLASH_DETECTION if you want lock files to be written
111   so that Emacs can tell instantly when you try to modify
112   a file that someone else has modified in his Emacs.  */
113
114/* #define CLASH_DETECTION */
115
116/* Define SHORTNAMES if the C compiler can distinguish only
117   short names.  It means that the stuff in ../shortnames
118   must be run to convert the long names to short ones.  */
119
120/* #define SHORTNAMES */
121
122/* The file containing the kernel's symbol table is called /unix.  */
123
124#define KERNEL_FILE "/unix"
125
126/* The symbol in the kernel where the load average is found
127   is named avenrun.  */
128
129#define LDAV_SYMBOL "avenrun"
130
131/* Define this if system V IPC is available.  */
132
133#define HAVE_SYSVIPC
134
135/* Special hacks needed to make Emacs run on this system.  */
136
137/*
138 *	Make the sigsetmask function go away.  Don't know what the
139 *	ramifications of this are, but doesn't seem possible to
140 *	emulate it properly anyway at this point.
141 */
142
143#define sigsetmask(mask)	/* Null expansion */
144
145/* setjmp and longjmp can safely replace _setjmp and _longjmp,
146   but they will run slower.  */
147
148#define _setjmp setjmp
149#define _longjmp longjmp
150
151/* On USG systems these have different names */
152#ifndef HAVE_INDEX
153#define index strchr
154#endif /* ! defined (HAVE_INDEX) */
155#ifndef HAVE_RINDEX
156#define rindex strrchr
157#endif /* ! defined (HAVE_RINDEX) */
158
159/* USG systems tend to put everything declared static
160   into the initialized data area, which becomes pure after dumping Emacs.
161   Foil this.  Emacs carefully avoids static vars inside functions.  */
162
163#define static
164
165/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
166
167#define ADDR_CORRECT(x) (x)
168
169/* Use terminfo instead of termcap.  */
170
171#define TERMINFO
172
173/* Some variants have TIOCGETC, but the structures to go with it
174   are not declared.  */
175
176#define BROKEN_TIOCGETC
177
178/* AT&T SVr3 X wants to be linked with shared libraries */
179
180#define LIB_X11_LIB -lX11_s
181
182/* X needs to talk on the network, so search the network library.  */
183
184#define LIBX10_SYSTEM -lnsl_s
185#define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lc_s
186
187/* The docs for system V/386 suggest v.3 has sigpause,
188   so let's give it a try.  */
189#define HAVE_SYSV_SIGPAUSE
190
191/* Some variants have TIOCGWINSZ, but the structures to go with it
192   are not declared.  */
193
194#define BROKEN_TIOCGWINSZ
195
196/* If we're using the System V X port, BSD bstring functions will be handy */
197
198#ifdef HAVE_X_WINDOWS
199#define BSTRING
200#endif /* HAVE_X_WINDOWS */
201
202/* Enable support for shared libraries in unexec.  */
203
204#define USG_SHARED_LIBRARIES
205
206/* On USG systems signal handlers return void */
207
208#define SIGTYPE void
209
210/* arch-tag: 2bca65fd-f015-44b9-a2aa-9f8170ce89ca
211   (do not change this comment) */
212