Feature #1168
closedwant a libtermcap that does not force libcurses
50%
Description
While looking at issue 415 https://www.illumos.org/issues/415 it became apparent that issues like 415 could benefit from the existence of a libtermcap that does not force the consumer to link with libcurses. (See 415 for details on that.)
This feature request proposes a filter library (libtermcap.so.1) that will export the traditional BSD-style termcap symbols, but mark all those exported symbols as NODIRECT. That way, a consuming library or application can link with a different curses implementation, and as long as it provides those symbols, those will be used instead of the ones in libcurses.
With the proposed filter library, we can "properly" fix libreadline so that it uses whatever curses library its consumer uses, only falling back to libcurses if the consumer does not link any curses library. And the fix does not require adding the curses library to libreadline consumers who have no need for curses functions. (That will fix issue 415, etc.)
Files
Updated by Gordon Ross over 12 years ago
Here's an implementation of this proposed feature:
http://www.yalms.org/cr/libtermcap/
Updated by Gordon Ross over 12 years ago
- File illumos-1168.export illumos-1168.export added
an hg export of the changes, in case anyone wants to try this out.
Updated by Gordon Ross over 12 years ago
- Status changed from In Progress to Resolved
changeset: 13400:71e59c2d8715 tag: tip user: Gordon Ross <gwr@nexenta.com> date: Fri Jul 15 10:20:38 2011 -0400 description: 1168 want a libtermcap that does not force libcurses Reviewed by: Garrett D'Amore <garrett@nexenta.com> Reviewed by: Albert Lee <trisk@nexenta.com> Reviewed by: Igor Kozhukhov <igor.kozhukhov@nexenta.com> Approved by: Garrett D'Amore <garrett@nexenta.com>