pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/cdk cdk: update to 5.0.20180306.

branches:  trunk
changeset: 319819:10da942c93d5
user:      wiz <>
date:      Thu Feb 21 09:59:30 2019 +0000

cdk: update to 5.0.20180306.

This update was provided by Thomas E. Dickey in private email.

        + update versioned-symbol list for reRegisterCDKObject (prompted by
          Debian #892114, which adopted a different set of symbol versions
          such as "5.0.20161120", cf: 2014/11/06).
        + updated configure macros, from lynx development:  CF_CURSES_FUNCS,
        + update config.guess, config.sub

        + updated ftp url in test-packages, etc.
        + updated configure macros CF_CC_ENV_FLAGS, CF_SHARED_OPTS
        + update config.guess, config.sub

        + updated configure macros:
          + CF_ADD_CFLAGS improve formatting of generated lists using
          + CF_CC_ENV_FLAGS - two changes
            a) revise the expression generating $cf_flags to actually work when
               there is more than one option.
            b) correct the parameter passed to CF_ADD_CFLAGS, which was the
               whole list rather than the current parameter.
          + CF_CURSES_LIBS reorganize to handle the case where initscr is a
          + CF_NCURSES_CONFIG add check for term.h when using pkg-config
          + CF_NCURSES_VERSION use prototype for main
          + CF_SHARED_OPTS workaround for PGI compiler
          + CF_WITH_LIBTOOL use SIGQUIT(3) rather than SIGTRAP(5) in trap
            commands.  Fix a few places in configure/build scripts where
            DESTDIR and rpath were combined.
        + update config.guess, config.sub

        + improve formatting of manpages, using bullets
        + add -C and -R options to matrix_ex.c to exercise the col/row spacing
          features of matrix widget.
        + modify matrix widget to highlight the current cell for the cases
          when col/row spacing are greater than zero.

        + cleanup change for color pairs in 2016/11/20
        + modify initCDKScreen() to simplify initialization of curses by
          calling initscr() in this function after initializing the locale.
          That fixes a problem using PuTTY with CDK when built using ncurses
          (report by Marc Smith).

        + fix warnings from cppcheck 1.76.1
        + updated configure macros:
          + CF_CC_ENV_FLAGS don't limit the check to -I, -U and -D options,
            since the added options can include various compiler options before
            and after preprocessor options.
          + CF_GNU_SOURCE recent glibc (Debian 2.23-4 for example) has
            misordered ifdef/checks for new symbol _DEFAULT_SOURCE, producing
            warning messages when only _GNU_SOURCE is defined.  Add a followup
            check to define _DEFAULT_SOURCE.
          + CF_LD_RPATH_OPT change FreeBSD to use -Wl,-rpath rather than -rpath
            option.  According to FreeBSD #178732, either works since FreeBSD
            4.x; however scons does not accept anything except the -Wl,-rpath
          + CF_PROG_LINT add cpplint to programs to use; drop ad hoc tdlint and
          + CF_WITH_NCURSES_ETC add check for ncurses pthreads
          + CF_XOPEN_SOURCE add "uclinux" to list of Linux's and use
            _GNU_SOURCE for cygwin headers, tested with cygwin 2.3, 2.5
          + CF__ADD_SHLIB_RULES improve scripting for ldconfig to avoid warning
            messages if no permissions
        + update config.guess, config.sub
        > patches by Aarian P. Aleahmad:
        + modify encodeAttribute() to allow up to 256 color pairs.
        + corrected assignment in scroller_SetPosition(), to show highlighted
        + improve the way attributes are applied to Mentry widgets.
        + improve Entry widget by using newwin rather than subwin, as well
          as passing arguments to callback function.

        + add reRegisterCDKObject()

        + fix a few of the lintian errors in package/debian
        + fix some too-wide tables in manpages, which caused Debian lintian
        + take lower-limit's formatted length into account in slider, etc.,
          (patch by Guido Meusch).
        + make similar repainting-fixes for radio.c and marquee.c
        + fix repainting of Scroll widget when it has no box-outline
          (patch by Manuel Schmitz).
        + add highlight and callbackData members to CDKBUTTON, as well as
          macros for setting/getting the highlight value.  Use the highlight to
          override the default A_REVERSE used in CDK button (patch by Aarian P.
        + fix two bugs in template.c (patch by Aarian P. Aleahmad):
          + in cleanCDKTemplate, fill all of the info string with nulls
          + in setCDKTemplateValue, call cleanCDKTemplate whether or not
            the pointer for newValue passed by the caller was a null.
        + updated configure macros:
          + CF_LIB_PREFIX, CF_WITH_LIBTOOL, and CF_XOPEN_SOURCE, build-fixes
            for OS/2
          + CF_XOPEN_CURSES, improve check, making it define NCURSES_WIDECHAR
            if we happen to be building on a platform (such as OSX) where we do
            not define _XOPEN_SOURCE or _XOPEN_SOURCE_EXTENDED
          + CF_WITH_VERSIONED_SYMS, avoid ncurses build error on ppc64
            architecture the nm tool is reporting _is_missing in Data section
            for ppc64 (by comparison ppc64le is reporting it in Text section)
        + update config.guess, config.sub

        + build ".deb" test-package with ncurses6, using versioned symbols.
        + updated configure macros:
          + modifications from ncurses/xterm to allow alternate to /bin/sh for
            configure-shell, while dropping support for non-POSIX shell such
            as Solaris.
          + updated/integrated changes for versioned symbols from ncurses6.
          + CF_DISABLE_LIBTOOL_VERSION when using -version-info (the native
            libtool mode), get the ABI_VERSION value from $VERSION (which comes
            from CF_VERSION_INFO)
          + CF_ADD_INCDIR fix an infinite loop when the include-directory to be
            added does not exist (Debian #786436)
          + CF_WITH_NCURSES_ETC add --with-screen option
          + CF_SUBDIR_PATH change this to a loop, adding /usr/pkg (NetBSD) and
            /opt/local (Mac OSX)
        + update config.guess, config.sub

        + modify to work with systems where libdir is /usr/lib64
          (patch by Peter Hyman).

        + alter limit-check in setCDKLabelMessage to use the actual window size
          rather than the label-array's latest size (prompted by suggestion by
          Stuart Friedberg).
        + reset label pointer to 0 after freeing it during resizing in
          setCDKLabelMessage (report/analysis by Stuart Friedberg).
        + fix most Coverity warnings, aside from demos using getenv.
        + correct dependency of dpkg/mingw test packages; only "ncurses6" is
          used rather than "libncurses6".
        + change test-packages to use --with-shared rather than cdkshlib hack.
        + add configure options to implement symbol versioning/hiding:
          --with-versioned-syms=X markup versioned symbols using ld
          --with-export-syms=XXX  limit exported symbols using libtool
        + updated configure macros:
          + CF_ACVERSION_CHECK -
            + work around another gratuitous incompatibility introduced in 2.69
            (reported by Ross Burton,
          + CF_ADD_CFLAGS - workaround for ash-shell with Minix 3.2
          + CF_ADD_LIBS -
            + workaround in CF_X_TOOLKIT uses pkgconfig, whose files generally
              are using incomplete dependencies - in turn introducing lots of
              duplication.  filter out the duplicates.
          + CF_CHECK_CFLAGS - workaround for ash-shell with Minix 3.2
          + CF_CURSES_FUNCS -
            + improve workaround for weak-linkage, seems to fix tests with
              NetBSD 6.1
          + CF_GETOPT_HEADER -
            + add NEED_GETOPT_H definition, since that's the only interesting
              special case
          + CF_INTEL_COMPILER -
            + cleanup the -no-gcc option which was leftover from testing - prcs
              does not build with this option.
          + CF_LIB_SUFFIX -
            + it is not necessary or even a good idea to make AIX's shared-library suffixes ".a" -- make it ".so" like everyone else (including the system's shared libraries).
          + CF_MAKEFLAGS -
            + workaround for GNU make 4.0 incompatibility with previous
          + CF_X_ATHENA - add --with-Xaw3dxft option.
          + CF_XOPEN_SOURCE -
            + add case for UnixWare (report/discussion with Mark Ryan).
            + Minix3.2 ifdef's the POSIX.1-2001 functions inside
              _NETBSD_SOURCE, even though it was released 2012-02-29 - appease
              it.  At the same time, turn on the verbose flag to show that most
              platforms need platform-specific define's to get POSIX (sic).
            + for Solaris (tested with gcc/g++ 3.4.3 on Solaris 10 and gcc/g++
              4.5.2 on Solaris 11), suppress the followup check for defining
              _XOPEN_SOURCE because it is not needed, as well as because g++
              4.7.3 (no package, used in Sage for Solaris 10) has some
              unspecified header breakage which is triggered by the duplicate
          + CF_X_TOOLKIT -
            + add workaround for breakage in XQuartz upgrades.
            + add 3rd parameter to AC_DEFINE for autoheader.
        + modify spec-file to work with OpenSUSE's customization of
          _defaultdocdir, which puts documentation for most packages in
        + update config.guess, config.sub

        + fix memory leak in allocListArrays() in scroll.c (patch by Alexander
        + amend changes for alphalist in 2012/03/23, to make its "list"
          parameter read/write so that the caller's copy can be sorted as
        + add man/man2html.ignore, used when generating

        + improve limit-checks in trimCDKWindow() (patch by Tyson Nottingham).
        + updated configure script (further improvments for shared libraries,
          and clang).
        + update config.guess

        + fix dependencies of Debian MinGW packages.

        + add scripts for testing cross-compiles to MinGW.
        + add new scroller.h to CDKHDR variable in, so it will be
          installed (report by Aitor Atuin).
        + updated configure script (further improvments for shared libraries,
          and MinGW).
        + update config.guess, config.sub

        + add a limit-check in drawCDKSwindowList() (patch by Wang Weber).
        + refactor scrolling support from radio.c, scroll.c, selection.c as new
          file scroll.c, making functions from macros which were in cdk_int.h.
          This change also modifies header files to move common fields to a new
          SCROLLER_FIELDS macro - this is a source-compatible change, but not
          binary-compatible (patch by Corentin Delorme).
        + add FreeBSD port-files, for test-builds.
        + add --enable-rpath and --disable-rpath-hack options to configure
        + deprecate the cdkshlib makefile target; it is not available if either
          --with-libtool or --with-shared is given.
        + corrected permissions of cdk5-config script, which was
          not executable; this did not affect packages (cf: 2011/05/17).
        + enable the configure --disable-libtool-version option by defining
          LIBTOOL_VERSION in, so that the soname can be set or left
          to libtool to manage.
        + add configure options for manipulating linker rpath feature.
        + improve configure options for curses variants by reusing macro
          from ncurses-examples
        + add lint rule to makefiles
        + fix warnings from clang
        + adapt configure --with-shared option from ncurses.
        + updated configure script (mostly minor changes for autoheader).
        + update config.guess, config.sub

        + use gmtime instead of localtime in a few places so that calendar
          results are not offset by the hour of the day (report/analysis by
          Alex Charis).
        + add configure option --enable-const, which defines, like
          NCURSES_CONST, the symbol CDK_CONST which can be used to address
          improved const checking while preserving source-compatibility.
        + revise copyChtypeList to correspond with copyCharList
        + use const in cdk_util function prototypes, similar "string" uses
          to improve writable-strings warnings.  Arrays of strings are not
          addressed due to compatibility.
        + change document directory to /usr/share/doc
        + add configure --enable-hdr-subdir to control whether cdk.h should
          be in /usr/include/cdk for example, or in /usr/include.  Make the
          default the latter, standard layout.
        + simplify dpkg script, provide only one library using ncursesw
        + updated configure script macros, many changes for portability.
        + add cdk_test.h to installed headers (Debian #500161).  Resolution
          of that bug report by the way did not actually install the requested
          header file.
        + update config.guess, config.sub

        + provide shlibs file in dpkg scripts.

        + modify calendar widget to allow applications to override the choice
          of the first day of the week, by setting the "weekBase" member of
          the widget.  The calendar_ex example demonstrates this using the
          "-w" option (request by Alex Karev).
        + modify marquee widget so that changing its box flag will cause the
          widget to be resized, e.g., after 2006/05/07 changes which caused the
          example program to not display properly.
        + corrected example for cdk_display.3 manpage (patch by Lo?c
        + modify install rules to allow package scripts to specify that
          libcdkw's header files go into /usr/include/cdkw, and its *-config
          file is named "cdkw-config".
        + autoconf'd the actual name for ctags and etags.
        + modify cdkshlib rule in makefile to eliminate warnings by
        + correct algorithm for leap year in calendar.c (report by Olaf
        + minor formatting of changelog to simplify extraction of credits.

        + add dpkg scripts, for test-builds.

        + drop cdk.spec, adapt 2-package rules from a Fedora spec file in
          the package subdirectory.
        + drop script, use "mkdir -p".
        + updated configure script macros, many changes for portability.
          These changes add "--with-pkg-config" and "--disable-libtool-version"
        + update config.guess, config.sub

        + indent using cdk-indent, from

        + add KEY_ERROR case to each widget to make vERROR events handled by
        + modify scroller_SetPosition() macro to improve scrolling behavior
          (patch by Ricardo Cantu).
        + add vERROR event type to EExitType enumeration, using this in
          setCdkExitType() and the selection widget to handle errors (patch by
          Ricardo Cantu).
        + improve manpage descriptions for writeCharAttrib and
          writeChtypeAttrib (report by Knut Schwichten).
        + add EXTRA_LDFLAGS symbol to makefile rule for creating library,
          in case options are needed (prompted by patch by Timothy Redaelli).
        + modify matrix.c to allow defining empty column or row titles by
          passing a null pointer in the newCDKMatrix() call.  Fix repainting
          of column titles by first erasing the cell (patch by Vincenzo Romano).
        + regenerate configure script with autoconf 2.52 (patched) to make this
          work in non-POSIX locales (report by Mart St??r).
        + updated configure script macros, e.g., to ensure that options are
          appended to $CFLAGS rather than prepended.
        + update config.guess, config.sub

        + modify matrix widget so that if title, row-title, column-title or
          box-border are suppressed, the widget will shrink the matrix rather
          than leave those parts blank (request by Vincenzo Romano).
        + modify matrix_ex example to allow turning off title, column- and
          row-headers using -t, -c and -r options, and changing sense of -S
          option to allow turning off shadows.
        + fix a limit-check in getcCDKObject(), found with valgrind in
        + apply same limit-check to radio.c as from selection.c
        + fix a limit-check in selection.c (report by Robin Lee Powell).
        + add -f/-h options to examples/selection_ex.c to test change to
        + fix a case where focus would be lost on a selection widget if there
          was also a label on the screen, and both were repainted (report
          by Robin Lee Powell).
        + make CDK build/work with MinGW (patch by Gregory Sharp).
        + correct setCDKTemplateValue() logic, which caused the source to
          be repeated (report/patch by Christian Gaida).
        + use prefix makefile-variable in DOCUMENT_DIR expression to allow
          override of prefix at build-time (patch by Saurabh Nix).
        + increase a buffer size in calendar.c (Debian #452401).
        + allow widgets to create empty lists, a feature assumed by Harry
          Brueckner's cpm program (reports by Lars Strand, Harry Brueckner).
        + modify for consistent usage of DESTDIR.
        + add cdk5-config script to install
        + updated configure script, e.g., tests for curses libraries.
        + update config.guess, config.sub

        + reduce the number of calls on touchwin(), which is used mainly for
          cleanup after moving a window.
        + improve focus in alphalist.c and fselect.c to ensure that the
          dependent scroll widget highlights data after losing focus to the
          entry widget (report by Harry Brueckner).
        + add getCDKScrollCurrentItem(), setCDKScrollCurrentItem(),
          getCDKScrollCurrentTop() and setCDKScrollCurrentTop().
        + add getCDKFselectCurrentItem(), setCDKFselectCurrentItem(), use these
          in fselect_ex.c to illustrate how to modify list displayed by
          the fselect widget.
        + add getCDKAlphalistCurrentItem(), setCDKAlphalistCurrentItem(), use
          these in alphalist_ex.c to illustrate how to modify list displayed by
          the alphalist widget.
        + add copyCharList(), copyChtypeList(), lenCharList(), lenChtypeList().
        + fix misformatted cdk_display manpage, which did not show vINT
          and some other data properly (report by Dominik Douville-Belanger).
        + split-out cdk_display.c to eliminate repeated logic in entry.c,
          matrix.c and mentry.c, and implement hidden fields for the matrix
        + correct box-height for marquee widget.  The box parameter was
          previously ignored; this correction will make some applications no
          longer show a box (report by Michael White).
        + modify logic for KEY_DC and KEY_BACKSPACE so the former only deletes
          the current character, and the latter only deletes the previous,
          rather than equating them.  This affects alphalist, entry, mentry,
          template (request by Harry Brueckner).
        + suppress conversion of control characters in getcCDKObject() if the
          character is bound to another.  This was last changed in 2004/8/24
          (report by Harry Brueckner).
        + add check in adjustAlphalistCB() in case the list is empty (report by
          Harry Brueckner).

        + correct makefile dependency so $(MAN_DIR) and $(INCLUDE_DIR) are
          created before headers.sed and manpage.sed, since
          relies on the existence of the destination directory (reports
          by Marek Lipovean, Marcelo Goes, also Gentoo #123374).

        + add some redundant pointer checks, e.g., to entry.c, to avoid core
          dump if one tries building Cdk with NetBSD curses (see lib/32417).
        + split up traverseCDKScreen() to allow customized flavors of that to
          be written in a calling application using the pieces:
          traverseCDKOnce(), setCDKFocusFirst() (request by Jorgen Lundman).
        + restore assignment of selectedItem in setCDKRadioCurrentItem() which
          was dropped in 2005/04/24 (report by Fu Steve X).
        + modify refreshCDKScreen() to ensure that only one widget will have
          focus, i.e., the first which currently has focus, or if none, then
          the first visible one (report by Fu Steve X).
        + use cleanCDKTemplate() consistently in the template widget, ensuring
          that the editing position is updated, and that the proper length is
          used when clearing memory (report by Fu Steve X).
        + modify calendar, radio, scroll, selection widgets so the cursor is
          shown at the beginning of the selected item's row for better
          accessibility (report by Fu Steve X).
        + add null-pointer check in setCDKViewerInfo() in case caller gives
          too-large value for list size (report by Jorgen Lundman).
        + improve traverseCDKScreen() by updating curobj from the
          getCDKFocusCurrent() function (patch by Jorgen Lundman).
        + add setCDKFocusCurrent() (patch by Jorgen Lundman).
        + add configure script option allowing manpage section to be changed
          from "3" to other values such as "3CDK", e.g., for Debian.
        + modify getCDKRadioItems(), getCDKScrollItems() and
          getCDKSelectionItems() to return just the list-size if the list
          pointer is null.
        + correct highlighting of selected line in CDKSelection window when
          the window is scrolled left/right (patch by Jorgen Lundman).
        + various manpage fixes (report by Jorgen Lundman).
        + change manpages to use ".XX" macro to indicate aliases, to make
          the manpage more readable.
        + eliminate duplication between cdk_util.3 and cdk_misc.3 manpages
          (dialogs belong in the former, for instance).
        + modify alphalist, itemlist, radio, selection and swindow to allow
          creating a widget with an empty list (request by Harry Brueckner).
        + modify mentry.c case for KEY_RIGHT so one can move the cursor past
          the end of the string to add new text (report by Harry Brueckner).
        + modify cdk_params.c to use strtol() rather than atoi() to allow
          command-line parameters such as -h 0xffff for the slider examples.
        + modify gen-slider.c to use sprintf/strlen to obtain length of
          formatted integer types since intlen() does not give correct result
          for maximum value of unsigned type.  Modify increment/decrement logic
          to take into account unsigned types (report by Keith J Outwater).
        + modify cli examples to exit with 255 when reporting an error rather
          than a -1 which is generally not portable.
        + fix several memory leaks exposed by valgrind in the example programs.
        + add configure --disable-leaks option to look for ncurses' debug
          function _nc_free_and_exit(), using that to help with memory leak
          checking.  This uses a new header <cdk_test.h> which will not be
          installed, since it is used only for testing in the build tree.
        > patches by Phuah Yee Keat:
          + add an IsVisibleObj attribute to all CDK objects so the caller can
            set some object to be invisible, and calling refreshCDKScreen
            after that won't display it again, it enables one to dynamically
            show or hide a particular widget based on user actions.
            Note: this changes alignments in many of the structs from 5.0,
            requiring an ABI bump.
          + improve string length-computation in entry.c, allowing a 1-char
            field, and also allowing movement past end of text with KEY_END.
          + add setCDKRadioSelectedItem() and getCDKRadioSelectedItem().
          + fix some memory leaks by adding cleanCDKObjBindings() into all of
            the _destroyXXX() functions, modify cleanCDKObjBindings() to free
            and null (obj)->bindingList.
        + fix makefile for installing manpages when building outside of the
          source directory (patch by Mike Castle).
        + remove obsolete lsm file
        + review/correct some functions listed in manpages but not implemented,
          and the reverse (report by Rajat Das).
        + add setCDKMatrixCB() (report by 'zam).
        + updated configure script (mostly fixes related to CF_XOPEN_SOURCE).
        + update config.guess, config.sub

2005/04/24 - T.E.Dickey <>
        + bump major version to 5 (overdue).
        + add built-in bindings for '<' and '>' to KEY_HOME and KEY_END
          for radio.c, scroll.c, selection.c, swindow.c and viewer.c
          (patch by Thorsten Glaser).
        + add manpages for some of the non-widget utilities:
          cdk_compat.3, cdk_objs.3, cdk_params.3 and cdk_util.3
        + correct drawCDKTitle, which did not account for border-size in
          vertical position of titles.
        + change addCDKScrollPosition() to not set the current item to the
          beginning of the list.
        + add insertCDKScrollPosition(), to allow insertions before the current
        + add a check in scroll.c to prevent overflow if the list is empty.
        + modify deleteCDKScrollItem() to ensure the current item is on a
          valid position after the deletion.
        + modify setCDKScrollPosition() to avoid scrolling if the target is
          already on the screen.
        + make similar simplifications to radio.c and selection.c as in scroll.c
        + simplify and make consistent bookkeeping in scroll.c using new
          utility functions.  As a result, addCDKScrollItem() and
          deleteCDKScrollItem() update the size of the scrollbar toggle (report
          by Fu Steve X).
        + improve resequence function from 2005/03/23 by preserving attributes
          in the target chtype array.
        + modify scroll_ex.c, binding 'a', 'i' and 'd' to add, insert and
          delete lines respectively (adapted from example by Fu Steve X).
        + modify makefile so that cdk_config.h (which is generated by the
          configure script) is not removed by "make clean".
        + modify makefile to work around limitation of Solaris make program
          which was confused by a header dependency in a "::" line (report by
          Fu Steve X).
        + modify makefile and scripts for configure --srcdir (adapted from
          patch by Mike Castle).

2005/03/23 - T.E.Dickey <>
        + modify deleteCDKScrollItem() to resequence numbers (request by Fu
          Steve X).
        + cleanup memory allocation in scroll.c, make addCDKScrollItem
          reallocate the scroll widget's arrays (report by Fu Steve X).

2005/03/08 - T.E.Dickey <>
        + correct logic of deleteCDKScrollItem(), which did not preserve the
          final null-pointer at the end of the list (report by Fu Steve X).
        + add isCDKOBjectBind() to simply check if the given object/key
          combination is bound, rather than invoke the bound function.
        + modify binding.c so that all of the functions share the same logic
          for mapping the given object to the bindable object, e.g., the entry
          widget for alphalist and fselect composite widgets.  In particular,
          checkCDKObjectBind() and getcCDKObject() did not use the same binding
        + correct initialization of traverseCDKScreen(), which required two
          tab keypresses to make the first traversal (report by Fu Steve X).
        + updated configure script checks for _XOPEN_SOURCE, etc.
        + update config.guess and config.sub
        + correct prototype shown in manpage for setCDKScroll() (report by
          Stefan Heimann).
        + correct equivalent expressions in setCDKRadioItems() and
        + correct expression in setCDKScrollItems() which caused the updated
          window to shrink by 2 lines (report by Stefan Heimann).

2004/12/24 - T.E.Dickey <>
        + correct expression in CDKCalendarField from 2004/08/31 changes, which
          caused it to show only 6 days/week, broken by a fix for
          demos/appointment (reports/patches by Ryan Flannery, Greg Martin).

2004/11/07 - T.E.Dickey <>
        + correct top-level to remove libtool's auxiliary files
          in the "make clean" rule.
        + amend simplification of writeCharAttrib(), ensuring that attributes
          passed in the chtype-string are not ignored (report by Benoit

2004/10/04 - T.E.Dickey <>
        + correct logic of writeBlanks(), which did not check for malloc
          failure and made an unnecessary call to freeChar().
        + simplify draw.c a little by using writeCharAttrib() and
          writeChtypeAttrib() to implement writeChar() and writeChtype().
        + revert 2002/07/27 change that used waddchnstr() in writeChtype(),
          since it does not render control characters (report by Mike Leib).
        + fix an infinite loop in viewer.c when displaying control characters
          such as form-feed.

2004/08/31 - T.E.Dickey <>
        + add a simple compatibility header (cdk_compat.h), which can be
          put in an application's include-path when compiling old applications
          against new/old Cdk.
        + updated libtool ABI to 2.0.0 since several items are added to CDKOBJS,
          as well as cleanup of slider- and scale-header templates.
        + add check for ANSI compiler, needed for example with HPUX 10.20.
        + ifdef'd out nonfunctional saveData and refreshData methods of entry
          and itemlist widgets.
        + moved functions for setting background color or attribute into
        + moved pre- and post-processing data into CDKOBJS, changing the
          functions that set those per-widget into macros using cdk_objs.c
        + modify scale and slider widgets to allow the user to directly modify
          the value by typing over it (request by Keith Outwater).
        + add slider widgets for types float, unsigned.
        + add scale widgets for types double, unsigned.
        + add script, and templates (e.g., gen-scale.c,
          gen-scale.h) to allow easy generation of scale and slider widgets of
          various types.  Use this to replace the existing CDKSCALE, CDKFSCALE,
          CDKSLIDER widgets (discussion with Keith Outwater).
        + adapt fix from dialog for porting getmaxx(), etc., to systems such
          as HPUX which do not provide these legacy definitions.
        + remove duplicate vinstall.c from examples directory.
        + modify install scripting to translate generated names in cdk_config.h
          to add "CDK_" prefix to most, reducing name-pollution.  These names
          are used to allow applications to compile against the Cdk header
          files, but are otherwise of no general interest.  In particular,
          "PACKAGE" is no longer conflicting (report by Phuah Yee Keat).
        + add earlyExit member to CDKOBJS, using this to implement a method
          for applications to specify whether the widget's exitType should
          be modified after calling checkCDKObjectBind(), and what value
          (discussion with Bernhard Walle, comparing with NetBSD variation).
        + correct logic in calendar widget for decrementing day- and
        + modify treatment of exitType field so it is only set to vESCAPE_HIT
          if an escape character was received.  Hide most of the internal
          details of exitType, making it available as an object value (but
          retaining the widget field to ease upgrading old applications).
        + implement shadow option for newCDKMarquee().
        + rewrite activateCDKMarquee(), eliminating an infinite-loop bug
          found in traverse_ex.c, as well as making it work properly with and
          without box-outline.
        + modify deleteCursesWindow() to call eraseCursesWindow(), so that
          deleting an object will also erase it, following the various manpages
          comment about removing the object from the screen (report by
          Mukovoz I.S.).
        + correct positionCDKObject() for CDKSCREEN's which do not happen to
          be the same size/shape as stdscr.
        + change layout of menus to account for parent window's origin
          since subwin() since uses absolute screen position (report by "Anna"
          w/o a return address).
        + correct off-by-one in positionCDKObject() which prevented user from
          reaching the right- and bottom-margins.
        + fix a few limits on sprintf's involving strings.
        + eliminate fixed array limit MAX_OBJECT in CDKSCREEN.
        + use CTRL() macro consistently in preference to CONTROL().
        + remove delwin(stdscr) from example programs since it is both unneeded
          and nonportable.
        + use EXIT_SUCCESS and EXIT_FAILURE consistently in example programs.
        + remove all KEY_xxx symbols which are in X/Open curses from curdefs.h
        + remove all ACS_xxx symbols from curdefs.h
        + remove all A_xxx symbols from curdefs.h
        + add/use isChar() and CharOf() macros to get rid of A_CHARTEXT usage.
        + fix menus to allow them to scroll if there are too many entries to
          fit on the screen.
        + collect most uses of touchwin/refresh into new function
        + clear background of menu windows, in case they are drawn over another
        + correct length of title in menu if more than one is placed on the
          right side of the screen.
        + add getcCDKBind() function, to which keys can be bound for simple
          translation of the inputs via getcCDKObject().  Use this in
          examples/traverse_ex.c to bind F1 to menu.
        + eliminate mapChtype() function, since it could conflict with curses'
          definitions.  Use the given key value instead, since it is always
        + use KEY_MAX in preference to MAX_BINDINGS symbol.
        + eliminate internal use of literal backspace, DEL, tab, newline and
          carriage-return constants, etc., by mapping them to KEY_BACKSPACE,
          KEY_DC, KEY_ENTER, etc., in getcCDKObject().
        + modify examples and demos to read input using getcCDKObject(), to
          solve problems with stdscr refresh overwriting the widgets.
        + modify matrix.c and menu.c to read input using getcCDKObject(), like
          all of the other widgets.
        + rewrote examples/traverse_ex.c to use menus to select the left,
          center and right widgets used for demonstrating traversal.
        + modify traversal to update object focus properly if a menu action
          removes or moves the object associated with the focus.
        + cleanup menu in traverse.c if escape character is used to cancel it.
        + move curs_set() calls out of focus/unfocus functions, into traverse.c
        + remove the SIGBUS/SIGSEGV handler, since it is redundant.
        + updated configure script, e.g,.  macros CF_ADD_CFLAGS,
        + update config.guess, config.sub
        > fixes for fselect.c by ewigg (Ed Wigg):
        + add a range check to ensure that filename completion at the end of
          the list does not reference past the end of the list.
        + correct the value returned from filename completion (fixes in
          2002/07/27 mistook an assignment that removed the last character
          of the result - it is actually used to trim the "/", "@" or similar
          character from the displayed filename).
        + remove an unnecessary if statement.
        > patches by Phuah Yee Keat:
        + enable focus in mentry.c, radio.c
        + implement unfocus in entry.c
        + implement focus/unfocus in mentry.c, template.c
        + add setCDKRadioCurrentItem() and getCDKRadioCurrentItem().
        + improve entry.c:  When the user types until the last character, do
          not shift the cursor to one character beyond the end of the maximum
          value allowed in the field, that will create an extra '.' that will
          give the user an impression that he can still enter more characters,
          when he actually can't.
        + fix two core dumps with Solaris curses in scroll.c:
          + On solaris curses, just pressing the "down" key on a scroll list
            will coredump, on certain sizes of the scroll list.  On my
            fullscreen test, it will coredump on any number of items unless if
            the number of items is a multiple of 5.  I assume that it's because
            that under certain conditions, the togglePos actually exceeds the
            boundary at the end of the scroll bar.  Does not happen in ncurses.
          + On solaris curses, press 'G' will coredump.
            Does not happen in ncurses.
        + make wording in COPYING consistent with other fixes from 1999/05/15
          (report by Ahmad Attia).

2003/12/10 - T.E.Dickey <>
        + bump version to 4.9.11 (corresponding source from Mike Glover added
 to tarball; no other source changes were made).
        + rename "" to "install-sh" to work around bugs in certain
        + allocate marker[] array in calendar dynamically.  Reduce
          corresponding array limits to reasonable values.
        + add getCDKCalendarMarker()
        + correct seconds in calendar's return value.
        + eliminate fixed array limits from dialog widget.
        + eliminate fixed array limits from label widget.
        + eliminate fixed array limits from selection widget.
        + eliminate fixed array limits from viewer widget.
        + eliminate fixed array limits from buttonbox widget.
        + eliminate fixed array limits from matrix widget.  Passing around
          1000x1000 arrays was inefficient, and caused core dumps in the Perl
          binding for this widget.
        + correct one of the attrbox() calls in drawCDKMatrixCell(), which used
          a left-tee where a right-tee was needed (report by William L Davis).
        + add setCDKMatrixCells(), redefining setCDKMatrix() as a macro to
          call it.
        + add cleanCDKMatrixCell().
        + correct position for right-aligned menus, which was off by one from
          2003/11/30 changes (report/patch by William L Davis).

2003/12/01 - T.E.Dickey <>
        + correct logic in char2Chtype() for <#UL>, <#UR> and <#LR>, broken in
          1999/06/05 (report by William L Davis).

2003/11/30 - T.E.Dickey <>
        + remove borderSize parameter from alignxy().
        + modify all widgets to account for borderSize consistently, allowing
          one to display a widget that uses the full screen size (report by
          Phuah Yee Keat <>).
        + add cdk_params.c, use this to simplify cli programs and add getopt
          processing systematically to the demos and examples.
        + correct an off-by-one in baseName() that would return the slash
          character in the result.
        + add setCDKCalendarMonthsNames() and setCDKCalendarDaysNames (patch
          by Stanislaw Bierowka <>).
        + split-out several files from draw.c since they are wrappers for
          widgets rather than drawing functions.  Doing this reduces the
          executable size:  get_index.c, get_string.c, popup_dialog.c,
          popup_label.c, select_file.c, view_file.c and view_info.c
        + eliminate static MAX_LINES limit from graph-widget values.
        + eliminate static MAX_LINES limit from widget titles.
        + updated configure script, improved checks for curses functions.
        + update config.guess, config.sub

2003/11/24 - T.E.Dickey <>
        + display a "processing..." message in setCDKViewerInfo while building
          the internal data structures (request by Mike Leib).
        + modify viewer widget to compute the total number of lines to display,
          making it independent of the listSize parameter.
        + modify viewer widget to accept a negative listSize parameter,
          making it count the length of list[], ending with a null.
        + modify viewer_ex, adding -f, -i and -l options.  The -f option
          bypasses the fselect widget, specifying the filename directly.
          The -i option tells whether to interpret embedded markup, and
          the -l option tells viewer_ex to load the file using an embedded

2003/11/19 - T.E.Dickey <>
        + modify searches in viewer widget to allow for overlapping partial
          matches, e.g., if the pattern is "00A", it will find the match in
          a line consisting of "000A".  Also corrected logic to matches can
          extend to the end of a line.
        + add 'N' to viewer to implement reverse search.
        + modify ':' command in viewer to start with current line number
          rather than 0.  Also adjust the size of the scale widget to allow
          for very large line numbers, e.g., more than 5 digits.
        + remove an obsolete limit-check in viewer widget that limited view
          to 4996 lines, fix a few off-by-one indices.

2003/11/18 - T.E.Dickey <>
        + correct viewer widget, making it interpret tabs and non-printing
          characters for the non-interpreted file viewer case.  The curses
          library cannot display control characters in chtype's.
        + add cleanCDKViewer().
        + rename a few .itemCount members to .listSize for consistency.
        + eliminate static list-size limit MAX_LINES from swindow, viewer
          widgets.  Renamed .info, .infoPos, .infoLen to .list, .listPos and
          .listLen members to be consistent with other widgets.

2003/11/16 - T.E.Dickey <>
        + suppress "." from fselect listing, since it was not useful.
        + eliminate static list-size limit MAX_ITEMS from alphalist, fselect
          itemlist, radio, scroll and selection widgets (request by Mike Leib).
        + change functions that set line-drawing characters to macros, mapping
          those to method calls in CDKOBJS.
        + add setCDKEntryBox().
        + add setCDKMarqueeBox() and getCDKMarqueeBox().
        + add setCDKMatrixBox() and getCDKMatrixBox().
        + adjust some title lines to be offset by the borderSize rather than
          a hardcoded "1" (report by Max Mikhanosha).
        + strip trailing newlines from text read via pipe in execCDKSwindow(),
          lost in original cleanup (report by Max Mikhanosha

2003/04/18 - T.E.Dickey <>
        + for variants built with ncursesw and pdcurses, name the libraries
          "-lcdkw" and "-lcdkX" respectively.
        + add a missing assignment to store the result in _injectCDKFScale()
          (report by Barry Davis <>).
        + fix missing definition of mvwhline(), mvwvline() in pdcurses.
        + add a .c.i rule in top-level makefile
        + fix uninstall rule, was missing a line-continuation.
        + fix several prototypes in manpages which did not match header files
          (reported by Lucas Gonze <>).
        + fix a few compiler warnings, e.g., by parentheses in
          drawCDKEntryField() and drawCDKMatrixCell().
        + updates to configure script macros
          + add --with-ncursesw option.
          + add --with-XawPlus option.
          + add --with-curses-dir option.
          + modify CF_DISABLE_ECHO to make libtool quiet also.
          + use AC_PROG_PATH to find libtool; show the version which is found.
          + change sed delimiter to '%' to accommodate AFS.
          + improve/correct CF_HEADER_PATH, CF_LIBRARY_PATH to cover special
            cases of ncurses/ncursesw configurations.
          + change ordering of options in CF_ADD_CFLAGS, CF_ADD_CPPFLAGS,
          + workaround gcc 3.x defects in CF_ADD_INCDIR.

2002/08/09 - T.E.Dickey <>
        + fix entry, matrix, template, viewer widgets to display 8-bit input
          characters (reported by Bernhard Walle <>).
        + modify manpage install to create links for each function name listed
          in the NAME section.
        + correct cursor location in dialog's radio-box, which was left on the
          separator line (reported by Peter Farley <>)

2002/07/27 - T.E.Dickey <>
        + several changes to make destroyCDKScreenObjects() and
          destroyCDKScreen() actually work (needed for perlcdk):
          + record all objects and screens created/destroyed, in cdkscreen.c
          + reimplement destroyCDKObject() by a function _destroyCDKObject(),
            which first does an erase for the given object, then calls the
            destroy method, and finally frees the object.
          + add a check in each erase-method to ensure that the object is still
        + add check in setCDKGraphValues() to ensure that X and Y scales are
          nonzero, since they are used as denominators.  This makes perlcdk's
          graph example work.
        + add configure check for curses feature which would allow one to move
          a subwindow, or (in the case of NetBSD curses) at least compile.
        + add configure check and fallback for addchnstr() to accommodate
          NetBSD's partial implementation of curses.
        + move version information to VERSION file.
        + add --with-libtool configure option
        + make most wgetch() calls use the object's inputWindow via the
          getcCDKObject() function.
        + improve type-checking and array-limits in cdkscreen.c
        + remove cdktype member from CDKSCREEN since it is redundant.
        + eliminate several fixed-buffers with new function writeBlanks().
        + interpret home/end keys in entry widget.
        + warn about special keys such as insert which are not recognized in
          alphalist, entry, matrix, mentry, template (it was using the low 8
          bits of those, inserting that).
        + rewrote/simplified dirName().
        + rewrote/simplified baseName().
        + eliminate fixed-size buffers in fselect.c
        + correct a couple of places where fselect.c freed constant memory.
        + correct an unterminated string in fselect.c tilde-expansion, and use
          $HOME if no account name is given.
        + simplified several functions using mvhline(), mvvline() and
        + add vFSCALE as a valid object type in cdkscreen.c
        + modify moveCursesWindow(), which did not work with ncurses after
          2000/9/15 changes to use mvwin() in preference to directly modifying
          the _begx/_begy members of WINDOW.  That made position_ex not work.
          The change was originally for NetBSD's curses implementation which
          does not move derived windows properly anyway.
        + simplify calls to moveCursesWindow() by moving null-pointer check
          inside that function.
        + change tab-expansion in char2Chtype() to expand based on the current
          length of the string rather than always to 8 columns.
        + correct limit-checks in stripWhiteSpace()
        + interpret back-tab in buttonbox.c and dialog.c inject-methods for
          symmetry with tab.
        + corrected return-values of button, matrix, scale widgets to match
          documentation as well as to conform with other widgets.
        + reorganized inject methods (which may return data of different types)
          to return the actual data in an area of the widget, and defined macros
          to preserve source-compatibility.
        + rewrote initCDKColor() to check if color is available before trying
          to initialize it, and to use the terminal's actual number of colors
          in making color pairs.
        + use 2-digit fields in bind_ex.c for time, date.
        + modify matrix.c to add borderSize before the column titles, to
          match the change to box layout.
        + modify matrix_ex.c to consistently center row-titles.  Some were
          centered, some were right- and some left-justified.  The change to
          justifyString() produced an odd effect.
        + add functions

        > patches by Tim Moloney:
        + added a setCDKxxxBackgroundAttrib() function to all the widgets.
          This function takes a chtype.  The setCDKxxxBackgroundColor() still
          exists and converts from a character string to a chtype, but it now
          calls the new function to eliminate duplicate code.
        + fix minor bugs in marquee_ex and radio1_ex.
        + fix an off-by-one error in the dialog widget when it is not drawing
          its box.  The buttons were displayed one line too high.
        + add object type to each widget.
        + correct _drawCDKEntry(), which did not account for whether a box was
          used when computing layout.
        + change moveCDKButton() from a function to a macro using
        + add functions

        > integrated/adapted changes by Grant Edwards:
        + make the destroy function in each widget a method in CDKOBJS.
        + make the inject function in each widget a method in CDKOBJS.
          (this was incomplete, and did not provide for different return-types)
        + add focus, unfocus, refreshData, saveData methods and supporting
          data to CDKOBJS (not all widgets implement these methods).  See
          entry.c, itemlist.c, selection.c for example.
        + store a borderSize value in CDKOBJS for each widget, which is used to
          reserve space for a box/border around each widget if the Box
          parameter is true when creating the widget.  Several related changes
          also made, including modifying the alignxy() interface to add
          a borderSize parameter.
        + modify justifyString() to not subtract 1 on each side, since that
          is generally assumed to be done to compensate for boxes drawn around
          the text.
        + change drawCDKItemlistField() to add a highlight parameter.
        + change the label window to a subwin() in entry.c
        + hide cursor while in popupLabel() function.
        + simplified scroll.c, a little.
        + add files
        + added functions:
        + removed these functions:

2002/04/30 - T.E.Dickey <>
        + correct parsing of <I=xx> in char2Chtype() where "xx" contains digits
          (patch by Robert R Landon <>).
        + updated cdk.spec for RPM (patch by Vladimir Kondratiev
        + introduce CDKINCLUDES ifdef's so that any of the header files may
          be included separately.  Previously only <cdk.h> could be included
          due to interdependencies among the headers.
        + add some #undef's to cdk.h in case curses.h includes term.h producing
          a symbol conflict (reported by Kenneth Pronovici
        + miscellaneous updates to configure script, including workarounds for
          incompatibilies in autoconf 2.5x.

2002/02/25 - T.E.Dickey <>
        + add cdk_process manpage.
        + remove redundant description of bindCDKObject() from several manpages.
        + add rcs identifiers to header files.
        + add ifdef's in each header file for C++, to make the C externs link
          properly without requiring the application to declare them (reported
          in comp.unix.programmer newsgroup by <>).
        + correct typo in template.c introduced in 2000/01/16 substitutions
          to use macro isPlateChar() which made templates not work with
          interspersed punctuation (reported by jiny <>).

2001/12/30 - T.E.Dickey <>
        + remove some redundant wrefresh() calls in various widgets.
        + correct an uninitialized pointer in cli/cdkalphalist.c
        + modify cli/samples/ to check for non-empty return from
          the selection rather than hang attempting to find that account.
        + remove -B option from cli/samples/ since it should have a
          value, but does not.
        + corrected some display-limits in writeChtype() and
        + modify CDKreadFile() to trim newlines from file as read, making it
          more like the original readFile().  This is needed to prevent the
          trailing newlines loaded into label widgets from clearing the rest
          of the line when they are drawn.
        + add floatized-scale widget (Lutz Mueller <>).
        + modify script to remove gzip'd versions of the manpages
          just in case some were previously installed that way, i.e., by
          hand.  The gzip'd version would be found instead of the new install.
          (prompted by a report by Ron Poulton <>).
        + correct typo in uninstall rule for manpages which made
          "make installCDKHeaderFiles" remove the manpages after installing.

2001/04/21 - T.E.Dickey <>
        + add an uninstall rule.
        + move the installed documentation to /usr/local/doc/cdk (it does not
          belong in /usr/local/include/cdk).
        + modify install rules so that references to header files such as cdk.h
          are transformed to <cdk/cdk.h>, which matches the actual install
          location (reports by Pawel Gajda <>, Carlos Alberto
          Pereira Gomes <> and Ron Poulton
          <>, who found that Cdk's menu.h conflicts with
          ncurses' menu.h when building the Perl interface).
        + correct cli examples' callbacks, which did not return a value.
        + update config.guess and config.sub
        + modify CF_CURSES_LIBS to allow build with SunOS 4.x 5lib curses.
        + split out CF_CURSES_CPPFLAGS from CF_CURSES_LIBS to allow an interim
          check if the curses implementation is really ncurses.
        + modify some configure script macros to work when the curses header
          file is not <curses.h>, e.g., <ncurses.h>.
        + modify configure script macros to avoid using changequote(), which
          is broken in the current autoconf alpha versions, e.g., 2.49d.
        + change configure script macros to use $CPPFLAGS consistently for
          preprocessor options, and $CFLAG for other compiler flags.
        + modify several configure script macros which checked for $GCC, to
          ensure it is not actually the compiler name versus an existence

2001/01/06 - T.E.Dickey <>
        + reverted part of 1999/6/5 change, allowing callback functions to
          return a value.  Note that this makes PROCESSFN and BINDFN use
          the same prototype (report by Ian Eure <>).
        + SCO OpenServer does not define S_IFSOCK

2000/09/23 - T.E.Dickey <>
        + change literal 48's in calendar.c to '0'.
        + eliminate nonprinting/nonspace characters using macro CTRL().
        + integrated new examples into makefiles.
        + use raiseCDKObject_ex.c and lowerCDKObject_ex.c to debug/fix the
          raiseCDKObject() and lowerCDKObject() functions which shared the same
          defect in 4.9.9 (the code did not properly update two objects, but
          modified screenIndex of one twice).
        + modified cli programs to work with CDKreadFile(), CDKsplitString()
          and CDKcountStrings() since readFile() and splitString() are not
          provided in this version.

        > reviewed/integrated changes from Mike Glover's 4.9.10 (August 2000):
        + add examples/raiseCDKObject_ex.c, examples/lowerCDKObject_ex.c
        + add cli subdirectory
        + modify itemlist.c to make labels one cell wider.
        + did not use changes to cdkscreen.c (see 1999/5/15).
        + did not use casts to unsigned char, since those are incorrect
          (they are casting chtype's which are wider than a char).

2000/09/15 - T.E.Dickey <>
        + add/use configure check for some curses functions/macros which use
          internals of the WINDOW struct, which is opaque on NetBSD (patch by
          Simon Burge <>).
        + update autoconf scripts (config.guess, config.sub, macros
          CF_CURSES_LIBS, CF_UPPER, CF_X_ATHENA) to my 20000819 autoconf patch.
        + revised man-pages:  reorder so that functions are listed
          alphabetically within the NAME, SYNOPSIS, DESCRIPTION sections, the
          prototypes shown only in the SYNOPSIS section (and formatted for
          readability), remove excess wording and convert as needed to use tbl.

2000/08/28 - T.E.Dickey <>
        + add cdk_position.3 man page.
        + rename cdk_cdk.3 to cdk.3

2000/08/20 - T.E.Dickey <>
        + remove obsolete comments from manpages telling users to define
          NCURSES for that library.  The configure script creates cdk_config.h,
          which has settings as needed.

2000/08/20 - T.E.Dickey <>
        + fix some array-overruns in viewer.c if it happens to load a binary
        + fix symbol conflict with newkey in waitCDKLabel(), as well as keycode
          truncation in that function.

2000/06/28 - T.E.Dickey <>
        + add RPM spec-file (patch by Wai-Sun Chia <>).
        + add Linux-specific makefile rule for generating a shared library
          (patch by Pawel Gajda <>).
        + eliminate fixed-length lists assumed in getDirectoryContents() using
          new function CDKgetDirectoryContents().
        + eliminate fixed-length lists assumed in readFile() using new function
        + remove unused substring().
        + use qsort-wrapper sortList() instead of quickSort().
        + change to avoid having configure script check for X
          libraries as a side-effect of adding tests for PDCurses.
        + updates to configure script macros:
        + update config.guess, config.sub

2000/04/09 - T.E.Dickey <>
        + modify newwin() call in subwindow_ex.c to account for actual screen
          size rather than assuming 25 lines (reported by Gary Funck
        + add CF_X_ATHENA and CF_X_TOOLKIT configure macros for --with-pdcurses
          option, needed if the Xcurses or dependent libraries are static
          rather than shared.
        + correct typo in configure check for HPUX 11.x (reported by Bjorn
          Helgaas <>).

2000/02/18 - T.E.Dickey <>
        + add case for HPUX 11.x use of cur_colr library (reported by
          Bjorn Helgaas <>).
        + add configure option --with-pdcurses, to link with the X11 version
          of PDCurses.
        + eliminate quoted includes, in favor of bracketed form.
        + ifdef'd limits.h, moving that into cdk.h with a fallback definition
          for INT_MIN and INT_MAX.
        + minor fixes for building with SunOS 5lib version: configure check
          for getopt variables, correction to demos/

2000/01/17 - T.E.Dickey <>
        + add lib-prefix and executable suffix checks to configure script for
          port to OS/2 EMX.
        + add configure check for lstat().

2000/01/16 - T.E.Dickey <>
        + drop dependency on usleep(), using napms() which is standard with
          SVr4 curses.
        + rewrote mode2Char(), making it table-driven and splitting out
          mode2Filetype() to make porting simpler, by putting ifdef's for
          S_ISSOCK in one place only.
        + use new freeCharList() to reduce clutter.
        + eliminate casts of NULL, to reduce clutter.
        + change several uses of control characters in source to use CONTROL()
        + correct format of date shown in bind_ex.c
        + correct nonstandard getcwd() usage in fselect.c
        + change demo and example makefiles to not strip executables.
        + modify demo/ to work around Solaris' make program which
          does not process ".c" rule as desired.

2000/01/08 - T.E.Dickey <>
        + fix compiler warnings with Solaris cc.

1999/12/19 - T.E.Dickey <>
        + updated email and url for Mike Glover based on 4.9.9 version dated


 devel/cdk/DESCR            |    9 +-
 devel/cdk/Makefile         |   19 +-
 devel/cdk/PLIST            |  976 ++++++++++++++++++++++++++++++++++++++++++++-
 devel/cdk/distinfo         |   17 +-
 devel/cdk/patches/patch-aa |   67 ---
 devel/cdk/patches/patch-ac |   29 -
 devel/cdk/patches/patch-ad |   13 -
 devel/cdk/patches/patch-ae |   13 -
 devel/cdk/patches/patch-af |   12 -
 devel/cdk/patches/patch-ag |   13 -
 devel/cdk/patches/patch-aj |   44 --
 11 files changed, 986 insertions(+), 226 deletions(-)

diffs (truncated from 1351 to 300 lines):

diff -r ee3d6b372222 -r 10da942c93d5 devel/cdk/DESCR
--- a/devel/cdk/DESCR   Thu Feb 21 09:49:32 2019 +0000
+++ b/devel/cdk/DESCR   Thu Feb 21 09:59:30 2019 +0000
@@ -1,5 +1,4 @@
-CDK is a widget set developed on top of the basic curses
-library. It contains 21 ready to use widgets. Some which
-are a text entry field, a scrolling list, a selection list,
-a alphalist, pull-down menu, radio list, viewer widget,
-dialog box, and many more.
+CDK is a widget set developed on top of the basic curses library.  It
+contains a large number of ready to use widgets, including a text entry
+field, a scrolling list, a selection list, a alphalist, pull-down menu,
+radio list, viewer widget, dialog box.
diff -r ee3d6b372222 -r 10da942c93d5 devel/cdk/Makefile
--- a/devel/cdk/Makefile        Thu Feb 21 09:49:32 2019 +0000
+++ b/devel/cdk/Makefile        Thu Feb 21 09:59:30 2019 +0000
@@ -1,22 +1,19 @@
-# $NetBSD: Makefile,v 1.38 2017/08/01 17:40:09 wiz Exp $
+# $NetBSD: Makefile,v 1.39 2019/02/21 09:59:30 wiz Exp $
-DISTNAME=              latestCDK
-PKGNAME=               cdk-4.9.9
-PKGREVISION=           5
+DISTNAME=              cdk-5.0-20180306
+PKGNAME=               ${DISTNAME:S/5.0-/5.0./}
 CATEGORIES=            devel
 EXTRACT_SUFX=          .tgz
 COMMENT=               Curses Development Kit
-WRKSRC=                        ${WRKDIR}/${PKGNAME_NOREV}
+WRKSRC=                        ${WRKDIR}/${DISTNAME}
 USE_NCURSES=           yes # uses ncurses internals
 USE_LIBTOOL=           yes
 GNU_CONFIGURE=         yes
-USE_TOOLS+=            autoconf213
 BUILD_TARGET=          default
@@ -24,8 +21,8 @@
 INSTALLATION_DIRS=     share/examples/cdk
-       cd ${WRKSRC}; autoconf
+# put Cdk's include-directory at the front to avoid conflict with menu.h
+CFLAGS+=               -I./include
        for file in ${WRKSRC}/examples/*.c ${WRKSRC}/examples/Makefile; do \
diff -r ee3d6b372222 -r 10da942c93d5 devel/cdk/PLIST
--- a/devel/cdk/PLIST   Thu Feb 21 09:49:32 2019 +0000
+++ b/devel/cdk/PLIST   Thu Feb 21 09:59:30 2019 +0000
@@ -1,16 +1,27 @@
-@comment $NetBSD: PLIST,v 1.3 2009/06/14 17:48:37 joerg Exp $
+@comment $NetBSD: PLIST,v 1.4 2019/02/21 09:59:30 wiz Exp $
@@ -22,21 +33,79 @@
@@ -46,6 +115,10 @@
@@ -54,8 +127,891 @@

Home | Main Index | Thread Index | Old Index