/* Definitions file for GNU Emacs running on Silicon Graphics Irix system 6.5.
-Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
- 2007 Free Software Foundation, Inc.
+Copyright (C) 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/>. */
#define IRIX6_5 /* used in m/iris4d */
-#include "irix5-0.h"
+#include "usg5-4.h"
+
+#undef sigsetmask /* use sys_sigsetmask */
+#undef _longjmp /* use system versions, not conservative aliases */
+#undef _setjmp
+
+#define SETPGRP_RELEASES_CTTY
+
+#ifdef LIB_STANDARD
+#undef LIB_STANDARD
+#endif
+
+#ifdef SYSTEM_TYPE
+#undef SYSTEM_TYPE
+#endif
+#define SYSTEM_TYPE "irix"
+
+#ifdef SETUP_SLAVE_PTY
+#undef SETUP_SLAVE_PTY
+#endif
+
+/* thomas@mathematik.uni-bremen.de says this is needed. */
+/* Make process_send_signal work by "typing" a signal character on the pty. */
+#define SIGNALS_VIA_CHARACTERS
+
+/* No need to use sprintf to get the tty name--we get that from _getpty. */
+#ifdef PTY_TTY_NAME_SPRINTF
+#undef PTY_TTY_NAME_SPRINTF
+#endif
+#define PTY_TTY_NAME_SPRINTF
+/* No need to get the pty name at all. */
+#ifdef PTY_NAME_SPRINTF
+#undef PTY_NAME_SPRINTF
+#endif
+#define PTY_NAME_SPRINTF
+#ifdef emacs
+char *_getpty();
+#endif
+/* We need only try once to open a pty. */
+#define PTY_ITERATION
+/* Here is how to do it. */
+#define PTY_OPEN \
+{ \
+ struct sigaction ocstat, cstat; \
+ char * name; \
+ sigemptyset(&cstat.sa_mask); \
+ cstat.sa_handler = SIG_DFL; \
+ cstat.sa_flags = 0; \
+ sigaction(SIGCLD, &cstat, &ocstat); \
+ name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0); \
+ sigaction(SIGCLD, &ocstat, (struct sigaction *)0); \
+ if (name == 0) \
+ return -1; \
+ if (fd < 0) \
+ return -1; \
+ if (fstat (fd, &stb) < 0) \
+ return -1; \
+ strcpy (pty_name, name); \
+}
+
+/* Since we use POSIX constructs in PTY_OPEN, we must force POSIX
+ throughout. */
+#define POSIX_SIGNALS
+
+/* Ulimit(UL_GMEMLIM) is busted... */
+#define ULIMIT_BREAK_VALUE 0x14000000
+
+/* Tell process_send_signal to use VSUSP instead of VSWTCH. */
+#define PREFER_VSUSP
+
+/* define MAIL_USE_FLOCK if the mailer uses flock
+ to interlock access to /usr/spool/mail/$USER.
+ The alternative is that a lock file named
+ /usr/spool/mail/$USER.lock. */
+
+#define MAIL_USE_FLOCK
+
+#define NARROWPROTO 1
+
+#define USE_MMAP_FOR_BUFFERS 1
+
+/* arch-tag: ad0660e0-acf8-46ae-b866-4f3df5b1101b
+ (do not change this comment) */
+
#if _MIPS_SZLONG == 64 /* -mabi=64 (gcc) or -64 (MIPSpro) */
#define _LP64 /* lisp.h takes care of the rest */
#endif /* _MIPS_SZLONG */
-/* This macro definition, which we inherited from irix5-0.h,
- is needed in configure on Irix 5, but gets in the way there
- on Irix 6. So get rid of it except in Makefile.in where we need it. */
-#ifndef THIS_IS_MAKEFILE
-#undef C_SWITCH_SYSTEM
-#endif
-
/* The only supported 32-bit configuration of GCC under IRIX6.x produces
n32 MIPS ABI binaries and also supports -g. */
#ifdef __GNUC__
-#undef C_DEBUG_SWITCH
#define C_DEBUG_SWITCH -g
#else
/* Optimize, inaccurate debugging, increase limit on size of what's
#undef SA_RESTART
-/* Cancel the #define that is in irix5-0.h. */
-#undef ospeed
-
#undef TIOCSIGSEND /* defined in usg5-4.h */
/* Tested on Irix 6.5. SCM worked on earlier versions. */