(pong-blank-color, pong-bat-color)
[emacs.git] / src / s / sco5.h
blob8bce2d48063f5e8f83d9736a01868bbd2c7db07c
1 /* System description file for SCO 3.2v5.
2 Copyright (C) 1996 Free Software Foundation, Inc.
4 This file is part of GNU Emacs.
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 2, or (at your option)
9 any later version.
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.
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 the
18 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
21 /* Contributed by Mark Diekhans <markd@grizzly.com>. */
23 /* SCO is sort of like SVR3. */
24 #include "usg5-3.h"
25 #define SCO_R5
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. */
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
43 /* SCO supports job control. */
44 #undef NOMULTIPLEJOBS
46 /* SCO has termios. */
47 #define HAVE_TERMIOS
49 /* SCO has ptys with unusual names. */
50 #define HAVE_PTYS
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);
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
66 #ifndef __GNUC__
67 #define LINKER ld
68 #endif
70 /* This is safe since we already assumed HAVE_SOCKET
71 if using X windows. */
72 #undef LIBX11_SYSTEM
73 #define LIBX11_SYSTEM -lpt -lnls -lnsl -lc -lsocket
75 #undef LIB_X11_LIB
76 #define LIB_X11_LIB -lX11
78 #ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */
79 #define HAVE_SOCKETS
80 #endif
82 #ifdef HAVE_SOCKETS
83 #define LIBS_SYSTEM -lsocket -lPW
84 #endif
86 #ifndef HAVE_GETTIMEOFDAY
87 #define HAVE_GETTIMEOFDAY
88 #endif
90 /* This enables configure to tell that we have alloca. */
91 #ifndef LIBS_SYSTEM
92 #define LIBS_SYSTEM -lPW
93 #endif
95 #ifdef HAVE_X11R5
96 /* configure can't get this right linking fails unless -lsocket is used. */
97 #undef HAVE_XSCREENNUMBEROFSCREEN
98 #define HAVE_XSCREENNUMBEROFSCREEN
99 #endif
101 /* We don't have -loldX, and we don't need it. */
102 #define LIB_XMENU_LIB
104 /* SCO does have TIOCGWINSZ. */
105 #undef BROKEN_TIOCGWINSZ
106 #define NEED_PTEM_H
108 /* We need to link with crt1.o and crtn.o. */
109 #define START_FILES pre-crt0.o /lib/crt1.o
110 #define LIB_STANDARD -lc /lib/crtn.o
112 /* Send signals to subprocesses by "typing" signal chars at them. */
113 #define SIGNALS_VIA_CHARACTERS
115 /* Specify program for etc/fakemail to run. Define SMAIL if you are
116 using smail, don't for MMDF. */
118 #ifdef SMAIL
119 #define MAIL_PROGRAM_NAME "/bin/smail -q0"
120 #else
121 #define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail"
122 #endif
124 /* Tell process_send_signal to use VSUSP instead of VSWTCH. */
125 #define PREFER_VSUSP
127 /* SCO Unix has Posix signals, but in 3.2.5 something broken that causes
128 * all keyboard-quit signals to be lost after the first one. */
129 #undef POSIX_SIGNALS
130 #define sigblock(sig) \
131 (sigprocmask_set = SIGEMPTYMASK | (sig), \
132 sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL))
133 #define sigunblock(sig) \
134 (sigprocmask_set = SIGFULLMASK & ~(sig), \
135 sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL))
137 #ifndef PENDING_OUTPUT_COUNT
138 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base)
139 #endif
141 /* Use ELF and get real shared libraries */
143 #undef COFF
144 #define ELF
146 #define UNEXEC unexelf.o
148 #ifndef __GNUC__
149 #define C_SWITCH_SYSTEM -belf
150 #define LD_SWITCH_SYSTEM -belf
151 #endif
153 /* SCO has a working alloca in libPW */
154 #define HAVE_ALLOCA
156 /* Don't disable static function, as SCO's header files have some.*/
157 #undef static
159 #undef START_FILES
160 #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xt.o
161 #undef LIB_STANDARD
162 #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o
164 #define NARROWPROTO 1