/* Definitions file for GNU Emacs running on AT&T's System V Release 4
- Copyright (C) 1987, 1990, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1990, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GNU Emacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA. */
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* This file written by James Van Artsdalen of Dell Computer Corporation.
* james@bigtex.cactus.org. Subsequently improved for Dell 2.2 by Eric
/* Use the SysVr3 file for at least base configuration. */
-#include "usg5-3.h"
+#define USG /* System III, System V, etc */
+#define USG5
#define USG5_4
-/* We do have multiple jobs. Handle ^Z. */
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+ It sets the Lisp variable system-type. */
-#undef NOMULTIPLEJOBS
+#define SYSTEM_TYPE "usg-unix-v"
-/* Motif needs -lgen. */
-#define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen
-#define ORDINARY_LINK
+/*
+ * Define HAVE_TERMIO if the system provides sysV-style ioctls
+ * for terminal control.
+ */
+
+#define HAVE_TERMIO
+
+/*
+ * Define HAVE_PTYS if the system supports pty devices.
+ */
+
+/*
+ * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
+ * library functions. Almost, but not quite the same as
+ * the 4.2 functions
+ */
+#define SYSV_SYSTEM_DIR
+
+/* The file containing the kernel's symbol table is called /unix. */
+
+#define KERNEL_FILE "/unix"
+
+/* The symbol in the kernel where the load average is found
+ is named avenrun. */
+
+#define LDAV_SYMBOL "avenrun"
+
+/* Special hacks needed to make Emacs run on this system. */
+
+/*
+ * Make the sigsetmask function go away. Don't know what the
+ * ramifications of this are, but doesn't seem possible to
+ * emulate it properly anyway at this point.
+ */
+
+#define sigsetmask(mask) /* Null expansion */
+
+/* setjmp and longjmp can safely replace _setjmp and _longjmp,
+ but they will run slower. */
+
+#define _setjmp setjmp
+#define _longjmp longjmp
+
+/* On USG systems these have different names */
+#ifndef HAVE_INDEX
+#define index strchr
+#endif /* ! defined (HAVE_INDEX) */
+#ifndef HAVE_RINDEX
+#define rindex strrchr
+#endif /* ! defined (HAVE_RINDEX) */
+
+/* Use terminfo instead of termcap. */
+
+#define TERMINFO
-#if 0
-#ifdef ORDINARY_LINK
-#define LIB_STANDARD -lc /usr/ucblib/libucb.a
-#else
-#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
-#define LIB_STANDARD -lc /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o
-#endif
-#else
-#ifdef ORDINARY_LINK
+/* The docs for system V/386 suggest v.3 has sigpause,
+ so let's give it a try. */
+#define HAVE_SYSV_SIGPAUSE
+
+
+/* If we're using the System V X port, BSD bstring functions will be handy */
+
+#ifdef HAVE_X_WINDOWS
+#define BSTRING
+#endif /* HAVE_X_WINDOWS */
+
+/* On USG systems signal handlers return void */
+
+#define SIGTYPE void
+
+#define ORDINARY_LINK
+
#define LIB_STANDARD
-#else
-#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
-#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o
-#endif
-#endif
/* there are no -lg libraries on this system, and no libPW */
#define UNEXEC unexelf.o
-/* <sys/stat.h> *defines* stat(2) as a static function. If "static"
- * is blank, then many files will have a public definition for stat(2).
- */
-
-#undef static
-
/* Get FIONREAD from <sys/filio.h>. Get <sys/ttold.h> to get struct
* tchars. But get <termio.h> first to make sure ttold.h doesn't
* interfere. And don't try to use SIGIO yet.
#endif
#ifdef emacs
-#ifndef NO_FILIO_H
#include <sys/filio.h>
-#endif
#include <termio.h>
#include <sys/ttold.h>
#include <signal.h>
*/
#define NSIG_MINIMUM 32
-/* We need bss_end from emacs.c for undumping */
-
-#ifndef USG_SHARED_LIBRARIES
-#define USG_SHARED_LIBRARIES
-#endif
-
/* We can support this */
#define CLASH_DETECTION
#define HAVE_PTYS
#define HAVE_TERMIOS
-#undef BROKEN_TIOCGWINSZ
-#undef BROKEN_TIOCGETC
/* It is possible to receive SIGCHLD when there are no children
waiting, because a previous waitsys(2) cleaned up the carcass of child
without clearing the SIGCHLD pending info. So, use a non-blocking
wait3 instead, which maps to waitpid(2) in SysVr4. */
-#define HAVE_WAIT_HEADER
-#define WAITTYPE int
#define wait3(status, options, rusage) \
waitpid ((pid_t) -1, (status), (options))
#define WRETCODE(w) (w >> 8)
/* This change means that we don't loop through allocate_pty too many
times in the (rare) event of a failure. */
-#undef FIRST_PTY_LETTER
#define FIRST_PTY_LETTER 'z'
/* This sets the name of the master side of the PTY. */
if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \
fatal ("ioctl I_PUSH ttcompat", errno);
-/* Undo the SVr3 X11 library definition */
-#undef LIB_X11_LIB
-
-/* The definition of this in s-usg5-3.h is not needed in 5.4. */
-/* liblnsl_s should never be used. The _s suffix implies a shared
- library, as opposed to a DLL. Share libraries were used in SVR3, and are
- available only in order to allow SVR3 binaries to run. They should not be
- linked in to new binaries. -- caraway!pinkas@caraway.intel.com. */
-#undef LIBX10_SYSTEM
-#undef LIBX11_SYSTEM
-
-/* Tell x11term.c and keyboard.c we have the system V streams feature. */
-#define SYSV_STREAMS
-
/* This definition was suggested for next release.
So give it a try. */
#define HAVE_SOCKETS
-/* Markus Weiand <weiand@khof.com> says this is needed for Motif on
- SINIX. */
-#undef LIBS_SYSTEM
-#define LIBS_SYSTEM -lgen
-
/* arch-tag: 1a0ed909-5faa-434b-b7c3-9d86c63d53a6
(do not change this comment) */