XEmacs 21.4.4 "Artificial Intelligence".
[chise/xemacs-chise.git.1] / src / s / sco5.h
1 /* System description file for SCO OpenServer Release 5
2    Copyright (C) 1993, 1994 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 2, 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 XEmacs; see the file COPYING.  If not, write to
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA.  */
20
21 /* Synched up with: Not in FSF. */
22
23 /* Changes for SCO OpenServer 5 by Robert Lipe, robertl@dgii.com
24  * Additions, enhancements by J. Kean Johnston, hug@netcom.com
25  */
26
27 #define DONT_DEFINE_NO_REMAP /* `static' hack not needed */
28
29 /* JKJ: Yes its a lot like SCO 4, but different enough that its easier to
30  * base it on stock SVR3 and add our stuff
31  */
32 #include "usg5-3.h"
33 #define SCO_R4
34 #define SCO_R5
35
36 #undef SYSTEM_TYPE
37 #define SYSTEM_TYPE "SCO 3.2v5"
38
39 /* SCO has ptys, but with weird names */
40 #define HAVE_PTYS
41 #define PTY_ITERATION \
42    for (i = 0; ; i++)
43 #define PTY_NAME_SPRINTF \
44   sprintf (pty_name, "/dev/ptyp%d", i);
45 #define PTY_TTY_NAME_SPRINTF \
46   sprintf (pty_name, "/dev/ttyp%d", i);
47
48 /* We have sockets. Always. */
49 #ifndef HAVE_SOCKETS
50 #define HAVE_SOCKETS
51 #endif
52
53 #ifndef __GNUC__
54 #define LINKER "cc -Xc"
55 #else
56 #define LINKER "gcc"
57 #endif
58
59 #define LIBS_SYSTEM "-lsocket -lPW -lgen -lcrypt -lmalloc"
60
61 #ifndef MAXPATHLEN
62 # define MAXPATHLEN PATHSIZE
63 #endif
64
65 /* This is necessary to circumvent stupidity in <X11/Xosdefs.h>.  That
66 file checks a manifest that is only defined by xmkmf.  Alternately, we
67 could #define sco and I think everything would work. rjl */
68 #define ANSICPP 1
69
70 #ifndef HAVE_GETTIMEOFDAY
71 #define HAVE_GETTIMEOFDAY
72 #endif
73
74 #undef ADDR_CORRECT
75 #define ADDR_CORRECT(x) (int)((char *)(x) - (char*)0)
76
77 #define C_SWITCH_SYSTEM "-D_NO_STATIC"
78
79 #ifndef __GNUC__
80 #define C_OPTIMIZE_SWITCH "-O3 -Xc"
81 #define C_DEBUG_SWITCH "-g -Xc"
82 #else
83 #define C_OPTIMIZE_SWITCH "-O99 -m486 -fomit-frame-pointer"
84 #define C_DEBUG_SWITCH "-g"
85 #endif
86
87 /* configure can't get this right linking fails unless -lsocket is used.  */
88 #undef HAVE_XSCREENNUMBEROFSCREEN
89 #define HAVE_XSCREENNUMBEROFSCREEN
90
91 /* We don't have -loldX, and we don't need it.  */
92 #define LIB_XMENU_LIB
93
94 /* SCO does have TIOCGWINSZ.  */
95 #undef BROKEN_TIOCGWINSZ
96 #define NEED_PTEM_H
97
98 #ifndef __GNUC__
99 #define START_FILES "pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xc.o"
100 #else
101 #define START_FILES "pre-crt0.o /usr/ccs/lib/crt1.o"
102 #endif
103 #define LIB_STANDARD "-lc"
104
105 /* Specify program for etc/fakemail to run.  Define SMAIL if you are
106    using smail, don't for MMDF.  */
107
108 #ifdef SMAIL
109 #define MAIL_PROGRAM_NAME "/usr/bin/smail -q0"
110 #else
111 #define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail"
112 #endif
113
114 /* Tell process_send_signal to use VSUSP instead of VSWTCH.  */
115 #define PREFER_VSUSP
116
117 #define POSIX_SIGNALS
118
119 #undef PENDING_OUTPUT_COUNT
120 #define PENDING_OUTPUT_COUNT(f) ((f)->__ptr - (f)->__base)
121
122 #ifndef HAVE_VFORK
123 #define HAVE_VFORK
124 #endif
125
126 #ifdef _SCO_ELF
127 #undef COFF /* coz we're NOT */
128 #define UNEXEC "unexelf.o"
129 #endif
130
131 /* For GCC 2.7.2.3 we require the "JKJ" version of gcc.
132    Works fine with egcs and gcc 2.8.x. */
133 #define LIB_GCC "`$(LD) $(LDFLAGS) -print-libgcc-file-name`"