Trailing whitespace deleted.
[bpt/emacs.git] / src / s / sco5.h
CommitLineData
5c5eb335 1/* System description file for SCO 3.2v5.
d8f6d720 2 Copyright (C) 1996, 2002 Free Software Foundation, Inc.
5c5eb335
RS
3
4This file is part of GNU Emacs.
5
6GNU Emacs is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU Emacs is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
1fb87c77
KH
17along with GNU Emacs; see the file COPYING. If not, write to the
18Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */
5c5eb335 20
ca8a0685 21/* Contributed by Mark Diekhans <markd@grizzly.com>. */
5c5eb335
RS
22
23/* SCO is sort of like SVR3. */
24#include "usg5-3.h"
25#define SCO_R5
26
27#if 0 /* Turned off rather than make the Lisp code check for this. -- rms.
28 I am assuming that (at least most of) the tests for usg-unix-v
29 do the right thing for sco3.2v4 also. Things that *might* be wrong
30 as a result of turning off these lines include the values of
31 ange-ftp-remote-shell-file-name (now remsh)
32 dired-chown-program (now just chown)
33 lpr-command (now lp)
34 nntp-buggy-select (now t)
35 rmail-spool-directory (now /usr/mail?)
36 and the actions of the function print-region-1. */
37
38/* SYSTEM_TYPE should indicate the kind of system you are using. */
39#undef SYSTEM_TYPE
40#define SYSTEM_TYPE "SCO 3.2v4"
41#endif
42
43/* SCO supports job control. */
44#undef NOMULTIPLEJOBS
45
46/* SCO has termios. */
47#define HAVE_TERMIOS
48
49/* SCO has ptys with unusual names. */
50#define HAVE_PTYS
51
52#define PTY_ITERATION \
53 for (i = 0; ; i++)
54#define PTY_NAME_SPRINTF \
55 sprintf (pty_name, "/dev/ptyp%d", i);
56#define PTY_TTY_NAME_SPRINTF \
57 sprintf (pty_name, "/dev/ttyp%d", i);
58
59/* Sockets are an option on SCO. If you have X, you have them.
60 They also exist if you have TCP, but we don't know how to test
61 for that. */
62#ifdef HAVE_X_WINDOWS
63#define HAVE_SOCKETS
64#endif
65
66#ifndef __GNUC__
67#define LINKER ld
68#endif
69
70/* This is safe since we already assumed HAVE_SOCKET
71 if using X windows. */
72#undef LIBX11_SYSTEM
1182d214
RS
73#define LIBX11_SYSTEM_COMMON -lpt -lnls -lnsl -lc -lsocket
74#ifdef MOTIF
75# define LIBX11_SYSTEM -lgen LIBX11_SYSTEM_COMMON
76#else /* ndef MOTIF */
77# define LIBX11_SYSTEM LIBX11_SYSTEM_COMMON
78#endif /* ndef MOTIF */
5c5eb335
RS
79
80#undef LIB_X11_LIB
81#define LIB_X11_LIB -lX11
82
83#ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */
84#define HAVE_SOCKETS
85#endif
86
87#ifdef HAVE_SOCKETS
88#define LIBS_SYSTEM -lsocket -lPW
89#endif
90
91#ifndef HAVE_GETTIMEOFDAY
92#define HAVE_GETTIMEOFDAY
93#endif
94
95/* This enables configure to tell that we have alloca. */
96#ifndef LIBS_SYSTEM
97#define LIBS_SYSTEM -lPW
98#endif
99
100#ifdef HAVE_X11R5
101/* configure can't get this right linking fails unless -lsocket is used. */
102#undef HAVE_XSCREENNUMBEROFSCREEN
103#define HAVE_XSCREENNUMBEROFSCREEN
104#endif
105
106/* We don't have -loldX, and we don't need it. */
107#define LIB_XMENU_LIB
108
109/* SCO does have TIOCGWINSZ. */
110#undef BROKEN_TIOCGWINSZ
111#define NEED_PTEM_H
112
113/* We need to link with crt1.o and crtn.o. */
114#define START_FILES pre-crt0.o /lib/crt1.o
115#define LIB_STANDARD -lc /lib/crtn.o
116
117/* Send signals to subprocesses by "typing" signal chars at them. */
118#define SIGNALS_VIA_CHARACTERS
119
120/* Specify program for etc/fakemail to run. Define SMAIL if you are
121 using smail, don't for MMDF. */
122
123#ifdef SMAIL
124#define MAIL_PROGRAM_NAME "/bin/smail -q0"
125#else
126#define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail"
127#endif
128
5c5eb335
RS
129/* Tell process_send_signal to use VSUSP instead of VSWTCH. */
130#define PREFER_VSUSP
131
416799ae
RS
132/* SCO Unix has Posix signals, but in 3.2.5 something broken that causes
133 * all keyboard-quit signals to be lost after the first one. */
134#undef POSIX_SIGNALS
13ccc79a
EZ
135
136#define SIGMASKTYPE long
1182d214
RS
137
138#ifndef NOT_C_CODE
4af49336 139extern SIGMASKTYPE sigprocmask_set;
1182d214
RS
140#endif /* not NOT_C_CODE */
141
6a9f1263
GM
142#define sigblock(sig) \
143 (sigprocmask_set = SIGEMPTYMASK | (sig), \
144 sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL))
0b81c940
GM
145#define sigunblock(sig) \
146 (sigprocmask_set = SIGFULLMASK & ~(sig), \
147 sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL))
5c5eb335
RS
148
149#ifndef PENDING_OUTPUT_COUNT
150#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base)
151#endif
152
177c0ea7 153/* Use ELF and get real shared libraries */
5c5eb335
RS
154
155#undef COFF
156#define ELF
157
158#define UNEXEC unexelf.o
159
be9828d1 160#ifndef __GNUC__
5c5eb335
RS
161#define C_SWITCH_SYSTEM -belf
162#define LD_SWITCH_SYSTEM -belf
be9828d1 163#endif
5c5eb335 164
5c5eb335
RS
165/* Don't disable static function, as SCO's header files have some.*/
166#undef static
167
168#undef START_FILES
169#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xt.o
170#undef LIB_STANDARD
171#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o
2327e4a0
GM
172
173#define NARROWPROTO 1