./devel/ncurses, CRT screen handling and optimization package

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 6.4, Package name: ncurses-6.4, Maintainer: pkgsrc-users

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 function-key mapping, and has all the other SYSV-curses
enhancements over BSD curses.

Required to build:

Master sites: (Expand)

Filesize: 3527.921 KB

Version history: (Expand)

CVS history: (Expand)

   2023-01-19 13:09:20 by Thomas Klausner | Files touched by this commit (5) | Package updated
Log message:
ncurses: update to 6.4.

   The   most  important  bug-fixes/improvements  dealt  with  robustness
   issues.  The  release notes also mention some other bug-fixes, but are
   focused  on  new  features and improvements to existing features since
   ncurses 6.3 release.

  Library improvements

    New features

   There are no new features in this release.

    Other improvements

   These are improvements to existing features:
     * modify  delscreen  to  more  effectively delete all windows on the
       given screen.
     * modify  wnoutrefresh  to  call  pnoutrefresh if its parameter is a
       pad,  rather than treating it as an error, and modify new_panel to
       permit its window-parameter to be a pad
     * modify  curses_trace()  to  show  the trace-mask as symbols, e.g.,
     * improve  checks  for valid mouse events when an intermediate mouse
       state is not part of the mousemask specified by the caller
     * allow extended-color number in opts parameter of wattr_on.
     * improve _tracecchar_t2 formatting of base+combining character.
     * trim  out some unwanted linker options from ncurses*config and .pc
       files seen in Fedora 36+.
     * improve shell-scripts with shellcheck
     * improve use of "trap" in shell scripts, using a script.
     * modify make-tar.sh scripts to make timestamps more predictable.

   These are corrections to existing features:
     * modify  misc/gen-pkgconfig.in  to  allow  for  the  case where the
       library  directory  does  not  yet  exist, since this is processed
       before doing an install
     * set trailing null on string passed from winsnstr to wins_nwstr.
     * modify  waddch_literal  to  allow  for double-width base character
       when merging a combining character

  Program improvements

   Several improvements were made to the utility programs:


          + rewrite  canonical_name  function of infocmp to ensure buffer
          + improve  readability  of  long parameterized expressions with
            the  infocmp  "-f"  option  by  allowing  split before a \ 
          + modify   verbose-option   of  infocmp,  tic,  toe  to  enable
            debug-tracing if that is configured.

          limit tab-stop values to max-columns

          add   consistency   check   in   tic  for  u6/u7/u8/u9  and  NQ

          corrected use of original tty-modes in init/reset subcommands


   Along  with  the  library and utilities, improvements were made to the
   ncurses-examples.  Most  of  this  activity  aimed  at  improving  the
     * add  minimal  -h  (usage)  and  -V  (version)  getopt logic to all
       ncurses-examples programs.
     * fix an error in "@" command in test/ncurses.c F-menu
     * add curses_trace to ifdef's for START_TRACE in test/test.priv.h
     * improve pthread-configuration for test/worm.c
     * add setlocale call to several test-programs.
     * workaround  in  test/picsmap.c  for  use of floating point for rgb
       values by ImageMagick 6.9.11, which appears to use the wrong upper
     * use  static libraries for AdaCurses test-package for Mageia, since
       no gprbuild package is available.
     * install  Ada95  sample  programs  in  libexecdir, adding a wrapper
       script to invoke those.
     * install  ncurses-examples programs in libexecdir, adding a wrapper
       script to invoke those.

   There are other new demo/test programs and reusable examples:

          demonstrate combining characters

          demonstrate deleting a window

          observe  mouse  events  in  the  raw terminal or parsed ncurses

          demonstrate the unget_wch and unget functions

  Terminal database

   There are several new terminal descriptions:
     * mosh
     * mosh-256color
     * teken-16color
     * teken-sc
     * teken-vt
     * xgterm

   There  are  many  changes to existing terminal descriptions. Some were
   updates to several descriptions:
     * make description-fields distinct
     * fix errata in description fields
     * add/use several building-blocks:
          + aixterm+sl
          + ansi+cpr
          + apollo+vt132
          + decid+cpr
          + ncr260vp+sl
          + wyse+sl
          + x10term+sl
          + xterm+acs
          + xterm+alt47

   while  others  affected specific descriptions. These were retested, to
   take into account changes by their developers:
     * kitty
     * teken

   while  these are specific fixes based on reviewing documentation, user
   reports, or warnings from tic:

          amended note as per documentation for att610, att620, att730

   kon, kon2, jfbterm
          revise to undo "linux2.6" change to smacs/rmacs/enacs

          add dim, ecma+strikeout

          add xterm+sl-alt

          correct dsl in dec+sl

   mintty and tmux
          correct setal in mintty/tmux entries, add to vte-2018

          modify nsterm to use xterm+alt1049

          modify putty to use xterm+alt1049

          add blink and setal

   A few entries use extensions (user-defined terminal capabilities):
     * use  ansi+enq  and  decid+cpr in cases where the terminal probably
       supported the u6-u9 extension
     * remove u6-u9 from teken-2018
     * use  NQ  to flag entries where the terminal does not support query
       and response
     * add/use bracketed+paste to help identify terminals supporting this
       xterm feature
     * modify  samples  for xterm mouse 1002/1003 modes to use 1006 mode,
       and also provide for focus in/out responses
     * xterm  patch  #371 supports DEC-compatible status-line. add dec+sl
       to  xterm-new, per xterm #371, add xterm-p371, add xterm-p370, for
       use  in  older  terminals, and set "xterm-new" to \ 
