X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Ftermsbr.c;h=4804776a462743262a23f6b7bbb35d6073bef003;hb=e42523dbf5820c4d1b0c3496b2d6a226fb31832e;hp=556158d10433e828f96800342a9df948a24915e6;hpb=d036480eb208e821aba1485ec77da7f06bdf13a8;p=mmh diff --git a/uip/termsbr.c b/uip/termsbr.c index 556158d..4804776 100644 --- a/uip/termsbr.c +++ b/uip/termsbr.c @@ -2,23 +2,22 @@ /* * termsbr.c -- termcap support * - * $Id$ + * This code is Copyright (c) 2002, by the authors of nmh. See the + * COPYRIGHT file in the root directory of the nmh distribution for + * complete copyright information. */ #include -#ifdef HAVE_TERMIOS_H -# include -#else -# ifdef HAVE_TERMIO_H -# include -# else -# include -# endif -#endif +#include +/* It might be better to tie this to the termcap_curses_order in + configure.ac. It would be fine to check for ncurses/termcap.h + first on Linux, it's a symlink to termcap.h. */ #ifdef HAVE_TERMCAP_H # include +#elif defined (HAVE_NCURSES_TERMCAP_H) +# include #endif /* is need anyway for ioctl() @@ -40,19 +39,27 @@ # define TXTSIZ BUFSIZ #endif +#ifdef notdef_lyndon_posix + +/* + XXX No current termcap should need this. If your compile barfs, + email details to lyndon@orthanc.ca. This code will vanish soon ... +*/ /* * These variables are sometimes defined in, * and needed by the termcap library. */ -#ifdef HAVE_OSPEED -# ifdef MUST_DEFINE_OSPEED +# ifdef HAVE_OSPEED +# ifdef MUST_DEFINE_OSPEED extern short ospeed; extern char PC; -# endif -#else +# endif +# else short ospeed; char PC; -#endif +# endif + +#endif /* notdef_lyndon_posix */ static long speedcode; @@ -79,16 +86,7 @@ read_termcap(void) char termbuf[TXTSIZ]; #endif -#ifdef HAVE_TERMIOS_H struct termios tio; -#else -# ifdef HAVE_TERMIO_H - struct termio tio; -# else - struct sgttyb tio; -# endif -#endif - static int inited = 0; if (inited++) @@ -101,22 +99,14 @@ read_termcap(void) * If possible, we let tgetent allocate its own termcap buffer */ #ifdef TGETENT_ACCEPTS_NULL - if (tgetent (NULL, term) <= 0) - return + if (tgetent (NULL, term) != TGETENT_SUCCESS) + return; #else - if (tgetent (termbuf, term) <= 0) + if (tgetent (termbuf, term) != TGETENT_SUCCESS) return; #endif -#ifdef HAVE_TERMIOS_H speedcode = cfgetospeed(&tio); -#else -# ifdef HAVE_TERMIO_H - speedcode = ioctl(fileno(stdout), TCGETA, &tio) != NOTOK ? tio.c_cflag & CBAUD : 0; -# else - speedcode = ioctl(fileno(stdout), TIOCGETP, (char *) &tio) != NOTOK ? tio.sg_ospeed : 0; -# endif -#endif HC = tgetflag ("hc");