bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ncurses for djgpp


From: Thomas Dickey
Subject: Re: ncurses for djgpp
Date: Mon, 6 Aug 2001 20:41:52 -0400
User-agent: Mutt/1.2.5i

On Mon, Aug 06, 2001 at 07:58:13PM -0400, Mark E. wrote:
> Hello,
> I've been using an up-to-date djgpp libc.a with ncurses 5.2 with success. 
> The latest djgpp in cvs support a large subset of ecma-48 commands.  I
> currently have a capability description in termcap format which I plan to
> convert to terminfo format so it can be included in terminfo.src.
> 
> Anyway, I have a patch would help better help support djgpp.  It's a patch to
> set the number of rows and columns and call tcgetattr in order to enable the
> termios emulation and its ecma support.
> 
> I wanted to generate it against an up-to-date ncurses, but the rollup patch
> from July 14th wouldn't apply cleanly in places (certain patches to NEWS for
> example).

I always test the rollup patch against the release (not knowing exactly
what you did, I can't tell what's wrong).  You need tar, gzip, uudecode
and of course patch.
 
> Also, the released 5.2 also doesn't use EXEEXT which causes 'make install' to 
> fail when 
> installing 'tic', etc.

EXEEXT didn't correspond to any release version of autoconf at the time 5.2
was released.
 
> I didn't find a ChangeLog, so I haven't included one.

NEWS serves that purpose.

> 
> *** lib_setup.c.orig  Sat Sep  2 14:13:12 2000
> --- lib_setup.c       Mon Aug  6 18:51:12 2001
> *************** _nc_get_screensize(int *linep, int *colp
> *** 136,141 ****
> --- 136,158 ----
>                   *linep, *colp));
>       }
>   #endif
> + #ifdef __DJGPP__
> +         /* Dummy call to tcgetattr to force use of termios emulation. */
> +         if (1) {
> +           struct termios t;
> + 
> +           tcgetattr(0, &t);
> +         }

that's a rather ugly solution, btw (would be better to provide a special
function for this than to distort the meaning of tcgetattr).

> +         if (*linep <= 0) {
> +           int ScreenRows(void);

what library provides ScreenRows() and ScreenCols()?

> +           *linep = ScreenRows();
> +         }
> +         if (*colp <= 0) {
> +           int ScreenCols(void);
> +           *colp = ScreenCols();
> +         }
> +     T(("screen size: environment LINES = %d COLUMNS = %d", *linep, *colp));
> + #endif
>   #if HAVE_SIZECHANGE
>       /* if that didn't work, maybe we can try asking the OS */
>       if (*linep <= 0 || *colp <= 0) {
> 
> Mark
> 
> 
> _______________________________________________
> Bug-ncurses mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/bug-ncurses

-- 
Thomas E. Dickey <address@hidden>
http://dickey.his.com
ftp://dickey.his.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]