Update years in copyright notice; nfc.
[bpt/emacs.git] / src / s / aix3-1.h
CommitLineData
20c428fd 1/* Definitions file for GNU Emacs running on IBM AIX version 3.1
92b47a4a
TTN
2 Copyright (C) 1985, 1986, 1990, 1999, 2002, 2003, 2004,
3 2005 Free Software Foundation, Inc.
20c428fd
JB
4
5This file is part of GNU Emacs.
6
beb593aa
JB
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
17385adc 9the Free Software Foundation; either version 2, or (at your option)
beb593aa
JB
10any later version.
11
20c428fd 12GNU Emacs is distributed in the hope that it will be useful,
beb593aa
JB
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.
20c428fd 16
beb593aa
JB
17You should have received a copy of the GNU General Public License
18along with GNU Emacs; see the file COPYING. If not, write to
364c38d3
LK
19the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20Boston, MA 02110-1301, USA. */
20c428fd
JB
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#define USG5
30
31/* Specify IBM AIX version of system */
32
33#ifndef AIX
34#define AIX
35#endif
36
37/* turn off c prototypes */
38#ifndef _NO_PROTO
39#define _NO_PROTO
40#endif
41
42/* This symbol should be defined on AIX Version 3 ??????? */
43#ifndef _AIX
44#define _AIX
45#endif
46
47/* Specify "_BSD" to invoke Berkeley compatibility in header files */
48/*#ifndef _BSD
49#define _BSD
50#endif
51*/
52
53/* SYSTEM_TYPE should indicate the kind of system you are using.
54 It sets the Lisp variable system-type. */
55
7a6ec3d1 56#define SYSTEM_TYPE "aix"
20c428fd
JB
57
58
59/* nomultiplejobs should be defined if your system's shell
60 does not have "job control" (the ability to stop a program,
61 run some other program, then continue the first one). */
62
63/* #define NOMULTIPLEJOBS */
64
65/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
66
67/* #define INTERRUPT_INPUT */
68
738949ec
RS
69/* In AIX, you allocate a pty by opening /dev/ptc to get the master side.
70 To get the name of the slave side, you just ttyname() the master side. */
20c428fd 71
738949ec
RS
72#define PTY_ITERATION for (c = 0; !c ; c++)
73#define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc");
74#define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd));
20c428fd
JB
75
76/*
77 * Define HAVE_TERMIO if the system provides sysV-style ioctls
78 * for terminal control.
79 */
80
beb593aa 81#define HAVE_TERMIOS
20c428fd 82
20c428fd
JB
83/*
84 * Define HAVE_PTYS if the system supports pty devices.
85 */
86
87#define HAVE_PTYS
88
89/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
90
91#define HAVE_SOCKETS
92
93/*
94 * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
95 * The 4.2 opendir, etc., library functions.
96 */
97
98/* #define NONSYSTEM_DIR_LIBRARY */
99
100/*
101 * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
102 * library functions. Almost, but not quite the same as
103 * the 4.2 functions
104 */
105
106#define SYSV_SYSTEM_DIR
107
108/* Define this symbol if your system has the functions bcopy, etc. */
109
110#define BSTRING
111
112/* subprocesses should be defined if you want to
113 have code for asynchronous subprocesses
114 (as used in M-x compile and M-x shell).
115 This is supposed to work now on system V release 2. */
116
117#define subprocesses
118
119/* If your system uses COFF (Common Object File Format) then define the
120 preprocessor symbol "COFF". */
121
122/* #define COFF */
123
124/* define MAIL_USE_FLOCK if the mailer uses flock
125 to interlock access to /usr/spool/mail/$USER.
126 The alternative is that a lock file named
127 /usr/spool/mail/$USER.lock. */
128
129/* #define MAIL_USE_FLOCK */
130
131/* Define CLASH_DETECTION if you want lock files to be written
132 so that Emacs can tell instantly when you try to modify
133 a file that someone else has modified in his Emacs. */
134
135/* #define CLASH_DETECTION */
136
137/* Define SHORTNAMES if the C compiler can distinguish only
138 short names. It means that the stuff in ../shortnames
139 must be run to convert the long names to short ones. */
140
141/* #define SHORTNAMES */
142
20c428fd
JB
143/* The file containing the kernel's symbol table is called /unix. */
144
145#define KERNEL_FILE "/unix"
146
147/* The symbol in the kernel where the load average is found
148 is named avenrun. */
149
150#define LDAV_SYMBOL "avenrun"
151\f
152/* Special itemss needed to make Emacs run on this system. */
153
154/*
155 * Make the sigsetmask function go away. Don't know what the
156 * ramifications of this are, but doesn't seem possible to
157 * emulate it properly anyway at this point.
158 */
159
160#define sigsetmask(mask) /* Null expansion */
161
162/* setjmp and longjmp can safely replace _setjmp and _longjmp,
163 but they will run slower. */
164
165#define _setjmp setjmp
166#define _longjmp longjmp
167
20c428fd
JB
168/* On USG systems these have different names */
169
170#define index strchr
171#define rindex strrchr
172
173/* USG systems tend to put everything declared static
174 into the initialized data area, which becomes pure after dumping Emacs.
175 Foil this. Emacs carefully avoids static vars inside functions. */
176
177#undef static
178
179/* Compiler bug bites on many systems when default ADDR_CORRECT is used. */
180
181/* #define ADDR_CORRECT(x) (x) */
182
9ffaad2e 183#ifndef __GNUC__
32676c08 184#define LINKER cc
9ffaad2e 185#endif
20c428fd
JB
186
187/* Prevent -lg from being used for debugging. Not needed. */
188
189#define LIBS_DEBUG
190
191/* No need to specify -lc when linking. */
192
193#define LIB_STANDARD
194
195/* Use terminfo instead of termcap. */
196
197#define TERMINFO
198
199/* The following definition seems to be needed in AIX version 3.1.6.8.
200 It may not have been needed in certain earlier versions. */
201#define HAVE_TCATTR
202
203#define SYSTEM_MALLOC
204
e79a0e1b
RS
205/* Include unistd.h, even though we don't define POSIX. */
206#define NEED_UNISTD_H
207
beb593aa
JB
208/* AIX doesn't define this. */
209#define unix 1
131cbe12
RS
210
211/* AIX 3.1 has the HFT features. */
212#define AIXHFT
96fe2598
DL
213
214/* For unexaix.c. */
215#define ALIGN_DATA_RELOC
216
ab5796a9
MB
217/* arch-tag: bfff798c-542d-4290-91f2-267394c85b7b
218 (do not change this comment) */