On Fri, Feb 12, 1999 at 04:02:31PM +0100, Niels Möller wrote: > Rafal Maszkowski <[EMAIL PROTECTED]> writes: > > Another missing function is cfmakeraw() - I defined it as desribed in Linux man > > page: > > #define cfmakeraw(termios_p) { (termios_p)->c_iflag &= >~(IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON); (termios_p)->c_oflag &= >~OPOST; (termios_p)->c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN); >(termios_p)->c_cflag &= ~(CSIZE|PARENB); (termios_p)->c_cflag |= CS8; } > So we'll need a configure test and a fallback for this function. > > - add another compatibility function and test - cfmakeraw() > That would be good. Something like #if !HAVE_CFMAKERAW #define > cfmakeraw(... should do. Done, seems to work (on Solaris). Diff between 1999-01-29 and my changes: diff -ru lsh-snapshot-1999-01-28.orig/configure.in lsh-snapshot-1999-01-28/configure.in --- lsh-snapshot-1999-01-28.orig/configure.in Thu Jan 28 08:55:06 1999 +++ lsh-snapshot-1999-01-28/configure.in Sun Feb 14 05:20:42 1999 @@ -178,9 +178,11 @@ AC_FUNC_VPRINTF AC_CHECK_FUNCS(select socket strerror strtol) AC_CHECK_FUNCS(getspnam) -AC_CHECK_FUNCS(vsnprintf inet_aton) +AC_CHECK_FUNCS(inet_aton) +AC_CHECK_FUNCS(snprintf,,[LIBOBJS="snprintf.o $LIBOBJS"]) AC_CHECK_FUNCS(openpty) AC_CHECK_FUNCS(poll,,[LIBOBJS="jpoll.o $LIBOBJS"]) +AC_CHECK_FUNCS(cfmakeraw) dnl This macro is mentioned in the automake manual, but where is it dnl supposed to be defined? @@ -291,8 +293,8 @@ fi AC_MSG_CHECKING(for BSD pty names) -AC_DEFINE_UNQUOTED(PTY_BSD_SCHEME_FIRST_CHARS, "`ls /dev/pty* | cut -c 9-9 | uniq | tr -d '\n'`") -AC_DEFINE_UNQUOTED(PTY_BSD_SCHEME_SECOND_CHARS, "`ls /dev/pty* | cut -c 10-10 | sort | uniq | tr -d '\n'`") +AC_DEFINE_UNQUOTED(PTY_BSD_SCHEME_FIRST_CHARS, "`ls /dev/pty* | cut -c 9-9 | uniq | +tr -d '\012'`") +AC_DEFINE_UNQUOTED(PTY_BSD_SCHEME_SECOND_CHARS, "`ls /dev/pty* | cut -c 10-10 | sort +| uniq | tr -d '\012'`") AC_DEFINE(PTY_BSD_SCHEME) AC_MSG_RESULT([done]) diff -ru lsh-snapshot-1999-01-28.orig/src/tty.h lsh-snapshot-1999-01-28/src/tty.h --- lsh-snapshot-1999-01-28.orig/src/tty.h Thu Jan 28 09:56:37 1999 +++ lsh-snapshot-1999-01-28/src/tty.h Sun Feb 14 05:19:56 1999 @@ -42,4 +42,8 @@ struct lsh_string *tty_encode_term_mode(struct termios *ios); int tty_decode_term_mode(struct termios *ios, UINT32 t_len, UINT8 *t_modes); +#ifndef HAVE_CFMAKERAW +#define cfmakeraw(termios_p) { (termios_p)->c_iflag &= +~(IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON); (termios_p)->c_oflag &= +~OPOST; (termios_p)->c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN); +(termios_p)->c_cflag &= ~(CSIZE|PARENB); (termios_p)->c_cflag |= CS8; } +#endif + #endif R.