coreboot-kgpe-d16/payloads/libpayload/curses/PDCurses-3.4/x11
Patrick Georgi 3b77b723ca libpayload: Add PDCurses and ncurses' libform/libmenu
PDCurses provides an alternative implementation of the curses library
standard in addition to tinycurses.
Where tinycurses is really tiny, PDCurses is more complete and provides
virtually unlimited windows and the full API.
The PDCurses code is brought in "vanilla", with all local changes
residing in curses/pdcurses-backend/

In addition to a curses library, this change also provides libpanel (as
part of the PDCurses code), and libform and libmenu which were derived
from ncurses-5.9.
As they rely on ncurses internals (and PDCurses is not ncurses), more
changes were required for these libraries to work.

The build system is extended to install the right set of header files
depending on the selected curses implementation.

Change-Id: I9e5b920f94b6510da01da2f656196a993170d1c5
Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com>
Reviewed-on: http://review.coreboot.org/106
Tested-by: build bot (Jenkins)
Reviewed-by: Marc Jones <marcj303@gmail.com>
2011-08-04 08:10:41 +02:00
..
Makefile.aix.in libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
Makefile.in libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
README libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
ScrollBox.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
ScrollBox.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
ScrollBoxP.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
big_icon.xbm libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
compose.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
little_icon.xbm libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
ncurses_cfg.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcclip.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcdisp.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcgetsc.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdckbd.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcscrn.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcsetsc.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcutil.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcx11.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
pdcx11.h libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
sb.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
x11.c libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00
xcurses-config.in libpayload: Add PDCurses and ncurses' libform/libmenu 2011-08-04 08:10:41 +02:00

README

PDCurses for X11
================

This is a port of PDCurses for X11, aka XCurses.  It is designed to 
allow existing curses programs to be re-compiled with PDCurses, 
resulting in native X11 programs.


Building
--------

. Run "./configure" in the top-level directory.

  To build the wide-character version of the library, specify
  "--enable-widec" as a parameter. To use X Input Methods, add
  "--enable-xim". I recommend these options, but I haven't yet made
  them the defaults, for the sake of backwards compatibility and due to
  their new and relatively untested status.

  If your system is lacking in UTF-8 support, you can force the use of
  UTF-8 instead of the system locale via "--enable-force-utf8". This is
  generally more useful in Windows.

  If configure can't find your X include files or X libraries, you can
  specify the paths with the arguments "--x-includes=inc_path" and/or
  "--x-libraries=lib_path".

  By default, the library and demo programs are built with the optimizer
  switch -O2. You can turn this off, and turn on debugging (-g), by
  adding "--with-debug" to the configure command.

. Run "make". This should build libXCurses and all the demo programs.

. Optionally, run "make install". curses.h and panel.h will be renamed
  when installed (to xcurses.h and xpanel.h), to avoid conflicts with
  any existing curses installations. Unrenamed copies of curses.h and
  panel.h are installed in (by default) /usr/local/include/xcurses.

  libXpanel is just a symlink to libXCurses. Both curses and panel
  functions are in the main library.


Distribution Status
-------------------

As of April 13, 2006, the files in this directory are released to the 
Public Domain, except for ScrollBox*, which are under essentially the 
MIT X License.


To be Done
----------

- have newterm() create a new X window

- provide a command line parsing function to enable X command line
  arguments to be parsed and stripped from the arguments passed back
  to the calling procedure.


Acknowledgements
----------------

X11 port was provided by Mark Hessling <mark@rexx.org>