X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=src%2Fsystty.h;h=6494003edbcd95111875d6e1b21d6bbe3d65b5e8;hp=67015e8174dc01744ff60565d38f51153fcabf7e;hb=8ba3626da629f1b4ecafae24c85f3d0cb3bf8b8e;hpb=716cfba952c1dc0d2cf5c968971f3780ba728a89 diff --git a/src/systty.h b/src/systty.h index 67015e8..6494003 100644 --- a/src/systty.h +++ b/src/systty.h @@ -94,9 +94,9 @@ Boston, MA 02111-1307, USA. */ # include # endif -#elif defined (DOS_NT) +#elif defined (WIN32_NATIVE) -/***** (3) The MSDOS/NT way *****/ +/***** (3) The WIN32_NATIVE way *****/ /* Nothing doing */ @@ -124,7 +124,7 @@ Boston, MA 02111-1307, USA. */ /* Generally useful to include this file: */ /* But Sun OS has broken include files and doesn't want it included */ -#if !defined (DOS_NT) && !defined (WIN32) && !defined (SUNOS4) +#if !defined (WIN32_NATIVE) && !defined (SUNOS4) # include #endif /* UNIPLUS systems may have FIONREAD. */ @@ -246,55 +246,34 @@ Boston, MA 02111-1307, USA. */ /* Manipulate a terminal's current (foreground) process group */ /* -------------------------------------------------------------------- */ -/* EMACS_HAVE_TTY_PGRP is true if we can get and set the tty's current - controlling process group. +/* EMACS_GET_TTY_PGRP(int FD, pid_t *PGID) sets *PGID to the terminal + FD's current foreground process group. Return -1 if there is an error. - EMACS_GET_TTY_PGRP(int FD, int *PGID) sets *PGID the terminal FD's - current process group. Return -1 if there is an error. + EMACS_SET_TTY_PGRP(int FD, pid_t *PGID) sets the terminal FD's current + foreground process group to *PGID. Return -1 if there is an error. - EMACS_SET_TTY_PGRP(int FD, int *PGID) sets the terminal FD's - current process group to *PGID. Return -1 if there is an error. */ + We prefer using the ioctl (BSD) interface instead of its Posix + replacement tgetpgrp/tcsetpgrp since that is documented as being + restricted to processes sharing the same controlling tty. */ -/* HPUX tty process group stuff doesn't work, says the anonymous voice - from the past. */ -/* But HPUX people say it does, so I've removed it. --ben */ -# ifdef TIOCGPGRP -# define EMACS_HAVE_TTY_PGRP -# else -# ifdef HAVE_TERMIOS -# define EMACS_HAVE_TTY_PGRP -# endif -# endif - -#ifdef EMACS_HAVE_TTY_PGRP - -#if defined (HAVE_TERMIOS) && ! defined (BSD_TERMIOS) +#if defined (TIOCGPGRP) -/* Resist the urge to insert needless extra parentheses. */ -#define EMACS_GET_TTY_PGRP(fd, pgid) (*(pgid) = tcgetpgrp (fd)) -#define EMACS_SET_TTY_PGRP(fd, pgid) tcsetpgrp (fd, *(pgid)) +#define EMACS_GET_TTY_PROCESS_GROUP(fd, pgid) ioctl (fd, TIOCGPGRP, pgid) +#define EMACS_SET_TTY_PROCESS_GROUP(fd, pgid) ioctl (fd, TIOCSPGRP, pgid) -#elif defined (TIOCSPGRP) +#elif defined (HAVE_TCGETPGRP) -#define EMACS_GET_TTY_PGRP(fd, pgid) (ioctl ((fd), TIOCGPGRP, (pgid))) -#define EMACS_SET_TTY_PGRP(fd, pgid) (ioctl ((fd), TIOCSPGRP, (pgid))) +#define EMACS_GET_TTY_PROCESS_GROUP(fd, pgid) (*(pgid) = tcgetpgrp (fd)) +#define EMACS_SET_TTY_PROCESS_GROUP(fd, pgid) tcsetpgrp (fd, *(pgid)) -#endif - -#endif /* EMACS_HAVE_TTY_PGRP */ - -#ifndef EMACS_GET_TTY_PGRP +#else /* Just ignore this for now and hope for the best */ -#define EMACS_GET_TTY_PGRP(fd, pgid) 0 -#define EMACS_SET_TTY_PGRP(fd, pgif) 0 +#define EMACS_GET_TTY_PROCESS_GROUP(fd, pgid) 0 +#define EMACS_SET_TTY_PROCESS_GROUP(fd, pgif) 0 #endif -/* XEmacs interim backward-compatibility */ -#define EMACS_GET_TTY_PROCESS_GROUP EMACS_GET_TTY_PGRP -#define EMACS_SET_TTY_PROCESS_GROUP EMACS_SET_TTY_PGRP - /* EMACS_GETPGRP (arg) returns the process group of the terminal. */ #ifdef GETPGRP_VOID @@ -333,7 +312,7 @@ Boston, MA 02111-1307, USA. */ No big loss -- it just means that ^Z won't work right if we're run from sh. */ # define EMACS_SET_PROCESS_GROUP(pg) -#elif defined(__MINGW32__) +#elif defined(MINGW) # define EMACS_SEPARATE_PROCESS_GROUP() #else /* Under NeXTstep, a process group of 0 is not the same as specifying @@ -384,11 +363,11 @@ struct emacs_tty { #ifdef HAVE_TERMIO struct termio main; #else /* !HAVE_TERMIO */ -#ifdef DOS_NT +#ifdef WIN32_NATIVE int main; -#else /* not DOS_NT */ +#else /* not WIN32_NATIVE */ struct sgttyb main; -#endif /* not DOS_NT */ +#endif /* not WIN32_NATIVE */ #endif /* !HAVE_TERMIO */ #endif /* !HAVE_TCATTR */ @@ -428,11 +407,11 @@ int emacs_set_tty (int fd, struct emacs_tty *settings, int flushp); #define EMACS_TTY_TABS_OK(p) (((p)->main.c_oflag & TABDLY) != TAB3) #else /* neither HAVE_TERMIO nor HAVE_TERMIOS */ -#ifdef DOS_NT +#ifdef WIN32_NATIVE #define EMACS_TTY_TABS_OK(p) 0 -#else /* not DOS_NT */ +#else /* not WIN32_NATIVE */ #define EMACS_TTY_TABS_OK(p) (((p)->main.sg_flags & XTABS) != XTABS) -#endif /* not DOS_NT */ +#endif /* not WIN32_NATIVE */ #endif /* not def HAVE_TERMIO */ #endif /* not def HAVE_TERMIOS */