"xterm-p370" (to
       ease adoption).


   As usual, this release
     * improves documentation by describing new features,
     * attempts  to  improve the description of features which users have
       found confusing
     * fills  in overlooked descriptions of features which were described
       in the NEWS file but treated sketchily in manual pages.

   In  addition  to  providing  background  information  to explain these
   features   and   show   how   they  evolved,  there  are  corrections,
   clarifications, etc.:
     * Corrections:
          + remove a stray '/' from description of %g in terminfo(5).
          + correct/improve  font-formatting in curs_getch.3x, as well as
            other manual pages.
     * New/improved history and portability sections:
          + add portability notes for delscreen and delwin in manual.
          + improve curs_slk.3x discussion of extensions and portability
     * Other improvements:
          + improve  curs_bkgd.3x,  explaining  that  bkgdset  can affect
            results for bkgd
          + add note on portable memory-leak checking in curs_memleaks.3x
          + expanded description in resizeterm.3x
          + add  section  on  releasing  memory  to  curs_termcap.3x  and
            curs_terminfo.3x manpages.
          + add  clarification  of  the  scope  of  dynamic  variables in
          + improve formatting of ncurses-intro.html and hackguide.html
          + improve curs_clear.3x links to other pages
          + update  ncurses-howto,  making documentation fixes along with
            corrections to example programs.
          + use  newer  version  1.36 of gnathtml for generating Ada html
          + update external links in Ada95.html

   There  are  no new manual pages (all of the manual page updates are to
   existing pages).

  Interesting bug-fixes

   While  there  were  many bugs fixed during development of ncurses 6.4,
   only  a  few  (the  reason  for  this release) were both important and
   interesting. Most of the bug-fixes were for local issues which did not
   affect  compatibility across releases. Since those are detailed in the
   NEWS file no elaboration is needed here.

   The  interesting  bugs were those dealing with memory leaks and buffer
   overflows.  Although  the utilities are designed for text files (which
   they do properly), some choose to test them with non-text files.
     * Text  files  contain  no  embedded  nulls.  Also,  they end with a
       newline.  Feeding tic non-text files exposed a few cases where the
       program  did  not  check  for  those  issues. As a result, further
       processing  of the input found limit-checks whose assumptions were
     * Fixing  the limit-checks (first) found a problem with tic managing
       the  list  of  strings  in  a terminal description. In merging two
       terminal  descriptions  (i.e.,  the  "use="  feature), tic was not
       allocating  a  complete copy. A quick repair for that introduced a
       memory leak.
     * The  checks  for non-text files are improved (i.e., embedded nulls
       in  the  input  file  will  cause  tic  to  reject  it rather than
       attempting to process it).
     * The string allocations in tic are likewise improved.

  Configuration changes

    Major changes

   There  are  no  major  changes.  No  new  options  were added. Several
   improvements were made to configure checks.

    Configuration options

   There are a few new/modified configure options:

          add ABI 7 defaults to configure script.

          add   warning   in  configure  script  if  file  specified  for
          "--with-caps" does not exist.

          bzip2 and xz compression are now supported

          add    check/warning    in    configure    script   if   option
          "--with-xterm-kbs" is missing or inconsistent


   Many  of  the  portability  changes  are implemented via the configure
     * amend  configure option's auto-search to account for systems where
       none of the directories known to pkg-config exist
     * corrected regex needed for older pkg-config used in Solaris 10
     * improve  handling of --with-pkg-config-libdir option, allowing for
       the case where either $PKG_CONFIG_LIBDIR or the option value has a
       colon-separated list of directories
     * if   the   --with-pkg-config-libdir   option  is  not  given,  use
       ${libdir}/pkgconfig as a default
     * improve search-path check for pkg-config, e.g., for Debian testing
       which installs pkg-config with architecture-prefixes.
     * build-fix for cross-compiling to MingW, conditionally add -lssp
     * improve configure check for getttynam
     * fixes to build with dietlibc:
          + add configure check for fpathconf
          + add   configure   check   for  math  sine/cosine,  needed  in
            test/tclock, and eliminate pow() from test/hanoi
          + use wcsnlen as an alternative to wmemchr if it is not found
     * modify  configure macro CF_BUILD_CC to check if the build-compiler
       works,  rather  than that it is different from the cross-compiler,
       e.g.,  to  accommodate  a  compiler  which  can be used for either
       purpose with different flags
     * modify  configure/scripts  to work around interference by GNU grep

   Here are some of the other portability fixes:
     * change  man_db.renames  to  template,  to  handle  ncurses*-config
       script with the --extra-suffix configure option.
     * update   CF_XOPEN_SOURCE  macro,  adding  variants  "gnueabi"  and
       "gnueabihf" to get _DEFAULT_SOURCE special case, as well as adding
       GNU  libc  suffixes for "abi64", "abin32", \ 
"x32" to distinguish it
       from other libc flavors.
     * work  around  musl's  nonstandard  use  of  feature test macros by
       adding  a  definition  for NCURSES_WIDECHAR to the generated ".pc"
       and *-config files.
     * use  "command  -v"  rather than "type" in \ 
Ada95/gen/Makefile.in to
       fix a portability issue.
   2022-07-25 23:47:53 by Thomas Klausner | Files touched by this commit (1)
Log message:
ncurses: restore pkg-config dependency

pc files will not be installed if it's not found
   2022-07-25 13:12:30 by Thomas Klausner | Files touched by this commit (102)
Log message:
*: remove pkg-config from tools where no buildlink3.mk file is included

