From: Karel Zak Date: Mon, 4 Jun 2007 13:16:18 +0000 (+0200) Subject: text-utils: fix the more command compilation against termcap X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=04b7cb3216932decb5ce0f62ace580cd91bc8c2e;p=util-linux text-utils: fix the more command compilation against termcap The build-sys (text-utils/Makefile.am) allows to compile against ncurses and termcap. The termcap version is broken in more.c. Signed-off-by: Karel Zak --- diff --git a/text-utils/more.c b/text-utils/more.c index 982edbec..db2fa4d2 100644 --- a/text-utils/more.c +++ b/text-utils/more.c @@ -167,12 +167,13 @@ struct { extern char PC; /* pad character */ #ifdef HAVE_NCURSES_H -#include +# include #elif defined(HAVE_NCURSES_NCURSES_H) -#include +# include #endif -#include /* include after */ +#if defined(HAVE_NCURSES_H) || defined(HAVE_NCURSES_NCURSES_H) +# include /* include after */ static void my_putstring(char *s) { @@ -204,6 +205,46 @@ my_tgoto(const char *cap, int col, int row) { return tparm(cap, col, row); } +#elif defined(HAVE_LIBTERMCAP) /* !ncurses */ + +#include + +char termbuffer[4096]; +char tcbuffer[4096]; +char *strbuf = termbuffer; + +static void +my_putstring(char *s) { + tputs (s, 1, putchar); +} + +static void +my_setupterm(const char *term, int fildes, int *errret) { + *errret = tgetent(tcbuffer, term); +} + +static int +my_tgetnum(char *s, char *ss) { + return tgetnum(s); +} + +static int +my_tgetflag(char *s, char *ss) { + return tgetflag(s); +} + +static char * +my_tgetstr(char *s, char *ss) { + return tgetstr(s, &strbuf); +} + +static char * +my_tgoto(const char *cap, int col, int row) { + return tgoto(cap, col, row); +} + +#endif /* HAVE_LIBTERMCAP */ + static void idummy(int *kk) {}