ncurses 5.9 - patch 20110404 v5.9
authorThomas E. Dickey <dickey@invisible-island.net>
Mon, 4 Apr 2011 22:59:59 +0000 (22:59 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Mon, 4 Apr 2011 22:59:59 +0000 (22:59 +0000)
22 files changed:
ANNOUNCE
NEWS
announce.html.in
dist.mk
doc/html/ada/terminal_interface-curses__ads.htm
doc/html/announce.html
doc/html/man/adacurses-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/form.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/menu.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncurses5-config.1.html
doc/html/man/panel.3x.html
doc/html/man/tabs.1.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html

index 269bd2bca2a8726faa8fbdb8603d6c3de1da8507..11933c5f6d55f4f21e79e0829da3c801365977ce 100644 (file)
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,4 +1,4 @@
-                            Announcing ncurses 5.8
+                            Announcing ncurses 5.9
 
    The  ncurses  (new  curses)  library  is  a free software emulation of
    curses  in  System  V  Release 4.0, and more. It uses terminfo format,
                                  Release Notes
 
    This  release  is  designed  to  be upward compatible from ncurses 5.0
-   through   5.7;  very  few  applications  will  require  recompilation,
+   through   5.8;  very  few  applications  will  require  recompilation,
    depending   on  the  platform.  These  are  the  highlights  from  the
-   change-log since ncurses 5.7 release.
-
-Interface changes
-
-     * turn on _XOPEN_CURSES definition in curses.h.
-     * change  _nc_has_mouse  to  has_mouse,  reflect  its use in C++ and
-       Ada95.
-     * add is_pad and is_subwin functions for opaque access to the WINDOW
-       structure.
-     * add tiparm, based on review of X/Open Curses Issue 7.
-
-New features and improvements
-
-  Library Improvements
-
-     * add  a terminal driver for Windows console, which supports a MinGW
-       port to Windows.
-     * add  extended  functions  which  specify  the  SCREEN  pointer for
-       several curses functions which use the global SP.
-     * improve  the  NCURSES_NO_UTF8_ACS feature by adding a check for an
-       extended terminfo capability U8.
-     * improve  performance of tigetstr, etc., by using hashing code from
-       tic.
-     * add  WACS_xxx  definitions  to  wide-character  configuration  for
-       thick- and double-lines.
-     * modify  init_pair  to  allow  caller  to  create extra color pairs
-       beyond the color_pairs limit, which use default colors.
-
-  Improvements to Programs
-
-     * add tabs program.
-     * modify  tic's  -I/-C  dump to reformat acsc strings into canonical
-       form (sorted, unique mapping).
-     * add  checks  in tic for inconsistent cursor-movement controls, and
-       for inconsistent printer-controls.
-     * add  special  case  to  _nc_infotocap (used by tic and infocmp) to
-       recognize   the   setaf/setab   strings  from  xterm+256color  and
-       xterm+88color,  and  provide  a  reduced  version which works with
-       termcap.
-
-  Terminal Database
-
-     * added entries:
-          + bterm terminfo entry, based on bogl 0.1.18
-          + cons25-debian entry
-          + eterm-color entry
-          + linux-16color
-          + mlterm+256color entry, for mlterm 3.0.0
-          + several screen-bce.xxx entries
-          + screen.Eterm terminfo entry
-          + vwmterm entry
-          + xterm-utf8 entry as a demo of the U8 feature
-     * updated/improved entries:
-          + use extended capabilities:
-               o add  U8 feature to denote entries for terminal emulators
-                 which  do  not support VT100 SI/SO when processing UTF-8
-                 encoding
-               o add  XT capability to entries for terminals that support
-                 both  xterm-style  mouse- and title-controls, for screen
-                 which special-cases TERM beginning with xterm or rxvt
-          + improvements based on new checks in tic:
-          +
-               o fill  in  no-parameter  forms of cursor-movement where a
-                 parameterized form is available
-               o fill  in  missing  cursor controls where the form of the
-                 controls is ANSI
-               o add parameterized cursor-controls to linux-basic
-               o modify  nsterm,  xnuppc  and  tek4115  to  make sgr/sgr0
-                 consistent
-               o change  several  terminfo entries to make consistent use
-                 of ANSI clear-all-tabs
-          + extend  ansi.sys  pfkey capability from kf1-kf10 to kf1-kf48,
-            moving   function   key   definitions   from   emx-base   for
-            consistency.
-          + correct   missing   final   'p'   in   pfkey   capability  of
-            ansi.sys-old.
-          + rename   atari   and  st52  terminfo  entries  to  atari-old,
-            st52-old, use newer entries from FreeMiNT.
-          + repurpose  gnome  terminfo  entries  as  vte, retaining gnome
-            variants  for  compatibility, but generally deprecating those
-            since  the  VTE library is what actually defines the behavior
-            of "gnome", etc., since 2003.
-          + improve  interix  smso  terminfo  capability by using reverse
-            rather than bold.
-          + correct  initc  capability  of  linux-c-nc end-of-range, make
-            similar change for dg+ccc and dgunix+ccc.
-          + update minix terminfo entry.
-          + updated nsterm* entries.
-          + remove unnecessary kcan assignment to ^C from putty.
-          + suppress  ncv  in  screen  and konsole-base entries, allowing
-            underline.
-          + change ncv and op capabilities in sun-color terminfo entry to
-            match Sun's entry for this.
-          + fix typo in rmso for tek4106 entry.
-          + improve acsc string for vt52, show arrow keys.
-          + add  hard-reset  for  rs2 to wsvt25 to help ensure that reset
-            ends the alternate character set.
-          + add ccc and initc capabilities to xterm-16color.
-
-Major bug fixes
-
-     * ncurses library
-          + wide character support
-               o modify length returned by getcchar to count the trailing
-                 null which is documented in X/Open.
-               o fix  an  infinite  recursion when adding a legacy-coding
-                 8-bit value using insch.
-               o improve  a  workaround in adding wide-characters, when a
-                 control  character  is found. The library uses unctrl to
-                 obtain a printable version of the control character, but
-                 was not passing color or video attributes.
-               o modify  waddch_literal,  updating  line-pointer  after a
-                 multicolumn character is found to not fit on the current
-                 row,  and  wrapping  is done. Since the line-pointer was
-                 not  updated,  the  wrapped  multicolumn  character  was
-                 written to the beginning of the current row.
-               o fixes in wins_nwstr and related functions to ensure that
-                 special characters, i.e., control characters are handled
-                 properly with the wide-character configuration.
-               o correct  internal  _nc_insert_ch  to  use _nc_insert_wch
-                 when  inserting  wide  characters,  since  the  wins_wch
-                 function   that  it  used  did  not  update  the  cursor
-                 position.
-          + mouse
-               o add  check  if Gpm_Open returns a -2, e.g., for "xterm".
-                 This  is normally suppressed but can be overridden using
-                 $NCURSES_GPM_TERMS.  Ensure  that Gpm_Close is called in
-                 this case.
-               o add  check  in mouse-driver to disable connection if GPM
-                 returns  a  zero,  indicating  that  the  connection  is
-                 closed.
-               o modify  getmouse  to  act  as its documentation implied,
-                 returning  on  each  call the preceding event until none
-                 are  left.  When  no  more events remain, it will return
-                 ERR.
-          + miscellaneous
-               o improve  handling  of color-pairs embedded in attributes
-                 for the extended-colors configuration.
-               o add check for failure to open hashed-database needed for
-                 db4.6.
-               o modify  use of $CC environment variable which is defined
-                 by X/Open as a curses feature, to ignore it if it is not
-                 a single character.
-               o modify  declaration  of  cur_term  when broken-linker is
-                 used, but enable-reentrant is not, to match pre-5.7.
-               o correct limit-checks in derwin.
-               o remove  old  check  in mvderwin which prevented moving a
-                 derived  window  whose  origin happened to coincide with
-                 its parent's origin.
-               o correct  limit-checks  in newwin, to ensure that windows
-                 have nonzero size.
-               o modify  set_curterm  to make broken-linker configuration
-                 work with changes from 20090228.
-               o modify  wgetch to ensure it checks SIGWINCH when it gets
-                 an error in non-blocking mode.
-               o correct   limit-check   in   wredrawln,  accounting  for
-                 begy/begx values.
-               o fix   a   null-pointer   check   in  _nc_format_slks  in
-                 lib_slk.c, from 20070704 changes.
-               o correct  translation  of  "^"  in _nc_infotocap, used to
-                 transform terminfo to termcap strings.
-               o modify  _nc_wgetch  to check for a -1 in the fifo, e.g.,
-                 after  a  SIGWINCH,  and  discard  that  value, to avoid
-                 confusing application.
-     * other libraries
-          + correct   transfer  of  multicolumn  characters  in  multirow
-            field_buffer,  which  stopped at the end of the first row due
-            to filling of unused entries in a cchar_t array with nulls.
-          + correct buffer-size after internal resizing of wide-character
-            set_field_buffer, broken in 20081018 changes.
-          + correct  layout  of  working  window  used to extract data in
-            wide-character configured by set_field_buffer
-
-Portability
-
-     * configure script:
-          + new options:
-
-              --disable-libtool-version
-                      use  the  "-version-number" feature which was added
-                      in  libtool  1.5.  The default value for the option
-                      uses  the  newer  feature,  which  makes  libraries
-                      generated   using   libtool   compatible  with  the
-                      standard builds of ncurses.
-
-              --disable-rpath-hack
-                      disable  a  feature  which  adds  rpath options for
-                      libraries in unusual places.
-
-              --enable-interop
-                      integrate  changes  for  generic/interop support to
-                      form-library.
-
-              --enable-pc-files
-                      generate ".pc" files for each of the libraries, and
-                      install them in pkg-config's library directory.
-
-              --enable-pthreads-eintr
-                      control  whether to allow EINTR to interrupt a read
-                      operation  in  wgetch.  This  applies  only  to the
-                      pthread configuration
-
-              --enable-sp-funcs
-                      compile-in  support  for  extended  functions which
-                      accept  a  SCREEN  pointer,  reducing  the need for
-                      juggling  the  global  SP  value  with set_term and
-                      delscreen.
-
-              --enable-term-driver
-                      compile  with  terminal-driver. That is used in the
-                      MinGW  port,  and (being somewhat more complicated)
-                      is  an experimental alternative to the conventional
-                      termlib   internals.  Currently,  it  requires  the
-                      sp-funcs feature to be enabled.
-
-              --with-ncurses-wrap-prefix
-                      allows  setting  the  prefix  for functions used to
-                      wrap  global  variables  to  something  other  than
-                      "_nc_".
-
-              --with-pkg-config=[DIR]
-                      check  for  pkg-config,  optionally  specifying its
-                      path.
-
-              --without-manpages
-                      tells  the configure script to suppress the install
-                      of ncurses' manpages.
-
-              --without-tests
-                      suppress building test programs.
-
-          + improved options:
-               o correct logic for --with-database, which was coded as an
-                 enable-type switch.
-               o omit    the   opaque-functions   from   lib_gen.o   when
-                 --disable-ext-funcs is used.
-     * packaging:
-          + *-config scripts:
-               o modify  adacurses-config to look for ".ali" files in the
-                 adalib directory.
-               o correct  install  for  the  Ada95  tree,  which  omitted
-                 libAdaCurses.a used in adacurses-config.
-               o change   install   for   adacurses-config   to   provide
-                 additional   flavors   such  as  adacursesw-config,  for
-                 ncursesw.
-               o modify  scripts to generate ncurses*-config and pc-files
-                 to add dependency for tinfo library.
-               o use    ncurses*-config    scripts   if   available   for
-                 test/configure.
-               o correct name for termlib in ncurses*-config, e.g., if it
-                 is renamed to provide a single file for ncurses/ncursesw
-                 libraries.
-               o generate manpages for the *-config scripts, adapted from
-                 help2man.
-               o modify   install-rule  for  manpages  so  that  *-config
-                 manpages will install when building with --srcdir.
-               o build-fixes   for   OpenSolaris   aka  Solaris  11,  for
-                 wide-character   configuration  as  well  as  for  rpath
-                 feature in *-config scripts.
-               o use  $includedir  symbol  in misc/ncurses-config.in, add
-                 --includedir option.
-               o improve install-rules for pc-files.
-               o create the pkg-config library directory if needed.
-               o fix  typo  "==" where "=" is needed in ncurses-config.in
-                 and gen-pkgconfig.in files.
-               o modify  gen-pkgconfig.in  to  eliminate  a dependency on
-                 rpath  when  deciding  whether  to  add  $LIBS to --libs
-                 output;  that  should be shown for the ncurses and tinfo
-                 libraries without taking rpath into account.
-               o modify  handling  of  $PKG_CONFIG_LIBDIR to use only the
-                 first item in a possibly colon-separated list.
-          + other packaging issues
-               o add make-tar.sh scripts to Ada95 and test subdirectories
-                 to help with making those separately distributable.
-               o add  Ada95/configure  script, to use in tar-file created
-                 by Ada95/make-tar.sh.
-               o remove   tar-copy.sh   and   related  configure/Makefile
-                 chunks,  since  the Ada95 binding is now installed using
-                 rules in Ada95/src.
-     * cross-compiling:
-          + improve  configure  checks  for  location  of tic and infocmp
-            programs  used  for  installing  database  and for generating
-            fallback data, e.g., for cross-compiling.
-          + modify  #define's  for  build-compiler  to  suppress  cchar_t
-            symbol  from  compile  of  make_hash and make_keys, improving
-            cross-compilation of ncursesw.
-          + simplify  include-dependencies of make_hash and make_keys, to
-            reduce the need for setting BUILD_CPPFLAGS in cross-compiling
-            when the build- and target-machines differ.
-          + correct cross-compiling configure check for CF_MKSTEMP macro,
-            by adding a check cache variable set by AC_CHECK_FUNC.
-     * library dependencies:
-          + revise  wadd_wch  and  wecho_wchar to eliminate dependency on
-            unctrl.
-          + adjust  configure  script so that "t" is not added to library
-            suffix  when  weak-symbols  are  used,  allowing  the pthread
-            configuration to more closely match the non-thread naming.
-     * building the Ada95 tree:
-          + changes to use gnatmake project files in the Ada95 tree.
-          + add/use   configure  check  to  turn  on  project  rules  for
-            Ada95/src.
-          + old   gnatmake   (3.15)  does  not  produce  libraries  using
-            project-file;  work  around  by  adding  script  to  generate
-            alternate makefile.
-          + add  configure --with-ada-sharedlib option, for the test_make
-            rule.
-          + move  Ada95-related  logic  into aclocal.m4, since additional
-            checks  will be needed to distinguish old/new implementations
-            of gnat.
-          + add test_make / test_clean / test_install rules in Ada95/src
-          + change    install-path    for    adainclude    directory   to
-            /usr/share/ada (was /usr/lib/ada).
-     * other configure/build issues:
-          + make CCHARW_MAX value configurable, noting that changing this
-            would   change   the   size   of   cchar_t,   and   would  be
-            ABI-incompatible.
-          + improve  comparison of program-names when checking for linked
-            flavors such as "reset" by ignoring the executable suffix.
-          + drop mkdirs.sh, use "mkdir -p".
-          + drop  misc/ncu-indent  and misc/jpf-indent; they are provided
-            by an external package [3]cindent.
-          + change  makefiles  to  use  $ARFLAGS  rather  than  $AR_OPTS,
-            provide  a  configure check to detect whether a "-" is needed
-            before "ar" options.
-          + modify   CF_DISABLE_LEAKS   configure   macro   so  that  the
-            --enable-leaks option is not the same as --disable-leaks.
-          + improve    configure   script   macros   CF_HEADER_PATH   and
-            CF_LIBRARY_PATH  by adding CFLAGS, CPPFLAGS and LDFLAGS, LIBS
-            values to the search-lists.
-          + improve  configure  macros CF_GCC_VERSION and CF_GCC_WARNINGS
-            to  work  with  gcc  4.x's  c89  alias,  which  gives warning
-            messages  for  cases  where  older  versions would produce an
-            error.
-          + modify  CF_WITH_LIBTOOL  configure  check to allow unreleased
-            libtool version numbers (e.g. which include alphabetic chars,
-            as well as digits, after the final '.').
-          + improve  use  of  symbolic  links  in makefiles by using "-f"
-            option  if it is supported, to eliminate temporary removal of
-            the target
-          + add  a  configure-time  check  to  pick  a suitable value for
-            CC_SHARED_OPTS for Solaris.
-          + add  -shared option to MK_SHARED_LIB when -Bsharable is used,
-            for  *BSD's,  without which "main" might be one of the shared
-            library's dependencies.
-          + modify  configure  script  to allow building shared libraries
-            with gcc on AIX 5 or 6.
-          + suppress  configure check for static/dynamic linker flags for
-            gcc on Solaris 10, since gcc is confused by absence of static
-            libc,  and  does  not  switch  back  to  dynamic  mode before
-            finishing the libraries.
-          + suppress  configure check for static/dynamic linker flags for
-            gcc on Darwin.
-          + modify  misc/run_tic.in  to  create parent directory, in case
-            this is a new install of hashed database.
-          + modify  configure  check for tic program, used for fallbacks,
-            to  a  warning  if  not  found.  This makes it simpler to use
-            additonal  scripts  to bootstrap the fallbacks code using tic
-            from the build tree.
-     * test programs:
-          + add test/demo_terminfo, for comparison with demo_termcap.
-          + improve test/ncurses.c 'F' test, show combining characters in
-            color.
-          + fix logic for 'V' in test/ncurses.c tests f/F.
-          + improve  test/ncurses.c 'a test to put mouse droppings in the
-            proper window.
-          + modify  ncurses  'F'  test  to  demo wborder_set with colored
-            lines.
-          + modify ncurses 'f' test to demo wborder with colored lines.
-          + improve   test/ncurses.c   'a'   test,   using   unctrl  more
-            consistently to display meta-characters.
-          + correct  use  of  key_name  in test/ncurses.c 'A' test, which
-            only displays wide-characters, not key-codes since 20070612.
-          + add  test/clip_printw.c  to  illustrate  how  to  use  printw
-            without wrapping.
-          + modify  test-programs,  e.g,.  test/view.c, to address subtle
-            differences   between  Tru64/Solaris  and  HPUX/AIX  getcchar
-            return values.
-          + add  some  test programs (and make these use the same special
-            keys  by  sharing  linedata.h  functions): test/test_addstr.c
-            test/test_addwstr.c                      test/test_addchstr.c
-            test/test_add_wchstr.c
-          + add test/xterm-256color.dat
-          + modify  test  programs  to allow them to be built with NetBSD
-            curses.
-          + fixes for test programs to build/work on HPUX and AIX, etc.
+   change-log since ncurses 5.8 release.
+
+   This  is  a  bug-fix  release,  correcting  a  small  number of urgent
+   problems in the ncurses library from the 5.8 release.
+
+   It also improves the Ada95 binding:
+     * fixes  a  longstanding  portability  problem  with  its use of the
+       [3]set_field_type    function.    Because   that   function   uses
+       variable-length  argument  lists, its interface with gnat does not
+       work with certain platforms.
+     * improves  configurability and portability, particularly when built
+       separately  from the main ncurses tree. The 5.8 release introduced
+       scripts  which  can be used to construct separate tarballs for the
+       Ada95 and ncurses examples.
+       Those  were a proof of concept. For the 5.9 release, those scripts
+       are  augmented  with  rpm-  and  dpkg-scripts  used in test builds
+       against  a  variety of gnat- and system ncurses versions as old as
+       gnat  3.15  and  ncurses  5.4  (see  snapshots  and systems tested
+       [4]here.
+     * additional  improvements  were made for portability of the ncurses
+       examples,  adding  rpm-  and  dpkg-scripts  for  test-builds.  See
+       [5]this page for snapshots and other information.
 
                               Features of Ncurses
 
@@ -532,55 +169,55 @@ Portability
 
    cdk
           Curses Development Kit
-          [4]http://invisible-island.net/cdk/
-          [5]http://www.vexus.ca/products/CDK/
+          [6]http://invisible-island.net/cdk/
+          [7]http://www.vexus.ca/products/CDK/
 
    ded
           directory-editor
-          [6]http://invisible-island.net/ded/
+          [8]http://invisible-island.net/ded/
 
    dialog
           the  underlying  application used in Slackware's setup, and the
           basis for similar applications on GNU/Linux.
-          [7]http://invisible-island.net/dialog/
+          [9]http://invisible-island.net/dialog/
 
    lynx
           the character-screen WWW browser
-          [8]http://lynx.isc.org/release/
+          [10]http://lynx.isc.org/release/
 
    Midnight Commander
           file manager
-          [9]http://www.midnight-commander.org/
+          [11]http://www.midnight-commander.org/
 
    mutt
           mail utility
-          [10]http://www.mutt.org/
+          [12]http://www.mutt.org/
 
    ncftp
           file-transfer utility
-          [11]http://www.ncftp.com/
+          [13]http://www.ncftp.com/
 
    nvi
           New vi versions 1.50 are able to use ncurses versions 1.9.7 and
           later.
-          [12]https://sites.google.com/a/bostic.com/keithbostic/nvi
+          [14]https://sites.google.com/a/bostic.com/keithbostic/nvi
 
    pinfo
           Lynx-like info browser.
-          [13]https://alioth.debian.org/projects/pinfo/
+          [15]https://alioth.debian.org/projects/pinfo/
 
    tin
-          newsreader, supporting color, MIME [14]http://www.tin.org/
+          newsreader, supporting color, MIME [16]http://www.tin.org/
 
    as well as some that use ncurses for the terminfo support alone:
 
    minicom
           terminal emulator
-          [15]http://alioth.debian.org/projects/minicom/
+          [17]http://alioth.debian.org/projects/minicom/
 
    vile
           vi-like-emacs
-          [16]http://invisible-island.net/vile/
+          [18]http://invisible-island.net/vile/
 
    The  ncurses  distribution  includes  a  selection  of  test  programs
    (including a few games).
@@ -590,9 +227,9 @@ Who's Who and What's What
    Zeyd  Ben-Halim started it from a previous package pcurses, written by
    Pavel  Curtis.  Eric S. Raymond continued development. Juergen Pfeifer
    wrote  most of the form and menu libraries. Ongoing work is being done
-   by  [17]Thomas  Dickey.  Thomas  Dickey acts as the maintainer for the
+   by  [19]Thomas  Dickey.  Thomas  Dickey acts as the maintainer for the
    Free  Software  Foundation,  which  holds  the  copyright  on ncurses.
-   Contact the current maintainers at [18]bug-ncurses@gnu.org.
+   Contact the current maintainers at [20]bug-ncurses@gnu.org.
 
    To   join   the   ncurses   mailing   list,   please  write  email  to
    bug-ncurses-request@gnu.org containing the line:
@@ -602,7 +239,7 @@ Who's Who and What's What
    and testing of this package.
 
    Beta  versions  of ncurses and patches to the current release are made
-   available at [19]ftp://invisible-island.net/ncurses/ .
+   available at [21]ftp://invisible-island.net/ncurses/ .
 
 Future Plans
 
@@ -616,34 +253,36 @@ Future Plans
 Other Related Resources
 
    The  distribution  provides  a  newer  version  of the terminfo-format
-   terminal description file once maintained by [20]Eric Raymond . Unlike
+   terminal description file once maintained by [22]Eric Raymond . Unlike
    the  older  version, the termcap and terminfo data are provided in the
    same  file,  and provides several user-definable extensions beyond the
    X/Open specification.
 
    You  can  find  lots  of  information  on  terminal-related topics not
-   covered in the terminfo file at [21]Richard Shuford's archive .
+   covered in the terminfo file at [23]Richard Shuford's archive .
 
 References
 
    1. ftp://ftp.gnu.org/gnu/ncurses/
    2. ftp://invisible-island.net/ncurses/
-   3. http://invisible-island.net/cindent/cindent.html
-   4. http://invisible-island.net/cdk/
-   5. http://www.vexus.ca/products/CDK/
-   6. http://invisible-island.net/ded/
-   7. http://invisible-island.net/dialog/
-   8. http://lynx.isc.org/release/
-   9. http://www.midnight-commander.org/
-  10. http://www.mutt.org/
-  11. http://www.ncftp.com/
-  12. https://sites.google.com/a/bostic.com/keithbostic/nvi
-  13. https://alioth.debian.org/projects/pinfo/
-  14. http://www.tin.org/
-  15. http://alioth.debian.org/projects/minicom/
-  16. http://invisible-island.net/vile/
-  17. mailto:dickey@invisible-island.net
-  18. mailto:bug-ncurses@gnu.org
-  19. ftp://invisible-island.net/ncurses/
-  20. http://www.catb.org/~esr/terminfo/
-  21. http://web.archive.org/web/*/http://www.cs.utk.edu/~shuford/terminal
+   3. http://invisible-island.net/ncurses/man/form_fieldtype.3x
+   4. http://invisible-island.net/ncurses/ncurses-Ada95.html
+   5. http://invisible-island.net/ncurses/ncurses-examples.html
+   6. http://invisible-island.net/cdk/
+   7. http://www.vexus.ca/products/CDK/
+   8. http://invisible-island.net/ded/
+   9. http://invisible-island.net/dialog/
+  10. http://lynx.isc.org/release/
+  11. http://www.midnight-commander.org/
+  12. http://www.mutt.org/
+  13. http://www.ncftp.com/
+  14. https://sites.google.com/a/bostic.com/keithbostic/nvi
+  15. https://alioth.debian.org/projects/pinfo/
+  16. http://www.tin.org/
+  17. http://alioth.debian.org/projects/minicom/
+  18. http://invisible-island.net/vile/
+  19. mailto:dickey@invisible-island.net
+  20. mailto:bug-ncurses@gnu.org
+  21. ftp://invisible-island.net/ncurses/
+  22. http://www.catb.org/~esr/terminfo/
+  23. http://web.archive.org/web/*/http://www.cs.utk.edu/~shuford/terminal
diff --git a/NEWS b/NEWS
index 15436e70b79dbabd7ef81c19aed24d09e11c87ad..e8f9cefbabdd25c33cc8dbaed116a6d6efb1da3c 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.1680 2011/03/31 22:44:04 tom Exp $
+-- $Id: NEWS,v 1.1682 2011/04/04 00:02:42 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -45,6 +45,8 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20110404 5.9 release for upload to ftp.gnu.org
+
 20110402
        + various build-fixes for the rpm/dpkg scripts.
        + add "--enable-rpath-link" option to Ada95/configure, to allow
index da9298a298deb6b14bedb468b8cb23c3d706b3da..e385204de5032883c6d4eb9a53508f37b9382162 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <!--
-  $Id: announce.html.in,v 1.83 2011/02/25 11:50:46 tom Exp $
+  $Id: announce.html.in,v 1.85 2011/04/04 00:05:34 tom Exp $
   ****************************************************************************
   * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc.              *
   *                                                                          *
   "ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</a>&nbsp;.</p>
 
   <h1>Release Notes</h1>This release is designed to be upward
-  compatible from ncurses 5.0 through 5.7; very few applications
+  compatible from ncurses 5.0 through 5.8; very few applications
   will require recompilation, depending on the platform. These are
-  the highlights from the change-log since ncurses 5.7 release.
-
-  <h2>Interface changes</h2>
-
-  <ul>
-    <li>turn on <code>_XOPEN_CURSES</code> definition in
-    <code>curses.h</code>.</li>
-
-    <li>change <code>_nc_has_mouse</code> to
-    <code>has_mouse</code>, reflect its use in C++ and Ada95.</li>
-
-    <li>add <code>is_pad</code> and <code>is_subwin</code>
-    functions for opaque access to the WINDOW structure.</li>
-
-    <li>add <code>tiparm</code>, based on review of X/Open Curses
-    Issue 7.</li>
-  </ul>
-
-  <h2>New features and improvements</h2>
-
-  <h3>Library Improvements</h3>
-
-  <ul>
-    <li>add a terminal driver for Windows console, which supports a
-    MinGW port to Windows.</li>
-
-    <li>add extended functions which specify the
-    <code>SCREEN</code> pointer for several curses functions which
-    use the global <code>SP</code>.</li>
-
-    <li>improve the <code>NCURSES_NO_UTF8_ACS</code> feature by
-    adding a check for an extended terminfo capability
-    <code>U8</code>.</li>
-
-    <li>improve performance of <code>tigetstr</code>, etc., by
-    using hashing code from tic.</li>
-
-    <li>add WACS_<em>xxx</em> definitions to wide-character
-    configuration for thick- and double-lines.</li>
-
-    <li>modify init_pair to allow caller to create extra color
-    pairs beyond the color_pairs limit, which use default
-    colors.</li>
-  </ul>
-
-  <h3>Improvements to Programs</h3>
-
+  the highlights from the change-log since ncurses 5.8 release.
+  <p>
+  This is a bug-fix release, correcting a small number of urgent problems
+  in the ncurses library from the 5.8 release.
+  <p>
+  It also improves the Ada95 binding:
   <ul>
-    <li>add <code>tabs</code> program.</li>
-
-    <li>modify tic's -I/-C dump to reformat acsc strings into
-    canonical form (sorted, unique mapping).</li>
-
-    <li>add checks in tic for inconsistent cursor-movement
-    controls, and for inconsistent printer-controls.</li>
-
-    <li>add special case to <code>_nc_infotocap</code> (used by tic
-    and infocmp) to recognize the
-    <code>setaf</code>/<code>setab</code> strings from
-    <code>xterm+256color</code> and <code>xterm+88color,</code> and
-    provide a reduced version which works with termcap.</li>
-  </ul>
-
-  <h3>Terminal Database</h3>
-
-  <ul>
-    <li>added entries:
-
-      <ul>
-        <li><code>bterm</code> terminfo entry, based on bogl
-        0.1.18</li>
-
-        <li><code>cons25-debian</code> entry</li>
-
-        <li><code>eterm-color</code> entry</li>
-
-        <li><code>linux-16color</code></li>
-
-        <li><code>mlterm+256color</code> entry, for mlterm
-        3.0.0</li>
-
-        <li>several screen-bce.<em>xxx</em> entries</li>
-
-        <li><code>screen.Eterm</code> terminfo entry</li>
-
-        <li><code>vwmterm</code> entry</li>
-
-        <li><code>xterm-utf8</code> entry as a demo of the
-        <code>U8</code> feature</li>
-      </ul>
-    </li>
-
-    <li>updated/improved entries:
-
-      <ul>
-        <li>use extended capabilities:
-
-          <ul>
-            <li>add <code>U8</code> feature to denote entries for
-            terminal emulators which do not support VT100 SI/SO
-            when processing UTF-8 encoding</li>
-
-            <li>add <code>XT</code> capability to entries for
-            terminals that support both xterm-style mouse- and
-            title-controls, for <code>screen</code> which
-            special-cases TERM beginning with <code>xterm</code> or
-            <code>rxvt</code></li>
-          </ul>
-        </li>
-
-        <li>improvements based on new checks in tic:</li>
-
-        <li style="list-style: none; display: inline">
-          <ul>
-            <li>fill in no-parameter forms of cursor-movement where
-            a parameterized form is available</li>
-
-            <li>fill in missing cursor controls where the form of
-            the controls is ANSI</li>
-
-            <li>add parameterized cursor-controls to
-            linux-basic</li>
-
-            <li>modify <code>nsterm,</code> <code>xnuppc</code> and
-            <code>tek4115</code> to make
-            <code>sgr</code>/<code>sgr0</code> consistent</li>
-
-            <li>change several terminfo entries to make consistent
-            use of ANSI clear-all-tabs</li>
-          </ul>
-        </li>
-
-        <li>extend <code>ansi.sys</code> <code>pfkey</code>
-        capability from kf1-kf10 to kf1-kf48, moving function key
-        definitions from <code>emx-base</code> for
-        consistency.</li>
-
-        <li>correct missing final 'p' in <code>pfkey</code>
-        capability of <code>ansi.sys-old</code>.</li>
-
-        <li>rename <code>atari</code> and <code>st52</code>
-        terminfo entries to atari-old, st52-old, use newer entries
-        from FreeMiNT.</li>
-
-        <li>repurpose <code>gnome</code> terminfo entries as
-        <code>vte</code>, retaining <code>gnome</code> variants for
-        compatibility, but generally deprecating those since the
-        VTE library is what actually defines the behavior of
-        "gnome", etc., since 2003.</li>
-
-        <li>improve <code>interix</code> <code>smso</code> terminfo
-        capability by using reverse rather than bold.</li>
-
-        <li>correct <code>initc</code> capability of
-        <code>linux-c-nc</code> end-of-range, make similar change
-        for <code>dg+ccc</code> and <code>dgunix+ccc</code>.</li>
-
-        <li>update <code>minix</code> terminfo entry.</li>
-
-        <li>updated <code>nsterm*</code> entries.</li>
-
-        <li>remove unnecessary <code>kcan</code> assignment to
-        <code>^C</code> from <code>putty</code>.</li>
-
-        <li>suppress <code>ncv</code> in <code>screen</code> and
-        <code>konsole-base</code> entries, allowing underline.</li>
-
-        <li>change ncv and op capabilities in
-        <code>sun-color</code> terminfo entry to match Sun's entry
-        for this.</li>
-
-        <li>fix typo in <code>rmso</code> for <code>tek4106</code>
-        entry.</li>
-
-        <li>improve <code>acsc</code> string for <code>vt52</code>,
-        show arrow keys.</li>
-
-        <li>add hard-reset for <code>rs2</code> to
-        <code>wsvt25</code> to help ensure that reset ends the
-        alternate character set.</li>
-
-        <li>add <code>ccc</code> and <code>initc</code>
-        capabilities to <code>xterm-16color</code>.</li>
-      </ul>
-    </li>
-  </ul>
-
-  <h2>Major bug fixes</h2>
-
-  <ul>
-    <li>ncurses library
-
-      <ul>
-        <li>wide character support
-
-          <ul>
-            <li>modify length returned by <code>getcchar</code> to
-            count the trailing null which is documented in
-            X/Open.</li>
-
-            <li>fix an infinite recursion when adding a
-            legacy-coding 8-bit value using
-            <code>insch</code>.</li>
-
-            <li>improve a workaround in adding wide-characters,
-            when a control character is found. The library uses
-            <code>unctrl</code> to obtain a printable version of
-            the control character, but was not passing color or
-            video attributes.</li>
-
-            <li>modify <code>waddch_literal</code>, updating
-            line-pointer after a multicolumn character is found to
-            not fit on the current row, and wrapping is done. Since
-            the line-pointer was not updated, the wrapped
-            multicolumn character was written to the beginning of
-            the current row.</li>
-
-            <li>fixes in <code>wins_nwstr</code> and related
-            functions to ensure that special characters, i.e.,
-            control characters are handled properly with the
-            wide-character configuration.</li>
-
-            <li>correct internal <code>_nc_insert_ch</code> to use
-            <code>_nc_insert_wch</code> when inserting wide
-            characters, since the <code>wins_wch</code> function
-            that it used did not update the cursor position.</li>
-          </ul>
-        </li>
-
-        <li>mouse
-
-          <ul>
-            <li>add check if <code>Gpm_Open</code> returns a -2,
-            e.g., for "xterm". This is normally suppressed but can
-            be overridden using <code>$NCURSES_GPM_TERMS</code>.
-            Ensure that <code>Gpm_Close</code> is called in this
-            case.</li>
-
-            <li>add check in mouse-driver to disable connection if
-            GPM returns a zero, indicating that the connection is
-            closed.</li>
-
-            <li>modify <code>getmouse</code> to act as its
-            documentation implied, returning on each call the
-            preceding event until none are left. When no more
-            events remain, it will return <code>ERR</code>.</li>
-          </ul>
-        </li>
-
-        <li>miscellaneous
-
-          <ul>
-            <li>improve handling of color-pairs embedded in
-            attributes for the extended-colors configuration.</li>
-
-            <li>add check for failure to open hashed-database
-            needed for db4.6.</li>
-
-            <li>modify use of <code>$CC</code> environment variable
-            which is defined by X/Open as a curses feature, to
-            ignore it if it is not a single character.</li>
-
-            <li>modify declaration of <code>cur_term</code> when
-            broken-linker is used, but enable-reentrant is not, to
-            match pre-5.7.</li>
-
-            <li>correct limit-checks in <code>derwin</code>.</li>
-
-            <li>remove old check in <code>mvderwin</code> which
-            prevented moving a derived window whose origin happened
-            to coincide with its parent's origin.</li>
-
-            <li>correct limit-checks in <code>newwin</code>, to
-            ensure that windows have nonzero size.</li>
-
-            <li>modify <code>set_curterm</code> to make
-            broken-linker configuration work with changes from
-            20090228.</li>
-
-            <li>modify <code>wgetch</code> to ensure it checks
-            <code>SIGWINCH</code> when it gets an error in
-            non-blocking mode.</li>
-
-            <li>correct limit-check in <code>wredrawln</code>,
-            accounting for <code>begy</code>/<code>begx</code>
-            values.</li>
-
-            <li>fix a null-pointer check in
-            <code>_nc_format_slks</code> in lib_slk.c, from
-            20070704 changes.</li>
-
-            <li>correct translation of "^" in
-            <code>_nc_infotocap</code>, used to transform terminfo
-            to termcap strings.</li>
-
-            <li>modify <code>_nc_wgetch</code> to check for a -1 in
-            the fifo, e.g., after a <code>SIGWINCH</code>, and
-            discard that value, to avoid confusing
-            application.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>other libraries
-
-      <ul>
-        <li>correct transfer of multicolumn characters in multirow
-        <code>field_buffer</code>, which stopped at the end of the
-        first row due to filling of unused entries in a cchar_t
-        array with nulls.</li>
-
-        <li>correct buffer-size after internal resizing of
-        wide-character <code>set_field_buffer</code>, broken in
-        20081018 changes.</li>
-
-        <li>correct layout of working window used to extract data
-        in wide-character configured by
-        <code>set_field_buffer</code></li>
-      </ul>
-    </li>
-  </ul>
-
-  <h2>Portability</h2>
-
-  <ul>
-    <li>configure script:
-
-      <ul>
-        <li>new options:
-
-          <dl>
-            <dt>--disable-libtool-version</dt>
-
-            <dd>use the "-version-number" feature which was added
-            in libtool 1.5. The default value for the option uses
-            the newer feature, which makes libraries generated
-            using libtool compatible with the standard builds of
-            ncurses.</dd>
-
-            <dt>--disable-rpath-hack</dt>
-
-            <dd>disable a feature which adds rpath options for
-            libraries in unusual places.</dd>
-
-            <dt>--enable-interop</dt>
-
-            <dd>integrate changes for generic/interop support to
-            form-library.</dd>
-
-            <dt>--enable-pc-files</dt>
-
-            <dd>generate ".pc" files for each of the libraries, and
-            install them in <code>pkg-config</code>'s library
-            directory.</dd>
-
-            <dt>--enable-pthreads-eintr</dt>
-
-            <dd>control whether to allow <code>EINTR</code> to
-            interrupt a read operation in <code>wgetch</code>. This
-            applies only to the pthread configuration</dd>
-
-            <dt>--enable-sp-funcs</dt>
-
-            <dd>compile-in support for extended functions which
-            accept a <code>SCREEN</code> pointer, reducing the need
-            for juggling the global <code>SP</code> value with
-            <code>set_term</code> and <code>delscreen</code>.</dd>
-
-            <dt>--enable-term-driver</dt>
-
-            <dd>compile with terminal-driver. That is used in the
-            MinGW port, and (being somewhat more complicated) is an
-            experimental alternative to the conventional termlib
-            internals. Currently, it requires the sp-funcs feature
-            to be enabled.</dd>
-
-            <dt>--with-ncurses-wrap-prefix</dt>
-
-            <dd>allows setting the prefix for functions used to
-            wrap global variables to something other than
-            "<code>_nc_</code>".</dd>
-
-            <dt>--with-pkg-config=[DIR]</dt>
-
-            <dd>check for <code>pkg-config</code>, optionally
-            specifying its path.</dd>
-
-            <dt>--without-manpages</dt>
-
-            <dd>tells the configure script to suppress the install
-            of ncurses' manpages.</dd>
-
-            <dt>--without-tests</dt>
-
-            <dd>suppress building test programs.</dd>
-          </dl>
-        </li>
-
-        <li>improved options:
-
-          <ul>
-            <li>correct logic for <code>--with-database</code>,
-            which was coded as an enable-type switch.</li>
-
-            <li>omit the opaque-functions from
-            <code>lib_gen.o</code> when
-            <code>--disable-ext-funcs</code> is used.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>packaging:
-
-      <ul>
-        <li>*-config scripts:
-
-          <ul>
-            <li>modify <code>adacurses-config</code> to look for
-            ".ali" files in the adalib directory.</li>
-
-            <li>correct install for the Ada95 tree, which omitted
-            <code>libAdaCurses.a</code> used in
-            <code>adacurses-config</code>.</li>
-
-            <li>change install for <code>adacurses-config</code> to
-            provide additional flavors such as
-            <code>adacursesw-config</code>, for ncursesw.</li>
-
-            <li>modify scripts to generate
-            <code>ncurses*-config</code> and pc-files to add
-            dependency for tinfo library.</li>
-
-            <li>use <code>ncurses*-config</code> scripts if
-            available for test/configure.</li>
-
-            <li>correct name for termlib in
-            <code>ncurses*-config</code>, e.g., if it is renamed to
-            provide a single file for ncurses/ncursesw
-            libraries.</li>
-
-            <li>generate manpages for the *-config scripts, adapted
-            from <code>help2man</code>.</li>
-
-            <li>modify install-rule for manpages so that *-config
-            manpages will install when building with
-            <code>--srcdir</code>.</li>
-
-            <li>build-fixes for OpenSolaris aka Solaris 11, for
-            wide-character configuration as well as for rpath
-            feature in *-config scripts.</li>
-
-            <li>use <code>$includedir</code> symbol in
-            <code>misc/ncurses-config.in</code>, add
-            <code>--includedir</code> option.</li>
-
-            <li>improve install-rules for pc-files.</li>
-
-            <li>create the <code>pkg-config</code> library
-            directory if needed.</li>
-
-            <li>fix typo "<code>==</code>" where "<code>=</code>"
-            is needed in <code>ncurses-config.in</code> and
-            <code>gen-pkgconfig.in</code> files.</li>
-
-            <li>modify <code>gen-pkgconfig.in</code> to eliminate a
-            dependency on rpath when deciding whether to add
-            <code>$LIBS</code> to <code>--libs</code> output; that
-            should be shown for the ncurses and tinfo libraries
-            without taking rpath into account.</li>
-
-            <li>modify handling of <code>$PKG_CONFIG_LIBDIR</code>
-            to use only the first item in a possibly
-            colon-separated list.</li>
-          </ul>
-        </li>
-
-        <li>other packaging issues
-
-          <ul>
-            <li>add <code>make-tar.sh</code> scripts to Ada95 and
-            test subdirectories to help with making those
-            separately distributable.</li>
-
-            <li>add <code>Ada95/configure</code> script, to use in
-            tar-file created by
-            <code>Ada95/make-tar.sh</code>.</li>
-
-            <li>remove <code>tar-copy.sh</code> and related
-            <code>configure/Makefile</code> chunks, since the Ada95
-            binding is now installed using rules in
-            <code>Ada95/src</code>.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>cross-compiling:
-
-      <ul>
-        <li>improve configure checks for location of tic and
-        infocmp programs used for installing database and for
-        generating fallback data, e.g., for cross-compiling.</li>
-
-        <li>modify #define's for build-compiler to suppress cchar_t
-        symbol from compile of <code>make_hash</code> and
-        <code>make_keys</code>, improving cross-compilation of
-        ncursesw.</li>
-
-        <li>simplify include-dependencies of <code>make_hash</code>
-        and <code>make_keys</code>, to reduce the need for setting
-        BUILD_CPPFLAGS in cross-compiling when the build- and
-        target-machines differ.</li>
-
-        <li>correct cross-compiling configure check for
-        <code>CF_MKSTEMP</code> macro, by adding a check cache
-        variable set by <code>AC_CHECK_FUNC</code>.</li>
-      </ul>
-    </li>
-
-    <li>library dependencies:
-
-      <ul>
-        <li>revise <code>wadd_wch</code> and
-        <code>wecho_wchar</code> to eliminate dependency on
-        <code>unctrl</code>.</li>
-
-        <li>adjust configure script so that "t" is not added to
-        library suffix when weak-symbols are used, allowing the
-        pthread configuration to more closely match the non-thread
-        naming.</li>
-      </ul>
-    </li>
-
-    <li>building the Ada95 tree:
-
-      <ul>
-        <li>changes to use gnatmake project files in the Ada95
-        tree.</li>
-
-        <li>add/use configure check to turn on project rules for
-        <code>Ada95/src</code>.</li>
-
-        <li>old gnatmake (3.15) does not produce libraries using
-        project-file; work around by adding script to generate
-        alternate makefile.</li>
-
-        <li>add configure --with-ada-sharedlib option, for the
-        test_make rule.</li>
-
-        <li>move Ada95-related logic into aclocal.m4, since
-        additional checks will be needed to distinguish old/new
-        implementations of gnat.</li>
-
-        <li>add test_make / test_clean / test_install rules in
-        Ada95/src</li>
-
-        <li>change install-path for adainclude directory to
-        /usr/share/ada (was /usr/lib/ada).</li>
-      </ul>
-    </li>
-
-    <li>other configure/build issues:
-
-      <ul>
-        <li>make <code>CCHARW_MAX</code> value configurable, noting
-        that changing this would change the size of
-        <code>cchar_t</code>, and would be ABI-incompatible.</li>
-
-        <li>improve comparison of program-names when checking for
-        linked flavors such as "reset" by ignoring the executable
-        suffix.</li>
-
-        <li>drop <code>mkdirs.sh</code>, use
-        "<code>mkdir&nbsp;-p</code>".</li>
-
-        <li>drop <code>misc/ncu-indent</code> and
-        <code>misc/jpf-indent</code>; they are provided by an
-        external package <a href=
-        "http://invisible-island.net/cindent/cindent.html">cindent</a>.</li>
-
-        <li>change makefiles to use <code>$ARFLAGS</code> rather
-        than <code>$AR_OPTS</code>, provide a configure check to
-        detect whether a "-" is needed before "ar" options.</li>
-
-        <li>modify <code>CF_DISABLE_LEAKS</code> configure macro so
-        that the --enable-leaks option is not the same as
-        --disable-leaks.</li>
-
-        <li>improve configure script macros
-        <code>CF_HEADER_PATH</code> and
-        <code>CF_LIBRARY_PATH</code> by adding <code>CFLAGS</code>,
-        <code>CPPFLAGS</code> and <code>LDFLAGS</code>,
-        <code>LIBS</code> values to the search-lists.</li>
-
-        <li>improve configure macros <code>CF_GCC_VERSION</code>
-        and <code>CF_GCC_WARNINGS</code> to work with gcc 4.x's c89
-        alias, which gives warning messages for cases where older
-        versions would produce an error.</li>
-
-        <li>modify <code>CF_WITH_LIBTOOL</code> configure check to
-        allow unreleased libtool version numbers (e.g. which
-        include alphabetic chars, as well as digits, after the
-        final '.').</li>
-
-        <li>improve use of symbolic links in makefiles by using
-        "<code>-f</code>" option if it is supported, to eliminate
-        temporary removal of the target</li>
-
-        <li>add a configure-time check to pick a suitable value for
-        <code>CC_SHARED_OPTS</code> for Solaris.</li>
-
-        <li>add -shared option to <code>MK_SHARED_LIB</code> when
-        -Bsharable is used, for *BSD's, without which "main" might
-        be one of the shared library's dependencies.</li>
-
-        <li>modify configure script to allow building shared
-        libraries with gcc on AIX 5 or 6.</li>
-
-        <li>suppress configure check for static/dynamic linker
-        flags for gcc on Solaris 10, since gcc is confused by
-        absence of static libc, and does not switch back to dynamic
-        mode before finishing the libraries.</li>
-
-        <li>suppress configure check for static/dynamic linker
-        flags for gcc on Darwin.</li>
-
-        <li>modify <code>misc/run_tic.in</code> to create parent
-        directory, in case this is a new install of hashed
-        database.</li>
-
-        <li>modify configure check for tic program, used for
-        fallbacks, to a warning if not found. This makes it simpler
-        to use additonal scripts to bootstrap the fallbacks code
-        using tic from the build tree.</li>
-      </ul>
-    </li>
-
-    <li>test programs:
-
-      <ul>
-        <li>add test/demo_terminfo, for comparison with
-        demo_termcap.</li>
-
-        <li>improve test/ncurses.c 'F' test, show combining
-        characters in color.</li>
-
-        <li>fix logic for 'V' in test/ncurses.c tests f/F.</li>
-
-        <li>improve test/ncurses.c 'a test to put mouse droppings
-        in the proper window.</li>
-
-        <li>modify ncurses 'F' test to demo wborder_set with
-        colored lines.</li>
-
-        <li>modify ncurses 'f' test to demo wborder with colored
-        lines.</li>
-
-        <li>improve test/ncurses.c 'a' test, using unctrl more
-        consistently to display meta-characters.</li>
-
-        <li>correct use of <code>key_name</code> in test/ncurses.c
-        'A' test, which only displays wide-characters, not
-        key-codes since 20070612.</li>
-
-        <li>add test/clip_printw.c to illustrate how to use printw
-        without wrapping.</li>
-
-        <li>modify test-programs, e.g,. test/view.c, to address
-        subtle differences between Tru64/Solaris and HPUX/AIX
-        getcchar return values.</li>
-
-        <li>add some test programs (and make these use the same
-        special keys by sharing <code>linedata.h</code> functions):
-        test/test_addstr.c test/test_addwstr.c test/test_addchstr.c
-        test/test_add_wchstr.c</li>
-
-        <li>add test/xterm-256color.dat</li>
-
-        <li>modify test programs to allow them to be built with
-        NetBSD curses.</li>
-
-        <li>fixes for test programs to build/work on HPUX and AIX,
-        etc.</li>
-      </ul>
-    </li>
+  <li>fixes a longstanding portability problem with its use of the
+      <a href="http://invisible-island.net/ncurses/man/form_fieldtype.3x">set_field_type</a>
+      function.  Because that function uses variable-length argument lists,
+      its interface with gnat does not work with certain platforms.
+  <li>improves configurability and portability, particularly when built
+      separately from the main ncurses tree.  The 5.8 release introduced
+      scripts which can be used to construct separate tarballs for the
+      Ada95 and ncurses examples.
+      <p>Those were a proof of concept.  For the 5.9 release, those
+      scripts are augmented with rpm- and dpkg-scripts used in test builds
+      against a variety of gnat- and system ncurses versions as old as
+      gnat 3.15 and ncurses 5.4 (see snapshots and systems tested
+      <a href="http://invisible-island.net/ncurses/ncurses-Ada95.html">here</a>.
+  <li>additional improvements were made for portability of the
+      ncurses examples, adding rpm- and dpkg-scripts for test-builds.
+      See 
+      <a href="http://invisible-island.net/ncurses/ncurses-examples.html">this page</a>
+      for snapshots and other information.
   </ul>
 
   <h1>Features of Ncurses</h1>The ncurses package is fully
diff --git a/dist.mk b/dist.mk
index b42695a45f45809bd2d73b46e63c0a3fbb613585..371f0043b3fa359aa6b7c2c73a6315e2f3002cda 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -25,7 +25,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.808 2011/03/31 00:42:12 tom Exp $
+# $Id: dist.mk,v 1.810 2011/04/04 22:42:20 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -36,8 +36,8 @@ SHELL = /bin/sh
 
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 5
-NCURSES_MINOR = 8
-NCURSES_PATCH = 20110402
+NCURSES_MINOR = 9
+NCURSES_PATCH = 20110404
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index 3d690414bf5a86e04e3de5800d2a18acf2c99ee6..8139eb89d98eaa13ed29f8cde795caeb99299baa 100644 (file)
@@ -56,8 +56,8 @@
    <b>pragma</b> Linker_Options ("-lncurses");
 
    <FONT COLOR=red><A NAME="ref_53_4">NC_Major_Version</A></FONT> : <b>constant</b> := 5; <FONT COLOR=green><EM>--  Major version of the library</EM></FONT>
-   <FONT COLOR=red><A NAME="ref_54_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 8; <FONT COLOR=green><EM>--  Minor version of the library</EM></FONT>
-   <FONT COLOR=red><A NAME="ref_55_4">NC_Version</A></FONT> : <b>constant</b> String := "5.8";  <FONT COLOR=green><EM>--  Version of library</EM></FONT>
+   <FONT COLOR=red><A NAME="ref_54_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 9; <FONT COLOR=green><EM>--  Minor version of the library</EM></FONT>
+   <FONT COLOR=red><A NAME="ref_55_4">NC_Version</A></FONT> : <b>constant</b> String := "5.9";  <FONT COLOR=green><EM>--  Version of library</EM></FONT>
 
    <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Window</A></FONT> <b>is</b> <b>private</b>;
    <FONT COLOR=red><A NAME="ref_58_4">Null_Window</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
index 1cd9651501a17b18c2e36bbdbe7eed2142d5d587..961e7571cf6107c2a216c9432c72f3cf704d98c5 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <!--
-  $Id: announce.html,v 1.54 2011/02/25 23:24:46 tom Exp $
+  $Id: announce.html,v 1.55 2011/04/04 09:46:33 tom Exp $
   ****************************************************************************
   * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc.              *
   *                                                                          *
   <meta name="generator" content=
   "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
 
-  <title>Announcing ncurses 5.8</title>
+  <title>Announcing ncurses 5.9</title>
   <link rev="made" href="mailto:bug-ncurses@gnu.org">
   <meta http-equiv="Content-Type" content=
   "text/html; charset=us-ascii">
 </head>
 
 <body>
-  <h1>Announcing ncurses 5.8</h1>The ncurses (new curses)
+  <h1>Announcing ncurses 5.9</h1>The ncurses (new curses)
   library is a free software emulation of curses in System V
   Release 4.0, and more. It uses terminfo format, supports pads and
   color and multiple highlights and forms characters and
   "ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</a>&nbsp;.</p>
 
   <h1>Release Notes</h1>This release is designed to be upward
-  compatible from ncurses 5.0 through 5.7; very few applications
+  compatible from ncurses 5.0 through 5.8; very few applications
   will require recompilation, depending on the platform. These are
-  the highlights from the change-log since ncurses 5.7 release.
-
-  <h2>Interface changes</h2>
-
-  <ul>
-    <li>turn on <code>_XOPEN_CURSES</code> definition in
-    <code>curses.h</code>.</li>
-
-    <li>change <code>_nc_has_mouse</code> to
-    <code>has_mouse</code>, reflect its use in C++ and Ada95.</li>
-
-    <li>add <code>is_pad</code> and <code>is_subwin</code>
-    functions for opaque access to the WINDOW structure.</li>
-
-    <li>add <code>tiparm</code>, based on review of X/Open Curses
-    Issue 7.</li>
-  </ul>
-
-  <h2>New features and improvements</h2>
-
-  <h3>Library Improvements</h3>
-
-  <ul>
-    <li>add a terminal driver for Windows console, which supports a
-    MinGW port to Windows.</li>
-
-    <li>add extended functions which specify the
-    <code>SCREEN</code> pointer for several curses functions which
-    use the global <code>SP</code>.</li>
-
-    <li>improve the <code>NCURSES_NO_UTF8_ACS</code> feature by
-    adding a check for an extended terminfo capability
-    <code>U8</code>.</li>
-
-    <li>improve performance of <code>tigetstr</code>, etc., by
-    using hashing code from tic.</li>
-
-    <li>add WACS_<em>xxx</em> definitions to wide-character
-    configuration for thick- and double-lines.</li>
-
-    <li>modify init_pair to allow caller to create extra color
-    pairs beyond the color_pairs limit, which use default
-    colors.</li>
-  </ul>
-
-  <h3>Improvements to Programs</h3>
-
+  the highlights from the change-log since ncurses 5.8 release.
+  <p>
+  This is a bug-fix release, correcting a small number of urgent problems
+  in the ncurses library from the 5.8 release.
+  <p>
+  It also improves the Ada95 binding:
   <ul>
-    <li>add <code>tabs</code> program.</li>
-
-    <li>modify tic's -I/-C dump to reformat acsc strings into
-    canonical form (sorted, unique mapping).</li>
-
-    <li>add checks in tic for inconsistent cursor-movement
-    controls, and for inconsistent printer-controls.</li>
-
-    <li>add special case to <code>_nc_infotocap</code> (used by tic
-    and infocmp) to recognize the
-    <code>setaf</code>/<code>setab</code> strings from
-    <code>xterm+256color</code> and <code>xterm+88color,</code> and
-    provide a reduced version which works with termcap.</li>
-  </ul>
-
-  <h3>Terminal Database</h3>
-
-  <ul>
-    <li>added entries:
-
-      <ul>
-        <li><code>bterm</code> terminfo entry, based on bogl
-        0.1.18</li>
-
-        <li><code>cons25-debian</code> entry</li>
-
-        <li><code>eterm-color</code> entry</li>
-
-        <li><code>linux-16color</code></li>
-
-        <li><code>mlterm+256color</code> entry, for mlterm
-        3.0.0</li>
-
-        <li>several screen-bce.<em>xxx</em> entries</li>
-
-        <li><code>screen.Eterm</code> terminfo entry</li>
-
-        <li><code>vwmterm</code> entry</li>
-
-        <li><code>xterm-utf8</code> entry as a demo of the
-        <code>U8</code> feature</li>
-      </ul>
-    </li>
-
-    <li>updated/improved entries:
-
-      <ul>
-        <li>use extended capabilities:
-
-          <ul>
-            <li>add <code>U8</code> feature to denote entries for
-            terminal emulators which do not support VT100 SI/SO
-            when processing UTF-8 encoding</li>
-
-            <li>add <code>XT</code> capability to entries for
-            terminals that support both xterm-style mouse- and
-            title-controls, for <code>screen</code> which
-            special-cases TERM beginning with <code>xterm</code> or
-            <code>rxvt</code></li>
-          </ul>
-        </li>
-
-        <li>improvements based on new checks in tic:</li>
-
-        <li style="list-style: none; display: inline">
-          <ul>
-            <li>fill in no-parameter forms of cursor-movement where
-            a parameterized form is available</li>
-
-            <li>fill in missing cursor controls where the form of
-            the controls is ANSI</li>
-
-            <li>add parameterized cursor-controls to
-            linux-basic</li>
-
-            <li>modify <code>nsterm,</code> <code>xnuppc</code> and
-            <code>tek4115</code> to make
-            <code>sgr</code>/<code>sgr0</code> consistent</li>
-
-            <li>change several terminfo entries to make consistent
-            use of ANSI clear-all-tabs</li>
-          </ul>
-        </li>
-
-        <li>extend <code>ansi.sys</code> <code>pfkey</code>
-        capability from kf1-kf10 to kf1-kf48, moving function key
-        definitions from <code>emx-base</code> for
-        consistency.</li>
-
-        <li>correct missing final 'p' in <code>pfkey</code>
-        capability of <code>ansi.sys-old</code>.</li>
-
-        <li>rename <code>atari</code> and <code>st52</code>
-        terminfo entries to atari-old, st52-old, use newer entries
-        from FreeMiNT.</li>
-
-        <li>repurpose <code>gnome</code> terminfo entries as
-        <code>vte</code>, retaining <code>gnome</code> variants for
-        compatibility, but generally deprecating those since the
-        VTE library is what actually defines the behavior of
-        "gnome", etc., since 2003.</li>
-
-        <li>improve <code>interix</code> <code>smso</code> terminfo
-        capability by using reverse rather than bold.</li>
-
-        <li>correct <code>initc</code> capability of
-        <code>linux-c-nc</code> end-of-range, make similar change
-        for <code>dg+ccc</code> and <code>dgunix+ccc</code>.</li>
-
-        <li>update <code>minix</code> terminfo entry.</li>
-
-        <li>updated <code>nsterm*</code> entries.</li>
-
-        <li>remove unnecessary <code>kcan</code> assignment to
-        <code>^C</code> from <code>putty</code>.</li>
-
-        <li>suppress <code>ncv</code> in <code>screen</code> and
-        <code>konsole-base</code> entries, allowing underline.</li>
-
-        <li>change ncv and op capabilities in
-        <code>sun-color</code> terminfo entry to match Sun's entry
-        for this.</li>
-
-        <li>fix typo in <code>rmso</code> for <code>tek4106</code>
-        entry.</li>
-
-        <li>improve <code>acsc</code> string for <code>vt52</code>,
-        show arrow keys.</li>
-
-        <li>add hard-reset for <code>rs2</code> to
-        <code>wsvt25</code> to help ensure that reset ends the
-        alternate character set.</li>
-
-        <li>add <code>ccc</code> and <code>initc</code>
-        capabilities to <code>xterm-16color</code>.</li>
-      </ul>
-    </li>
-  </ul>
-
-  <h2>Major bug fixes</h2>
-
-  <ul>
-    <li>ncurses library
-
-      <ul>
-        <li>wide character support
-
-          <ul>
-            <li>modify length returned by <code>getcchar</code> to
-            count the trailing null which is documented in
-            X/Open.</li>
-
-            <li>fix an infinite recursion when adding a
-            legacy-coding 8-bit value using
-            <code>insch</code>.</li>
-
-            <li>improve a workaround in adding wide-characters,
-            when a control character is found. The library uses
-            <code>unctrl</code> to obtain a printable version of
-            the control character, but was not passing color or
-            video attributes.</li>
-
-            <li>modify <code>waddch_literal</code>, updating
-            line-pointer after a multicolumn character is found to
-            not fit on the current row, and wrapping is done. Since
-            the line-pointer was not updated, the wrapped
-            multicolumn character was written to the beginning of
-            the current row.</li>
-
-            <li>fixes in <code>wins_nwstr</code> and related
-            functions to ensure that special characters, i.e.,
-            control characters are handled properly with the
-            wide-character configuration.</li>
-
-            <li>correct internal <code>_nc_insert_ch</code> to use
-            <code>_nc_insert_wch</code> when inserting wide
-            characters, since the <code>wins_wch</code> function
-            that it used did not update the cursor position.</li>
-          </ul>
-        </li>
-
-        <li>mouse
-
-          <ul>
-            <li>add check if <code>Gpm_Open</code> returns a -2,
-            e.g., for "xterm". This is normally suppressed but can
-            be overridden using <code>$NCURSES_GPM_TERMS</code>.
-            Ensure that <code>Gpm_Close</code> is called in this
-            case.</li>
-
-            <li>add check in mouse-driver to disable connection if
-            GPM returns a zero, indicating that the connection is
-            closed.</li>
-
-            <li>modify <code>getmouse</code> to act as its
-            documentation implied, returning on each call the
-            preceding event until none are left. When no more
-            events remain, it will return <code>ERR</code>.</li>
-          </ul>
-        </li>
-
-        <li>miscellaneous
-
-          <ul>
-            <li>improve handling of color-pairs embedded in
-            attributes for the extended-colors configuration.</li>
-
-            <li>add check for failure to open hashed-database
-            needed for db4.6.</li>
-
-            <li>modify use of <code>$CC</code> environment variable
-            which is defined by X/Open as a curses feature, to
-            ignore it if it is not a single character.</li>
-
-            <li>modify declaration of <code>cur_term</code> when
-            broken-linker is used, but enable-reentrant is not, to
-            match pre-5.7.</li>
-
-            <li>correct limit-checks in <code>derwin</code>.</li>
-
-            <li>remove old check in <code>mvderwin</code> which
-            prevented moving a derived window whose origin happened
-            to coincide with its parent's origin.</li>
-
-            <li>correct limit-checks in <code>newwin</code>, to
-            ensure that windows have nonzero size.</li>
-
-            <li>modify <code>set_curterm</code> to make
-            broken-linker configuration work with changes from
-            20090228.</li>
-
-            <li>modify <code>wgetch</code> to ensure it checks
-            <code>SIGWINCH</code> when it gets an error in
-            non-blocking mode.</li>
-
-            <li>correct limit-check in <code>wredrawln</code>,
-            accounting for <code>begy</code>/<code>begx</code>
-            values.</li>
-
-            <li>fix a null-pointer check in
-            <code>_nc_format_slks</code> in lib_slk.c, from
-            20070704 changes.</li>
-
-            <li>correct translation of "^" in
-            <code>_nc_infotocap</code>, used to transform terminfo
-            to termcap strings.</li>
-
-            <li>modify <code>_nc_wgetch</code> to check for a -1 in
-            the fifo, e.g., after a <code>SIGWINCH</code>, and
-            discard that value, to avoid confusing
-            application.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>other libraries
-
-      <ul>
-        <li>correct transfer of multicolumn characters in multirow
-        <code>field_buffer</code>, which stopped at the end of the
-        first row due to filling of unused entries in a cchar_t
-        array with nulls.</li>
-
-        <li>correct buffer-size after internal resizing of
-        wide-character <code>set_field_buffer</code>, broken in
-        20081018 changes.</li>
-
-        <li>correct layout of working window used to extract data
-        in wide-character configured by
-        <code>set_field_buffer</code></li>
-      </ul>
-    </li>
-  </ul>
-
-  <h2>Portability</h2>
-
-  <ul>
-    <li>configure script:
-
-      <ul>
-        <li>new options:
-
-          <dl>
-            <dt>--disable-libtool-version</dt>
-
-            <dd>use the "-version-number" feature which was added
-            in libtool 1.5. The default value for the option uses
-            the newer feature, which makes libraries generated
-            using libtool compatible with the standard builds of
-            ncurses.</dd>
-
-            <dt>--disable-rpath-hack</dt>
-
-            <dd>disable a feature which adds rpath options for
-            libraries in unusual places.</dd>
-
-            <dt>--enable-interop</dt>
-
-            <dd>integrate changes for generic/interop support to
-            form-library.</dd>
-
-            <dt>--enable-pc-files</dt>
-
-            <dd>generate ".pc" files for each of the libraries, and
-            install them in <code>pkg-config</code>'s library
-            directory.</dd>
-
-            <dt>--enable-pthreads-eintr</dt>
-
-            <dd>control whether to allow <code>EINTR</code> to
-            interrupt a read operation in <code>wgetch</code>. This
-            applies only to the pthread configuration</dd>
-
-            <dt>--enable-sp-funcs</dt>
-
-            <dd>compile-in support for extended functions which
-            accept a <code>SCREEN</code> pointer, reducing the need
-            for juggling the global <code>SP</code> value with
-            <code>set_term</code> and <code>delscreen</code>.</dd>
-
-            <dt>--enable-term-driver</dt>
-
-            <dd>compile with terminal-driver. That is used in the
-            MinGW port, and (being somewhat more complicated) is an
-            experimental alternative to the conventional termlib
-            internals. Currently, it requires the sp-funcs feature
-            to be enabled.</dd>
-
-            <dt>--with-ncurses-wrap-prefix</dt>
-
-            <dd>allows setting the prefix for functions used to
-            wrap global variables to something other than
-            "<code>_nc_</code>".</dd>
-
-            <dt>--with-pkg-config=[DIR]</dt>
-
-            <dd>check for <code>pkg-config</code>, optionally
-            specifying its path.</dd>
-
-            <dt>--without-manpages</dt>
-
-            <dd>tells the configure script to suppress the install
-            of ncurses' manpages.</dd>
-
-            <dt>--without-tests</dt>
-
-            <dd>suppress building test programs.</dd>
-          </dl>
-        </li>
-
-        <li>improved options:
-
-          <ul>
-            <li>correct logic for <code>--with-database</code>,
-            which was coded as an enable-type switch.</li>
-
-            <li>omit the opaque-functions from
-            <code>lib_gen.o</code> when
-            <code>--disable-ext-funcs</code> is used.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>packaging:
-
-      <ul>
-        <li>*-config scripts:
-
-          <ul>
-            <li>modify <code>adacurses-config</code> to look for
-            ".ali" files in the adalib directory.</li>
-
-            <li>correct install for the Ada95 tree, which omitted
-            <code>libAdaCurses.a</code> used in
-            <code>adacurses-config</code>.</li>
-
-            <li>change install for <code>adacurses-config</code> to
-            provide additional flavors such as
-            <code>adacursesw-config</code>, for ncursesw.</li>
-
-            <li>modify scripts to generate
-            <code>ncurses*-config</code> and pc-files to add
-            dependency for tinfo library.</li>
-
-            <li>use <code>ncurses*-config</code> scripts if
-            available for test/configure.</li>
-
-            <li>correct name for termlib in
-            <code>ncurses*-config</code>, e.g., if it is renamed to
-            provide a single file for ncurses/ncursesw
-            libraries.</li>
-
-            <li>generate manpages for the *-config scripts, adapted
-            from <code>help2man</code>.</li>
-
-            <li>modify install-rule for manpages so that *-config
-            manpages will install when building with
-            <code>--srcdir</code>.</li>
-
-            <li>build-fixes for OpenSolaris aka Solaris 11, for
-            wide-character configuration as well as for rpath
-            feature in *-config scripts.</li>
-
-            <li>use <code>$includedir</code> symbol in
-            <code>misc/ncurses-config.in</code>, add
-            <code>--includedir</code> option.</li>
-
-            <li>improve install-rules for pc-files.</li>
-
-            <li>create the <code>pkg-config</code> library
-            directory if needed.</li>
-
-            <li>fix typo "<code>==</code>" where "<code>=</code>"
-            is needed in <code>ncurses-config.in</code> and
-            <code>gen-pkgconfig.in</code> files.</li>
-
-            <li>modify <code>gen-pkgconfig.in</code> to eliminate a
-            dependency on rpath when deciding whether to add
-            <code>$LIBS</code> to <code>--libs</code> output; that
-            should be shown for the ncurses and tinfo libraries
-            without taking rpath into account.</li>
-
-            <li>modify handling of <code>$PKG_CONFIG_LIBDIR</code>
-            to use only the first item in a possibly
-            colon-separated list.</li>
-          </ul>
-        </li>
-
-        <li>other packaging issues
-
-          <ul>
-            <li>add <code>make-tar.sh</code> scripts to Ada95 and
-            test subdirectories to help with making those
-            separately distributable.</li>
-
-            <li>add <code>Ada95/configure</code> script, to use in
-            tar-file created by
-            <code>Ada95/make-tar.sh</code>.</li>
-
-            <li>remove <code>tar-copy.sh</code> and related
-            <code>configure/Makefile</code> chunks, since the Ada95
-            binding is now installed using rules in
-            <code>Ada95/src</code>.</li>
-          </ul>
-        </li>
-      </ul>
-    </li>
-
-    <li>cross-compiling:
-
-      <ul>
-        <li>improve configure checks for location of tic and
-        infocmp programs used for installing database and for
-        generating fallback data, e.g., for cross-compiling.</li>
-
-        <li>modify #define's for build-compiler to suppress cchar_t
-        symbol from compile of <code>make_hash</code> and
-        <code>make_keys</code>, improving cross-compilation of
-        ncursesw.</li>
-
-        <li>simplify include-dependencies of <code>make_hash</code>
-        and <code>make_keys</code>, to reduce the need for setting
-        BUILD_CPPFLAGS in cross-compiling when the build- and
-        target-machines differ.</li>
-
-        <li>correct cross-compiling configure check for
-        <code>CF_MKSTEMP</code> macro, by adding a check cache
-        variable set by <code>AC_CHECK_FUNC</code>.</li>
-      </ul>
-    </li>
-
-    <li>library dependencies:
-
-      <ul>
-        <li>revise <code>wadd_wch</code> and
-        <code>wecho_wchar</code> to eliminate dependency on
-        <code>unctrl</code>.</li>
-
-        <li>adjust configure script so that "t" is not added to
-        library suffix when weak-symbols are used, allowing the
-        pthread configuration to more closely match the non-thread
-        naming.</li>
-      </ul>
-    </li>
-
-    <li>building the Ada95 tree:
-
-      <ul>
-        <li>changes to use gnatmake project files in the Ada95
-        tree.</li>
-
-        <li>add/use configure check to turn on project rules for
-        <code>Ada95/src</code>.</li>
-
-        <li>old gnatmake (3.15) does not produce libraries using
-        project-file; work around by adding script to generate
-        alternate makefile.</li>
-
-        <li>add configure --with-ada-sharedlib option, for the
-        test_make rule.</li>
-
-        <li>move Ada95-related logic into aclocal.m4, since
-        additional checks will be needed to distinguish old/new
-        implementations of gnat.</li>
-
-        <li>add test_make / test_clean / test_install rules in
-        Ada95/src</li>
-
-        <li>change install-path for adainclude directory to
-        /usr/share/ada (was /usr/lib/ada).</li>
-      </ul>
-    </li>
-
-    <li>other configure/build issues:
-
-      <ul>
-        <li>make <code>CCHARW_MAX</code> value configurable, noting
-        that changing this would change the size of
-        <code>cchar_t</code>, and would be ABI-incompatible.</li>
-
-        <li>improve comparison of program-names when checking for
-        linked flavors such as "reset" by ignoring the executable
-        suffix.</li>
-
-        <li>drop <code>mkdirs.sh</code>, use
-        "<code>mkdir&nbsp;-p</code>".</li>
-
-        <li>drop <code>misc/ncu-indent</code> and
-        <code>misc/jpf-indent</code>; they are provided by an
-        external package <a href=
-        "http://invisible-island.net/cindent/cindent.html">cindent</a>.</li>
-
-        <li>change makefiles to use <code>$ARFLAGS</code> rather
-        than <code>$AR_OPTS</code>, provide a configure check to
-        detect whether a "-" is needed before "ar" options.</li>
-
-        <li>modify <code>CF_DISABLE_LEAKS</code> configure macro so
-        that the --enable-leaks option is not the same as
-        --disable-leaks.</li>
-
-        <li>improve configure script macros
-        <code>CF_HEADER_PATH</code> and
-        <code>CF_LIBRARY_PATH</code> by adding <code>CFLAGS</code>,
-        <code>CPPFLAGS</code> and <code>LDFLAGS</code>,
-        <code>LIBS</code> values to the search-lists.</li>
-
-        <li>improve configure macros <code>CF_GCC_VERSION</code>
-        and <code>CF_GCC_WARNINGS</code> to work with gcc 4.x's c89
-        alias, which gives warning messages for cases where older
-        versions would produce an error.</li>
-
-        <li>modify <code>CF_WITH_LIBTOOL</code> configure check to
-        allow unreleased libtool version numbers (e.g. which
-        include alphabetic chars, as well as digits, after the
-        final '.').</li>
-
-        <li>improve use of symbolic links in makefiles by using
-        "<code>-f</code>" option if it is supported, to eliminate
-        temporary removal of the target</li>
-
-        <li>add a configure-time check to pick a suitable value for
-        <code>CC_SHARED_OPTS</code> for Solaris.</li>
-
-        <li>add -shared option to <code>MK_SHARED_LIB</code> when
-        -Bsharable is used, for *BSD's, without which "main" might
-        be one of the shared library's dependencies.</li>
-
-        <li>modify configure script to allow building shared
-        libraries with gcc on AIX 5 or 6.</li>
-
-        <li>suppress configure check for static/dynamic linker
-        flags for gcc on Solaris 10, since gcc is confused by
-        absence of static libc, and does not switch back to dynamic
-        mode before finishing the libraries.</li>
-
-        <li>suppress configure check for static/dynamic linker
-        flags for gcc on Darwin.</li>
-
-        <li>modify <code>misc/run_tic.in</code> to create parent
-        directory, in case this is a new install of hashed
-        database.</li>
-
-        <li>modify configure check for tic program, used for
-        fallbacks, to a warning if not found. This makes it simpler
-        to use additonal scripts to bootstrap the fallbacks code
-        using tic from the build tree.</li>
-      </ul>
-    </li>
-
-    <li>test programs:
-
-      <ul>
-        <li>add test/demo_terminfo, for comparison with
-        demo_termcap.</li>
-
-        <li>improve test/ncurses.c 'F' test, show combining
-        characters in color.</li>
-
-        <li>fix logic for 'V' in test/ncurses.c tests f/F.</li>
-
-        <li>improve test/ncurses.c 'a test to put mouse droppings
-        in the proper window.</li>
-
-        <li>modify ncurses 'F' test to demo wborder_set with
-        colored lines.</li>
-
-        <li>modify ncurses 'f' test to demo wborder with colored
-        lines.</li>
-
-        <li>improve test/ncurses.c 'a' test, using unctrl more
-        consistently to display meta-characters.</li>
-
-        <li>correct use of <code>key_name</code> in test/ncurses.c
-        'A' test, which only displays wide-characters, not
-        key-codes since 20070612.</li>
-
-        <li>add test/clip_printw.c to illustrate how to use printw
-        without wrapping.</li>
-
-        <li>modify test-programs, e.g,. test/view.c, to address
-        subtle differences between Tru64/Solaris and HPUX/AIX
-        getcchar return values.</li>
-
-        <li>add some test programs (and make these use the same
-        special keys by sharing <code>linedata.h</code> functions):
-        test/test_addstr.c test/test_addwstr.c test/test_addchstr.c
-        test/test_add_wchstr.c</li>
-
-        <li>add test/xterm-256color.dat</li>
-
-        <li>modify test programs to allow them to be built with
-        NetBSD curses.</li>
-
-        <li>fixes for test programs to build/work on HPUX and AIX,
-        etc.</li>
-      </ul>
-    </li>
+  <li>fixes a longstanding portability problem with its use of the
+      <a href="http://invisible-island.net/ncurses/man/form_fieldtype.3x">set_field_type</a>
+      function.  Because that function uses variable-length argument lists,
+      its interface with gnat does not work with certain platforms.
+  <li>improves configurability and portability, particularly when built
+      separately from the main ncurses tree.  The 5.8 release introduced
+      scripts which can be used to construct separate tarballs for the
+      Ada95 and ncurses examples.
+      <p>Those were a proof of concept.  For the 5.9 release, those
+      scripts are augmented with rpm- and dpkg-scripts used in test builds
+      against a variety of gnat- and system ncurses versions as old as
+      gnat 3.15 and ncurses 5.4 (see snapshots and systems tested
+      <a href="http://invisible-island.net/ncurses/ncurses-Ada95.html">here</a>.
+  <li>additional improvements were made for portability of the
+      ncurses examples, adding rpm- and dpkg-scripts for test-builds.
+      See 
+      <a href="http://invisible-island.net/ncurses/ncurses-examples.html">this page</a>
+      for snapshots and other information.
   </ul>
 
   <h1>Features of Ncurses</h1>The ncurses package is fully
index 0bce33efdb90b0d820713ce2cd809b363da526d8..74b58a15e867787f935a752cbb3c0f62107d7f28 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2010 Free Software Foundation, Inc.                        *
+  * Copyright (c) 2010,2011 Free Software Foundation, Inc.                   *
   *                                                                          *
   * Permission is hereby granted, free of charge, to any person obtaining a  *
   * copy of this software and associated documentation files (the            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: MKada_config.in,v 1.3 2010/03/06 22:29:06 tom Exp @
+  * @Id: MKada_config.in,v 1.5 2011/03/26 14:44:51 tom Exp @
 -->
 <HTML>
 <HEAD>
 <H2>OPTIONS</H2><PRE>
        <STRONG>--cflags</STRONG>
               echos  the gnat (Ada compiler) flags needed to com-
-              pile with adacurses
+              pile with AdaCurses.
 
        <STRONG>--libs</STRONG> echos  the  gnat  libraries  needed  to  link  with
-              adacurses
+              AdaCurses.
 
        <STRONG>--version</STRONG>
-              echos the release+patchdate version of adacurses
+              echos  the release+patchdate version of the ncurses
+              libraries used to configure and build AdaCurses.
 
-       <STRONG>--help</STRONG> prints this message
+       <STRONG>--help</STRONG> prints a  list  of  the  <STRONG>adacurses-config</STRONG>  script's
+              options.
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index 05f36871ed2ebed51ad4e60de688be074c4c20bd..aeacdd39cab130be5971cc8af1dbcf2081e1f208 100644 (file)
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 </PRE>
index 2edf5a9aa97d7289c4e4b33eab7e4b00190cb148..138806fc487c3b587aef1f999d61916cfce6ca25 100644 (file)
@@ -69,7 +69,7 @@
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index 38f14c49e80991193e5b12b90ba970d7072e7ff7..86e3317cfc58f43e0a8b7f44a3294df273d5949f 100644 (file)
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index c68f477552a1cc7ad31f421b1791805c8f11db27..553e3854858638739844069fe43a7aa90dbae4ed 100644 (file)
        <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,    <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,     <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,     <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 </PRE>
index a8c7267ad682f51c0247923f0b31b9c517722722..a143e45fc5ecfb2d45a88cf61df3d211b5b81a8d 100644 (file)
@@ -94,7 +94,7 @@
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 </PRE>
index 1e6d95a2f037d116ff8a14eaa5b72f46ff1a3942..adfde4cdccaba0bab03468929706870a79dfa5e8 100644 (file)
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index 57f28a07111c8f87a8135c63a183bbdd1194e5b0..576b1a15ec454a087103a28c4e2501e1708f009f 100644 (file)
@@ -63,7 +63,7 @@
        sonable   optimization.    This  implementation  is  ``new
        curses'' (ncurses) and is  the  approved  replacement  for
        4.4BSD  classic curses, which has been discontinued.  This
-       describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
        The <STRONG>ncurses</STRONG> library emulates the curses library of  System
        V  Release  4  UNIX,  and  XPG4 (X/Open Portability Guide)
index 4ead0ebc8c45fc188e86cfcfb9ed1b9cb8903d9c..2169bb908026e566c58328587470c1ded48138e3 100644 (file)
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index 216839e31574f6a3b8a4f9914fedd035aec5d4d7..c73e24162729dc0166cf5da09f25448e025bf83a 100644 (file)
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 </PRE>
index 7fb8d39db5622ef3f7df83920688fe73079ff349..a8781acdcbf0e728ea0d4fcdd97d7327e8087430 100644 (file)
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index 445f3c54b72a935b87e272f857a0ae12b2ef8072..0340f50522b07f96c4cdcdea375e478d64db636f 100644 (file)
@@ -78,7 +78,7 @@
        nals by giving a set of capabilities which they  have,  by
        specifying how to perform screen operations, and by speci-
        fying padding requirements and  initialization  sequences.
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
        Entries in <EM>terminfo</EM> consist of a sequence of `,' separated
        fields (embedded commas may be escaped with a backslash or
index 9b246b5d2379e40da0321848abb522bb2422a644..9d05671623db0a678ffbf2405d1144b4bc345acb 100644 (file)
        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,    <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 </PRE>
index b948480e0c93c9232c2de2628ba4aa41af7d1954..925d3908c7f703b96e1a112cf49f7884c11bff75 100644 (file)
        <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>,    <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index e702f7bacef654103b5b2f778d8b6edccb174e46..c04914f1a2f21a226b1bb866d0edf2d118416aaa 100644 (file)
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
 
 
 
index fe3d63ffb590f697f451d8972606246a97f63c96..2b86f9f21749f396461935dd5ec55ec106e520f8 100644 (file)
        <STRONG><A HREF="csh.1.html">csh(1)</A></STRONG>, <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>,  <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,  <STRONG><A HREF="tty.4.html">tty(4)</A></STRONG>,  ter-
        <STRONG><A HREF="minfo.5.html">minfo(5)</A></STRONG>, <STRONG><A HREF="ttys.5.html">ttys(5)</A></STRONG>, <STRONG><A HREF="environ.7.html">environ(7)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 5.8 (patch 20110226).
+       This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).