ptx4.h 2.34 KB
Newer Older
1 2 3
/* s/ file for Sequent "ptx 4", which is a modified SVR5.4.

Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
Glenn Morris's avatar
Glenn Morris committed
4
  2007, 2008  Free Software Foundation, Inc.
5 6 7 8 9

This file is part of GNU Emacs.

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
10
the Free Software Foundation; either version 3, or (at your option)
11 12 13 14 15 16 17 18 19 20 21 22
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
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.  */

Richard M. Stallman's avatar
Richard M. Stallman committed
23

Richard M. Stallman's avatar
Richard M. Stallman committed
24 25 26 27
/* Tell usg5-4.h not to include filio.h.  */
#define NO_FILIO_H

#include "usg5-4.h"
Richard M. Stallman's avatar
Richard M. Stallman committed
28 29 30 31

/* Marcus Daniels <marcus@sysc.pdx.edu> says that SIGINFO is defined
   on ptx4 but it is not a signal.  Prevent process.c from doing the
   wrong thing.  */
Paul Eggert's avatar
Paul Eggert committed
32
#define BROKEN_SIGINFO
Richard M. Stallman's avatar
Richard M. Stallman committed
33

34 35 36
/* pae@dim.com (Phil Ernhardt) says this correction to
   the definition in usg5-4.h is needed to prevent
   all asynchronous subprocesses from exiting right away.  */
37 38 39 40 41 42 43 44 45 46 47 48 49 50

/* James Youngman <jay@gnu.org> found that on "DYNIX/ptx ARNIE 4.0
 * V4.4.2 i386", the push of the ttcompat module would fail.  It seems
 * that PTX 4.4.2 doesn't have that module, so if the push fails we
 * don't kill ourselves.  While this version lacks ttcompat, it also
 * has ptem, but the manual page for ptem indicates that it should
 * be pushed onto the slave side before the line discipline module.
 * See also the streampty manual page, if you're curious (and have
 * a ptx system).
 */

/* rms: I hope that older versions which do have ttcompat
   will not get confused by the code to use ptem.  */

51 52
#undef SETUP_SLAVE_PTY
#define SETUP_SLAVE_PTY \
53 54
  if (ioctl (xforkin, I_PUSH, "ptem") == -1 && errno != EINVAL) \
    fatal ("ioctl I_PUSH ptem", errno);     \
55 56
  if (ioctl (xforkin, I_PUSH, "ldterm") == -1)	\
    fatal ("ioctl I_PUSH ldterm", errno);	\
57
  if (ioctl (xforkin, I_PUSH, "ttcompat") == -1 && errno != EINVAL) \
58
    fatal ("ioctl I_PUSH ttcompat", errno);
Miles Bader's avatar
Miles Bader committed
59 60 61

/* arch-tag: 14621824-8dca-432b-a97a-049fc4ce0e9f
   (do not change this comment) */