]> code.delx.au - gnu-emacs/blobdiff - src/s/irix6-5.h
Add 2010 to copyright years.
[gnu-emacs] / src / s / irix6-5.h
index 9a53e16257ef261f35b7c896c37938c0f9d22b7d..57429e4166324500a1d3c2687da2f767d2f4ef80 100644 (file)
@@ -1,14 +1,14 @@
 /* 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
@@ -16,29 +16,102 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 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
@@ -51,9 +124,6 @@ Boston, MA 02110-1301, USA.  */
 
 #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.  */