[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-ncurses] ncurses 6.0 and cur_term function
From: |
Dr. Werner Fink |
Subject: |
Re: [bug-ncurses] ncurses 6.0 and cur_term function |
Date: |
Mon, 28 Sep 2015 14:36:57 +0200 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Sun, Sep 27, 2015 at 08:08:54PM -0400, Thomas Dickey wrote:
> On Mon, Sep 21, 2015 at 12:12:04PM +0200, Dr. Werner Fink wrote:
> >
> > Just my two cents worth I had the thought that starting with ABI 6 it would
> > make a lot of sense to provide noadays the ABI 6 in a threaded version only.
> > This because a lot of modern programs are required to use thread safe
> > libraries.
>
> Some are, but almost all of the ones that I notice (and reply to) have
> trouble using threads in C. I don't recall more than 1-2 who have built
> ncursest/ncursestw (since few packages provide it) and written something
> useful.
Most ncurses programs here depend one wide character support noadays as
all is now in UTF-8 including my MUA. And here there is YaST which has
a ncurses GUI which has to be thread safe.
> The purpose of ABI 6 was the colors/mouse extensions. The thread-support
> is (like normal/wide characters) mostly independent of the ABI 5/6. But
> unlike normal/wide, while it's arguably API-compatible, it's not
> ABI-compatible.
>
> > I had tried also a lot of version and one was the matrix
> >
> > without t and without w
> > with t and without w
> > without t and with w
> > with t and with t
> >
> > for ABI 6 and similar for ABI 5 causing a lot of libraries together with
> > a lot of runtime configurations and a huge number of bug reports which
> > indeed had been done because users had lost overview (which user does
> > read manuals and/or guides) and/or had mixed the several versions out of
> > the matrix and sometime between the two ABI versions.
>
> users don't read FAQs either (not much I can do about that...)
It would be perfect if the final libncurses could have some automatic
compile/link time options which would allow to use/have only one library
but enable the developer using (lib)ncurses thread safe by choosing
-D_REENTRANT or -D_THREAD_SAFE and/or to get wide character support
with -D_NCURSES_WIDECHAR ... don't now if this is doable. AT least
glibc does provide this -D_REENTRANT or -D_THREAD_SAFE switch for
declaring reentrant functions.
Werner
--
"Having a smoking section in a restaurant is like having
a peeing section in a swimming pool." -- Edward Burr
signature.asc
Description: Digital signature