1/* System description file for SCO 3.2v5. 2 Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, 2006, 3 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 the 19Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 20Boston, MA 02110-1301, USA. */ 21 22/* Contributed by Mark Diekhans <markd@grizzly.com>. */ 23 24/* SCO is sort of like SVR3. */ 25#include "usg5-3.h" 26#define SCO_R5 27 28#if 0 /* Turned off rather than make the Lisp code check for this. -- rms. 29 I am assuming that (at least most of) the tests for usg-unix-v 30 do the right thing for sco3.2v4 also. Things that *might* be wrong 31 as a result of turning off these lines include the values of 32 ange-ftp-remote-shell-file-name (now remsh) 33 dired-chown-program (now just chown) 34 lpr-command (now lp) 35 nntp-buggy-select (now t) 36 rmail-spool-directory (now /usr/mail?) 37 and the actions of the function print-region-1. */ 38 39/* SYSTEM_TYPE should indicate the kind of system you are using. */ 40#undef SYSTEM_TYPE 41#define SYSTEM_TYPE "SCO 3.2v4" 42#endif 43 44/* SCO supports job control. */ 45#undef NOMULTIPLEJOBS 46 47/* SCO has termios. */ 48#define HAVE_TERMIOS 49 50/* SCO has ptys with unusual names. */ 51#define HAVE_PTYS 52 53#define PTY_ITERATION \ 54 for (i = 0; ; i++) 55#define PTY_NAME_SPRINTF \ 56 sprintf (pty_name, "/dev/ptyp%d", i); 57#define PTY_TTY_NAME_SPRINTF \ 58 sprintf (pty_name, "/dev/ttyp%d", i); 59 60/* Sockets are an option on SCO. If you have X, you have them. 61 They also exist if you have TCP, but we don't know how to test 62 for that. */ 63#ifdef HAVE_X_WINDOWS 64#define HAVE_SOCKETS 65#endif 66 67#ifndef __GNUC__ 68#define LINKER ld 69#endif 70 71/* This is safe since we already assumed HAVE_SOCKET 72 if using X windows. */ 73#undef LIBX11_SYSTEM 74#define LIBX11_SYSTEM_COMMON -lpt -lnls -lnsl -lc -lsocket 75#ifdef MOTIF 76# define LIBX11_SYSTEM -lgen LIBX11_SYSTEM_COMMON 77#else /* ndef MOTIF */ 78# define LIBX11_SYSTEM LIBX11_SYSTEM_COMMON 79#endif /* ndef MOTIF */ 80 81#undef LIB_X11_LIB 82#define LIB_X11_LIB -lX11 83 84#ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */ 85#define HAVE_SOCKETS 86#endif 87 88#ifdef HAVE_SOCKETS 89#define LIBS_SYSTEM -lsocket -lPW 90#endif 91 92#ifndef HAVE_GETTIMEOFDAY 93#define HAVE_GETTIMEOFDAY 94#endif 95 96/* This enables configure to tell that we have alloca. */ 97#ifndef LIBS_SYSTEM 98#define LIBS_SYSTEM -lPW 99#endif 100 101#ifdef HAVE_X11R5 102/* configure can't get this right linking fails unless -lsocket is used. */ 103#undef HAVE_XSCREENNUMBEROFSCREEN 104#define HAVE_XSCREENNUMBEROFSCREEN 105#endif 106 107/* We don't have -loldX, and we don't need it. */ 108#define LIB_XMENU_LIB 109 110/* SCO does have TIOCGWINSZ. */ 111#undef BROKEN_TIOCGWINSZ 112#define NEED_PTEM_H 113 114/* We need to link with crt1.o and crtn.o. */ 115#define START_FILES pre-crt0.o /lib/crt1.o 116#define LIB_STANDARD -lc /lib/crtn.o 117 118/* Send signals to subprocesses by "typing" signal chars at them. */ 119#define SIGNALS_VIA_CHARACTERS 120 121/* Specify program for etc/fakemail to run. Define SMAIL if you are 122 using smail, don't for MMDF. */ 123 124#ifdef SMAIL 125#define MAIL_PROGRAM_NAME "/bin/smail -q0" 126#else 127#define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" 128#endif 129 130/* Tell process_send_signal to use VSUSP instead of VSWTCH. */ 131#define PREFER_VSUSP 132 133/* SCO Unix has Posix signals, but in 3.2.5 something broken that causes 134 * all keyboard-quit signals to be lost after the first one. */ 135#undef POSIX_SIGNALS 136 137#define SIGMASKTYPE long 138 139#ifndef NOT_C_CODE 140extern SIGMASKTYPE sigprocmask_set; 141#endif /* not NOT_C_CODE */ 142 143#define sigblock(sig) \ 144 (sigprocmask_set = SIGEMPTYMASK | (sig), \ 145 sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL)) 146#define sigunblock(sig) \ 147 (sigprocmask_set = SIGFULLMASK & ~(sig), \ 148 sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL)) 149 150#ifndef PENDING_OUTPUT_COUNT 151#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) 152#endif 153 154/* Use ELF and get real shared libraries */ 155 156#undef COFF 157#define ELF 158 159#define UNEXEC unexelf.o 160 161#ifndef __GNUC__ 162#define C_SWITCH_SYSTEM -belf 163#define LD_SWITCH_SYSTEM -belf 164#endif 165 166/* Don't disable static function, as SCO's header files have some.*/ 167#undef static 168 169#undef START_FILES 170#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xt.o 171#undef LIB_STANDARD 172#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o 173 174#define NARROWPROTO 1 175 176/* arch-tag: 930541b5-52d9-4cbe-b73c-f4c72091f5df 177 (do not change this comment) */ 178