Subject: CVS commit: pkgsrc/devel/ncurses
To: None <>
From: Thomas Klausner <>
List: pkgsrc-changes
Date: 01/21/2003 13:05:20
Module Name:	pkgsrc
Committed By:	wiz
Date:		Tue Jan 21 11:05:19 UTC 2003

Modified Files:
	pkgsrc/devel/ncurses: Makefile PLIST distinfo
	pkgsrc/devel/ncurses/patches: patch-ab

Log Message:
Update to 5.3:
Interface changes:
  * change type for bool used in headers to NCURSES_BOOL, which usually is the same as the
    compiler's definition for bool.
  * add all but two functions for X/Open curses wide-character support. These are only
    available if the library is configured using the --enable-widec option. Missing functions
       * pecho_wchar()
       * slk_wset()
  * add environment variable $NCURSES_ASSUMED_COLORS to modify the assume_default_colors()
New features and improvements:
  * Improved support for termcap applications:
       * add logic to dump_entry.c to remove function-key definitions that do not fit into the
         1023-byte limit for generated termcaps. This makes hds200 fit.
       * modify tgetent() to check if exit_attribute_mode resets the alternate character set,
         and if so, attempt to adjust the copy of the termcap "me" string which it will return
         to eliminate that part. In particular, 'screen' would lose track of line-drawing
       * add check/fix to comp_parse.c to suppress warning about missing acsc string. This
         happens in configurations where raw termcap information is processed; tic already
         does this and other checks.
       * add tic -A option to suppress capabilities which are commented out when translating
         to termcap.
       * modify logic in lib_baudrate.c for ospeed, for FreeBSD to make it work properly for
         termcap applications (patch by Andrey A Chernov).
  * add a call to _nc_keypad() in keypad() to accommodate applications such as nvi, which use
    curses for output but not for input (fixes Debian #131263, cf: 20011215).
  * correct logic for COLORFGBG environment variable: if rxvt is compiled with xpm support,
    the variable has three fields, making it slightly incompatible with itself. In either
    case, the background color is the last field.
Major bug fixes:
  * rewrote limit-checks in wscrl() and associated _nc_scroll_window(), to ensure that if the
    parameter of wscrl() is larger than the size of the scrolling region, then the scrolling
    region will be cleared.
  * modify tset to restore original I/O modes if an error is encountered. Also modify to use
    buffered stderr consistently rather than mixing with write().
  * move calls to def_shell_mode() and def_prog_mode() before loop with callbacks in
    lib_set_term.c, since the c++ demo otherwise initialized the tty modes before saving them.
  * modified wresize() to ensure that a failed realloc will not corrupt the window structure,
    and to make subwindows fit within the resized window.
  * altered resizeterm() to avoid having it fail when a child window cannot be resized because
    it would be larger than its parent.
  * correct/improve logic to produce an exit status for errors in tput, which did not exit
    with an error when told to put a string not in the current terminfo entry.
  * modify behavior of can_clear_with() so that if an application is running in a non-bce
    terminals with default colors enabled, it returns true, allowing the user to select/paste
    text without picking up extraneous trailing blanks.
  * add a check in relative_move() to guard against buffer overflow in the overwrite logic.
  * add some limit/pointer checks to -S option of tputs.
  * modify mvcur() to avoid emitting newline characters when nonl() mode is set. Normally this
    is not a problem since the actual terminal mode is set to suppress nl/crlf translations,
    however it is useful to allow the caller to manipulate the terminal mode to avoid
    staircasing effects after spawning a process which writes messages (for lynx 2.8.4).
  * configure script:
       * modify check in --disable-overwrite option so that it is used by default unless the
         --prefix/$prefix value is not /usr, in attempt to work around packagers who do not
         read the INSTALL notes.
       * correct a typo in configure --enable-colorfgbg option, and move it to the
         experimental section (cf: 20011208).
       * modify configure script to allow building with termcap only, or with fallbacks only.
         In this case, we do not build tic and toe.
       * modify to check if the build is a cross-compile. In that case, do not use
         the build's tic to install the terminfo database.
       * modify c++/ to accommodate archive programs that are different for C++
         than for C, and add cases for vendor's C++ compilers on Solaris and IRIX.
       * add several configure script options to aid with cross-compiling: --with-build-cc,
         --with-build-cflags, --with-build-ldflags, and --with-build-libs.
       * add experimental --with-caps=XXX option to customize to similar terminfo database
         formats such as AIX 4.x
       * add configure option --with-ospeed to assist packagers in transition to 5.3 change to
         ospeed type.
  * library:
       * implement a simple vsscanf() fallback function which uses the %n conversion to help
         parse the input data.
       * various fixes to build/work with different implementations of vsscanf().
       * add/use macro to suppress sign-extension of char type on platforms where this is a
         problem in ctype macros, e.g., Solaris.
       * finish changes needed to build dll's on cygwin.
       * add #undef's before possible redefinition of ERR and OK in curses.h
  * programs:
       * modify ifdef's in write_entry.c to allow use of symbolic links on platforms with no
         hard links, e.g., BeOS.
       * modify _nc_write_entry() to allow for the possibility that linking aliases on a
         filesystem that ignores case would not succeed because the source and destination
         differ only by case, e.g., NCR260VT300WPP0 on cygwin.
       * modify logic in tic, toe, tput and tset which checks for basename of argv[0] to work
         properly on systems such as OS/2 which have case-independent filenames and/or program
         suffixes, e.g., ".ext".

To generate a diff of this commit:
cvs rdiff -r1.41 -r1.42 pkgsrc/devel/ncurses/Makefile
cvs rdiff -r1.2 -r1.3 pkgsrc/devel/ncurses/PLIST
cvs rdiff -r1.4 -r1.5 pkgsrc/devel/ncurses/
cvs rdiff -r1.6 -r1.7 pkgsrc/devel/ncurses/distinfo
cvs rdiff -r1.10 -r1.11 pkgsrc/devel/ncurses/patches/patch-ab

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.