Bulk build on NetBSD of these packages had the same result as before
(build succeeds, no PLIST change).
   2022-06-28 13:38:00 by Thomas Klausner | Files touched by this commit (3952)
Log message:
*: recursive bump for perl 5.36
   2021-11-16 16:19:59 by Thomas Klausner | Files touched by this commit (12) | Package updated
Log message:
ncurses: update to 6.3.

20211021 6.3 release for upload to ftp.gnu.org
	+ update release notes
	+ add "ncu2openbsd" script, to illustrate how to update an OpenBSD
	  system to use a current ncurses release.

	+ check for screen size-change in scr_init() and scr_restore(), in case
	  a screen dump does not match the current screen dimensions (report by
	  Frank Tkalcevic).

	+ amend change for pkg-config to account for "none" being returned in
	  the libdir-path result rather than "no" (report by Gabriele Balducci).

	+ build-fix for pmake with libtool.
	+ improve make-tar.sh scripts, adding COPYING to tar file, and clean up
	  shellcheck warnings.
	+ add link for "reset6" manpage in test-package ncurses6-doc
	+ revise configure option --with-pkg-config-libdir, using the actual
	  search path from pkg-config or pkgconf using the output from --debug
	  (report by Pascal Pignard).
	+ freeze ABI in ".map" files.

	+ implement "+m" option in tabs program.
	+ fill in some details for infoton -TD
	+ fix spelling/consistency in several descriptions -TD
	+ use vt420+lrmm in vt420 -TD
	+ modify save_tty_settings() to avoid opening /dev/tty for cases other
	  than reset/init, e.g., for clear.
	+ modify output of "toe -as" to show first description found rather
	  than the last.
	+ improve tic checks for number of parameters of smglp, smgrp, smgtp,
	  and smgbp (cf: 20020525).
	+ correct off-by-one comparison in last_char(), which did not allow
	  special case of ":" in a terminfo description field (cf: 20120407).
	+ remove check in tic that assumes that none or both parameterized and
	  non-parameterized margin-setting capabilities are present
	  (cf: 20101002).

	+ use return-value from vsnprintf to reallocate as needed to allow for
	  buffers larger than the screen size (report by "_RuRo_").
	+ modify tset "-q" option to refrain from modifying terminal modes, to
	  match the documentation.
	+ add section on margins to terminfo.5, adapted from X/Open Curses.
	+ make tput/tset warning messages consistently using alias names when
	  those are used, rather than the underlying program's name.
	+ improve tput usage message for aliases such as clear, by eliminating
	  tput-specific portions.
	+ add a check in toe to ensure that a "termcap file" is text rather
	  than binary.
	+ further build-fixes for OpenBSD 6.9, whose header files differ from
	  the other BSDs.

	+ add kbeg to xterm+keypad to accommodate termcap applications -TD
	+ add smglp and smgrp to vt420+lrmm, to provide useful data for the
	  "tabs" +m option -TD
	+ build-fix for gcc 3.4.3 with Solaris10, which does not allow forward
	  reference of anonymous struct typedef.
	+ modify tput to allow multiple commands per line.
	+ minor fixes for tset manpage.

	+ adjust ifdef in test_opaque.c to fix build with ncurses 5.7
	+ add testing note for xterm-{hp|sco|sun} -TD
	+ corrected description for ansi.sys-old -TD
	+ add xterm+nopcfkeys, to fill in keys for xterm-hp, xterm-sun -TD
	+ use hp+arrows in a few places -TD
	+ use hp+pfk-cr in a few places -TD

	+ correct logic in filtering of redefinitions (report by Sven Joachim,
	  cf: 20210828).

	+ modify linux3.0 entry to reflect default mapping of shift-tab by
	  kbd 1.14 (report by Jan Engelhardt) -TD
	+ add historical note to tput, curses-terminfo and curses-color
	  manpages based on source-code for SVr2, SVr3 and SVr4.
	+ minor grammatical fixes for "it's" vs "its" (report by \ 
Nick Black).
	+ amend fix for --disable-root-environ (report by Arnav Singh).
	+ build-fix for compiling link_test
	+ drop symbols GCC_PRINTF and GCC_SCANF from curses.h.in, to simplify
	  use (Debian #993179).

	+ correct reversed check for --disable-root-environ (report/analysis
	  by Arnav Singh, cf: 20210626).
	+ apply gcc format attribute to prototypes which use a va_list
	  parameter rather than a "..." variable-length parameter list
	  (prompted by discussion in a tmux pull-request).
	+ modify configure scripts to filter out redefinitions of _XOPEN_SOURCE,
	  e.g., for NetBSD which generally supports 500, but 600 is needed for
	+ improve documentation for tparm and static/dynamic variables.
	+ improve typography in terminfo.5 (patch by Branden Robinson).

	+ improve tparm implementation of %P and %g, more closely matching
	  SVr4 terminfo.
	+ move internals of TERMINAL structure to new header term.priv.h
	+ add "check" rule for ncurses/Makefile
	+ corrected tsl capability for terminator -TD
	+ add check in tic to report instances where tparm would detect an
	  error in an expression (cf: 20201010).
	+ correct a few places where SP->_pair_limit was used rather than
	  SP->_pair_alloc (cf: 20170812).
	+ fix missing "%d" for setaf/setab code 8-15 in xterm+direct16 (report
	  by Florian Weimer) -TD
	+ fix some documentation errata from OpenBSD changes.
	+ update config.sub

	+ add workaround for broken pcre2 package in Debian 10, from xterm #369.

	+ ignore "--dynamic-linker" option in generated pkg/config files,
	  adapted from "distr1" patch.
	+ add CF_SHARED_OPTS case for Haiku, from patch in haikuports.

	+ add extensions in xterm+tmux and ecma+strikeout to ms-terminal,
	  but cancel the non-working Cr and Ms capabilities -TD
	+ add foot and foot-direct -TD

	+ add workaround for Windows Terminal's problems with CR/LF mapping to
	  ms-terminal (patch by Juergen Pfeifer).
	+ review/update current Windows Terminal vs ms-terminal -TD

	+ correct typo in "vip" comments (report by Nick Black), reviewed this
	  against Glink manual -TD
	+ fill in some missing pieces for pccons, to make it comparable to the
	  vt220 entry -TD
	+ modify mk-1st.awk to account for extra-suffix configure option
	  (report by Juergen Pfeifer).
	+ change default for --disable-wattr-macros option to help packagers
	  who reuse wide ncursesw header file with non-wide ncurses library.
	+ build-fix for test/test_opaque.c, for configurations without opaque
	  curses structs.

	+ improve history section for tset manpage based on the 1BSD tarball,
	  which preceded BSD's SCCS checkins by more than three years.
	+ improve CF_XOPEN_CURSES macro used in test/configure (report by Urs
	+ further improvement of libtool configuration, adding a dependency of
	  the install.tic rule, etc., on the library in the build-tree.
	+ update config.sub

	+ amend libtool configuration to add dependency for install.tic, etc.,
	  in ncurses/Makefile on the lower-level libraries.
	+ modify configure script to support ".PHONY" make program feature.

	+ add configure option --disable-root-access, which tells ncurses to
	  disallow most file-opens by setuid processes.
	+ use default colors in pccon "op" -TD
	+ correct rmacs/smacs in aaa+dec, aaa+rv -TD
	+ add hpterm-color2 and hp98550-color (Martin Trusler)
	+ regenerate man-html documentation.

	+ improve configure-macro used for dependencies of --disable-leaks such
	  as --with-valgrind
	+ trim trailing blanks from files

	+ fixes for scan-build, valgrind build/testing.
	+ update config.guess

	+ add a summary of ncurses-specific preprocessor symbols to curses.h
	  (prompted by discussion with Peter Farley, Bill Gray).

	+ regenerate configure scripts with autoconf 2.52.20210509 to eliminate
	  an unnecessary warning in config.log (report by Miroslav Lichvar).
	+ add a note in manual page to explain ungetch vs unget_wch (prompted
	  by discussion with Peter Farley).
	+ add sp-funcs for erasewchar, killwchar.
	+ modify wgetnstr, wgetn_wstr to improve compatibility with SVr4 curses
	  in its treatment of interrupt and quit characters (prompted by
	  report/testcase by Bill Gray)
	+ update config.guess, config.sub

	+ improve manual pages for wgetnstr, newwin (prompted by
	  report/testcase by Bill Gray).

	+ modify tputs' error check to allow it to be used without first
	  calling tgetent or setupterm, noting that terminfo initialization
	  is required for supporting the terminfo delay feature (report by
	  Sebastiano Vigna).
	+ fix several warnings from clang --analyze
	+ add null-pointer check in comp_parse.c, when a "use=" clause refers
	  to a nonexisting terminal description (report/patch by Miroslav
	  Lichvar, cf: 20210227).

	+ add a special case in the configure script to work around one of the
	  build-time breakages reported for OpenBSD 6 here:
	  There is no workaround for the other issue, a broken linker spec.
	+ modify configure check for libtool to prevent accidental use of an
	  OpenBSD program which uses the same name.
	+ update config.guess, config.sub

	+ avoid using broken system macros for snprintf which interfere with
	  _nc_SLIMIT's conditionally adding a parameter when the string-hacks
	  configure option is enabled.
	+ add a "all::" rule before the new "check" rule in \ 

	+ improve CF_LINK_FUNCS by ensuring that the source-file is closed
	  before linking to the target.
	+ add "check" rules for headers in c++, progs and test-directories.
	+ build-fix for termsort module when configured with termcap (reports
	  by Rajeev V Pillai, Rudi Heitbaum).

	+ extend --disable-pkg-ldflags option to also control whether $LDFLAGS
	  from the build is provided in -config and .pc files (Debian #986764).
	+ fix some cppcheck warnings, mostly style, in ncurses and c++
	  libraries and progs directory.
	+ fix off-by-one limit for tput's processing command-line arguments
	  (patch by Hadrien Lacour).

	+ fix some cppcheck warnings, mostly style, in ncurses library and
	  progs directory.
	+ improve description of BSD-style padding in curs_termcap.3x
	+ improved CF_C11_NORETURN macro, from byacc changes.
	+ fix "--enable-leak" in CF_DISABLE_LEAKS to allow turning
	  leak-checking off later in a set of options.
	+ relax modification-time comparison in CF_LINK_FUNCS to allow it to
	  accept link() function with NFS filesystems which change the mtime
	  on the link target, e.g., several BSD systems.
	+ call delay_output_sp to handle BSD-style padding when tputs_sp is
	  called, whether directly or internally, to ensure that the SCREEN
	  pointer is passed correctly (reports by Henric Jungheim, Juraj

	+ build-fixes for Solaris10 /bin/sh
	+ fix some cppcheck warnings, mostly style, in ncurses test-programs,
	  form and menu libraries.

	+ add configure option --enable-stdnoreturn, making the _Noreturn
	  keyword optional to ease transition (prompted by report by
	  Rajeev V Pillai).

	+ improve parameter-checking in tput by forcing it to analyze any
	  extended string capability, e.g., as used in the Cs and Ms
	  capabilities of the tmux description (report by Brad Town,
	  cf: 20200531).
	+ remove an incorrect free in the fallback (non-checking) version of
	  _nc_free_and_exit (report by Miroslav Lichvar).
	+ correct use-ordering in some xterm-direct flavors -TD
	+ add hterm, hterm-256color (Mike Frysinger)
	+ if the build-time compiler accepts c11's _Noreturn keyword, use that
	  rather than gcc's attribute.
	+ change configure-check for gcc's noreturn attribute to assume it is
	  a prefix rather than suffix, matching c11's _Noreturn convention.
	+ add "lint" rule to c++/Makefile, e.g., with cppcheck.

	+ improve configure CF_LD_SEARCHPATH macro used for ncurses*-config and
	  ".pc" files, from dialog changes.
	+ reduce dependency of math-library in test programs.
	+ minor fixes for test_tparm.c (cf: 20210306)
	+ mention "ncurses" prefix in curses_version() manpage (report by
	  Michal Bielinski).

	+ improved test/test_tparm.c, by limiting the tests to capabilities
	  that might have parameters or padding, and combined with tputs test.
	+ improve discussion of padding versus tparm and tputs in
	+ update portability note for FreeBSD in man/tput.1

	+ modify tic/infocmp to eliminate unnecessary "\" to escape \ 
":" in
	  terminfo format.
	+ add check in tic for duplicate "use=" clauses.

	+ improve tic warning when oc/op do not mention SGR 39/49 for xterm
	  compatible XT flag.
	+ revert change to lib_addch.c in waddch_literal() from 20210130, since
	  the followup fix in PutCharLR() actually corrects the problem while
	  this change causes too-early filling/wrapping (report by Johannes
	+ add/use vt220+pcedit and vt220+vtedit  -TD
	+ add scrt/securecrt and absolute -TD
	+ add nel to xterm-new, though supported since X11R5 -TD
	+ add/use xterm+nofkeys -TD
	+ move use of ecma+italics from xterm-basic to xterm+nofkeys -TD

	+ add test/back_ground.c, to exercise the wide-character background
	+ add a check in _nc_build_wch() in case the background character is a
	  wide-character, rather than a new part of a multibyte character.
	+ improve tracemunch's coverage of form/menu/panel libraries.
	+ improve tracemunch's checking/reporting the type for the first
	  parameter, e.g., "WINDOW*" rather than "#1".

	+ provide for wide-characters as background character in wbkgrnd
	  (report/testcase by Anton Vidovic)
	+ add name for Fedora's pcre2 to configure check for "--with-pcre2"
	  option, from xterm #363 -TD
	+ modify adjustment in PutCharLR to restore the cursor position before
	  writing to the lower-right corner, rather than decrementing the
	  cursor column, in case it was a double-width character (cf: 20210130).

	+ correct an off-by-one in comparison in waddch_literal() which caused
	  scrolling when a double-cell character would not fit at the lower
	  right corner of the screen (report by Benno Schulenberg).
	+ split-out att610+cvis, vt220+cvis, vt220+cvis8 -TD
	+ add vt220-base, for terminal emulators which generally have not
	  supported att610's blinking cursor control -TD
	+ use vt220+cvis in vt220, etc -TD
	+ use att610+cvis, xterm+tmux and ansi+enq in kitty -TD
	+ use vt220+cvis in st, terminology, termite since they ignore
	  blinking-cursor detail in att610+cvis -TD

	+ modify package/config scripts to provide an explicit -L option for
	  cases when the loader search path has other directories preceding
	  the one in which ncurses is installed (report by Yuri Victorovich).
	+ minor build-fixes in configure script and makefiles to work around
	  quirks of pmake.

	+ add comment for linux2.6 regarding CONFIG_CONSOLE_TRANSLATIONS
	  (report by Patrick McDermott) -TD
	+ make opts extension for getcchar work as documented for ncurses 6.1,
	  adding "-g" flag to test/demo_new_pair to illustrate.

	+ fix errata in man/ncurses.3x from recent updates.
	+ improve quoting/escaping in configure script, uses some features of
	  autoconf 2.52.20210105

	+ update man/curs_memleaks.3x, to include <term.h> which declares
	+ clarify man/curs_terminfo.3x, to mention why the macro setterm is
	  defined in <curses.h>, and remove it from the list of prototypes
	  (prompted by patch by Graeme McCutcheon).
	+ amend man/curs_terminfo.3x, to note that <curses.h> is required
	  for certain functions, e.g., those using chtype or attr_t for
	  types, as well as mvcur (cf: 20201031).
	+ use parameter-names in prototypes in curs_sp_funcs.3x, for
	  consistency with other manpages.

	+ update terminology entry to 1.8.1 -TD
	+ fix some compiler-warnings which gcc8 reports incorrectly.

	+ suppress hyphenation in generated html for manpages, to address
	  regression in upgrade of groff 1.22.2 to 1.22.3.
	+ fix inconsistent sort-order in see-also sections of manpages (report
	  by Chris Bennett).

	+ improve manual pages for form field-types.

	+ amend build-fixes for gnat 10 to work with certain systems lacking
	  gprbuild (cf: 20200627).
	+ eliminate an additional strlen and wsclen.
	+ eliminate an unnecessary strlen in waddnstr() (suggested by Benjamin
	+ modify inopts manpage, separating the items for nodelay and notimeout
	  (patch by Benno Schulenberg).
	+ correct mlterm3 kf1-kf4 (Debian #975322) -TD
	+ add flash to mlterm3 -TD

	+ add Smulx to alacritty (Christian Duerr).
	+ add rep to PuTTY -TD
	+ add putty+keypad -TD
	+ add another fflush(stdout) in _nc_flush() to handle time-delays in
	  the middle of strings such as flash when the application uses
	  low-level calls rather than curses (cf: 20161217).
	+ modify configure check for c89/c99 aliases of clang to use its
	  -std option instead, because some platforms, in particular macOS,
	  do not provide workable c89/c99 aliases.

	+ fix some compiler-warnings in experimental Windows-10 driver.
	+ add the definitions needed in recent configure-check for clang
	  (report by Steven Pitman).

	+ fix some compiler-warnings in experimental Windows-10 driver.
	+ modify a check for parameters in terminfo capabilities to handle the
	  special case where short extended capability strings were not
	  converted from terminfo to termcap format.
	+ modify CF_MIXEDCASE_FILENAMES macro, adding darwin as special case
	  when cross-compiling (report by Eli Rykoff).

	+ update kitty+common -TD
	+ add putty+screen and putty-screen (suggested by Alexandre Montaron).
	+ explain in ncurses.3x that functions in the tinfo library do not rely
	  upon wide-characters (prompted by discussion with Reuben Thomas).

	+ modify MKterm.h.in so that it is not necessary to include <curses.h>
	  before <term.h> (prompted by discussion with Reuben Thomas).
	+ review/improve synopsis for curs_sp_funcs.3x (prompted by discussion
	  with Reuben Thomas).
	+ improve format of output in tic's check_infotocap() function, to
	  ensure that the messages contain only printable text.
	+ modify configure-check for clang to verify that -Qunused-arguments
	  is supported.  IBM's xlclang does not support it (report by Steven

	+ provide workaround configure-check for bool when cross-compiling.
	+ fix a potential indexing error in _nc_parse_entry(), seen with
	  Herlim's test data using address-sanitizer.
	+ change a null-pointer check in set_curterm to a valid-string check,
	  needed in to tic's use-resolution when pad_char is cancelled
	  (report/testcase by Robert Sebastian Herlim)
	+ improve tic's -c option to validate the number and type of parameters
	  and compare against expected number/type before deciding which set of
	  parameter-lists to use in tparm calls (report/testcase by Robert
	  Sebastian Herlim).
	+ fix a link for tabs.1 manpage in announce.html.in (report by Nick
	  Black), as well as some fixes via linklint.

	+ improve manpage typography.
	+ improve discussion in curs_addch.3x of the use of unctrl to display
	  nonprintable characters.
	+ add a note in terminfo.5 explaining that no-parameter strings such
	  as sgr0 or cnorm should not be used with tparm.

	+ correct sgr in aaa+rv (report by Florian Weimer) -TD
	+ fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
	  ncrvt100an -TD
	+ improve tic's check for errors detected in tparm (prompted by
	  discussion with Florian Weimer).
	+ set output-mode to binary in experimental Windows-10 driver (Juergen

	+ remove output-related checks for nl/nonl (report by Leon Winter).
	+ change tmux's kbs to ^? (report by Premysl Eric Janouch)
	+ simplify mlterm initialization with DECSTR -TD
	+ fix a typo in man/curs_terminfo.3 (Reuben Thomas).
	+ add tmux-direct (tmux #2370, Debian #895754)
	+ add user-defined capabilities from mintty to Caps-ncurses, for
	  checking consistency with tic.

	+ correct configure-check for gnurx library.
	+ regenerate llib-* files.
	+ modify tracemunch and the panel library to show readable traces for
	  panel- and user-pointers.

	+ update mlterm3 for 3.9.0 (report by Premysl Eric Janouch) -TD

	+ corrected condition for appending curses.events to the generated
	  curses.h (report by Sven Joachim, Debian #970545).

	+ add configure-check for systre/tre with mingw configuration, to get
	  the library-dependencies as seen in msys2 configuration for mingw64.
	+ build-fixes for the win32-driver configuration.
	+ use more defensive binary mode setting for Win32 (Juergen Pfeifer).

	+ fix regression in setupterm validating non-empty $TERM (report by
	  Soren Tempel).

	+ merge/adapt in-progress work by Juergen Pfeifer for new version of
	+ correct description of vt330/vt340 (Ross Combs).

	+ build-fix for awk-scripts modified for win32-driver (report by Werner

	+ remove a redundant NCURSES_EXPORT as a build-fix for "Maarten
	+ merge/adapt in-progress work by Juergen Pfeifer for new version of
	+ modify configure script, moving gcc -Werror options to EXTRA_CFLAGS
	  to avoid breaking configure-checks (adapted from ongoing work on
	  mawk and lynx).
	> errata for terminfo.src (report by Florian Weimer):
	+ correct icl6404 csr
	+ correct ti916 cup
	+ improve ndr9500

	+ improve version-number extraction in MKlib_gen.sh
	+ make the test-package for manpages installable by adjusting the
	  man_db.renames file.
	+ correct an off-by-one loop-limit in convert_strings function
	  (report by Yue Tai).
	+ add CF_SHARED_OPTS cases for HPE NonStop systems (Randall S Becker).
	+ modify CF_SHARED_OPTS case for NetBSD to use the same "-shared"
	  option for the non-rpath case as for the rpath case, to allow gcc to
	  provide suitable runtime initialization (report by Rajeev V Pillai).

	+ reduce build-warnings by excluding ncurses-internals from deprecation
	+ mark wgetch-events feature as deprecated.
	+ add definition for $(LIBS) to ncurses/Makefile.in, to simplify builds
	  using the string-hacks option.
	+ prevent KEY_EVENT from appearing in curses.h unless the configure
	  option --enable-wgetch-events is used (report by Werner Fink).

	+ amend tic/infocmp check to allow for the respective tool's absence
	  (report by Steve Wills, cf: 20200808).
	+ improved some of the build-scripts with shellcheck
	+ filter out -MT/-MD/-MTd/-MDd options in script for Visual Studio C++
	  (discussion with "Maarten Anonymous").

	+ improve discussion of the system's tic utility when used as part
	  of cross-compiling (discussion with Keith Marshall).
	+ modify configuration checks for build-time tic/infocmp to use
	  AC_CHECK_TOOL. That can still be overridden by --with-tic-path and
	  --with-infocmp-path when fallbacks are used, but even if not using
	  fallbacks, the improved check may help with cross-compiling
	  (discussion with Keith Marshall).
	+ other build-fixes for Ada95 with MinGW.
	+ modify Ada95 source-generation utility to write to a file given as
	  parameter rather than to the standard output, allowing builds with

	+ remove remaining parts of checks for ISC Unix (cf: 20121006).
	+ add user32.lib to LDFLAGS for Visual Studio C++ configuration
	  (discussion with "Maarten Anonymous").
	+ modify MKkey_defs.sh to hide ncurses' definition of KEY_EVENTS to
	  reduce Visual Studio C++ redefinition warnings.
	+ improve/update checks for external functions in test/configure

	+ set LINK_TESTS in CF_SHARED_OPTS for msvc (patch by
	  "Maarten Anonymous")
	+ improved workaround for redefinition-warnings for KEY_EVENT.
	+ improve man/term.5 section on legacy storage format (report by
	  Florian Weimer).

	+ reduce redefinition-warnings for KEY_EVENT when building with Visual
	  Studio C++.
	+ define NCURSES_STATIC when compiling programs to link with static
	  libraries, to work with MinGW vs Visual Studio C++.
	> additional changes for building with Visual Studio C++ and msys2
	  (reports/patches by "Maarten Anonymous")
	+ modify c++/Makefile.in to set the current directory while compiling
	  the main program, so the linker can find related objects.
	+ several changes to allow the c++/demo program to compile/link.
	+ change an ifdef in test-directory, to use VC++ wide-character funcs.

	+ fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
	+ additional changes for building with Visual Studio C++ and msys2
	  (reports/patches by "Maarten Anonymous")
	+ build-improvements for Windows 10 and MinGW (patch by Juergen
	+ fix a typo in curs_printw.3x (patch by William Pursell).
	+ fix two errors in infotocap which allowed indexing outside the
	  buffer (report/testcases by Zhang Gan).
	+ update length of strings in infocmp's usage function to restore a
	  trailing null on the longest string (report/testcase by Zhang Gen).

	+ modify version-check with Ada generics to use the same pattern as in
	  the check for supported gnat versions (report by Pascal Pignard).
	> additional changes for building with Visual Studio C++ and msys2
	  (patches by "Maarten Anonymous"):
	+ adjust headers/declarations to provide for "dllimport" vs \ 
	  declarations when constructing DLLs, to worko with Visual Studio C++.

	+ build-fixes for gnat 10.1.1, whose gnatmake drops integration with
	+ correct buffer-length in test/color_name.h

	+ update list of functions in ncurses.3x
	+ move dlclose() call from lib_mouse.c to delscreen() to avoid a case
	  in the former which could be called from SIGTSTP handler (Debian

	+ add xterm+256color2, xterm+88color2, to deprecate nonstandard usage
	  in xterm+256color, xterm+88color -TD
	+ add shifted Linux console keys in linux+sfkeys entry for
	  screen.linux (report by Alexandre Montaron).
	+ use vt100+enq in screen (report by Alexandre Montaron).
	+ add screen.linux-s alias (suggested by Alexandre Montaron).

	+ correct configure version-check/warnng for g++ to allow for 10.x
	+ re-enable "bel" in konsole-base (report by Nia Huang)
	+ add linux-s entry (patch by Alexandre Montaron).
	+ drop long-obsolete convert_configure.pl
	+ add test/test_tparm.c, for checking tparm changes.
	+ improve parameter-checking for tparm, adding function _nc_tiparm() to
	  handle the most-used case, which accepts only numeric parameters
	  (report/testcase by "puppet-meteor").
	+ use a more conservative estimate of the buffer-size in lib_tparm.c's
	  save_text() and save_number(), in case the sprintf() function
	  passes-through unexpected characters from a format specifier
	  (report/testcase by "puppet-meteor").
	+ add a check for end-of-string in cvtchar to handle a malformed
	  string in infotocap (report/testcase by "puppet-meteor").

	+ update version-check for gnat to allow for gnat 10.x to 99.x
	+ fix an uninitialized variable in lib_mouse.c changes (cf: 20200502)
	+ add a check in EmitRange to guard against repeat_char emitting digits
	  which could be interpreted as BSD-style padding when --enable-bsdpad
	  is configured (report/patch by Hiltjo Posthuma).
	+ add --disable-pkg-ldflags to suppress EXTRA_LDFLAGS from the
	  generated pkg-config and ncurses*-config files, to simplify
	  configuring in the case where rpath is used but the packager wants
	  to hide the feature (report by Michael Stapelberg).
	> fixes for building with Visual Studio C++ and msys2 (patches by
	  "Maarten Anonymous"):
	+ modify CF_SHARED_OPTS to generate a script which translates linker
	  options into Visual Studio's dialect.
	+ omit parentheses around function-names in generated lib_gen.c to
	  work around a Visual Studio C++ limitation.

	+ add notes on termcap.h header in curs_termcap.3x
	+ update notes on vscode / xterm.js -TD

	+ add "-r" option to the dots test-programs, to help with scripting
	  a performance comparison.
	+ build-fix test/move_field.c for NetBSD curses, whose form headers
	  use different names than SVr4 or ncurses.

	+ add details on the change to Linux SGR 21 in 2018 -TD
	+ add xterm-direct16 and xterm-direct256 -TD
	+ modify lib_mouse.c to check for out-of-range button numbers, convert
	  those to position reports.

	+ use vt100+fnkeys in putty -TD
	+ fix a typo in tput.1; "columns" should be "cols".

	+ improve tracemunch logic for "RUN" compaction.
	+ fix a special case in wresize() where copying the old text did not
	  check if the last cell on a row was the beginning of a fullwidth
	  character (adapted from patch by Benno Schulenberg).
	+ use vt52+keypad in xterm-vt52, from xterm #354 -TD
	+ improve see-also section of user_caps.5

	+ fix find_pair(), overlooked when refactoring for _nc_reserve_pairs()
	  (report/testcase by Brad Town, cf: 20170812).
	+ add a trailing null for magic-string in putwin, flagged by gcc 10
	+ update check for gcc version versus gnat to work with gcc 10.x

	+ modify -fvisibility check to work with g++
	> fixes for building with Visual Studio C++ and msys2 (patches by
	  "Maarten Anonymous"):
	+ add configure option and check for gcc -fvisibility=hidden feature
	+ define NCURSES_NOMACROS in lib_gen.c to work around Visual Studio
	  C++ preprocessor limitations.
	+ modify some of the configure-macros, as well as mk-1st.awk to work
	  with Visual Studio C++ default filenaming.

	+ correct length of buffer copied in dup_field().
	+ remove "$(srcdir)/" from path of library.gpr, needed for out-of-tree
	  builds of Ada95 (patch by Adam Van Ymeren).

	+ improve configure-checks to reduce warnings about unused variables.
	+ improve description of error-returns in waddch and waddnstr manual
	  pages (prompted by patch by Benno Schulenberg).
	+ add test/move_field.c to demonstrate move_field(), and a stub for
	  a corresponding demo of dup_field().

	+ add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
	+ add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
	+ add portability note to ncurses.3x regarding <stdarg.h>

	+ update copyright notices in test-packages.
	+ modify tracemunch to guard against errors in its known_p1 table.
	+ add several --with-xxx-libname options, to help with pkgsrc (prompted
	  by discussion with Thomas Klausner).

	+ modify wbkgd() and wbkgrnd() to avoid storing a null in the
	  background character, because it may be used in cases where the
	  corresponding 0x80 is not treated as a null (report by Marc Rechte,
	  cf: 20181208).

	+ modify CF_NCURSES_CONFIG to work around xcode's c99 "-W" option,
	  which conflicts with conventional use for passing linker options.
	> fixes for building with Visual Studio C++ and msys2 (patches by
	  "Maarten Anonymous"):
	+ check for pcre2posix.h instead of pcre2-posix.h
	+ add case in CF_SHARED_OPTS for msys2 + msvc
	+ add fallback definition for STDIN_FILENO in progs.priv.h
	+ modify win_driver.c to use _alloca() rather than gcc's variable
	  length array feature.
	+ add NCURSES_IMPEXP to ncurses wrapped-variable declarations
	+ remove NCURSES_IMPEXP from class variables in c++/cursslk.h
	+ remove fallback prototype for exit() from c++/etip.h.in
	+ use configured check for <sys/time.h> in a couple of places
	+ conditionally include winsock.h in ncurses/win32con/gettimeofday.c,
	  because Visual Studio needs this for the timestruct declaration.
	+ adjust syntax in a couple of files using the NCURSES_API symbol.

	+ expanded note in ncurses.3x regarding automatically-included headers
	+ improve vt50h and vt52 based on DECScope manual -TD
	+ add/use vt52+keypad and vt52-basic -TD
	+ check/workaround for line-too-long in Ada95 generate utility when
	  building out-of-tree.
	+ improve/update HEADER_DEPS in */Makefile.in
	+ add "check" rule to include/Makefile, to demonstrate that the headers
	  include all of the required headers for the types used.

	+ improve manual page for panel library, extending the portability
	  section as well as documenting error-returns.
	+ show tic's version when installing terminal database in run_tic.sh
	+ correct check for gcc vs other compilers used in ncurses 6.0, from
	  FreeBSD patch by Kyle Evans (cf: 20150725).
	+ add notes for 6.2 to INSTALL.
   2021-11-03 11:33:58 by Jonathan Perkin | Files touched by this commit (1)
Log message:
ncurses: Fix install on case-insensitive file systems.

   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:

The following distfiles were unfetchable (note: some may be only fetched

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-09 09:52:36 by Thomas Klausner | Files touched by this commit (3)
Log message:
ncurses: fix for CVE-2021-39537 from upstream

Many thanks to Thomas Dickey for help in tracking down the bugfix patch!