]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 5.2 v5.2
authorThomas E. Dickey <dickey@invisible-island.net>
Sat, 21 Oct 2000 04:42:11 +0000 (00:42 -0400)
committerThomas E. Dickey <dickey@invisible-island.net>
Sat, 21 Oct 2000 04:42:11 +0000 (00:42 -0400)
207 files changed:
ANNOUNCE
Ada95/gen/Makefile.in
Ada95/gen/gen.c
Ada95/gen/terminal_interface-curses-forms.ads.m4
Ada95/gen/terminal_interface-curses-menus.ads.m4
Ada95/samples/Makefile.in
Ada95/samples/sample-explanation.ads
Ada95/samples/sample-text_io_demo.adb
Ada95/samples/sample.adb
Ada95/src/Makefile.in
Ada95/src/terminal_interface-curses-text_io.adb
Ada95/src/terminal_interface-curses.adb
INSTALL
MANIFEST
Makefile.glibc
Makefile.in
Makefile.os2
NEWS
README
README.emx
aclocal.m4
announce.html.in
c++/Makefile.in
c++/cursesf.cc
c++/cursesf.h
c++/cursesp.cc
c++/cursesw.cc
c++/cursslk.cc
c++/internal.h
config.guess
config.sub
configure
configure.in
convert_configure.pl
dist.mk
doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm
doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm
doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm
doc/html/ada/terminal_interface-curses-forms__adb.htm
doc/html/ada/terminal_interface-curses-forms__ads.htm
doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm
doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm
doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm
doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm
doc/html/ada/terminal_interface-curses-menus__adb.htm
doc/html/ada/terminal_interface-curses-menus__ads.htm
doc/html/ada/terminal_interface-curses-text_io__adb.htm
doc/html/ada/terminal_interface-curses__adb.htm
doc/html/ada/terminal_interface-curses__ads.htm
doc/html/announce.html
doc/html/man/captoinfo.1m.html
doc/html/man/curs_color.3x.html
doc/html/man/curs_extend.3x.html
doc/html/man/curs_scanw.3x.html
doc/html/man/curs_trace.3x.html
doc/html/man/default_colors.3x.html [moved from doc/html/man/dft_fgbg.3x.html with 97% similarity]
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/menu.3x.html
doc/html/man/menu_attributes.3x.html [moved from doc/html/man/menu_attribs.3x.html with 100% similarity]
doc/html/man/ncurses.3x.html
doc/html/man/term.5.html
doc/html/man/term.7.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
form/Makefile.in
form/fty_enum.c
include/Caps
include/MKncurses_def.sh [new file with mode: 0755]
include/MKparametrized.sh
include/Makefile.in
include/curses.h.in
include/edit_cfg.sh
include/ncurses_cfg.hin
include/ncurses_defs [new file with mode: 0644]
include/termcap.h.in
include/tic.h
man/Makefile.in
man/captoinfo.1m
man/clear.1
man/curs_color.3x
man/curs_extend.3x
man/curs_scanw.3x
man/curs_trace.3x
man/default_colors.3x [moved from man/dft_fgbg.3x with 96% similarity]
man/form_fieldtype.3x
man/infocmp.1m
man/infotocap.1m
man/man_db.renames
man/manlinks.sed
man/menu.3x
man/menu_attributes.3x [moved from man/menu_attribs.3x with 98% similarity]
man/ncurses.3x
man/panel.3x
man/term.5
man/term.7
man/terminfo.head
man/terminfo.tail
man/tic.1m
man/toe.1m
man/tput.1
man/tset.1
menu/Makefile.in
menu/menu.h
menu/mf_common.h
misc/Makefile.in
misc/emx.src
misc/indent.pro
misc/run_tic.in [moved from misc/run_tic.sh with 77% similarity, mode: 0644]
misc/terminfo.src
mk-1st.awk
mk-2nd.awk
ncurses/Makefile.in
ncurses/base/MKlib_gen.sh
ncurses/base/lib_addstr.c
ncurses/base/lib_color.c
ncurses/base/lib_colorset.c
ncurses/base/lib_getch.c
ncurses/base/lib_mouse.c
ncurses/base/lib_newterm.c
ncurses/base/lib_restart.c
ncurses/base/lib_set_term.c
ncurses/base/lib_winch.c
ncurses/curses.priv.h
ncurses/llib-lncurses
ncurses/modules
ncurses/tinfo/access.c
ncurses/tinfo/alloc_ttype.c
ncurses/tinfo/comp_parse.c
ncurses/tinfo/comp_scan.c
ncurses/tinfo/home_terminfo.c
ncurses/tinfo/lib_baudrate.c
ncurses/tinfo/lib_options.c
ncurses/tinfo/lib_raw.c
ncurses/tinfo/lib_setup.c
ncurses/tinfo/lib_termcap.c
ncurses/tinfo/lib_tgoto.c [new file with mode: 0644]
ncurses/tinfo/lib_tparm.c
ncurses/tinfo/lib_tputs.c
ncurses/tinfo/parse_entry.c
ncurses/tinfo/read_entry.c
ncurses/tinfo/read_termcap.c
ncurses/tinfo/strings.c [new file with mode: 0644]
ncurses/tinfo/write_entry.c
ncurses/trace/lib_traceatr.c
ncurses/trace/lib_tracebits.c
ncurses/tty/MKexpanded.sh
ncurses/tty/lib_mvcur.c
ncurses/tty/lib_tstp.c
ncurses/tty/lib_twait.c
ncurses/tty/lib_vidattr.c
ncurses/tty/tty_update.c
panel/Makefile.in
panel/panel.priv.h
progs/Makefile.in
progs/dump_entry.c
progs/infocmp.c
progs/progs.priv.h
progs/tic.c
progs/toe.c
progs/tput.c
progs/tset.c
tack/Makefile.in
tack/sysdep.c
test/Makefile.in
test/cardfile.c
test/configure
test/configure.in
test/filter.c
test/firework.c
test/gdc.c
test/hanoi.c
test/hashtest.c
test/knight.c
test/ncurses.c
test/railroad.c
test/rain.c
test/tclock.c
test/test.priv.h
test/view.c
test/worm.c
test/xmas.c

index 5ef8f3c2f963c630fadb54c58d3fdbce3be2437e..7b5f4efa69ae44ea29f14dc42e07bdc41dd5ca87 100644 (file)
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
 
-                            Announcing ncurses 5.1
+                            Announcing ncurses 5.2
 
    The ncurses (new curses) library is a free software emulation of
    curses in System V Release 4.0, and more. It uses terminfo format,
 
                                  Release Notes
 
-   This release is designed to be upward compatible from ncurses 5.0;
-   very few applications will require recompilation, depending on the
-   platform. These are the highlights from the change-log since ncurses
-   5.0 release.
+   This release is designed to be upward compatible from ncurses 5.0 and
+   5.1; very few applications will require recompilation, depending on
+   the platform. These are the highlights from the change-log since
+   ncurses 5.1 release.
 
    Interface changes:
-     * made the extended terminal capabilities
-       (configure --enable-tcap-names) a standard feature (though the
-       configure script can disable it, it is built by default).
-     * removed the trace() function and related trace support from the
-       production library. This is the only interface change that may
-       cause problems with existing applications linked to shared
-       libraries, since not all platforms use the minor version number.
-     * explicitly initialized to zero several data items which were
-       implicitly initialized, e.g., cur_term. If not explicitly
-       initialized, their storage type is C (common), and causes problems
-       linking on some platforms.
-     * modified curses.h.in, undef'ing some symbols to avoid conflict
-       with C++ STL.
-
-   New features:
-     * added a new extension, assume_default_colors() to provide better
-       control over the use of default colors. This is the principal
-       visible difference between ncurses 5.1 and preceding versions. The
-       new extension allows an application to specify what colors pair 0
-       uses.
-       NOTE: Pair 0 defaults to white on black unless you have invoked
-       use_default_colors() or set it via assume_default_colors(). An
-       application that calls start_colors() without setting the
-       background color will consistently have a black background no
-       matter what color your terminal's background actually is.
-     * made several fixes to the terminfo-to-termcap conversion, and have
-       been using the generated termcaps without further hand-tuning.
-       This builds on the extension use_extended_names() by adding
-       "obsolete" termcap strings to terminfo.src
-          + modified tic so that if extended names (i.e.,
-            configure --enable-tcap-names) are active, then tic -x will
-            also write "obsolete" capabilities that are present in the
-            terminfo source.
-          + added screen's AX capability (for ECMA SGR 39 and 49) to
-            applicable terminfo entries, use presence of this as a check
-            for a small improvement in setting default colors.
-          + add -a option to tic and infocmp, which retains commented-out
-            capabilities during source translation/comparison, e.g.,
-            captoinfo and infotocap.
-     * implemented limited support for UTF-8, useful with XFree86 xterm:
-          + if the configure --enable-widec option is given, append 'w'
-            to names of the generated libraries (e.g., libncursesw.so) to
-            avoid conflict with existing ncurses libraries.
-          + add a simple UTF-8 output driver to the experimental
-            wide-character support. If any of the environment variables
-            LC_ALL, LC_CTYPE or LANG contain the string "UTF-8", this
-            driver will be used to translate the output to UTF-8.
-          + modified view.c to make a rudimentary viewer of UTF-8 text.
-     * modify raw() and noraw() to clear/restore IEXTEN flag which
-       affects stty lnext on systems such as FreeBSD
-     * reordered tests during mouse initialization to allow for gpm to
-       run in xterm, or for xterm to be used under OS/2 EMX. Also dropped
-       test for $DISPLAY in favor of the terminfo capability kmous=\E[M
-       or if $TERM environment variable contains "xterm".
-     * added configure option --with-manpage-symlinks, which provides for
-       fully indexing manpage entries by making symbolic links for the
-       aliases.
-     * changed unctrl() to render C1 characters (128-159) as ~@, ~A, etc.
-     * add experimental configure option --enable-colorfgbg to check for
-       $COLORTERM variable as set by rxvt/aterm/Eterm.
-     * made the infocmp -F option less verbose.
-     * dropped support for gnat 3.10 (gnat 3.12 is current).
+     * change type of ospeed variable back to short to match its use in
+       legacy applications. It was altered after ncurses 4.2 to speed_t
+       to repair a type mismatch which was introduced after 1.9.4 in
+       1995. The principal users of termcap continued to use short, which
+       is not the same size.
+       NOTE: A few applications will have to be recompiled (about 1% of
+       the programs in a typical Linux distribution, 10% of the programs
+       that use ncurses). These are easy to identify with nm or strings.
+     * remove a private function _nc_can_clear_with(), which was built
+       with the configure --enable-expanded option but not used.
+     * add several private functions (prefixed with "_nc_") for tracing
+       chtype values in the debug library, and for better access and
+       buffer limit checking.
+
+   New features and improvements:
+     * rewrote tgoto() to make it better support existing termcap
+       applications which use hardcoded strings rather than obtain all of
+       their information from the termcap file. If the string does not
+       appear to be a terminfo string (i.e., does not refer to a "%p"
+       parameter, or terminfo-style padding), and termcap support is
+       configured, tgoto() will interpret it as termcap. Otherwise, as
+       before, it will use tparm().
+     * to ensure that the tgoto() changes work properly, added checks to
+       tic which report capabilities that do not reference the expected
+       number of parameters.
+     * new configure script options:
+          + option --disable-root-environ adds runtime checks which tell
+            ncurses to disregard $TERMINFO and similar environment
+            variables if the current user is root, or running
+            setuid/setgid.
+          + option --disable-assumed-color allows you to use the pre-5.1
+            convention of default colors used for color-pair 0 to be
+            configured (see assume_default_colors()).
+          + implement configure script options that transform installed
+            program names, e.g., --program-prefix, including the manpage
+            names and cross references.
+          + option --with-database allows you to specify a different
+            terminfo source-file to install. On OS/2 EMX, the default is
+            misc/emx.src, otherwise misc/terminfo.src
+          + option --with-default-terminfo-dir allows you to specify the
+            default terminfo database directory.
+          + option --with-libtool allows you to build with libtool.
+            NOTE: libtool uses a different notation for numbering shared
+            library versions from the existing ncurses configuration.
+          + option --with-manpage-tbl causes the manpages to be
+            preprocessed by tbl(1) prior to installation,
+          + option --without-curses-h causes the installation process to
+            install curses.h as ncurses.h and make appropriate changes to
+            headers and manpages.
+     * modified configure script options:
+          + change symbol used by the --install-prefix configure option
+            from INSTALL_PREFIX to DESTDIR (the latter has become common
+            usage although the name is misleading).
+          + modify ld -rpath options (e.g., Linux, and Solaris) to use an
+            absolute pathname for the build tree's lib directory,
+            avoiding confusion with directories relative to the current
+            one with the installed programs.
+          + modified misc/run_tic.in to use tic -o, to eliminate
+            dependency on $TERMINFO variable for installs.
+     * terminfo database:
+          + updated xterm terminfo entries to match XFree86 xterm patch
+            #146.
+          + added amiga-vnc, Matrix Orbital, and QNX qansi to
+            misc/terminfo.src.
+          + added os2 entry to misc/emx.src.
+          + add S0 and E0 extensions to screen's terminfo entry since
+            otherwise the FreeBSD port makes it pass termcap equivalents
+            to tgoto, which would be misinterpreted by older versions of
+            ncurses.
+     * improvements to program usability:
+          + modify programs to use curses_version() string to report the
+            version of ncurses with which they are compiled rather than
+            the NCURSES_VERSION string. The function returns the patch
+            level in addition to the major and minor version numbers.
+          + modify tput program so it can be renamed or invoked via a
+            link as 'reset' or 'init', producing the same effect as
+            tput reset or tput init.
+          + add error checking to infocmp's -v and -m options to ensure
+            that the option value is indeed a number.
+     * improved performance:
+          + replace a lookup table in lib_vidattr.c used to decode
+            no_color_video with a logic expression which is faster.
 
    Major bug fixes:
-     * modified infocmp -e, -E options to ensure that generated
-       fallback.c type for Booleans agrees with term.h
-     * documented a special case of incompatiblity between ncurses 4.2
-       and 5.0, added a section for this in INSTALL.
-     * corrected tests for file-descriptors in OS/2 EMX mouse support. A
-       negative value could be used by FD_SET, causing the select() call
-       to wait indefinitely.
-     * made 'tput flash' work properly for xterm by flushing output in
-       delay_output() when using napms(), and modifying xterm's terminfo
-       to specify no padding character. Otherwise, xterm's reported baud
-       rate could mislead ncurses into producing too few padding
-       characters.
-     * modified lib_addch.c to allow repeated update to the lower-right
-       corner, rather than displaying only the first character written
-       until the cursor is moved. Recent versions of SVr4 curses can
-       update the lower-right corner, and behave this way.
-     * modified echo() behavior of getch() to match Solaris curses for
-       carriage return and backspace (reported by Neil Zanella).
-     * corrected offsets used for subwindows in wresize()
-     * modified configure script so AC_MSG_ERROR is temporarily defined
-       to a warning in AC_PROG_CXX to make it recover from a missing C++
-       compiler without requiring user to add --without-cxx option
-     * corrected logic in lib_twait.c as used by lib_mouse.c for GPM
-       mouse support when poll() is used rather than select().
-     * made several fixes for buffer overflows, unchecked recursion,
-       improvements in performance, etc. See the NEWS file for details.
+     * correct manlinks.sed script introduced in ncurses 5.1 to avoid
+       using ERE "\+", which is not understood by standard versions of
+       sed. This happens to work with GNU sed, but is not portable, and
+       was the initial motivation for this release.
+     * remove "hpux10.*" case from CF_SHARED_OPTS configure script macro.
+       This differed from the "hpux*" case by using reversed symbolic
+       links, which made the 5.1 version not match the configuration of
+       5.0 shared libraries.
+     * guard against corrupt terminfo data:
+          + modify tparm() to disallow arithmetic on strings, analyze the
+            varargs list to read strings as strings and numbers as
+            numbers.
+          + modify tparm()'s internal function spop() to treat a null
+            pointer as an empty string.
+          + modify parse_format() in lib_tparm.c to ignore precision if
+            it is longer than 10000.
+          + rewrote limit checks in lib_mvcur.c using new functions
+            _nc_safe_strcat(), etc. Made other related changes to check
+            lengths used for strcat() and strcpy().
+     * corrections to screen optimization:
+          + added special case in lib_vidattr.c to reset underline and
+            standout for devices that have no sgr0 defined.
+          + change handling of non_dest_scroll_region in tty_update.c to
+            clear text after it is shifted in rather than before shifting
+            out. Also correct row computation.
+          + modify rs2 capability in xterm-r6 and similar entries where
+            cursor save/restore bracketed the sequence for resetting
+            video attributes. The cursor restore would undo that.
+     * UTF-8 support:
+          + when checking LC_ALL, LC_CTYPE, and LANG environment
+            variables for UTF-8 locale, ignore those which are set to an
+            empty value, as per SUSV2.
+          + encode 0xFFFD in UTF-8 with 3 bytes, not 2.
+          + modify _nc_utf8_outch() to avoid sign-extension when checking
+            for out-of-range value.
+     * other library fixes:
+          + added checks for an empty $HOME environment variable, to
+            avoid retrieving terminfo descriptions from ./.terminfo .
+          + change functions _nc_parse_entry() and postprocess_termcap()
+            to avoid using strtok(), because it is non-reentrant.
+          + initialize fds[] array to 0's in _nc_timed_wait(); apparently
+            poll() only sets the revents members of that array when there
+            is activity corresponding to the related file.
+          + add a check for null pointer in Make_Enum_Type().
+          + fix a heap problem with the c++ binding.
+          + correct missing includes for <string.h> in several places,
+            including the C++ binding. This is not noted by gcc unless we
+            use the -fno-builtin option.
+     * several fixes for tic:
+          + add a check for empty buffers returned by fgets() in
+            comp_scan.c next_char() function, in case tic is run on a
+            non-text file (fixes a core dump).
+          + modify tic to verify that its inputs are really files, in
+            case someone tries to read a directory (or /dev/zero).
+          + correct an uninitialized parameter to open_tempfile() in
+            tic.c which made "tic -I" give an ambiguous error message
+            about tmpnam.
+          + correct logic in adjust_cancels(), which did not check both
+            alternatives when reclassifying an extended name between
+            boolean, number and string, causing an infinite loop in tic.
+     * using new checks in tic for parameter counts in capability
+       strings, found/fixed several errors both in the terminfo database
+       and in the include/Caps file.
+          + modified several terminfo capability strings, including the
+            definitions for setaf, setab, in include/Caps to indicate
+            that the entries are parameterized. This information is used
+            to tell which strings are translated when converting to
+            termcap. This fixes a problem where the generated termcap
+            would contain a spurious "%p1" for the terminfo "%p1%d".
+          + correct parameter counts in include/Caps for dclk as well as
+            some printer-specific capabilities: csnm, defc, scs, scsd,
+            smgtp, smglp.
+     * various fixes for install scripts used to support configure
+       --srcdir and --with-install-prefix.
+     * correct several mismatches between manpage filename and ".TH"
+       directives, renaming dft_fgbg.3x to default_colors.3x and
+       menu_attribs.3x to menu_attributes.3x.
+
+   Portability:
+     * configure script:
+          + newer config.guess, config.sub, including changes to support
+            OS/2 EMX. The configure script for OS/2 EMX still relies on a
+            patch since there is no (working) support for that platform
+            in the main autoconf distribution.
+          + make configure script checks on variables $GCC and $GXX
+            consistently compare against 'yes' rather than test if they
+            are nonnull, since either may be set to the corresponding
+            name of the C or C++ compiler.
+          + change configure script to use AC_CANONICAL_SYSTEM rather
+            than AC_CANONICAL_HOST, which means that configure --target
+            will set a default program-prefix.
+          + modify the check for big-core to force a couple of memory
+            accesses, which may work as needed for older/less-capable
+            machines (if not, there's still the explicit configure
+            option).
+          + modify configure test for tcgetattr() to allow for old
+            implementations, e.g., on BeOS, which only defined it as a
+            macro.
+          + add configure check for filesystems (such as OS/2 EMX) which
+            do not distinguish between upper/lowercase filenames, use
+            this to fix tags rules in makefiles.
+          + add MKncurses_def.sh to generate fallback definitions for
+            ncurses_cfg.h, to quiet gcc -Wundef warnings, modified
+            ifdef's in code to consistently use "#if" rather than
+            "#ifdef".
+          + change most remaining unquoted parameters of test in
+            configure script to use quotes, for instance fixing a problem
+            in the --disable-database option.
+          + modify scripts so that "make install.data" works on OS/2 EMX.
+          + modify scripts and makefiles so the Ada95 directory builds on
+            OS/2 EMX.
+     * library:
+          + replaced case-statement in _nc_tracebits() for CSIZE with a
+            table to simplify working around implementations that define
+            random combinations of the related macros to zero.
+          + improved OS/2 mouse support by retrying as a 2-button mouse
+            if code fails to set up a 3-button mouse.
+          + added private entrypoint _nc_basename(), used to consolidate
+            related code in progs, as well as accommodating OS/2 EMX
+            pathnames.
+          + alter definition of NCURSES_CONST to make it non-empty.
+          + redefine 'TEXT' in menu.h for AMIGA, since it is reported to
+            have an (unspecified) symbol conflict.
+     * programs:
+          + modified progs/tset.c and tack/sysdep.c to build with sgttyb
+            interface if neither termio or termios is available. Tested
+            this with FreeBSD 2.1.5 (which does have termios - but the
+            sgttyb does work).
 
                               Features of Ncurses
 
@@ -344,7 +466,7 @@ References
    5. http://dickey.his.com/ded/ded.html
    6. http://dickey.his.com/dialog/dialog.html
    7. http://lynx.isc.org/release/
-   8. file://localhost/usr/build/ncurses/ncurses-5.1-20000704/doc/html/www.gnome.org/mc/
+   8. file://localhost/usr/build/ncurses/ncurses-5.2-20001021/doc/html/www.gnome.org/mc/
    9. http://www.mutt.org/
   10. http://www.ncftp.com/
   11. http://www.bostic.com/vi/
index cd538fa1712fdc0d176e6672a1d3302e811e0bc1..b1651379df2828b9a686b7a042a507549a6ee9d8 100644 (file)
 #  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 #
 #  Version Control
-#  $Revision: 1.30 $
+#  $Revision: 1.34 $
 #
 .SUFFIXES:
 
 SHELL          = /bin/sh
 THIS           = Makefile
 
+x              = @PROG_EXT@
+
 top_srcdir     = @top_srcdir@
+DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
-libdir         = @libdir@
-includedir     = @includedir@
-datadir                = @datadir@
-ticdir         = $(datadir)/terminfo
-ADA_INCLUDE    = @ADA_INCLUDE@
-ADA_OBJECTS    = @ADA_OBJECTS@
+ADA_INCLUDE    = $(DESTDIR)@ADA_INCLUDE@
+ADA_OBJECTS    = $(DESTDIR)@ADA_OBJECTS@
 
 INSTALL                = @INSTALL@
 INSTALL_DATA   = @INSTALL_DATA@
@@ -53,7 +52,7 @@ INSTALL_DATA  = @INSTALL_DATA@
 AWK            = @AWK@
 LN_S           = @LN_S@
 
-CC             = @CC@
+HOST_CC                = @BUILD_CC@
 CFLAGS         = @CFLAGS@
 
 CPPFLAGS       = @ACPPFLAGS@ \
@@ -67,7 +66,7 @@ CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
-LINK           = $(CC)
+LINK           = $(HOST_CC)
 LD_FLAGS       = @LD_MODEL@ $(LOCAL_LIBS) @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS)
 
 RANLIB         = @RANLIB@
@@ -77,7 +76,7 @@ LIB_CURSES      = -L../../lib -lncurses@LIB_SUFFIX@
 M4             = m4
 M4FLAGS                =
 
-GENERATE       = ./gen '@DFT_ARG_SUFFIX@'
+GENERATE       = ./gen$x '@DFT_ARG_SUFFIX@'
 DEL_ADAMODE    = sed -e '/^\-\-\ \ \-\*\-\ ada\ \-\*\-.*/d'
 
 GNATHTML       = `type -p gnathtml || type -p gnathtml.pl`
@@ -157,107 +156,107 @@ sources:
 
 $(ADA_INCLUDE) \
 $(ADA_OBJECTS) :
-       $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$@
+       $(top_srcdir)/mkinstalldirs $@
 
 install \
 install.libs :: $(ADA_INCLUDE)
-       @echo installing package $(ALIB) in $(INSTALL_PREFIX)$(ADA_INCLUDE)
-       @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(ADA_SRCDIR) $(INSTALL_PREFIX)$(ADA_INCLUDE)
-       @test $(srcdir) != ./ && $(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(srcdir)/../src $(INSTALL_PREFIX)$(ADA_INCLUDE)
+       @echo installing package $(ALIB) in $(ADA_INCLUDE)
+       @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(ADA_SRCDIR) $(ADA_INCLUDE)
+       @test $(srcdir) != ./ && $(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ad?' $(srcdir)/../src $(ADA_INCLUDE)
 
 install \
 install.libs :: $(ADA_OBJECTS)
-       @echo installing package $(ALIB) in $(INSTALL_PREFIX)$(ADA_OBJECTS)
+       @echo installing package $(ALIB) in $(ADA_OBJECTS)
        @chmod a-wx $(ADA_SRCDIR)/*.ali
-       @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ali' $(ADA_SRCDIR) $(INSTALL_PREFIX)$(ADA_OBJECTS)
+       @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ali' $(ADA_SRCDIR) $(ADA_OBJECTS)
        @chmod u+x $(ADA_SRCDIR)/*.ali
 
 uninstall \
 uninstall.libs ::
-       @echo removing package $(ALIB) from $(INSTALL_PREFIX)$(ADA_INCLUDE)
-       -@cd $(INSTALL_PREFIX)$(ADA_INCLUDE) && rm -f $(ALIB)[-.]*
+       @echo removing package $(ALIB) from $(ADA_INCLUDE)
+       -@cd $(ADA_INCLUDE) && rm -f $(ALIB)[-.]*
 
 uninstall \
 uninstall.libs ::
-       @echo removing package $(ALIB) from $(INSTALL_PREFIX)$(ADA_OBJECTS)
-       -@cd $(INSTALL_PREFIX)$(ADA_OBJECTS) && rm -f $(ALIB)[-.]*
+       @echo removing package $(ALIB) from $(ADA_OBJECTS)
+       -@cd $(ADA_OBJECTS) && rm -f $(ALIB)[-.]*
 
-gen:   gen.o
+gen$x: gen.o
        @ECHO_LINK@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@ $(LIB_CURSES)
 
 gen.o: $(srcdir)/gen.c
-       $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
+       $(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
 
-Character_Attribute_Set_Rep: gen
+Character_Attribute_Set_Rep: gen$x
        $(GENERATE) B A >$@
 
-Base_Defs: gen
+Base_Defs: gen$x
        $(GENERATE) B B >$@
 
-Color_Defs: gen
+Color_Defs: gen$x
        $(GENERATE) B C >$@
 
-Key_Definitions: gen
+Key_Definitions: gen$x
        $(GENERATE) B K >$@
 
-Old_Keys: gen
+Old_Keys: gen$x
        $(GENERATE) B O >$@
 
-ACS_Map: gen
+ACS_Map: gen$x
        $(GENERATE) B M >$@
 
-AC_Rep: gen
+AC_Rep: gen$x
        $(GENERATE) B R >$@
 
-Linker_Options: gen
+Linker_Options: gen$x
        $(GENERATE) B L >$@
 
-Version_Info: gen
+Version_Info: gen$x
        $(GENERATE) B V >$@
 
-Window_Offsets: gen
+Window_Offsets: gen$x
        $(GENERATE) B D >$@
 
-Menu_Opt_Rep: gen
+Menu_Opt_Rep: gen$x
        $(GENERATE) M R >$@
 
-Menu_Base_Defs: gen
+Menu_Base_Defs: gen$x
        $(GENERATE) M B >$@
 
-Menu_Linker_Options: gen
+Menu_Linker_Options: gen$x
        $(GENERATE) M L >$@
 
-Item_Rep: gen
+Item_Rep: gen$x
        $(GENERATE) M I >$@
 
-Form_Opt_Rep: gen
+Form_Opt_Rep: gen$x
        $(GENERATE) F R >$@
 
-Form_Base_Defs: gen
+Form_Base_Defs: gen$x
        $(GENERATE) F B >$@
 
-Form_Linker_Options: gen
+Form_Linker_Options: gen$x
        $(GENERATE) F L >$@
 
-Field_Rep: gen
+Field_Rep: gen$x
        $(GENERATE) F I >$@
 
-Mouse_Base_Defs: gen
+Mouse_Base_Defs: gen$x
        $(GENERATE) P B >$@
 
-Mouse_Event_Rep: gen
+Mouse_Event_Rep: gen$x
        $(GENERATE) P M >$@
 
-Mouse_Events: gen
+Mouse_Events: gen$x
        $(GENERATE) B E >$@
 
-Panel_Linker_Options: gen
+Panel_Linker_Options: gen$x
        $(GENERATE) P L >$@
 
-Chtype_Def: gen
+Chtype_Def: gen$x
        $(GENERATE) E C >$@
 
-Eti_Defs: gen
+Eti_Defs: gen$x
        $(GENERATE) E E >$@
 
 $(ADA_SRCDIR)/$(ABASE).ads:    $(srcdir)/$(ABASE).ads.m4 \
@@ -347,7 +346,7 @@ TAGS:
        etags *.[ch]
 
 mostlyclean ::
-       -rm -f a.out core gen *.o
+       -rm -f a.out core gen$x *.o
        -rm -f $(GEN_FILES1)
        -rm -f $(GEN_FILES2)
        -rm -f $(GEN_FILES3)
index 3c1800d36d2379b6d310a459301cf1a2dda08c76..64e9f912e443c6fc4a8ed45ad31d10eb94e18cb8 100644 (file)
@@ -32,7 +32,7 @@
 
 /*
     Version Control
-    $Revision: 1.31 $
+    $Revision: 1.32 $
   --------------------------------------------------------------------------*/
 /*
   This program generates various record structures and constants from the
@@ -170,7 +170,7 @@ static void gen_chtype_rep(const char *name)
   chtype_rep("Ch",A_CHARTEXT);
   chtype_rep("Color",A_COLOR);
   chtype_rep("Attr",(A_ATTRIBUTES&~A_COLOR));
-  printf("      end record;\n   for %s'Size use %d;\n",name,8*sizeof(chtype));
+  printf("      end record;\n   for %s'Size use %ld;\n", name, (long)(8*sizeof(chtype)));
   printf("      --  Please note: this rep. clause is generated and may be\n");
   printf("      --               different on your system.\n");
 }
@@ -1103,19 +1103,19 @@ eti_gen(char*buf, int code, const char* name, int* etimin, int* etimax)
   return strlen(buf);
 }
 
-#define GEN_OFFSET(member,itype)                                   \
-  if (sizeof(((WINDOW*)0)->member)==sizeof(itype)) {               \
-    o = offsetof(WINDOW, member);                                  \
-    if ((o%sizeof(itype) == 0)) {                                  \
-       printf("   Offset%-*s : constant Natural := %2d; --  %s\n", \
-              8, #member, o/sizeof(itype),#itype);                 \
-    }                                                              \
+#define GEN_OFFSET(member,itype)                                    \
+  if (sizeof(((WINDOW*)0)->member)==sizeof(itype)) {                \
+    o = offsetof(WINDOW, member);                                   \
+    if ((o%sizeof(itype) == 0)) {                                   \
+       printf("   Offset%-*s : constant Natural := %2ld; --  %s\n", \
+              8, #member, o/sizeof(itype),#itype);                  \
+    }                                                               \
   }
   
 static void
 gen_offsets(void)
 {
-  int o;
+  long o;
   const char* s_bool = "";
 
   GEN_OFFSET(_maxy,short);
@@ -1137,8 +1137,8 @@ gen_offsets(void)
     GEN_OFFSET(_scroll,int);
     s_bool = "int";
   }
-  printf("   Sizeof%-*s : constant Natural := %2d; --  %s\n",
-        8, "_bool",sizeof(bool),"bool");
+  printf("   Sizeof%-*s : constant Natural := %2ld; --  %s\n",
+        8, "_bool", (long) sizeof(bool),"bool");
   /* In ncurses _maxy and _maxx needs an offset for the "public"
    * value
    */
index 840c5f185810e85fd8d81c7ff1b95f6f4cc12652..f969ce0422ac10add2c42bc88327ff4bbf3bc456 100644 (file)
@@ -38,13 +38,12 @@ include(M4MACRO)dnl
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control:
---  $Revision: 1.23 $
+--  $Revision: 1.24 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Form_Base_Defs')
 with System;
 with Ada.Characters.Latin_1;
-with Interfaces.C;
 
 package Terminal_Interface.Curses.Forms is
    pragma Preelaborate (Terminal_Interface.Curses.Forms);
index 81a4935cde1b0e6ba6c01ac421a8044bb6a02260..2bc350a72d18ca3958ced723520e58d5d3c80719 100644 (file)
@@ -38,12 +38,11 @@ include(M4MACRO)dnl
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control:
---  $Revision: 1.20 $
+--  $Revision: 1.21 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Menu_Base_Defs')
 with System;
-with Interfaces.C;
 with Ada.Characters.Latin_1;
 
 package Terminal_Interface.Curses.Menus is
index c9582fb7a323a86ed7668c569793f28495f0e8c1..d9cf0cf738aacfdacdb301ee27e9d46ab1c28105 100644 (file)
 #  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 #
 #  Version Control
-#  $Revision: 1.24 $
+#  $Revision: 1.25 $
 #
 .SUFFIXES:
 
 SHELL          = /bin/sh
 THIS           = Makefile
 
+x              = @PROG_EXT@
+
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
@@ -96,7 +98,7 @@ TOUR_OBJS    =        tour.o sample.o sample-curses_demo.o sample-explanation.o       \
 
 RAIN_OBJS    = rain.o status.o
 
-all ::  demo1 rainy_day
+all ::  tour$x rain$x
        @
 
 sources :
@@ -111,13 +113,13 @@ uninstall \
 uninstall.libs ::
        @
 
-demo1: explain.msg
+tour$x :       explain.msg
        $(ADAMAKE) $(ADAMAKEFLAGS) tour $(CARGS) $(LARGS)
 
 explain.msg:   $(srcdir)/explain.txt
        cp $(srcdir)/explain.txt $@
 
-rainy_day:
+rain$x :
        $(ADAMAKE) $(ADAMAKEFLAGS) rain $(CARGS) $(LARGS)
 
 mostlyclean:
index 1e20f0517b0b81619ef1c747e2f8fa0f32050f73..24a0e177d44a1dee68701237aa3d53881b19871d 100644 (file)
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  Poor mans help system. This scans a sequential file for key lines and
 --  then reads the lines up to the next key. Those lines are presented in
 --  a window as help or explanation.
 --
-with Terminal_Interface.Curses;
-
 package Sample.Explanation is
 
-   package Curses renames Terminal_Interface.Curses;
-
    procedure Explain (Key : in String);
    --  Retrieve the text associated with this key and display it.
 
index ed796095990e60cddbab433db82dbdc5908f893d..158b93586d5fc8555ab837d5b034aa2ffcded1b4 100644 (file)
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Numerics.Generic_Elementary_Functions;
@@ -119,7 +119,7 @@ package body Sample.Text_IO_Demo is
       Default_Labels;
       Notepad ("TEXTIO-PAD00");
 
-      Set_Echo_Mode (FALSE);
+      Set_Echo_Mode (False);
       Set_Meta_Mode;
       Set_KeyPad_Mode;
       W := Sub_Window (Standard_Window, Lines - 2, Columns - 2, 1, 1);
index 2d96142c723c41d08bcd646d18ebba0514dd0c7e..3544b0976b8d03eb0269bd864f6272df2320240c 100644 (file)
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Text_IO;
@@ -195,7 +195,7 @@ package body Sample is
 
       Init_Keyboard_Handler;
 
-      Set_Echo_Mode (FALSE);
+      Set_Echo_Mode (False);
       Set_Raw_Mode;
       Set_Meta_Mode;
       Set_KeyPad_Mode;
index a3de1954896540d1ccb408e81dbdff7c393ad47f..d0069973ed7b1d0ea1ba6dfc2dd9d1623b36bc5b 100644 (file)
@@ -29,7 +29,7 @@
 #  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 #
 #  Version Control
-#  $Revision: 1.20 $
+#  $Revision: 1.22 $
 #
 .SUFFIXES:
 
@@ -37,13 +37,10 @@ SHELL               = /bin/sh
 THIS           = Makefile
 
 MODEL          = ../../@DFT_OBJ_SUBDIR@
+DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
-libdir         = @libdir@
-includedir     = @includedir@
-datadir                = @datadir@
-ticdir         = $(datadir)/terminfo
 ADA_INCLUDE    = @ADA_INCLUDE@
 
 INSTALL                = @INSTALL@
@@ -192,7 +189,7 @@ distclean :: clean
 
 realclean :: distclean
 
-BASEDEPS=$(ABASE).ads $(srcdir)/$(ABASE)-aux.ads $(srcdir)/$(ABASE).adb
+BASEDEPS=$(ABASE).ads $(ABASE)-aux.ads $(srcdir)/$(ABASE).adb
 
 $(ALIB).o: $(srcdir)/$(ALIB).ads
        $(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ALIB).ads
index 3d829a57aa6029194d6c02f58a18e9c615fccc86..cf7614b400fbabf9997da8ce03f3ef170c82dc1f 100644 (file)
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package body Terminal_Interface.Curses.Text_IO is
@@ -135,7 +135,7 @@ package body Terminal_Interface.Curses.Text_IO is
          if P_Size > 0 and then Line (Win) >= P_Size then
             New_Page (Win);
          else
-            Add (Win, Ascii.LF);
+            Add (Win, ASCII.LF);
          end if;
       end loop;
    end New_Line;
index 1f536d141c15a673e1298be94249bf72b998c543..698f1c650e925da82540e9e8db0b318e003e8172 100644 (file)
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
 --  Version Control:
---  $Revision: 1.25 $
+--  $Revision: 1.26 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
@@ -922,7 +922,7 @@ package body Terminal_Interface.Curses is
          when Non_Blocking => Time := 0;
          when Delayed      =>
             if Amount = 0 then
-               raise CONSTRAINT_ERROR;
+               raise Constraint_Error;
             end if;
             Time := C_Int (Amount);
       end case;
diff --git a/INSTALL b/INSTALL
index 9058c0616ddec53da63f9518e1bc7528c914e6ea..26d57374f47e23509e7c1ccda8e55ceb606f283e 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $Id: INSTALL,v 1.38 2000/07/08 22:46:08 tom Exp $
+-- $Id: INSTALL,v 1.46 2000/10/14 17:57:02 Johnny.C.Lam Exp $
 ---------------------------------------------------------------------
              How to install Ncurses/Terminfo on your system
 ---------------------------------------------------------------------
@@ -31,6 +31,9 @@ read the USING NCURSES WITH GPM section below.
 If you are running over the Andrew File System see the note below on
 USING NCURSES WITH AFS.
 
+If you are cross-compiling, see the note below on BUILDING NCURSES WITH A
+CROSS-COMPILER.
+
 If you want to build the Ada95 binding, go to the Ada95 directory and
 follow the instructions there.  The Ada95 binding is not covered below.
 
@@ -101,6 +104,8 @@ INSTALLATION PROCEDURE:
 
        libncurses_p.a (profile)
 
+       libncurses.la (libtool)
+
     If you do not specify any models, the normal and debug libraries will be
     configured.  Typing `configure' with no arguments is equivalent to:
 
@@ -123,6 +128,13 @@ INSTALLATION PROCEDURE:
     and SunOS with gcc, but more work needs to be done to make shared libraries
     work on other systems.
 
+    If you have libtool installed, you can type
+
+       ./configure --with-libtool
+
+    to generate the appropriate static and/or shared libraries for your
+    platform using libtool.
+
     You can make curses and terminfo fall back to an existing file of termcap
     definitions by configuring with --enable-termcap.  If you do this, the
     library will search /etc/termcap before the terminfo database, and will
@@ -173,7 +185,8 @@ INSTALLATION PROCEDURE:
     The terminfo(5) manual page must be preprocessed with tbl(1) before
     being formatted by nroff(1).  Modern man(1) implementations tend to do
     this by default, but you may want to look at your version's manual page
-    to be sure.
+    to be sure.  You may also install the manual pages after preprocessing
+    with tbl(1) by specifying the configure option --with-manpage-tbl.
 
     If the system already has a curses library that you need to keep using
     for some bizarre binary-compatibility reason, you'll need to distinguish
@@ -244,6 +257,15 @@ SUMMARY OF CONFIGURE OPTIONS:
     The other options are specific to this package.  We list them in alphabetic
     order.
 
+    --disable-assumed-color
+       With ncurses 5.1, we introduced a new function, assume_default_colors()
+       which allows applications to specify what the default foreground and
+       background color are assumed to be.  Most color applications use
+       full-screen color; but a few do not color the background.  While the
+       assumed values can be overridden by invoking assume_default_colors(),
+       you may find it useful to set the assumed values to the pre-5.1
+       convention, using this configure option.
+
     --disable-big-core
        Assume machine has little memory.  The configure script attempts to
        determine if your machine has enough memory (about 6Mb) to compile the
@@ -262,6 +284,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        that are not specified by XSI.  See ncurses/modules for the exact
        list of library modules that would be suppressed.
 
+    --disable-hashmap
+       Compile without hashmap scrolling-optimization code.  This algorithm is
+       the default.
+
     --disable-leaks
        For testing, compile-in code that frees memory that normally would not
        be freed, to simplify analysis of memory-leaks.
@@ -281,6 +307,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        rather than the include directory.  This makes it simpler to avoid
        compile-time conflicts with other versions of curses.h
 
+    --disable-root-environ
+       Compile with environment restriction, so certain environment variables
+       are not available when running as root, or via a setuid/setgid
+       application.  These are (for example $TERMINFO) those that allow the
+       search path for the terminfo or termcap entry to be customized.
+
     --disable-scroll-hints
        Compile without scroll-hints code.  This option is ignored when
        hashmap scrolling is configured, which is the default.
@@ -367,10 +399,6 @@ SUMMARY OF CONFIGURE OPTIONS:
        may not be accurate, or that your stty settings have disabled the use
        of tabs.
 
-    --enable-hashmap
-       Compile with hashmap scrolling-optimization code.  This is the default,
-       replacing an older scrolling-hints algorithm.
-
     --enable-no-padding
        Compile-in support for the $NCURSES_NO_PADDING environment variable,
        which allows you to suppress the effect of non-mandatory padding in
@@ -378,8 +406,9 @@ SUMMARY OF CONFIGURE OPTIONS:
        extended functions.
 
     --enable-rpath
-       Use rpath option when generating shared libraries.  This applies mainly
-       to systems using the GNU linker (read the manpage).
+       Use rpath option when generating shared libraries, and with some
+       restrictions when linking the corresponding programs.  This applies
+       mainly to systems using the GNU linker (read the manpage).
 
     --enable-safe-sprintf
        Compile with experimental safe-sprintf code.  You may consider using
@@ -435,6 +464,12 @@ SUMMARY OF CONFIGURE OPTIONS:
     --with-ada-objects=DIR
        Tell where to install the Ada objects (default:  PREFIX/lib/ada/adalib)
 
+    --with-database=XXX
+       Specify the terminfo source file to install.  Usually you will wish
+       to install ncurses' default (misc/terminfo.src).  Certain systems
+       have special requirements, e.g, OS/2 EMX has a customized terminfo
+       source file.
+
     --with-dbmalloc
        For testing, compile and link with Conor Cahill's dbmalloc library.
 
@@ -442,6 +477,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        Generate debug-libraries (default).  These are named by adding "_g"
        to the root, e.g., libncurses_g.a
 
+    --with-default-terminfo-dir=XXX
+       Specify the default terminfo database directory.  This is normally
+       DATADIR/terminfo, e.g., /usr/share/terminfo.
+
     --with-develop
        Enable experimental/development options.  This does not count those
        that change the interface, such as --enable-widec.
@@ -465,6 +504,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        NOTE:  a few systems build shared libraries with fixed pathnames; this
        option probably will not work for those configurations.
 
+     --with-libtool
+       Generate libraries with libtool.  If this option is selected, then
+       it overrides all other library model specifications.
+
     --with-manpage-format=XXX
        Tell the configure script how you would like to install man-pages.  The
        option value must be one of these:  gzip, compress, BSDI, normal,
@@ -484,6 +527,11 @@ SUMMARY OF CONFIGURE OPTIONS:
        this on systems that do not support symbolic links will result in
        copying the man-page for each alias.
 
+    --with-manpage-tbl
+       Tell the configure script that you with to preprocess the manpages
+       by running them through tbl to generate tables understandable by
+       nroff.
+
     --with-normal
        Generate normal (i.e., static) libraries (default).
 
@@ -516,8 +564,8 @@ SUMMARY OF CONFIGURE OPTIONS:
        script.
 
     --with-terminfo-dirs=XXX
-       Specify a search-list of terminfo directories which will be compiled into
-       the ncurses library (default: DATADIR/terminfo)
+       Specify a search-list of terminfo directories which will be compiled
+       into the ncurses library (default: DATADIR/terminfo)
 
     --with-termlib
        When building the ncurses library, organize this as two parts:  the
@@ -529,6 +577,11 @@ SUMMARY OF CONFIGURE OPTIONS:
        Suppress the configure script's check for Ada95, do not build the
        Ada95 binding and related demo.
 
+    --without-curses-h
+       Don't install the ncurses header with the name "curses.h".  Rather,
+       install as "ncurses.h" and modify the installed headers and manpages
+       accordingly.
+
     --without-cxx
        XSI curses declares "bool" as part of the interface.  C++ also declares
        "bool".  Neither specifies the size and type of booleans, but both
@@ -979,11 +1032,28 @@ USING NCURSES WITH GPM:
        are slow to update this library.  Current distributions of gpm can
        be configured properly using the --without-curses option.
 
+BUILDING NCURSES WITH A CROSS-COMPILER
+       Ncurses can be built with a cross-compiler.  Some parts must be built
+       with the host's compiler since they are used for building programs
+       (e.g., ncurses/make_hash and ncurses/make_keys) that generate tables
+       that are compiled into the ncurses library.  You should set the
+       BUILD_CC environment variable to your host's compiler, and run the
+       configure script configuring for the cross-compiler.
+
+       Note that all of the generated source-files which are part of ncurses
+       will be made if you use
+
+               make sources
+
+       This would be useful in porting to an environment which has little
+       support for the tools used to generate the sources, e.g., sed, awk and
+       Bourne-shell.
+
 BUGS:
        Send any feedback to the ncurses mailing list at
        bug-ncurses@gnu.org. To subscribe send mail to
        bug-ncurses-request@gnu.org with body that reads:
        subscribe ncurses <your-email-address-here>
 
-       The Hacker's Guide in the misc directory includes some guidelines
+       The Hacker's Guide in the doc directory includes some guidelines
        on how to report bugs in ways that will get them fixed most quickly.
index 0007f2aa46df4268c00cc765da4583763b4e6945..24368e571cfc343aa456b2d764e9ed3987ecd3bc 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
 ./doc/html/man/curs_trace.3x.html
 ./doc/html/man/curs_util.3x.html
 ./doc/html/man/curs_window.3x.html
+./doc/html/man/default_colors.3x.html
 ./doc/html/man/define_key.3x.html
-./doc/html/man/dft_fgbg.3x.html
 ./doc/html/man/form.3x.html
 ./doc/html/man/form_cursor.3x.html
 ./doc/html/man/form_data.3x.html
 ./doc/html/man/keybound.3x.html
 ./doc/html/man/keyok.3x.html
 ./doc/html/man/menu.3x.html
-./doc/html/man/menu_attribs.3x.html
+./doc/html/man/menu_attributes.3x.html
 ./doc/html/man/menu_cursor.3x.html
 ./doc/html/man/menu_driver.3x.html
 ./doc/html/man/menu_format.3x.html
 ./form/modules
 ./include/Caps
 ./include/MKhashsize.sh
+./include/MKncurses_def.sh
 ./include/MKparametrized.sh
 ./include/MKterm.h.awk.in
 ./include/Makefile.in
 ./include/nc_alloc.h
 ./include/nc_panel.h
 ./include/ncurses_cfg.hin
+./include/ncurses_defs
 ./include/term_entry.h
 ./include/termcap.h.in
 ./include/tic.h
 ./man/curs_trace.3x
 ./man/curs_util.3x
 ./man/curs_window.3x
+./man/default_colors.3x
 ./man/define_key.3x
-./man/dft_fgbg.3x
 ./man/form.3x
 ./man/form_cursor.3x
 ./man/form_data.3x
 ./man/man_db.renames
 ./man/manlinks.sed
 ./man/menu.3x
-./man/menu_attribs.3x
+./man/menu_attributes.3x
 ./man/menu_cursor.3x
 ./man/menu_driver.3x
 ./man/menu_format.3x
 ./misc/ncurses.ref
 ./misc/panel.def
 ./misc/panel.ref
-./misc/run_tic.sh
+./misc/run_tic.in
 ./misc/shlib
 ./misc/tabset/std
 ./misc/tabset/stdcrt
 ./ncurses/tinfo/lib_setup.c
 ./ncurses/tinfo/lib_termcap.c
 ./ncurses/tinfo/lib_termname.c
+./ncurses/tinfo/lib_tgoto.c
 ./ncurses/tinfo/lib_ti.c
 ./ncurses/tinfo/lib_tparm.c
 ./ncurses/tinfo/lib_tputs.c
 ./ncurses/tinfo/read_entry.c
 ./ncurses/tinfo/read_termcap.c
 ./ncurses/tinfo/setbuf.c
+./ncurses/tinfo/strings.c
 ./ncurses/tinfo/write_entry.c
 ./ncurses/trace/README
 ./ncurses/trace/lib_trace.c
index 53b35abb72993760282868257a53991caec970f9..780650a0a8bd4110f8fff939727055923ea2be25 100644 (file)
@@ -198,6 +198,7 @@ libncurses-routines = \
                        tinfo/lib_setup \
                        tinfo/lib_termcap \
                        tinfo/lib_termname \
+                       tinfo/lib_tgoto \
                        tinfo/lib_ti \
                        tinfo/lib_tparm \
                        tinfo/lib_tputs \
@@ -207,6 +208,7 @@ libncurses-routines = \
                        tinfo/read_entry \
                        tinfo/read_termcap \
                        tinfo/setbuf \
+                       tinfo/strings \
                        tinfo/write_entry \
                        trace/lib_trace \
                        trace/lib_traceatr \
index 381ca9e7ed753413ef870f693430390b17d548d8..9489e9fe45ec53f167b2932638778f646934959c 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Makefile.in,v 1.18 1998/08/22 23:45:00 tom Exp $
+# $Id: Makefile.in,v 1.20 2000/08/19 19:11:56 tom Exp $
 ##############################################################################
 # Copyright (c) 1998 Free Software Foundation, Inc.                          #
 #                                                                            #
@@ -33,8 +33,8 @@
 
 SHELL = /bin/sh
 
-INSTALL_PREFIX=@INSTALL_PREFIX@
-CF_MFLAGS = @cf_cv_makeflags@ INSTALL_PREFIX="$(INSTALL_PREFIX)"
+DESTDIR=@DESTDIR@
+CF_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)"
 
 @SET_MAKE@
 
@@ -46,7 +46,7 @@ prefix                = @prefix@
 exec_prefix    = @exec_prefix@
 
 bindir         = @bindir@
-datadir                = @datadir@
+ticdir         = @TERMINFO@
 includedir     = @includedir@
 libdir         = @libdir@
 mandir         = @mandir@
@@ -69,7 +69,7 @@ preinstall :
        @ echo '      lib directory: '$(libdir)
        @ echo '  include directory: '$(includedir)
        @ echo '      man directory: '$(mandir)
-       @ echo ' terminfo directory: '$(datadir)/terminfo
+       @ echo ' terminfo directory: '$(ticdir)
        @ echo ''
        @ test "$(includedir)" = "$(prefix)/include" || \
                echo '** Include-directory is not in a standard location'
index 7a6f56dade1336e2fe88216362e3fe025f91c360..167ff657e0f2c6c672db4bac8fdd6b9816ee848a 100644 (file)
@@ -1,7 +1,7 @@
 ################################################################################
 # Wrapper Makefile for ncurses library under OS/2.
 ################################################################################
-# $Id: Makefile.os2,v 1.8 1998/12/13 02:23:13 tom Exp $
+# $Id: Makefile.os2,v 1.10 2000/10/09 23:53:57 Ilya.Zakharevich Exp $
 #
 # Author:  Juan Jose Garcia Ripoll <worm@arrakis.es>.
 # Webpage: http://www.arrakis.es/~worm/
@@ -13,8 +13,7 @@
 #
 #   touch Makefile
 #   make -f Makefile.os2 config
-#   make -f Makefile.os2 CC=gcc HOSTCC=gcc
-#   make -f Makefile.os2 CC=gcc HOSTCC=gcc
+#   make -f Makefile.os2 CC=gcc HOSTCC=gcc CXX=gcc
 #
 # Ignoring the following errors:
 #   Invalid configuration `os2'...
@@ -138,7 +137,7 @@ make.dlls : $(DEFS) $(LIBS) $(DLLS) $(LIBS_AOUT)
 
 $(DEFS) : make.defs
 
-LIBDIR = $(INSTALL_PREFIX)$(libdir)
+LIBDIR = $(DESTDIR)$(libdir)
 $(LIBDIR) :
        mkdir -p $@
 
@@ -188,8 +187,8 @@ realclean ::
 # This is a simplified version of misc/Makefile
 #
 
-TICDIR = $(INSTALL_PREFIX)$(datadir)/terminfo
-TABSETDIR = $(INSTALL_PREFIX)$(datadir)/tabset
+TICDIR = $(DESTDIR)$(datadir)/terminfo
+TABSETDIR = $(DESTDIR)$(datadir)/tabset
 
 $(TICDIR) :
        mkdir -p $@
diff --git a/NEWS b/NEWS
index 558846f556891cdd56f35b72f8de9a97ace501dc..796c894d977553b1d9de80e08ce275fac1db103c 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
--- $Id: NEWS,v 1.577 2000/07/08 20:59:25 tom Exp $
+-- $Id: NEWS,v 1.602 2000/10/21 00:42:11 tom Exp $
 
 This is a log of changes that ncurses has gone through since Zeyd started
 working with Pavel Curtis' original work, pcurses, in 1992.
@@ -6,6 +6,329 @@ working with Pavel Curtis' original work, pcurses, in 1992.
 Changes through 1.9.9e are recorded by Zeyd M. Ben-Halim.
 Changes since 1.9.9e are recorded by Thomas Dickey.
 
+20001021 5.2 release for upload to ftp.gnu.org
+       + update generated html files from manpages.
+       + modify dist.mk to use edit_man.sh to substitute autoconf'd variables
+         in html manpages.
+       + fix an uninitialized pointer in read_termcap.c (report by Todd C
+         Miller, from report/patch by Philip Guenther <guenther@gac.edu>).
+       + correct help-message and array limit in knight.c (patch by Brian
+         Raiter <breadbox@muppetlabs.com>).
+       > patch by Juergen Pfeifer:
+       + fix to avoid warning by GNAT-3.13p about use of inconsistent casing
+         for some identifiers defined in the standard package.
+       + cosmetic change to forms/fty_enum.c
+
+20001014
+       + correct an off-by-one position in test/railroad.c which could cause
+         wrapping at the right margin.
+       + test/repair some issues with libtool configuration.  Make
+         --disable-echo force libtool --silent.  (Libtool does not work for
+         OS/2 EMX, works partly for SCO - libtool is still very specific to
+         gcc).
+       + change default of --with-manpage-tbl to "no", since for most of the
+         platforms which do have tbl installed, the system "man" program
+         understands how to run tbl automatically.
+       + minor improvement to force_bar() in comp_parse.c (Bernhard
+         Rosenkraenzer <bero@redhat.de>).
+       + modify lib_tparm.c to use get_space() before writing terminating
+         null character, both for consistency as well as to ensure that if
+         save_char() was called immediately before, that the allocated memory
+         is enough (patch by Sergei Ivanov).
+       + add note about termcap ML capability which is duplicated between two
+         different capabilities:  smgl and smglr (reported by Sergei Ivanov
+         <svivanov@pdmi.ras.ru>).
+       + correct parameter counts in include/Caps for dclk as well as some
+         printer-specific capabilities: csnm, defc, scs, scsd, smgtp, smglp.
+       > patch by Johnny C Lam <lamj@stat.cmu.edu>:
+       + add support for building with libtool (apparently version 1.3.5,
+         since old versions do not handle -L../lib), using new configure
+         option --with-libtool.
+       + add configure option --with-manpage-tbl, which causes the manpages to
+         be preprocessed by tbl(1) prior to installation,
+       + add configure option --without-curses-h, which causes the
+         installation process to install curses.h as ncurses.h and make
+         appropriate changes to headers and manpages.
+
+20001009
+       + correct order of options/parameters in run_tic.in invocation of tic,
+         which did not work with standard getopt() (reported by Ethan
+         Butterfield <primus@veris.org>).
+       + correct logic for 'reverse' variable in lib_vidattr.c, which was
+         setting it true without checking if newmode had A_REVERSE set, e.g.,
+         using $TERM=ansi on OS/2 EMX (see 20000917).
+       > patch by Todd Miller:
+       + add a few missing use_terminfo_vars() and fixes up _nc_tgetent().
+         Previously, _nc_cgetset() would still get called on cp so the
+         simplest thing is to set cp to NULL if !use_terminfo_vars().
+       + added checks for an empty $HOME environment variable.
+       > patches by Ilya Zakharevich for OS/2 EMX:
+       + modify convert_configure.pl to support INSTALL.  Change compiler
+         options in that script to use multithreading, needed for the mouse.
+       + modify OS/2 mouse support, retrying as a 2-button mouse if code fails
+         to set up a 3-button mouse.
+       + improve code for OS/2 mouse support, using _nc_timed_wait() to
+         replace select() call.
+
+20001007
+       + change type of ospeed variable back to short to match its use in
+         legacy applications (reported by Andrey A Chernov).
+       + add case to configure script for --enable-rpath on IRIX (patch by
+         Albert Chin-A-Young).
+       + minor fix to position_check() function, to ensure it gets the whole
+         cursor report before decoding.
+       + add configure option --disable-assumed-color, to allow pre-5.1
+         convention of default colors used for color-pair 0 to be configured
+         (see assume_default_colors()).
+       + rename configure option --enable-hashmap --disable-hashmap, and
+         reorder the configure options, splitting the experimental and
+         development 
+       + add configure option --disable-root-environ, which tells ncurses to
+         disregard $TERMINFO and similar environment variables if the current
+         user is root, or running setuid/setgid (based on discussion with
+         several people).
+       + modified misc/run_tic.in to use tic -o, to eliminate dependency on
+         $TERMINFO variable for installs.
+       + add table entry for plab_norm to tput, so it passes in strings
+         for that capability.
+       + modify parse_format() in lib_tparm.c to ignore precision if it is
+         longer than 10000 (report by Jouko Pynnonen).
+       + rewrote limit checks in lib_mvcur.c using new functions
+         _nc_safe_strcat(), etc.  Made other related changes to check lengths
+         used for strcat/strcpy (report by Jouko Pynnonen <jouko@solutions.fi>).
+
+20000930
+       + modify several descriptions, including those for setaf, setab, in
+         include/Caps to indicate that the entries are parameterized.  This
+         information is used to tell which strings are translated when
+         converting to termcap.  Fixes a problem where the generated termcap
+         would contain a spurious "%p1" for the terminfo "%p1%d".
+       + modify ld -rpath options (e.g., Linux, and Solaris) to use an
+         absolute pathname for the build tree's lib directory (prompted by
+         discussion with Albert Chin-A-Young).
+       + modify "make install.man" and "make uninstall.man" to include tack's
+         man-page.
+       + various fixes for install scripts used to support configure --srcdir
+         and --with-install-prefix (reported by Matthew Clarke
+         <Matthew_Clarke@mindlink.bc.ca>).
+       + make configure script checks on variables $GCC and $GXX consistently
+         compare against 'yes' rather than test if they are nonnull, since
+         either may be set to the corresponding name of the C or C++ compiler
+         (report/patch by Albert Chin-A-Young).
+
+20000923
+       + modify rs2 capability in xterm-r6 and similar where cursor
+         save/restore bracketed the sequence for resetting video attributes. 
+         The cursor restore would undo that (from a NetBSD bug report by John
+         Hawkinson <jhawk@MIT.EDU>).
+       + using parameter check added to tic, corrected 27 typos in
+         terminfo.src -TD
+       + modify tic to verify that its inputs are really files, in case
+         someone tries to read a directory (or /dev/zero).
+       + add a check for empty buffers returned by fgets() in comp_scan.c
+         next_char() function, in case tic is run on a non-text file (fixes
+         a core dump reported by Aaron Campbell <aaron@cs.dal.ca>).
+       + add to railroad.c some code exercising tgoto(), providing an
+         alternate form of display if the terminal supports cursor addressing.
+       + split-out tgoto() again, this time into new file lib_tgoto.c, and
+         implement a conventional BSD-style tgoto() which is used if the
+         capability string does not contain terminfo-style padding or
+         parameters (requested by Andrey A Chernov).
+       + add check to tic which reports capabilities that do not reference
+         the expected number of parameters.
+       + add error checking to infocmp's -v and -m options to ensure that
+         the option value is indeed a number.
+
+20000917
+       + add S0, E0 extensions to screen's terminfo entry, which is another
+         way to solve the misconfiguration issue -TD
+       + completed special case for tgoto from 20000916
+
+20000916
+       + update xterm terminfo entries to match XFree86 xterm patch #146 -TD
+       + add Matrix Orbital terminfo entries (from Eric Z Ayers
+         <eric@ale.org>).
+       + add special case to lib_tparm.c to allow 'screen' program to use a
+         termcap-style parameter "%." to tgoto() for switching character sets.
+       + use LN_S substitution in run_tic.in, to work on OS/2 EMX which has
+         no symbolic links.
+       + updated notes in README.emx regarding autoconf patches.
+       + replace a lookup table in lib_vidattr.c used to decode no_color_video
+         with a logic expression (suggested by Philippe Blain).
+       + add a/A toggle to ncurses.c 'b' test, which clears/sets alternate
+         character set attribute from the displayed text.
+       + correct inequality in parameter analysis of rewritten lib_tparm.c
+         which had the effect of ignoring p9 in set_attributes (sgr), breaking
+         alternate character set (reported by Piotr Majka <charvel@link.pl>).
+       + correct ifdef'ing for GCC_PRINTF, GCC_SCANF which would not compile
+         with Sun WorkShop compilers since these tokens were empty (cf: 
+         20000902, reported by Albert Chin-A-Young).
+
+20000909
+       + correct an uninitialized parameter to open_tempfile() in tic.c which
+         made "tic -I" give an ambiguous error message about tmpnam.
+       + add special case in lib_vidattr.c to reset underline and standout for
+         devices that have no sgr0 defined (patch by Don Lewis
+         <Don.Lewis@tsc.tdk.com>).  Note that this will not work for bold
+         mode, since there is no exit-bold-mode capability.
+       + improved patch for Make_Enum_Type (patch by Juergen Pfeifer).
+       + modify tparm to disallow arithmetic on strings, analyze the varargs
+         list to read strings as strings and numbers as numbers.
+       + modify tparm's internal function spop() to treat a null pointer as
+         an empty string.
+       + modify tput program so it can be renamed or invoked via a link as
+         'reset' or 'init', producing the same effect as 'tput reset' or 'tput
+         init'.
+       + add private entrypoint _nc_basename(), use to consolidate related
+         code in progs, as well as accommodating OS/2 EMX pathnames.
+       + remove NCURSES_CONST line from edit_cfg.sh to compensate for its
+         removal (except via AC_SUBST) from configure.in, making --enable-const
+         work again (reported by Juergen Pfeifer).
+       + regen'd configure to pick up "hpux*" change from 20000902.
+
+20000902
+       + modify tset.c to check for transformed "reset" program name, if any.
+       + add a check for null pointer in Make_Enum_Type() (reported by Steven
+         W Orr <steveo@world.std.com>).
+       + change functions _nc_parse_entry() and postprocess_termcap() to avoid
+         using strtok(), because it is non-reentrant (reported by Andrey A
+         Chernov <ache@nagual.pp.ru>).
+       + remove "hpux10.*" case from CF_SHARED_OPTS configure script macro.
+         This differed from the "hpux*" case by using reversed symbolic
+         links, which made the 5.1 version not match the configuration of
+         5.0 shared libraries (reported by Albert Chin-A-Young).
+       + correct a dependency in Ada95/src/Makefile.in which prevented
+         building with configure --srcdir (patch by H Nanosecond
+         <aldomel@ix.netcom.com>).
+       + modify ifdef's in curses.h.in to avoid warning if GCC_PRINTF or
+         GCC_SCANF was not previously defined (reported by Pavel Roskin
+         <proski@gnu.org>).
+       + add MKncurses_def.sh to generate fallback definitions for
+         ncurses_cfg.h, to quiet gcc -Wundef warnings, modified ifdef's in
+         code to consistently use "#if" rather than "#ifdef".
+
+20000826
+       + add QNX qansi entries to terminfo -TD
+       + add os2 entry to misc/emx.src (<jmcoopr@webmail.bmi.net>).
+       + add configure option --with-database to allow specifying a different
+         terminfo source-file to install.  On OS/2 EMX, this defaults to
+         misc/emx.src
+       + change misc/run_tic.sh to derive it from misc/run_tic.in, to simplify
+         setting .exe extension on OS/2 EMX.
+       + add .exe extension in Ada95/gen/Makefile.in,
+         Ada95/samples/Makefile.in, for OS/2 EMX (reported by
+         <jmcoopr@webmail.bmi.net>).
+       + add configure check for filesystems (such as OS/2 EMX) which do not
+         distinguish between upper/lowercase filenames, use this to fix tags
+         rules in makefiles.
+       + initialize fds[] array to 0's in _nc_timed_wait(); apparently poll()
+         only sets the revents members of that array when there is activity
+         corresponding to the related file (report by Glenn Cooper
+         <gcooper@qantas.com.au>, using Purify on Solaris 5.6).
+       + change configure script to use AC_CANONICAL_SYSTEM rather than
+         AC_CANONICAL_HOST, which means that configure --target will set
+         a default program-prefix.
+       + add note on cross-compiling to INSTALL (which does not rely on the
+         AC_CANONICAL_* macros).
+
+20000819
+       + add cases for EMX OS/2 to config.guess, config.sub
+       + new version of config.guess, config.sub from lynx 2.8.4dev.7
+       + add definitions via transform.h to allow tic and tput to check for
+         the transformed aliases rather than the original infotocap, etc.
+       + simplify transform-expressions in progs/Makefile.in, make the
+         uninstall rule work for transformed program names.
+       + change symbol used by --install-prefix configure option from
+         INSTALL_PREFIX to DESTDIR (the latter has become common usage
+         although the name is misleading).
+       + modify programs to use curses_version() string to report the version
+         of ncurses with which they are compiled rather than the
+         NCURSES_VERSION string.  The function returns the patch level in
+         addition to the major and minor version numbers.
+
+20000812
+       + modify CF_MAN_PAGES configure macro to make transformed program names
+         a parameter to that macro rather than embedding them in the macro.
+       + newer config.guess, config.sub (reference version used in lynx
+         2.8.4dev.7).
+       + add configure option --with-default-terminfo-dir=DIR to allow
+         specifying the default terminfo database directory (request by Albert
+         Chin-A-Young).
+       + minor updates for terminfo.src from FreeBSD termcap change-history.
+       + correct notes in README and INSTALL regarding documentation files
+         that were moved from misc directory to doc (report by Rich Kulawiec
+         <rsk@gsp.org>).
+       + change most remaining unquoted parameters of 'test' in configure
+         script to use quotes, for instance fixing a problem in the
+         --disable-database option (reported by Christian Mondrup
+         <scancm@biobase.dk>).
+       + minor adjustments to work around some of the incompatibilities/bugs
+         in autoconf 2.29a alpha.
+       + add -I/usr/local/include when --with-ncurses option is used in
+         test/configure script.
+       + correct logic in adjust_cancels(), which did not check both
+         alternatives when reclassifying an extended name between boolean,
+         number and string, causing an infinite loop in tic.
+
+20000730
+       + correct a missing backslash in curses.priv.h
+
+20000729
+       + change handling of non_dest_scroll_region in tty_update.c to clear
+         text after it is shifted in rather than before shifting out.  Also
+         correct row computation (reported by Ruediger Kuhlmann
+         <uck4@rz.uni-karlsruhe.de>).
+       + add/use new trace function to display chtype values from winch() and
+         getbkgd().
+       + add trace mask TRACE_ATTRS, alter several existing _tracef calls that
+         trace attribute changes under TRACE_CALLS to use this.
+       + modify MKlib_gen.sh so that functions returning chtype will call
+         returnChar().
+       + add returnChar() trace, for functions returning chtype.
+       + change indent.pro to line up parenthesis.
+
+20000722
+       + fix a heap problem with the c++ binding (report by
+         <alexander_liberson@ninewest.com>, patch by Juergen Pfeifer).
+       + minor adjustment to ClrToEOL() to handle an out-of-bounds parameter.
+       + modify the check for big-core to force a couple of memory accesses,
+         which may work as needed for older/less-capable machines (if not,
+         there's still the explicit configure option).
+       > fixes based on diff's for Amiga and BeOS found at
+         http://www.mathematik.uni-karlsruhe.de/~kuhlmann/cross/ncurses/
+       + alter definition of NCURSES_CONST to make it non-empty.
+       + add amiga-vnc terminfo entry.
+       + redefine 'TEXT' in menu.h for AMIGA, since it is reported to have
+         an (unspecified) symbol conflict.
+       + replaced case-statement in _nc_tracebits() for CSIZE with a table to
+         simplify working around implementations that define random
+         combinations of the related macros to zero.
+       + modify configure test for tcgetattr() to allow for old
+         implementations, e.g., on BeOS, which only defined it as a macro.
+       > patches by Bruno Haible:
+       + when checking LC_ALL/LC_CTYPE/LANG environment variables for UTF-8
+         locale, ignore those which are set to an empty value, as per SUSV2.
+       + encode 0xFFFD in UTF-8 with 3 bytes, not 2.
+       + modify _nc_utf8_outch() to avoid sign-extension when checking for
+         out-of-range value.
+
+20000715
+       + correct manlinks.sed script to avoid using ERE "\+", which is not
+         understood by older versions of sed (patch by Albert Chin-A-Young).
+       + implement configure script options that transform installed program
+         names, e.g., --program-prefix, including the manpage names and cross
+         references (patch by Albert Chin-A-Young <china@thewrittenword.com>).
+       + correct several mismatches between manpage filename and ".TH"
+         directives, renaming dft_fgbg.3x to default_colors.3x and
+         menu_attribs.3x to menu_attributes.3x (report by Todd C Miller).
+       + correct missing includes for <string.h> in several places, including
+         the C++ binding.  This is not noted by gcc unless we use the
+         -fno-builtin option (reported by Igor Schein <igor@txc.com>).
+       + modified progs/tset.c and tack/sysdep.c to build with sgttyb
+         interface if neither termio or termios is available.  Tested this
+         with FreeBSD 2.1.5 (which does have termios - but the sgttyb does
+         work).
+
 20000708 5.1 release for upload to ftp.gnu.org
        + document configure options in INSTALL.
        + add man-page for ncurses trace functions.
diff --git a/README b/README
index 8b8c78ac29a3d93654199c02e5b96ddaa358baaf..c46fc195ac5b397ca6471eedc0b22da90bcaee7a 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
--- $Id: README,v 1.19 1999/10/23 20:39:24 tom Exp $
+-- $Id: README,v 1.20 2000/08/12 23:31:21 tom Exp $
 -------------------------------------------------------------------------------
                README file for the ncurses package
 
@@ -10,7 +10,7 @@ See the file TO-DO for things that still need doing, including known bugs.
 Browse the file misc/ncurses-intro.html for narrative descriptions of how
 to use ncurses and the panel, menu, and form libraries.
  
-Browse the file misc/hackguide.html for a tour of the package internals.
+Browse the file doc/html/hackguide.html for a tour of the package internals.
 
 ROADMAP AND PACKAGE OVERVIEW:
 
@@ -96,10 +96,10 @@ descriptions; the next two (clear and tput) are for use in shell scripts.  The
 last (tset) is provided for 4.4BSD compatibility.  The source code for all of
 these lives in the `progs' directory.
 
-Detailed documentation for all libraries and utilities can be found in
-the `man' directory.  An HTML introduction to ncurses, panels, and
-menus programming lives in the `misc' directory.  Manpages in HTML format
-are under `Ada95/html'.
+Detailed documentation for all libraries and utilities can be found in the
+`man' and `doc' directories.  An HTML introduction to ncurses, panels, and
+menus programming lives in the `doc/html' directory.  Manpages in HTML format
+are under `doc/html/man'.
 
 The `test' directory contains programs that can be used to verify or
 demonstrate the functions of the ncurses libraries.  See test/README for
@@ -171,5 +171,5 @@ suggesting improvements, and generally whining about ncurses :-)
 
 BUGS:
        See the INSTALL file for bug and developer-list addresses.
-       The Hacker's Guide in the misc directory includes some guidelines
+       The Hacker's Guide in the doc directory includes some guidelines
        on how to report bugs in ways that will get them fixed most quickly.
index 15882d3b62dae1ac8108a20a11248987779ceb36..3f3d526a94e42d161d110574baecfda063fd2792 100644 (file)
@@ -1,5 +1,5 @@
--- $Id: README.emx,v 1.2 2000/05/06 17:41:56 tom Exp $
--- Author: Thomas Dickey <dickey@clark.net>
+-- $Id: README.emx,v 1.4 2000/09/16 19:28:28 tom Exp $
+-- Author: Thomas Dickey
 -------------------------------------------------------------------------------
 
 You can build ncurses on OS/2 in the EMX environment.  But you must build and
@@ -11,7 +11,7 @@ You can generate a new one if you have autoconf built for EMX.  You will need
 the EMX development tools, of course.  Get these programs to start:
 
        GNU m4 program (version 1.4)
-       GNU autoconf (version 2.12).
+       GNU autoconf (version 2.13).
        GNU patch (version 2.5)
 
 Apply the autoconf patches from
@@ -21,11 +21,8 @@ Apply the autoconf patches from
 
 These are ordered by date:
 
-       autoconf-2.12-970309.patch.gz
-       autoconf-2.12-970429.patch.gz
-       autoconf-2.12-971222-emx.patch.gz
-       autoconf-2.12-971222.patch.gz
-       autoconf-2.12-971230.patch.gz
+       autoconf-2.13-20000819.patch.gz
+       autoconf-2.13-20000819-emx.patch.gz
 
 I built my development environment for ncurses using EMX 0.9c at the end of
 1997.  Much of the EMX patch for autoconf was done originally by J.J.G.Ripoll,
index 490bbed7a557880b4445caef528f5532bacd17a3..6782f0fb183fdad6083f570690e1c6cab1e07af2 100644 (file)
@@ -26,11 +26,13 @@ dnl sale, use or other dealings in this Software without prior written       *
 dnl authorization.                                                           *
 dnl***************************************************************************
 dnl
-dnl Author: Thomas E. Dickey <dickey@clark.net> 1996,1997,1998
+dnl Author: Thomas E. Dickey 1996,1997,1998,1999,2000
 dnl
-dnl $Id: aclocal.m4,v 1.214 2000/07/07 15:11:34 tom Exp $
+dnl $Id: aclocal.m4,v 1.238 2000/10/20 22:57:49 tom Exp $
 dnl Macros used in NCURSES auto-configuration script.
 dnl
+dnl See http://dickey.his.com/autoconf/ for additional information.
+dnl
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl Construct the list of include-options for the C programs in the Ada95
@@ -41,7 +43,7 @@ ACPPFLAGS="$ACPPFLAGS -I. -I../../include"
 if test "$srcdir" != "."; then
        ACPPFLAGS="$ACPPFLAGS -I\$(srcdir)/../../include"
 fi
-if test -z "$GCC"; then
+if test "$GCC" != yes; then
        ACPPFLAGS="$ACPPFLAGS -I\$(includedir)"
 elif test "$includedir" != "/usr/include"; then
        if test "$includedir" = '${prefix}/include' ; then
@@ -129,7 +131,7 @@ dnl Treat the configuration-variable specially here, since we're directly
 dnl substituting its value (i.e., 1/0).
 AC_DEFUN([CF_BOOL_DECL],
 [
-AC_MSG_CHECKING([for builtin ifelse(AC_LANG,[C],$CC,$CXX) bool type])
+AC_MSG_CHECKING([for builtin bool type])
 AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
        AC_TRY_COMPILE([
 #include <stdio.h>
@@ -138,7 +140,7 @@ AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
                [ifelse($1,,cf_cv_builtin_bool,[$1])=1],
                [ifelse($1,,cf_cv_builtin_bool,[$1])=0])
        ])
-if test $ifelse($1,,cf_cv_builtin_bool,[$1]) = 1
+if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1
 then   AC_MSG_RESULT(yes)
 else   AC_MSG_RESULT(no)
 fi
@@ -148,13 +150,13 @@ dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
 dnl Don't bother looking for bool.h, since it's been deprecated.
 AC_DEFUN([CF_BOOL_SIZE],
 [
-AC_MSG_CHECKING([for size of ifelse(AC_LANG,[C],$CC,$CXX) bool])
+AC_MSG_CHECKING([for size of bool])
 AC_CACHE_VAL(cf_cv_type_of_bool,[
        rm -f cf_test.out
        AC_TRY_RUN([
 #include <stdlib.h>
 #include <stdio.h>
-#if HAVE_GXX_BUILTIN_H
+#ifdef HAVE_GXX_BUILTIN_H
 #include <g++/builtin.h>
 #elif HAVE_GPP_BUILTIN_H
 #include <gpp/builtin.h>
@@ -259,18 +261,20 @@ AC_TRY_LINK([
        [cf_cv_cgetent=no])
 ])
 AC_MSG_RESULT($cf_cv_cgetent)
-test $cf_cv_cgetent = yes && AC_DEFINE(HAVE_BSD_CGETENT)
+test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl Check if we're accidentally using a cache from a different machine.
 dnl Derive the system name, as a check for reusing the autoconf cache.
 dnl
 dnl If we've packaged config.guess and config.sub, run that (since it does a
-dnl better job than uname).
+dnl better job than uname).  Normally we'll use AC_CANONICAL_HOST, but allow
+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
+dnl which is useful in cross-compiles.
 AC_DEFUN([CF_CHECK_CACHE],
 [
 if test -f $srcdir/config.guess ; then
-       AC_CANONICAL_HOST
+       ifelse([$1],,[AC_CANONICAL_HOST],[$1])
        system_name="$host_os"
 else
        system_name="`(uname -s -r) 2>/dev/null`"
@@ -359,7 +363,7 @@ dnl is a late feature for the standard and is not in some recent compilers
 dnl (1999/9/11).
 AC_DEFUN([CF_CPP_PARAM_INIT],
 [
-if test -n "$CXX" ; then
+if test "$CXX" = yes ; then
 AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[
        AC_LANG_CPLUSPLUS
        AC_TRY_RUN([
@@ -456,7 +460,7 @@ int main() {
                [cf_cv_good_bcopy=unknown])
                ])
        ],[cf_cv_good_bcopy=no])
-       if test $cf_cv_good_bcopy = yes ; then
+       if test "$cf_cv_good_bcopy" = yes ; then
                AC_DEFINE(USE_OK_BCOPY)
        else
                AC_DEFINE(USE_MY_MEMMOVE)
@@ -490,12 +494,39 @@ int main() {
 test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl Some old/broken variations define tcgetattr() only as a macro in
+dnl termio(s).h
+AC_DEFUN([CF_FUNC_TERMIOS],[
+AC_REQUIRE([CF_STRUCT_TERMIOS])
+AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[
+AC_TRY_LINK([
+#include <sys/types.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#define TTY struct termios
+#else
+#ifdef HAVE_TERMIO_H
+#include <termio.h>
+#define TTY struct termio
+#endif
+#endif
+],[
+TTY foo;
+tcgetattr(1, &foo);],
+[cf_cv_have_tcgetattr=yes],
+[cf_cv_have_tcgetattr=no])])
+test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl Test for availability of useful gcc __attribute__ directives to quiet
 dnl compiler warnings.  Though useful, not all are supported -- and contrary
 dnl to documentation, unrecognized directives cause older compilers to barf.
 AC_DEFUN([CF_GCC_ATTRIBUTES],
 [
-if test -n "$GCC"
+if test "$GCC" = yes
 then
 cat > conftest.i <<EOF
 #ifndef GCC_PRINTF
@@ -511,7 +542,7 @@ cat > conftest.i <<EOF
 #define GCC_UNUSED /* nothing */
 #endif
 EOF
-if test -n "$GCC"
+if test "$GCC" = yes
 then
        AC_CHECKING([for $CC __attribute__ directives])
        changequote(,)dnl
@@ -578,7 +609,7 @@ dnl -pedantic
 dnl
 AC_DEFUN([CF_GCC_WARNINGS],
 [
-if test -n "$GCC"
+if test "$GCC" = yes
 then
        changequote(,)dnl
        cat > conftest.$ac_ext <<EOF
@@ -679,7 +710,7 @@ os2*) #(vi
        cf_gpp_libname=g++
        ;;
 esac
-if test $ac_cv_prog_gxx = yes; then
+if test "$ac_cv_prog_gxx" = yes; then
        AC_MSG_CHECKING([for lib$cf_gpp_libname])
        cf_save="$LIBS"
        LIBS="$LIBS -l$cf_gpp_libname"
@@ -722,7 +753,7 @@ CPPFLAGS="$CPPFLAGS -I. -I../include"
 if test "$srcdir" != "."; then
        CPPFLAGS="$CPPFLAGS -I\$(srcdir)/../include"
 fi
-if test -z "$GCC"; then
+if test "$GCC" != yes; then
        CPPFLAGS="$CPPFLAGS -I\$(includedir)"
 elif test "$includedir" != "/usr/include"; then
        if test "$includedir" = '${prefix}/include' ; then
@@ -746,7 +777,7 @@ AC_CACHE_VAL(cf_cv_have_isascii,[
        [cf_cv_have_isascii=no])
 ])dnl
 AC_MSG_RESULT($cf_cv_have_isascii)
-test $cf_cv_have_isascii = yes && AC_DEFINE(HAVE_ISASCII)
+test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl Compute the library-prefix for the given host system
@@ -785,7 +816,7 @@ do
                do
                        CF_LIB_SUFFIX($cf_item,cf_suffix)
                        if test $cf_item = shared ; then
-                       if test $cf_cv_do_symlinks = yes ; then
+                       if test "$cf_cv_do_symlinks" = yes ; then
                                case "$cf_cv_shlib_version" in #(vi
                                rel) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;; #(vi
                                abi) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;;
@@ -933,6 +964,18 @@ distclean ::
        rm -rf \$(DIRS_TO_MAKE)
 CF_EOF
 
+# Special case: tack's manpage lives in its own directory.
+if test -d tack ; then
+if test -f $srcdir/$tack.h; then
+cat >> Makefile <<CF_EOF
+
+install.man \
+uninstall.man ::
+       cd tack && \$(MAKE) \$(CF_MFLAGS) \[$]@
+CF_EOF
+fi
+fi
+
 dnl If we're installing into a subdirectory of /usr/include, etc., we should
 dnl prepend the subdirectory's name to the "#include" paths.  It won't hurt
 dnl anything, and will make it more standardized.  It's awkward to decide this
@@ -957,27 +1000,62 @@ done
 DST=\[$]1
 REF=\[$]2
 SRC=\[$]3
+TMPSRC=\${TMPDIR-/tmp}/\`basename \$SRC\`\$\$
+TMPSED=\${TMPDIR-/tmp}/headers.sed\$\$
 echo installing \$SRC in \$DST
+CF_EOF
+if test $WITH_CURSES_H = yes; then
+       cat >>headers.sh <<CF_EOF
 case \$DST in
 /*/include/*)
-       TMPSRC=\${TMPDIR-/tmp}/\`basename \$SRC\`\$\$
-       TMPSED=\${TMPDIR-/tmp}/headers.sed\$\$
        END=\`basename \$DST\`
        for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
        do
                NAME=\`basename \$i\`
                echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
        done
-       rm -f \$TMPSRC
-       sed -f \$TMPSED \$SRC > \$TMPSRC
-       eval \$PRG \$TMPSRC \$DST/\$SRC
-       rm -f \$TMPSRC \$TMPSED
        ;;
 *)
-       eval \$PRG \$SRC \$DST
+       echo "" >> \$TMPSED
        ;;
 esac
 CF_EOF
+else
+       cat >>headers.sh <<CF_EOF
+case \$DST in
+/*/include/*)
+       END=\`basename \$DST\`
+       for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
+       do
+               NAME=\`basename \$i\`
+               if test "\$NAME" = "curses.h"
+               then
+                       echo "s/<curses.h>/<ncurses.h>/" >> \$TMPSED
+                       NAME=ncurses.h
+               fi
+               echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
+       done
+       ;;
+*)
+       echo "s/<curses.h>/<ncurses.h>/" >> \$TMPSED
+       ;;
+esac
+CF_EOF
+fi
+cat >>headers.sh <<CF_EOF
+rm -f \$TMPSRC
+sed -f \$TMPSED \$SRC > \$TMPSRC
+NAME=\`basename \$SRC\`
+CF_EOF
+if test $WITH_CURSES_H != yes; then
+       cat >>headers.sh <<CF_EOF
+test "\$NAME" = "curses.h" && NAME=ncurses.h
+CF_EOF
+fi
+cat >>headers.sh <<CF_EOF
+eval \$PRG \$TMPSRC \$DST/\$NAME
+rm -f \$TMPSRC \$TMPSED
+CF_EOF
 
 chmod 0755 headers.sh
 
@@ -985,12 +1063,12 @@ for cf_dir in $SRC_SUBDIRS
 do
        if test -f $srcdir/$cf_dir/headers; then
        cat >>$cf_dir/Makefile <<CF_EOF
-\$(INSTALL_PREFIX)\$(includedir) :
+\$(DESTDIR)\$(includedir) :
        \$(srcdir)/../mkinstalldirs \[$]@
 
 install \\
 install.libs \\
-install.includes :: \$(INSTALL_PREFIX)\$(includedir) \\
+install.includes :: \$(AUTO_SRC) \$(DESTDIR)\$(includedir) \\
 CF_EOF
                j=""
                for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"`
@@ -1001,8 +1079,8 @@ CF_EOF
                echo "          $j" >>$cf_dir/Makefile
                for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"`
                do
-                       echo "  @ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(INSTALL_PREFIX)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile
-                       test $i = curses.h && echo "    @ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile
+                       echo "  @ (cd \$(DESTDIR)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(DESTDIR)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile
+                       test $i = curses.h && test $WITH_CURSES_H = yes && echo "       @ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile
                done
 
        cat >>$cf_dir/Makefile <<CF_EOF
@@ -1014,8 +1092,8 @@ CF_EOF
                for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"`
                do
                        i=`basename $i`
-                       echo "  -@ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f $i)" >>$cf_dir/Makefile
-                       test $i = curses.h && echo "    -@ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile
+                       echo "  -@ (cd \$(DESTDIR)\$(includedir) && rm -f $i)" >>$cf_dir/Makefile
+                       test $i = curses.h && echo "    -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile
                done
        fi
 done
@@ -1030,6 +1108,7 @@ AC_DEFUN([CF_LIB_SUFFIX],
 [
        AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
        case $1 in
+       libtool) $2='.la'  ;;
        normal)  $2='.a'   ;;
        debug)   $2='_g.a' ;;
        profile) $2='_p.a' ;;
@@ -1049,6 +1128,7 @@ dnl The variable $LIB_SUFFIX, if set, prepends the variable to set.
 AC_DEFUN([CF_LIB_TYPE],
 [
        case $1 in
+       libtool) $2=''   ;;
        normal)  $2=''   ;;
        debug)   $2='_g' ;;
        profile) $2='_p' ;;
@@ -1114,7 +1194,7 @@ EOF
        LIBS="$cf_saveLIBS"
        ])
 AC_MSG_RESULT($cf_cv_link_dataonly)
-test $cf_cv_link_dataonly = no && AC_DEFINE(BROKEN_LINKER)
+test "$cf_cv_link_dataonly" = no && AC_DEFINE(BROKEN_LINKER)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl Most Unix systems have both link and symlink, a few don't have symlink.
@@ -1161,14 +1241,14 @@ int main()
 }
                        ],[
                        cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
-                       eval 'ac_cv_func_'$cf_func'=yes'
-                       CF_UPPER(cf_FUNC,$cf_func)
-                       AC_DEFINE_UNQUOTED(HAVE_$cf_FUNC)],[
+                       eval 'ac_cv_func_'$cf_func'=yes'],[
                        eval 'ac_cv_func_'$cf_func'=no'],[
                        eval 'ac_cv_func_'$cf_func'=error'])
                done
                test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
        ])
+       test "$ac_cv_func_link"    = yes && AC_DEFINE(HAVE_LINK)
+       test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -1208,6 +1288,33 @@ AC_MSG_RESULT($cf_cv_makeflags)
 AC_SUBST(cf_cv_makeflags)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl Generate tags/TAGS targets for makefiles.  Do not generate TAGS if we have
+dnl a monocase filesystem.
+AC_DEFUN([CF_MAKE_TAGS],[
+AC_REQUIRE([CF_MIXEDCASE_FILENAMES])
+AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no)
+
+if test "$cf_cv_mixedcase" = yes ; then
+       AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no)
+else
+       MAKE_UPPER_TAGS=no
+fi
+
+if test "$MAKE_UPPER_TAGS" = yes ; then
+       MAKE_UPPER_TAGS=
+else
+       MAKE_UPPER_TAGS="#"
+fi
+AC_SUBST(MAKE_UPPER_TAGS)
+
+if test "$MAKE_LOWER_TAGS" = yes ; then
+       MAKE_LOWER_TAGS=
+else
+       MAKE_LOWER_TAGS="#"
+fi
+AC_SUBST(MAKE_LOWER_TAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl Option to allow user to override automatic configuration of manpage format.
 dnl There are several special cases.
 AC_DEFUN([CF_MANPAGE_FORMAT],
@@ -1317,6 +1424,20 @@ AC_ARG_WITH(manpage-symlinks,
 AC_MSG_RESULT($cf_manpage_symlinks)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl This option causes manpages to be run through tbl(1) to generate tables
+dnl correctly.
+AC_DEFUN([CF_MANPAGE_TBL],
+[
+AC_MSG_CHECKING(for manpage tbl)
+
+AC_ARG_WITH(manpage-tbl,
+       [  --with-manpage-tbl      specify manpage processing with tbl],
+       [cf_manpage_tbl=$withval],
+       [cf_manpage_tbl=no])
+
+AC_MSG_RESULT($cf_manpage_tbl)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl Try to determine if the man-pages on the system are compressed, and if
 dnl so, what format is used.  Use this information to construct a script that
 dnl will install man-pages.
@@ -1326,6 +1447,7 @@ CF_HELP_MESSAGE(Options to Specify How Manpages are Installed:)
 CF_MANPAGE_FORMAT
 CF_MANPAGE_RENAMES
 CF_MANPAGE_SYMLINKS
+CF_MANPAGE_TBL
 
   if test "$prefix" = "NONE" ; then
      cf_prefix="$ac_default_prefix"
@@ -1351,9 +1473,11 @@ changequote({{,}})dnl
 # this script is generated by the configure-script
 prefix="$cf_prefix"
 datadir="$datadir"
+TERMINFO="$TERMINFO"
 MKDIRS="`cd $srcdir && pwd`/mkinstalldirs"
 INSTALL="$INSTALL"
 INSTALL_DATA="$INSTALL_DATA"
+transform="$program_transform_name"
 
 TMP=\${TMPDIR-/tmp}/man\$\$
 trap "rm -f \$TMP" 0 1 2 5 15
@@ -1379,16 +1503,52 @@ case \$i in #(vi
        fi
        aliases=
        source=\`basename \$i\`
+       inalias=\$source
+       test ! -f \$inalias && inalias="\$srcdir/\$inalias"
+       if test ! -f \$inalias ; then
+               echo .. skipped \$source
+               continue
+       fi
 CF_EOF
 if test "$cf_manpage_symlinks" = yes ; then
 cat >>man/edit_man.sh <<CF_EOF
-       aliases=\`sed -f \$srcdir/manlinks.sed \$source | sort -u\`
+       aliases=\`sed -f \$srcdir/manlinks.sed \$inalias | sort -u\`
 CF_EOF
 fi
 if test "$cf_manpage_renames" = no ; then
 cat >>man/edit_man.sh <<CF_EOF
-       target=$cf_subdir\${section}/\$source
-       sed -e "s,@DATADIR@,\$datadir," < \$i >\$TMP
+       # perform program transformations for section 1 man pages
+       if test \$section = 1 ; then
+               target=$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
+       else
+               target=$cf_subdir\${section}/\$source
+       fi
+
+       # replace variables in man page
+CF_EOF
+       ifelse($1,,,{{
+       for cf_name in $1
+       do
+cat >>man/edit_man.sh <<CF_EOF
+       prog_$cf_name=\`echo $cf_name|sed "\${transform}"\`
+CF_EOF
+       done
+       }})
+cat >>man/edit_man.sh <<CF_EOF
+       sed     -e "s,@DATADIR@,\$datadir," \\
+               -e "s,@TERMINFO@,\$TERMINFO," \\
+CF_EOF
+       ifelse($1,,,{{
+       for cf_name in $1
+       do
+               cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cat >>man/edit_man.sh <<CF_EOF
+               -e "s,@$cf_NAME@,\$prog_$cf_name," \\
+CF_EOF
+       done
+       }})
+cat >>man/edit_man.sh <<CF_EOF
+               < \$i >\$TMP
 CF_EOF
 else
 cat >>man/edit_man.sh <<CF_EOF
@@ -1401,6 +1561,18 @@ cat >>man/edit_man.sh <<CF_EOF
        test \$verb = installing && sed -e "s,@DATADIR@,\$datadir," < \$i | sed -f edit_man.sed >\$TMP
 CF_EOF
 fi
+if test $cf_manpage_tbl = yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       tbl \$TMP >\$TMP.out
+       mv \$TMP.out \$TMP
+CF_EOF
+fi
+if test $with_curses_h != yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       sed -e "/\#[    ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
+       mv \$TMP.out \$TMP
+CF_EOF
+fi
 if test $cf_format = yes ; then
 cat >>man/edit_man.sh <<CF_EOF
        nroff -man \$TMP >\$TMP.out
@@ -1438,15 +1610,19 @@ CF_EOF
   ;;
 esac
 cat >>man/edit_man.sh <<CF_EOF
-       echo \$verb \$target
        suffix=\`basename \$target | sed -e 's/^[^.]*//'\`
        if test \$verb = installing ; then
+               echo \$verb \$target
                \$INSTALL_DATA \$TMP \$target
                test -n "\$aliases" && (
                        cd $cf_subdir\${section} && (
                                target=\`basename \$target\`
                                for cf_alias in \$aliases
                                do
+                                       if test \$section = 1 ; then
+                                               cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+                                       fi
+
                                        if test -f \$cf_alias\${suffix} ; then
                                                if ( cmp -s \$target \$cf_alias\${suffix} )
                                                then
@@ -1464,17 +1640,25 @@ cat >>man/edit_man.sh <<CF_EOF
                                done
                        )
                )
-       else
+       elif test \$verb = removing ; then
+               echo \$verb \$target
                rm -f \$target
                test -n "\$aliases" && (
                        cd $cf_subdir\${section} && (
                                for cf_alias in \$aliases
                                do
+                                       if test \$section = 1 ; then
+                                               cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+                                       fi
+
                                        echo .. \$verb alias \$cf_alias\${suffix}
                                        rm -f \$cf_alias\${suffix}
                                done
                        )
                )
+       else
+#              echo ".hy 0"
+               cat \$TMP
        fi
        ;;
 esac
@@ -1508,10 +1692,28 @@ ifelse($1,,[
 fi
 ])
 dnl ---------------------------------------------------------------------------
+dnl Check if the file-system supports mixed-case filenames.  If we're able to
+dnl create a lowercase name and see it as uppercase, it doesn't support that.
+AC_DEFUN([CF_MIXEDCASE_FILENAMES],
+[
+AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
+       rm -f conftest CONFTEST
+       echo test >conftest
+       if test -f CONFTEST ; then
+               cf_cv_mixedcase=no
+       else
+               cf_cv_mixedcase=yes
+       fi
+       rm -f conftest CONFTEST
+])
+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl Compute the object-directory name from the given model name
 AC_DEFUN([CF_OBJ_SUBDIR],
 [
        case $1 in
+       libtool) $2='obj_lo'  ;;
        normal)  $2='objects' ;;
        debug)   $2='obj_g' ;;
        profile) $2='obj_p' ;;
@@ -1665,7 +1867,7 @@ AC_DEFUN([CF_SHARED_OPTS],
 
        # Some less-capable ports of gcc support only -fpic
        CC_SHARED_OPTS=
-       if test -n "$GCC"
+       if test "$GCC" = yes
        then
                AC_MSG_CHECKING(which $CC option to use)
                cf_save_CFLAGS="$CFLAGS"
@@ -1682,23 +1884,9 @@ AC_DEFUN([CF_SHARED_OPTS],
        beos*)
                MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0'
                ;;
-       hpux10.*)
-               # (tested with gcc 2.7.2 -- I don't have c89)
-               if test -n "$GCC"; then
-                       LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)'
-               else
-                       CC_SHARED_OPTS='+Z'
-                       LD_SHARED_OPTS='-Wl,+b,$(libdir)'
-               fi
-               MK_SHARED_LIB='$(LD) +b $(libdir) -b +h `basename $[@]` -o $[@]'
-               # HP-UX shared libraries must be executable, and should be
-               # readonly to exploit a quirk in the memory manager.
-               INSTALL_LIB="-m 555"
-               cf_cv_do_symlinks=reverse
-               ;;
        hpux*)
                # (tested with gcc 2.7.2 -- I don't have c89)
-               if test -n "$GCC"; then
+               if test "$GCC" = yes; then
                        LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)'
                else
                        CC_SHARED_OPTS='+Z'
@@ -1710,21 +1898,27 @@ AC_DEFUN([CF_SHARED_OPTS],
                INSTALL_LIB="-m 555"
                ;;
        irix*)
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-Wl,-rpath,"
+                       EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS"
+               fi
                # tested with IRIX 5.2 and 'cc'.
-               if test -z "$GCC"; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]'
                cf_cv_rm_so_locs=yes
                ;;
        linux*|gnu*)
-               # tested with Linux 2.0.29 and gcc 2.7.2 (ELF)
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath,"
-               if test $DFT_LWR_MODEL = "shared" ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-Wl,-rpath,"
+                       EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $[@]'
                ;;
        openbsd2*)
@@ -1734,17 +1928,17 @@ AC_DEFUN([CF_SHARED_OPTS],
        openbsd*|freebsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -o $[@]'
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        netbsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath,"
-               if test $DFT_LWR_MODEL = "shared" && test $cf_cv_ld_rpath = yes ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath,"
+               if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
                        EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS"
                        MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]'
-                       if test $cf_cv_shlib_version = auto; then
+                       if test "$cf_cv_shlib_version" = auto; then
                        if test ! -f /usr/libexec/ld.elf_so; then
                                cf_cv_shlib_version=rel
                        fi
@@ -1758,56 +1952,63 @@ AC_DEFUN([CF_SHARED_OPTS],
                # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
                # link with shared libs).
                MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`'
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-rpath"
                case $host_os in
                osf4*)
                        MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
                        ;;
                esac
                MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]'
-               if test $DFT_LWR_MODEL = "shared" ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-rpath"
+                       # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
                cf_cv_rm_so_locs=yes
                ;;
        sco3.2v5*)  # (also uw2* and UW7) hops 13-Apr-98
                # tested with osr5.0.5
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-belf -KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@'
-               if test $cf_cv_ld_rpath = yes ; then
+               if test "$cf_cv_ld_rpath" = yes ; then
                        # only way is to set LD_RUN_PATH but no switch for it
                        RUN_PATH=$libdir
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                LINK_PROGS='LD_RUN_PATH=$(libdir)'
                LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib'
                ;;
        sunos4*)
                # tested with SunOS 4.1.1 and gcc 2.7.0
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]'
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        solaris2*)
                # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]'
-               if test $cf_cv_ld_rpath = yes ; then
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
                        cf_ld_rpath_opt="-R"
-                       EXTRA_LDFLAGS="-R ../lib:\$(libdir) $EXTRA_LDFLAGS"
+                       EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        sysv5uw7*|unix_sv*)
                # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc)
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -d y -G -o [$]@'
@@ -1835,11 +2036,11 @@ AC_DEFUN([CF_SHARED_OPTS],
        if test -n "$cf_ld_rpath_opt" ; then
                AC_MSG_CHECKING(if we need a space after rpath option)
                cf_save_LIBS="$LIBS"
-               LIBS="$LIBS ${cf_ld_rpath_opt}/usr/lib"
+               LIBS="$LIBS ${cf_ld_rpath_opt}$libdir"
                AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes)
                LIBS="$cf_save_LIBS"
                AC_MSG_RESULT($cf_rpath_space)
-               test $cf_rpath_space = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt "
+               test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt "
                MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)"
        fi
 
@@ -1858,8 +2059,8 @@ dnl Check for definitions & structures needed for window size-changing
 dnl FIXME: check that this works with "snake" (HP-UX 10.x)
 AC_DEFUN([CF_SIZECHANGE],
 [
-AC_MSG_CHECKING([declaration of size-change])
-AC_CACHE_VAL(cf_cv_sizechange,[
+AC_REQUIRE([CF_STRUCT_TERMIOS])
+AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[
     cf_cv_sizechange=unknown
     cf_save_CFLAGS="$CFLAGS"
 
@@ -1869,14 +2070,14 @@ do
     CFLAGS="$cf_save_CFLAGS"
     test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts"
     AC_TRY_COMPILE([#include <sys/types.h>
-#if HAVE_TERMIOS_H
+#ifdef HAVE_TERMIOS_H
 #include <termios.h>
 #else
-#if HAVE_TERMIO_H
+#ifdef HAVE_TERMIO_H
 #include <termio.h>
 #endif
 #endif
-#if NEED_PTEM_H
+#ifdef NEED_PTEM_H
 /* This is a workaround for SCO:  they neglected to define struct winsize in
  * termios.h -- it's only in termio.h and ptem.h
  */
@@ -1907,36 +2108,18 @@ do
        CFLAGS="$cf_save_CFLAGS"
        if test "$cf_cv_sizechange" = yes ; then
                echo "size-change succeeded ($cf_opts)" >&AC_FD_CC
-               test -n "$cf_opts" && AC_DEFINE_UNQUOTED($cf_opts)
+               test -n "$cf_opts" && cf_cv_sizechange="$cf_opts"
                break
        fi
 done
-       ])
-AC_MSG_RESULT($cf_cv_sizechange)
-test $cf_cv_sizechange != no && AC_DEFINE(HAVE_SIZECHANGE)
-])dnl
-dnl ---------------------------------------------------------------------------
-dnl Check for datatype 'speed_t', which is normally declared via either
-dnl sys/types.h or termios.h
-AC_DEFUN([CF_SPEED_TYPE],
-[
-AC_MSG_CHECKING(for speed_t)
-OSPEED_INCLUDES=
-AC_TRY_COMPILE([#include <sys/types.h>],
-       [speed_t some_variable = 0],
-       [OSPEED_TYPE=speed_t],
-       [OSPEED_TYPE=unsigned])
-AC_TRY_COMPILE([#include <termios.h>],
-       [speed_t some_variable = 0],
-       [OSPEED_TYPE=speed_t
-        OSPEED_INCLUDES="#include <termios.h>"],[])
-AC_SUBST(OSPEED_TYPE)
-AC_SUBST(OSPEED_INCLUDES)
-if test "$OSPEED_TYPE" = "unsigned" ; then
-       AC_MSG_RESULT(no)
-       AC_DEFINE(speed_t,unsigned)
-else
-       AC_MSG_RESULT(yes)
+])
+if test "$cf_cv_sizechange" != no ; then
+       AC_DEFINE(HAVE_SIZECHANGE)
+       case $cf_cv_sizechange in #(vi
+       NEED*)
+               AC_DEFINE_UNQUOTED($cf_cv_sizechange )
+               ;;
+       esac
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -1952,7 +2135,11 @@ AC_MSG_CHECKING(for src modules)
 
 # dependencies and linker-arguments for test-programs
 TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${LIB_NAME}${DFT_DEP_SUFFIX} $TEST_DEPS"
-TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS"
+if test "$DFT_LWR_MODEL" = "libtool"; then
+       TEST_ARGS="${TEST_DEPS}"
+else
+       TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS"
+fi
 
 # dependencies and linker-arguments for utility-programs
 PROG_ARGS="$TEST_ARGS"
@@ -1987,7 +2174,11 @@ do
                        AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H)
                        AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include})
                        TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS"
-                       TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS"
+                       if test "$DFT_LWR_MODEL" = "libtool"; then
+                               TEST_ARGS="${TEST_DEPS}"
+                       else
+                               TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS"
+                       fi
                fi
        fi
 done
@@ -2005,7 +2196,7 @@ do
        SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir"
 done
 SRC_SUBDIRS="$SRC_SUBDIRS misc test"
-test $cf_with_cxx_binding != no && SRC_SUBDIRS="$SRC_SUBDIRS c++"
+test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++"
 
 ADA_SUBDIRS=
 if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then
@@ -2052,7 +2243,7 @@ strstreambuf foo(buf, sizeof(buf))
        [cf_cv_libstdcpp=no])
        LIBS="$cf_save"
 ])
-test $cf_cv_libstdcpp = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname"
+test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname"
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -2065,7 +2256,7 @@ dnl do this if we've found the sigaction function.
 dnl
 dnl If needed, define SVR4_ACTION.
 AC_DEFUN([CF_STRUCT_SIGACTION],[
-if test $ac_cv_func_sigaction = yes; then
+if test "$ac_cv_func_sigaction" = yes; then
 AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE)
 AC_TRY_COMPILE([
 #include <sys/types.h>
@@ -2088,13 +2279,21 @@ dnl ---------------------------------------------------------------------------
 dnl Some machines require _POSIX_SOURCE to completely define struct termios.
 dnl If so, define SVR4_TERMIO
 AC_DEFUN([CF_STRUCT_TERMIOS],[
-if test $ac_cv_header_termios_h = yes ; then
+AC_CHECK_HEADERS( \
+termio.h \
+termios.h \
+unistd.h \
+)
+if test "$ISC" = yes ; then
+       AC_CHECK_HEADERS( sys/termio.h )
+fi
+if test "$ac_cv_header_termios_h" = yes ; then
        case "$CFLAGS" in
        *-D_POSIX_SOURCE*)
                termios_bad=dunno ;;
        *)      termios_bad=maybe ;;
        esac
-       if test $termios_bad = maybe ; then
+       if test "$termios_bad" = maybe ; then
        AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE)
        AC_TRY_COMPILE([#include <termios.h>],
                [struct termios foo; int x = foo.c_iflag],
@@ -2159,17 +2358,17 @@ AC_MSG_CHECKING(if sys/time.h works with sys/select.h)
 AC_CACHE_VAL(cf_cv_sys_time_select,[
 AC_TRY_COMPILE([
 #include <sys/types.h>
-#if HAVE_SYS_TIME_H
+#ifdef HAVE_SYS_TIME_H
 #include <sys/time.h>
 #endif
-#if HAVE_SYS_SELECT_H
+#ifdef HAVE_SYS_SELECT_H
 #include <sys/select.h>
 #endif
 ],[],[cf_cv_sys_time_select=yes],
      [cf_cv_sys_time_select=no])
      ])
 AC_MSG_RESULT($cf_cv_sys_time_select)
-test $cf_cv_sys_time_select = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl Determine the type we should use for chtype (and attr_t, which is treated
@@ -2182,7 +2381,7 @@ AC_REQUIRE([CF_UNSIGNED_LITERALS])
 AC_MSG_CHECKING([for type of chtype])
 AC_CACHE_VAL(cf_cv_typeof_chtype,[
                AC_TRY_RUN([
-#if USE_WIDEC_SUPPORT
+#ifdef USE_WIDEC_SUPPORT
 #include <stddef.h>    /* we want wchar_t */
 #define WANT_BITS 39
 #else
@@ -2194,7 +2393,7 @@ int main()
        FILE *fp = fopen("cf_test.out", "w");
        if (fp != 0) {
                char *result = "long";
-#if USE_WIDEC_SUPPORT
+#ifdef USE_WIDEC_SUPPORT
                /*
                 * If wchar_t is smaller than a long, it must be an int or a
                 * short.  We prefer not to use a short anyway.
@@ -2252,7 +2451,7 @@ AC_CACHE_VAL(cf_cv_type_sigaction,[
                [cf_cv_type_sigaction=yes],
                [cf_cv_type_sigaction=no])])
 AC_MSG_RESULT($cf_cv_type_sigaction)
-test $cf_cv_type_sigaction = yes && AC_DEFINE(HAVE_TYPE_SIGACTION)
+test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl Test if the compiler supports 'U' and 'L' suffixes.  Only old compilers
@@ -2273,7 +2472,7 @@ dnl $1=uppercase($2)
 AC_DEFUN([CF_UPPER],
 [
 changequote(,)dnl
-$1=`echo $2 | tr '[a-z]' '[A-Z]'`
+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 changequote([,])dnl
 ])dnl
 dnl ---------------------------------------------------------------------------
index 936b2053d5881ba09959a7073b8892a3be8f5f47..58be91d0d189e7d918acf377510962dbdf98a20f 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
 <!--
-  $Id: announce.html.in,v 1.39 2000/07/04 21:59:36 tom Exp $
+  $Id: announce.html.in,v 1.40 2000/10/20 10:38:47 tom Exp $
 -->
 <HTML>
 <HEAD>
@@ -38,136 +38,327 @@ the GNU distribution site
 
 <H1>Release Notes</H1>
 
-This release is designed to be upward compatible from ncurses 5.0; very few
-applications will require recompilation, depending on the platform.
-These are the highlights from the change-log since ncurses 5.0 release.
+This release is designed to be upward compatible from ncurses 5.0 and 5.1;
+very few applications will require recompilation, depending on the platform.
+These are the highlights from the change-log since ncurses 5.1 release.
 <p>
 Interface changes:
 <ul>
-       <li>made the extended terminal capabilities
-         (<code>configure&nbsp;--enable-tcap-names</code>)
-         a standard feature (though the configure script can disable it,
-         it is built by default).
-
-       <li>removed the <code>trace()</code> function and related trace support
-         from the production library.  This is the only interface change that
-         may cause problems with existing applications linked to shared
-         libraries, since not all platforms use the minor version number.
-
-       <li>explicitly initialized to zero several data items which were
-         implicitly initialized, e.g., cur_term.  If not explicitly
-         initialized, their storage type is C (common), and causes problems
-         linking on some platforms.
-
-       <li>modified curses.h.in, undef'ing some symbols to avoid conflict with
-         C++ STL.
+       <li>change type of <code>ospeed</code> variable back to
+         <code>short</code> to match its use in legacy applications.  It was
+         altered after ncurses 4.2 to <code>speed_t</code> to repair a type
+         mismatch which was introduced after 1.9.4 in 1995.  The principal
+         users of termcap continued to use <code>short</code>, which is
+         not the same size.
+         <p>
+         <em>NOTE</em>: A few applications will have to be recompiled
+         (about 1% of the programs in a typical Linux distribution,
+         10% of the programs that use ncurses).  These are easy to
+         identify with <code>nm</code> or <code>strings</code>.
+
+       <li>remove a private function <code>_nc_can_clear_with()</code>, which
+         was built with the configure --enable-expanded option but not used.
+
+       <li>add several private functions (prefixed with "_nc_") for tracing
+         <code>chtype</code> values in the debug library, and for better
+         access and buffer limit checking.
 </ul>
-New features:
+New features and improvements:
 <ul>
-       <li>added a new extension, <code>assume_default_colors()</code> to
-         provide better control over the use of default colors.  This is
-         the principal visible difference between ncurses 5.1 and preceding
-         versions.  The new extension allows an application to specify what
-         colors pair 0 uses.
-        <p> 
-         <em>NOTE</em>:  Pair 0 defaults to white on black unless
-         you have invoked <code>use_default_colors()</code> or set it via
-         <code>assume_default_colors()</code>.  An application that calls
-         <code>start_colors()</code> without setting the background color
-         will consistently have a black background no matter what color your
-         terminal's background actually is.
-
-       <li>made several fixes to the terminfo-to-termcap conversion, and
-         have been using the generated termcaps without further hand-tuning. 
-         This builds on the extension <code>use_extended_names()</code> by
-         adding "obsolete" termcap strings to terminfo.src
+       <li>rewrote <code>tgoto()</code> to make it better support existing
+         termcap applications which use hardcoded strings rather than obtain
+         all of their information from the termcap file.  If the string does
+         not appear to be a terminfo string (i.e., does not refer to a "%p"
+         parameter, or terminfo-style padding), and termcap support is configured, <code>tgoto()</code>
+         will interpret it as termcap.  Otherwise, as before, it will use
+         <code>tparm()</code>.
+
+       <li>to ensure that the <code>tgoto()</code> changes work properly,
+         added checks to <code>tic</code> which report capabilities that do
+         not reference the expected number of parameters.
+
+       <li>new configure script options:
        <ul>
-         <li>modified <code>tic</code> so that if extended names (i.e.,
-           configure&nbsp;--enable-tcap-names) are active, then <code>tic&nbsp;-x</code>
-           will also write "obsolete" capabilities that are present in the
-           terminfo source.
-
-         <li>added screen's AX capability (for ECMA SGR 39 and 49) to applicable
-           terminfo entries, use presence of this as a check for a small
-           improvement in setting default colors.
-
-         <li>add -a option to tic and infocmp, which retains commented-out
-           capabilities during source translation/comparison, e.g., captoinfo
-           and infotocap.
+         <li>option <code>--disable-root-environ</code> adds runtime checks
+           which tell ncurses to disregard $TERMINFO and similar environment
+           variables if the current user is root, or running setuid/setgid.
+
+         <li>option <code>--disable-assumed-color</code> allows you to use the
+           pre-5.1 convention of default colors used for color-pair 0 to be
+           configured (see assume_default_colors()).
+
+         <li>implement configure script options that transform installed
+           program names, e.g., <code>--program-prefix</code>, including the
+           manpage names and cross references.
+
+         <li>option <code>--with-database</code> allows you to specify a
+           different terminfo source-file to install.  On OS/2 EMX, the
+           default is misc/emx.src, otherwise misc/terminfo.src
+
+         <li>option <code>--with-default-terminfo-dir</code> allows you to
+           specify the default terminfo database directory.
+
+         <li>option <code>--with-libtool</code> allows you to build with
+           <code>libtool</code>.  <p> <em>NOTE</em>:  <code>libtool</code>
+           uses a different notation for numbering shared library versions
+           from the existing ncurses configuration.
+
+         <li>option <code>--with-manpage-tbl</code> causes the manpages to be
+           preprocessed by tbl(1) prior to installation,
+
+         <li>option <code>--without-curses-h</code> causes the installation
+           process to install curses.h as ncurses.h and make appropriate
+           changes to headers and manpages.
        </ul>
 
-       <li>implemented limited support for UTF-8, useful with XFree86 xterm:
+       <li>modified configure script options:
        <ul>
-         <li>if the <code>configure&nbsp;--enable-widec</code> option is
-           given, append 'w' to names of the generated libraries (e.g.,
-           libncursesw.so) to avoid conflict with existing ncurses libraries.
-         <li>add a simple UTF-8 output driver to the experimental
-           wide-character support.  If any of the environment variables
-           LC_ALL, LC_CTYPE or LANG contain the string "UTF-8", this driver
-           will be used to translate the output to UTF-8.
-         <li>modified view.c to make a rudimentary viewer of UTF-8 text.
+         <li>change symbol used by the <code>--install-prefix</code> configure
+           option from <code>INSTALL_PREFIX</code> to <code>DESTDIR</code>
+           (the latter has become common usage although the name is
+           misleading).
+
+         <li>modify <code>ld -rpath</code> options (e.g., Linux, and Solaris)
+           to use an absolute pathname for the build tree's lib directory,
+           avoiding confusion with directories relative to the current one
+           with the installed programs.
+
+         <li>modified <code>misc/run_tic.in</code> to use
+           <code>tic&nbsp;-o</code>, to eliminate dependency on
+           <code>$TERMINFO</code> variable for installs.
        </ul>
 
-       <li>modify <code>raw()</code> and <code>noraw()</code> to clear/restore
-         IEXTEN flag which affects <code>stty lnext</code> on systems such as FreeBSD
+       <li>terminfo database:
+       <ul>
+         <li>updated xterm terminfo entries to match XFree86 xterm patch #146.
 
-       <li>reordered tests during mouse initialization to allow for gpm to run
-         in xterm, or for xterm to be used under OS/2 EMX.  Also dropped test
-         for <code>$DISPLAY</code> in favor of the terminfo capability
-         <code>kmous=\E[M</code> or
-         if <code>$TERM</code> environment variable contains "xterm".
+         <li>added amiga-vnc,
+           Matrix Orbital, and
+           QNX qansi to misc/terminfo.src.
 
-       <li>added configure option <code>--with-manpage-symlinks</code>, which
-         provides for fully indexing manpage entries by making symbolic links
-         for the aliases.
+         <li>added os2 entry to misc/emx.src.
 
-       <li>changed <code>unctrl()</code> to render C1 characters (128-159) as
-         <code>~@</code>, <code>~A</code>, etc.
+         <li>add S0 and E0 extensions to <code>screen</code>'s terminfo entry
+           since otherwise the FreeBSD port makes it pass termcap equivalents
+           to <code>tgoto</code>, which would be misinterpreted by older
+           versions of ncurses.
+       </ul>
+
+       <li>improvements to program usability:
+       <ul>
+         <li>modify programs to use <code>curses_version()</code> string to
+           report the version of ncurses with which they are compiled rather
+           than the NCURSES_VERSION string.  The function returns the patch
+           level in addition to the major and minor version numbers.
 
-       <li>add experimental configure option --enable-colorfgbg to check for
-         $COLORTERM variable as set by rxvt/aterm/Eterm.
+         <li>modify <code>tput</code> program so it can be renamed or invoked via a link as
+           'reset' or 'init', producing the same effect as <code>tput&nbsp;reset</code> or <code>tput&nbsp;init</code>.
 
-       <li>made the <code>infocmp -F</code> option less verbose.
+         <li>add error checking to infocmp's -v and -m options to ensure that
+           the option value is indeed a number.
+       </ul>
 
-       <li>dropped support for gnat 3.10 (gnat 3.12 is current).
+       <li>improved performance:
+       <ul>
+         <li>replace a lookup table in lib_vidattr.c used to decode
+           <code>no_color_video</code> with a logic expression which is faster.
+       </ul>
 
 </ul>
 Major bug fixes:
 <ul>
-       <li>modified infocmp -e, -E options to ensure that generated fallback.c
-         type for Booleans agrees with term.h
+       <li>correct <code>manlinks.sed</code> script introduced in ncurses 5.1
+         to avoid using ERE "\+", which is not understood by standard versions
+         of <code>sed</code>.  This happens to work with GNU <code>sed</code>,
+         but is not portable, and was the initial motivation for this release.
+
+       <li>remove "hpux10.*" case from CF_SHARED_OPTS configure script macro.
+         This differed from the "hpux*" case by using reversed symbolic
+         links, which made the 5.1 version not match the configuration of
+         5.0 shared libraries.
+
+       <li>guard against corrupt terminfo data:
+         <ul>
+         <li>modify <code>tparm()</code> to disallow arithmetic on strings,
+           analyze the varargs list to read strings as strings and numbers as
+           numbers.
+
+         <li>modify <code>tparm()</code>'s internal function
+           <code>spop()</code> to treat a null pointer as an empty string.
+
+         <li>modify <code>parse_format()</code> in lib_tparm.c to ignore
+           precision if it is longer than 10000.
+
+         <li>rewrote limit checks in lib_mvcur.c using new functions
+           <code>_nc_safe_strcat()</code>, etc.  Made other related changes to
+           check lengths used for <code>strcat()</code> and
+           <code>strcpy()</code>.
+         </ul>
+
+       <li>corrections to screen optimization:
+         <ul>
+         <li>added special case in lib_vidattr.c to reset underline and
+           standout for devices that have no sgr0 defined.
+
+         <li>change handling of <code>non_dest_scroll_region</code> in
+           tty_update.c to clear text after it is shifted in rather than before
+           shifting out.  Also correct row computation.
+
+         <li>modify <code>rs2</code> capability in xterm-r6 and similar entries
+           where cursor save/restore bracketed the sequence for resetting video
+           attributes.  The cursor restore would undo that.
+         </ul>
+
+       <li>UTF-8 support:
+       <ul>
+         <li>when checking LC_ALL, LC_CTYPE, and LANG environment variables
+           for UTF-8 locale, ignore those which are set to an empty value, as
+           per SUSV2.
 
-       <li>documented a special case of incompatiblity between ncurses 4.2 and
-         5.0, added a section for this in INSTALL.
+         <li>encode 0xFFFD in UTF-8 with 3 bytes, not 2.
 
-       <li>corrected tests for file-descriptors in OS/2 EMX mouse support.  A
-         negative value could be used by FD_SET, causing the select() call to
-         wait indefinitely.
+         <li>modify <code>_nc_utf8_outch()</code> to avoid sign-extension when
+           checking for out-of-range value.
+       </ul>
 
-       <li>made 'tput flash' work properly for xterm by flushing output in
-         delay_output() when using napms(), and modifying xterm's terminfo to
-         specify no padding character.  Otherwise, xterm's reported baud rate
-         could mislead ncurses into producing too few padding characters.
+       <li>other library fixes:
+       <ul>
+         <li>added checks for an empty <code>$HOME</code> environment
+           variable, to avoid retrieving terminfo descriptions from
+           <code>./.terminfo</code> .
 
-       <li>modified lib_addch.c to allow repeated update to the lower-right
-         corner, rather than displaying only the first character written until
-         the cursor is moved.  Recent versions of SVr4 curses can update the
-         lower-right corner, and behave this way.
+         <li>change functions <code>_nc_parse_entry()</code> and
+           <code>postprocess_termcap()</code> to avoid using
+           <code>strtok()</code>, because it is non-reentrant.
 
-       <li>modified echo() behavior of getch() to match Solaris curses for
-         carriage return and backspace (reported by Neil Zanella).
+         <li>initialize <code>fds[]</code> array to 0's in
+           <code>_nc_timed_wait()</code>; apparently <code>poll()</code> only
+           sets the <code>revents</code> members of that array when there is
+           activity corresponding to the related file.
 
-       <li>corrected offsets used for subwindows in <code>wresize()</code>
+         <li>add a check for null pointer in <code>Make_Enum_Type()</code>.
 
-       <li>modified configure script so AC_MSG_ERROR is temporarily defined to
-         a warning in AC_PROG_CXX to make it recover from a missing C++
-         compiler without requiring user to add --without-cxx option
+         <li>fix a heap problem with the c++ binding.
 
-       <li>corrected logic in lib_twait.c as used by lib_mouse.c for GPM mouse
-         support when poll() is used rather than select().
+         <li>correct missing includes for &lt;string.h&gt; in several places,
+           including the C++ binding.  This is not noted by gcc unless we use
+           the <code>-fno-builtin</code> option.
+       </ul>
+
+       <li>several fixes for tic:
+         <ul>
+         <li>add a check for empty buffers returned by <code>fgets()</code> in
+           comp_scan.c <code>next_char()</code> function, in case
+           <code>tic</code> is run on a non-text file (fixes a core dump).
+
+         <li>modify <code>tic</code> to verify that its inputs are really files,
+           in case someone tries to read a directory (or
+           <code>/dev/zero</code>).
+
+         <li>correct an uninitialized parameter to <code>open_tempfile()</code>
+           in tic.c which made "tic -I" give an ambiguous error message about
+           <code>tmpnam</code>.
+
+         <li>correct logic in <code>adjust_cancels()</code>, which did not check
+           both alternatives when reclassifying an extended name between
+           boolean, number and string, causing an infinite loop in
+           <code>tic</code>.
+         </ul>
+
+       <li>using new checks in <code>tic</code> for parameter counts in
+         capability strings, found/fixed several errors both in the
+         terminfo database and in the include/Caps file.
+         <ul>
+         <li>modified several terminfo capability strings, including the
+           definitions for setaf, setab, in include/Caps to indicate that the
+           entries are parameterized.  This information is used to tell which
+           strings are translated when converting to termcap.  This fixes a
+           problem where the generated termcap would contain a spurious "%p1"
+           for the terminfo "%p1%d".
+
+         <li>correct parameter counts in include/Caps for dclk as well as some
+           printer-specific capabilities: csnm, defc, scs, scsd, smgtp, smglp.
+         </ul>
+
+       <li>various fixes for install scripts used to support configure
+         <code>--srcdir</code> and <code>--with-install-prefix</code>.
+
+       <li>correct several mismatches between manpage filename and ".TH"
+         directives, renaming dft_fgbg.3x to default_colors.3x and
+         menu_attribs.3x to menu_attributes.3x.
+</ul>
+
+Portability:
+<ul>
+       <li>configure script:
+       <ul>
+         <li>newer config.guess, config.sub, including changes to support OS/2
+           EMX.  The configure script for OS/2 EMX still relies on a patch
+           since there is no (working) support for that platform in the main
+           autoconf distribution.
+
+         <li>make configure script checks on variables <code>$GCC</code> and
+           <code>$GXX</code> consistently compare against 'yes' rather than
+           test if they are nonnull, since either may be set to the
+           corresponding name of the C or C++ compiler.
+
+         <li>change configure script to use AC_CANONICAL_SYSTEM rather than
+           AC_CANONICAL_HOST, which means that <code>configure --target</code>
+           will set a default program-prefix.
+
+         <li>modify the check for big-core to force a couple of memory
+           accesses, which may work as needed for older/less-capable machines
+           (if not, there's still the explicit configure option).
+
+         <li>modify configure test for <code>tcgetattr()</code> to allow for
+           old implementations, e.g., on BeOS, which only defined it as a
+           macro.
+
+         <li>add configure check for filesystems (such as OS/2 EMX) which do
+           not distinguish between upper/lowercase filenames, use this to fix
+           tags rules in makefiles.
+
+         <li>add MKncurses_def.sh to generate fallback definitions for
+           ncurses_cfg.h, to quiet gcc -Wundef warnings, modified ifdef's in
+           code to consistently use "#if" rather than "#ifdef".
+
+         <li>change most remaining unquoted parameters of <code>test</code> in
+           configure script to use quotes, for instance fixing a problem in the
+           <code>--disable-database</code> option.
+
+         <li>modify scripts so that "make install.data" works on OS/2 EMX.
+
+         <li>modify scripts and makefiles so the Ada95 directory builds on
+           OS/2 EMX.
+       </ul>
+
+       <li>library:
+       <ul>
+       <li>replaced case-statement in <code>_nc_tracebits()</code> for CSIZE
+         with a table to simplify working around implementations that define
+         random combinations of the related macros to zero.
+
+       <li>improved OS/2 mouse support by retrying as a 2-button mouse if code
+         fails to set up a 3-button mouse.
+
+       <li>added private entrypoint <code>_nc_basename()</code>, used to
+         consolidate related code in progs, as well as accommodating OS/2 EMX
+         pathnames.
+
+       <li>alter definition of NCURSES_CONST to make it non-empty.
+
+       <li>redefine 'TEXT' in menu.h for AMIGA, since it is reported to have
+         an (unspecified) symbol conflict.
+       </ul>
+
+       <li>programs:
+       <ul>
+         <li>modified progs/tset.c and tack/sysdep.c to build with sgttyb
+           interface if neither termio or termios is available.  Tested this
+           with FreeBSD 2.1.5 (which does have termios - but the sgttyb does
+           work).
+       </ul>
 
-       <li>made several fixes for buffer overflows, unchecked recursion,
-         improvements in performance, etc.  See the NEWS file for details.
 </ul>
 
 <H1>Features of Ncurses</H1>
index e8079893736f4ce81c3a68c51df86db10bb9d8f6..630499450afe2953b18d9a99bd0c92b27db30ed5 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Makefile.in,v 1.52 2000/05/28 01:44:34 tom Exp $
+# $Id: Makefile.in,v 1.56 2000/10/15 00:43:38 tom Exp $
 ##############################################################################
 # Copyright (c) 1998,1999 Free Software Foundation, Inc.                     #
 #                                                                            #
@@ -41,13 +41,15 @@ CF_MFLAGS   = @cf_cv_makeflags@
 x              = @PROG_EXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
-INSTALL_PREFIX = @INSTALL_PREFIX@
+DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
 libdir         = @libdir@
 includedir     = @includedir@
 
+LIBTOOL                = @LIBTOOL@
+
 INSTALL                = @INSTALL@
 INSTALL_DATA   = @INSTALL_DATA@
 
@@ -64,6 +66,7 @@ CPPFLAGS      = -I../c++ -I$(INCDIR) -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CXXFLAGS)
 
+CFLAGS_LIBTOOL = $(CCFLAGS)
 CFLAGS_NORMAL  = $(CCFLAGS)
 CFLAGS_DEBUG   = $(CCFLAGS) @CXX_G_OPT@ -DTRACE
 CFLAGS_PROFILE = $(CCFLAGS) -pg
@@ -71,25 +74,37 @@ CFLAGS_SHARED       = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
+NCURSES_MAJOR  = @NCURSES_MAJOR@
+NCURSES_MINOR  = @NCURSES_MINOR@
 REL_VERSION     = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-LINK           = @LINK_PROGS@ $(CXX) @CXXLDFLAGS@
+LINK           = @LINK_PROGS@ $(LIBTOOL) $(CXX) @CXXLDFLAGS@
+
+LIBROOT                = ncurses++
+
+LIBNAME_LIBTOOL        = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.la
+LIBNAME_NORMAL = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.a
+LIBNAME                = @LIB_PREFIX@$(LIBROOT)@CXX_LIB_SUFFIX@
 
-LIBROOT        = ncurses++@LIB_SUFFIX@
-LIBNAME        = @LIB_PREFIX@$(LIBROOT).a
+LINK_FLAGS     = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) -l$(LIBROOT)
 
-LDFLAGS                = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) \
-       -l$(LIBROOT) \
-       @TEST_ARGS@ @LDFLAGS@ \
+LINK_LIBTOOL   = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) ../lib/$(LIBNAME)
+LINK_NORMAL    = $(LINK_FLAGS)
+LINK_DEBUG     = $(LINK_FLAGS)
+LINK_PROFILE   = $(LINK_FLAGS)
+LINK_SHARED    = $(LINK_FLAGS)
+
+LDFLAGS                = @TEST_ARGS@ @LDFLAGS@ \
        @LD_MODEL@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
 
+LDFLAGS_LIBTOOL        = $(LDFLAGS)
 LDFLAGS_NORMAL = $(LDFLAGS)
 LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
 LDFLAGS_PROFILE        = $(LDFLAGS) -pg
 LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
 
-LDFLAGS_DEFAULT        = $(LDFLAGS_@DFT_UPR_MODEL@)
+LDFLAGS_DEFAULT        = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@)
 
 AUTO_SRC       = \
                etip.h
@@ -114,10 +129,15 @@ LIB_OBJS = \
        $(MODEL)/cursesapp.o \
        $(MODEL)/cursesmain.o
 
-../lib/$(LIBNAME) : $(LIB_OBJS)
+../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS)
        $(AR) $(AR_OPTS) $@ $?
        $(RANLIB) $@
 
+../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
+       cd ../lib && $(LIBTOOL) $(CXX) -o $(LIBNAME) $(LIB_OBJS:.o=.lo) \
+               -rpath $(INSTALL_PREFIX)$(libdir) \
+               -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)
+
 OBJS_DEMO = $(MODEL)/demo.o
 
 $(MODEL)/demo.o : $(srcdir)/demo.cc \
@@ -132,22 +152,23 @@ etip.h:   $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh
        cp $(srcdir)/etip.h.in $@
        sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
 
-$(INSTALL_PREFIX)$(libdir) :
+$(DESTDIR)$(libdir) :
        $(srcdir)/../mkinstalldirs $@
 
 install \
-install.libs:: ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)
-       $(INSTALL) ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+install.libs:: ../lib/$(LIBNAME) $(DESTDIR)$(libdir)
+       $(LIBTOOL) $(INSTALL) ../lib/$(LIBNAME) $(DESTDIR)$(libdir)/$(LIBNAME)
 
 uninstall \
 uninstall.libs::
-       -rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+       -$(LIBTOOL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME)
 
 mostlyclean ::
        -rm -f core tags TAGS *~ *.ln *.atac trace
 
 clean :: mostlyclean
-       -rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(OBJS_DEMO)
+       -$(LIBTOOL) rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(LIB_OBJS:.o=.lo) $(OBJS_DEMO)
+       -rm -rf .libs
 
 distclean :: clean
        -rm -f Makefile
index a993322b8657aeac1c556f45b6bc36736bc10bdd..a3b066cb51ef601f60eb57a7c8aab5bb811315ad 100644 (file)
@@ -35,7 +35,7 @@
 #include "cursesapp.h"
 #include "internal.h"
 
-MODULE_ID("$Id: cursesf.cc,v 1.10 1999/10/30 23:49:28 tom Exp $")
+MODULE_ID("$Id: cursesf.cc,v 1.11 2000/06/09 16:15:40 juergen Exp $")
   
 NCursesFormField::~NCursesFormField () {
   if (field)
@@ -48,7 +48,8 @@ NCursesFormField::~NCursesFormField () {
 FIELD**
 NCursesForm::mapFields(NCursesFormField* nfields[]) {
   int fieldCount = 0,lcv;
-  
+  FIELD** old_fields;
+
   assert(nfields != 0);
 
   for (lcv=0; nfields[lcv]->field; ++lcv)
@@ -63,8 +64,10 @@ NCursesForm::mapFields(NCursesFormField* nfields[]) {
   
   my_fields = nfields;
   
-  if (form)
-    delete[] ::form_fields(form);  
+  if (form && (old_fields = ::form_fields(form))) {
+    ::set_form_fields(form,(FIELD**)0);
+    delete[] old_fields;
+  }
   return fields;
 }
 
index 89f0cbe9dd34d585152063f287a147400529a836..40f4146172c355084fe274b77aa7ddbdf5c2691b 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  *   Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1997                 *
  ****************************************************************************/
 
-// $Id: cursesf.h,v 1.11 1999/10/30 23:59:37 tom Exp $
+// $Id: cursesf.h,v 1.12 2000/07/15 21:08:25 tom Exp $
 
 #ifndef _CURSESF_H
 #define _CURSESF_H
 
 #include <cursesp.h>
+#include <string.h>
 
 extern "C" {
 #  include <form.h>
@@ -91,10 +92,10 @@ protected:
     if (err != E_OK)
       THROW(new NCursesFormException (err));
   }
-  
+
 public:
   // Create a 'Null' field. Can be used to delimit a field list
-  NCursesFormField() 
+  NCursesFormField()
     : field((FIELD*)0), ftype((NCursesFieldType*)0) {
   }
 
@@ -104,14 +105,14 @@ public:
                    int first_row = 0,
                    int first_col = 0,
                    int offscreen_rows = 0,
-                   int additional_buffers = 0) 
+                   int additional_buffers = 0)
     : ftype((NCursesFieldType*)0) {
       field = ::new_field(rows,cols,first_row,first_col,
                          offscreen_rows, additional_buffers);
       if (!field)
        OnError(errno);
   }
-  
+
   virtual ~NCursesFormField ();
 
   // Duplicate the field at a new position
@@ -321,12 +322,12 @@ private:
   static void frm_term(FORM *);
   static void fld_init(FORM *);
   static void fld_term(FORM *);
-  
+
   // Calculate FIELD* array for the menu
   FIELD** mapFields(NCursesFormField* nfields[]);
 
-protected:  
-  // internal routines 
+protected:
+  // internal routines
   inline void set_user(void *user) {
     UserHook* uptr = (UserHook*)::form_userptr (form);
     assert (uptr != 0 && uptr->m_back==this && uptr->m_owner==form);
@@ -337,8 +338,8 @@ protected:
     UserHook* uptr = (UserHook*)::form_userptr (form);
     assert (uptr != 0 && uptr->m_back==this && uptr->m_owner==form);
     return uptr->m_user;
-  }  
-  
+  }
+
   void InitForm (NCursesFormField* Fields[],
                 bool with_frame,
                 bool autoDeleteFields);
@@ -353,14 +354,14 @@ protected:
 
   // 'Internal' constructor, builds an object without association to a
   // field array.
-  NCursesForm( int  lines, 
-              int  cols, 
-              int  begin_y = 0, 
-              int  begin_x = 0) 
-    : NCursesPanel(lines,cols,begin_y,begin_x), 
+  NCursesForm( int  lines,
+              int  cols,
+              int  begin_y = 0,
+              int  begin_x = 0)
+    : NCursesPanel(lines,cols,begin_y,begin_x),
       form ((FORM*)0) {
   }
-  
+
 public:
   // Create form for the default panel.
   NCursesForm (NCursesFormField* Fields[],
@@ -372,9 +373,9 @@ public:
 
   // Create a form in a panel with the given position and size.
   NCursesForm (NCursesFormField* Fields[],
-              int  lines, 
-              int  cols, 
-              int  begin_y, 
+              int  lines,
+              int  cols,
+              int  begin_y,
               int  begin_x,
               bool with_frame=FALSE,        // reserve space for a frame?
               bool autoDelete_Fields=FALSE) // do automatic cleanup?
@@ -397,17 +398,17 @@ public:
 
   // Set these fields for the form
   inline void setFields(NCursesFormField* Fields[]) {
-    OnError(::set_form_fields(form,mapFields(Fields)));    
+    OnError(::set_form_fields(form,mapFields(Fields)));
   }
 
   // Remove the form from the screen
-  inline void unpost (void) { 
-    OnError (::unpost_form (form)); 
+  inline void unpost (void) {
+    OnError (::unpost_form (form));
   }
-  
+
   // Post the form to the screen if flag is true, unpost it otherwise
   inline void post(bool flag = TRUE) {
-    OnError (flag ? ::post_form(form) : ::unpost_form (form)); 
+    OnError (flag ? ::post_form(form) : ::unpost_form (form));
   }
 
   // Decorations
@@ -424,7 +425,7 @@ public:
     else
       OnError(E_SYSTEM_ERROR);
   }
-  
+
   inline void label(const char *topLabel, const char *bottomLabel) {
     if (b_framed)
       NCursesPanel::label(topLabel,bottomLabel);
@@ -578,18 +579,18 @@ template<class T> class NCursesUserForm : public NCursesForm
 protected:
   // 'Internal' constructor, builds an object without association to a
   // field array.
-  NCursesUserForm( int  lines, 
-                  int  cols, 
-                  int  begin_y = 0, 
+  NCursesUserForm( int  lines,
+                  int  cols,
+                  int  begin_y = 0,
                   int  begin_x = 0,
-                  const T* p_UserData = (T*)0) 
+                  const T* p_UserData = (T*)0)
     : NCursesForm(lines,cols,begin_y,begin_x) {
       if (form)
        set_user ((void *)p_UserData);
   }
 
 public:
-  NCursesUserForm (NCursesFormField Fields[], 
+  NCursesUserForm (NCursesFormField Fields[],
                   bool with_frame=FALSE,
                   bool autoDelete_Fields=FALSE)
     : NCursesForm (Fields, with_frame, autoDelete_Fields) {
@@ -603,11 +604,11 @@ public:
       if (form)
        set_user ((void *)p_UserData);
   };
-  
+
   NCursesUserForm (NCursesFormField Fields[],
-                  int lines, 
-                  int cols, 
-                  int begin_y = 0, 
+                  int lines,
+                  int cols,
+                  int begin_y = 0,
                   int begin_x = 0,
                   const T* p_UserData = (T*)0,
                   bool with_frame=FALSE,
@@ -616,11 +617,11 @@ public:
                   with_frame, autoDelete_Fields) {
       if (form)
        set_user ((void *)p_UserData);
-  };  
-  
+  };
+
   virtual ~NCursesUserForm() {
   };
-  
+
   inline T* UserData (void) const {
     return (T*)get_user ();
   };
@@ -645,7 +646,7 @@ private:
   }
 
 public:
-  Alpha_Field(int width) 
+  Alpha_Field(int width)
     : NCursesFieldType(TYPE_ALPHA),
       min_field_width(width) {
   }
@@ -660,7 +661,7 @@ private:
   }
 
 public:
-  Alphanumeric_Field(int width) 
+  Alphanumeric_Field(int width)
     : NCursesFieldType(TYPE_ALNUM),
       min_field_width(width) {
   }
@@ -678,7 +679,7 @@ private:
 
 public:
   Integer_Field(int prec, long low=0L, long high=0L)
-    : NCursesFieldType(TYPE_INTEGER), 
+    : NCursesFieldType(TYPE_INTEGER),
       precision(prec), lower_limit(low), upper_limit(high) {
   }
 };
@@ -695,7 +696,7 @@ private:
 
 public:
   Numeric_Field(int prec, double low=0.0, double high=0.0)
-    : NCursesFieldType(TYPE_NUMERIC), 
+    : NCursesFieldType(TYPE_NUMERIC),
       precision(prec), lower_limit(low), upper_limit(high) {
   }
 };
@@ -757,11 +758,11 @@ public:
 // -------------------------------------------------------------------------
 //
 class UserDefinedFieldType : public NCursesFieldType {
-  friend class UDF_Init; // Internal helper to set up statics 
+  friend class UDF_Init; // Internal helper to set up statics
 private:
   // For all C++ defined fieldtypes we need only one generic lowlevel
   // FIELDTYPE* element.
-  static FIELDTYPE* generic_fieldtype; 
+  static FIELDTYPE* generic_fieldtype;
 
 protected:
   // This are the functions required by the low level libforms functions
@@ -793,9 +794,9 @@ public:
 // -------------------------------------------------------------------------
 //
 class UserDefinedFieldType_With_Choice : public UserDefinedFieldType {
-  friend class UDF_Init; // Internal helper to set up statics 
+  friend class UDF_Init; // Internal helper to set up statics
 private:
-  // For all C++ defined fieldtypes with choice functions we need only one 
+  // For all C++ defined fieldtypes with choice functions we need only one
   // generic lowlevel FIELDTYPE* element.
   static FIELDTYPE* generic_fieldtype_with_choice;
 
index 3bcf3d260f365e4120efac4a65d0d03a9e558b5b..50095d3d21444d1f8b5b53315537fecca4b84957 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -33,8 +33,9 @@
 
 #include "cursesp.h"
 #include "internal.h"
+#include <string.h>
 
-MODULE_ID("$Id: cursesp.cc,v 1.15 1999/10/30 23:59:37 tom Exp $")
+MODULE_ID("$Id: cursesp.cc,v 1.16 2000/07/15 21:08:13 tom Exp $")
 
 NCursesPanel* NCursesPanel::dummy = (NCursesPanel*)0;
 
@@ -42,13 +43,13 @@ void NCursesPanel::init() {
   p = ::new_panel(w);
   if (!p)
     OnError(ERR);
-  
+
   UserHook* hook = new UserHook;
   hook->m_user  = NULL;
   hook->m_back  = this;
   hook->m_owner = p;
   ::set_panel_userptr(p, (void *)hook);
-}  
+}
 
 NCursesPanel::~NCursesPanel() {
   UserHook* hook = (UserHook*)::panel_userptr(p);
@@ -61,7 +62,7 @@ NCursesPanel::~NCursesPanel() {
 void
 NCursesPanel::redraw() {
   PANEL *pan;
-  
+
   pan = ::panel_above(NULL);
   while (pan) {
     ::touchwin(panel_window(pan));
@@ -95,20 +96,20 @@ NCursesPanel::frame(const char *title,const char *btitle) {
   int err = OK;
   if (!title && !btitle) {
     err = box();
-  } 
+  }
   else {
     err = box();
     if (err==OK)
-      label(title,btitle); 
+      label(title,btitle);
   }
   OnError(err);
 }
 
 void
 NCursesPanel::label(const char *tLabel, const char *bLabel) {
-  if (tLabel) 
+  if (tLabel)
     centertext(0,tLabel);
-  if (bLabel) 
+  if (bLabel)
     centertext(maxy(),bLabel);
 }
 
index baae046ef20460d9b40947f503574f0ca796d5e1..b61a7056af15a879c64ebc4089a625bf730f844b 100644 (file)
@@ -25,7 +25,7 @@
 #include "cursesw.h"
 #include "internal.h"
 
-MODULE_ID("$Id: cursesw.cc,v 1.16 1999/11/13 23:42:17 tom Exp $")
+MODULE_ID("$Id: cursesw.cc,v 1.17 2000/09/02 18:55:31 tom Exp $")
 
 #define COLORS_NEED_INITIALIZATION  -1
 #define COLORS_NOT_INITIALIZED       0
@@ -424,7 +424,7 @@ NCursesWindow::setcolor(short pair)
   return OK;
 }
 
-#ifdef HAVE_HAS_KEY
+#if HAVE_HAS_KEY
 extern "C" int _nc_has_mouse(void);
 
 bool NCursesWindow::has_mouse() const {
index 82ff83e11954cdf96c181866b3dd2542db4320fe..236d3a55b3ddbdd4956ae50ca8ac8527f325f609 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+ * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -34,8 +34,9 @@
 #include "cursslk.h"
 #include "cursesapp.h"
 #include "internal.h"
+#include <string.h>
 
-MODULE_ID("$Id: cursslk.cc,v 1.5 1999/05/16 17:31:01 juergen Exp $")
+MODULE_ID("$Id: cursslk.cc,v 1.6 2000/07/15 21:07:50 tom Exp $")
 
 void Soft_Label_Key_Set::Soft_Label_Key::operator=(char *text)  {
   delete[] label;
@@ -54,7 +55,7 @@ void Soft_Label_Key_Set::init() {
   for(int i=0; i < num_labels; i++) {
     slk_array[i].num = i+1;
   }
-  b_attrInit = FALSE;  
+  b_attrInit = FALSE;
 }
 
 Soft_Label_Key_Set::Soft_Label_Key_Set() {
index cdf256cbd71e130d853cdae8f69b59a15c0cb778..67bc3ff2469e0e60672310a43d59640b46ff41cf 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+ * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  *   Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1997                 *
  ****************************************************************************/
 
-// $Id: internal.h,v 1.5 1999/05/16 17:29:25 juergen Exp $
+// $Id: internal.h,v 1.6 2000/09/02 18:22:23 tom Exp $
 
 #ifndef _CPLUS_INTERNAL_H
 #define _CPLUS_INTERNAL_H 1
 
-#ifdef USE_RCS_IDS
+#if USE_RCS_IDS
 #define MODULE_ID(id) static const char Ident[] = id;
 #else
 #define MODULE_ID(id) /*nothing*/
index 499496436cd502d1fbd4861bd479191222eb825e..b100dbe1a331e739af3b3386c557c58569e72fab 100755 (executable)
@@ -109,6 +109,9 @@ trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    i?86:OS/2:*:*)
+        echo "i386-unknown-os2"
+       exit 0;;
     *:NetBSD:*:*)
        # Netbsd (nbsd) targets should (where applicable) match one or
        # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -431,7 +434,7 @@ EOF
     *:IRIX*:*:*)
        echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
        exit 0 ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+    ????????:AIX?:[12].1:2)    # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
        echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
        exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
     i?86:AIX:*:*)
index 8fa14be27e16d4a8d8df2f1c4c0abc2ee1a71a47..f8ec622e95b052747c1b1ddd1c3bf7ee9317fdae 100755 (executable)
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
 #   Free Software Foundation, Inc.
 
-version='2000-06-13'
+version='2000-07-06'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -122,6 +122,9 @@ esac
 ### recognize some manufacturers as not being operating systems, so we
 ### can provide default operating systems below.
 case $os in
+       -os2)
+               basic_machine=`echo $1 | sed -e 's/86-.*/86/'`
+               ;;
        -sun*os*)
                # Prevent following clause from handling this invalid input.
                ;;
@@ -218,8 +221,13 @@ case $basic_machine in
                | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
                | mips64vr5000 | miprs64vr5000el | mcore \
                | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
-               | thumb | d10v | fr30 | avr)
+               | thumb | d10v | d30v | fr30 | avr)
+               basic_machine=$basic_machine-unknown
+               ;;
+       m6811 | m68hc11 | m6812 | m68hc12)
+               # Motorola 68HC11/12.
                basic_machine=$basic_machine-unknown
+               os=-none
                ;;
        m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
                ;;
@@ -257,7 +265,7 @@ case $basic_machine in
              | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
              | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
              | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \
-             | bs2000-*)
+             | bs2000-* | tic54x-* | c54x-*)
                ;;
        # Recognize the various machine names and aliases which stand
        # for a CPU type and a company and sometimes even an OS.
@@ -793,6 +801,10 @@ case $basic_machine in
                basic_machine=t3e-cray
                os=-unicos
                ;;
+       tic54x | c54x*)
+               basic_machine=tic54x-unknown
+               os=-coff
+               ;;
        tx39)
                basic_machine=mipstx39-unknown
                ;;
@@ -994,6 +1006,7 @@ case $os in
                os=-nto-qnx
                ;;
        -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+             | -os2 \
              | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
              | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
                ;;
index 51180b9b4cefecd847a5d5dab6961c7d5517bdd6..c18a988f72c4d271dae24fa52f981c98182126a5 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,11 +1,11 @@
 #! /bin/sh
 
-# From configure.in Revision: 1.195 
+# From configure.in Revision: 1.220 
 
 
 
 # Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13.19990117 
+# Generated automatically using autoconf version 2.13.20000819 
 # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
 #
 # This configure script is free software; the Free Software Foundation
@@ -193,18 +193,15 @@ cat <<EOF
   --without-cxx-binding   do not build C++ binding and demo
   --without-ada           suppress check for Ada95, don't build demo
   --without-progs         suppress build with programs (e.g., tic)
+  --without-curses-h      install curses.h as ncurses.h only
   --with-install-prefix   prefixes actual install-location
-Options to Specify How Manpages are Installed:
-  --with-manpage-format   specify manpage-format: gzip/compress/BSDI/normal and
-                          optionally formatted, e.g., gzip,formatted
-  --with-manpage-renames  specify manpage-renaming
-  --with-manpage-symlinks specify manpage-symlinks
 Options to Specify the Libraries Built/Used:
+  --with-libtool          generate libraries with libtool
   --with-shared           generate shared-libraries
-EOF
-cat <<EOF
   --with-normal           generate normal-libraries (default)
   --with-debug            generate debug-libraries (default)
+EOF
+cat <<EOF
   --with-profile          generate profile-libraries
   --with-termlib          generate separate terminfo library
   --with-dbmalloc         test: use Conor Cahill's dbmalloc library
@@ -215,10 +212,12 @@ cat <<EOF
 Fine-Tuning Your Configuration:
   --disable-overwrite     leave out the link to -lcurses
   --disable-database      use only built-in data
+  --with-database=XXX     specify terminfo source to install
+  --with-fallbacks=XXX    specify list of fallback terminal descriptions
 EOF
 cat <<EOF
-  --with-fallbacks=XXX    specify list of fallback terminal descriptions
   --with-terminfo-dirs=XXX specify list of terminfo directories (default: DATADIR/terminfo)
+  --with-default-terminfo-dir=DIR default terminfo directory (default: DATADIR/terminfo)
   --disable-big-core      assume machine has little memory
   --enable-termcap        compile in termcap fallback support
   --enable-getcap         fast termcap load, no xrefs to terminfo
@@ -227,38 +226,47 @@ cat <<EOF
   --enable-broken_linker  compile with broken-linker support code
   --enable-bsdpad         recognize BSD-style prefix padding
   --with-rcs-ids          compile-in RCS identifiers
-Extensions:
-  --disable-ext-funcs     disable function-extensions
+Options to Specify How Manpages are Installed:
+  --with-manpage-format   specify manpage-format: gzip/compress/BSDI/normal and
+                          optionally formatted, e.g., gzip,formatted
 EOF
 cat <<EOF
+  --with-manpage-renames  specify manpage-renaming
+  --with-manpage-symlinks specify manpage-symlinks
+  --with-manpage-tbl      specify manpage processing with tbl
+Extensions:
+  --disable-ext-funcs     disable function-extensions
   --enable-const          compile with extra/non-standard const
-  --enable-hashmap        compile with hashmap scrolling-optimization code
   --enable-no-padding     compile with \$NCURSES_NO_PADDING code
   --enable-sigwinch       compile with SIGWINCH handler
   --enable-tcap-names     compile with user-definable terminal capabilities
+Development Code:
+  --with-develop          enable all development options
+  --enable-colorfgbg      compile with \$COLORFGBG code
+EOF
+cat <<EOF
+  --enable-hard-tabs      compile with hard-tabs code
+  --disable-root-environ  limit environment when running as root
+  --enable-xmc-glitch     compile with limited support for xmc
 Experimental Code:
-  --with-develop          enable all experimental options for testing
-  --enable-colorfgbg      compile with experimental \$COLORFGBG code
-  --enable-hard-tabs      compile with experimental hard-tabs code
+  --disable-assumed-color do not assume anything about default-colors
+  --disable-hashmap       compile without hashmap scrolling-optimization
   --enable-safe-sprintf   compile with experimental safe-sprintf code
   --disable-scroll-hints  compile without scroll-hints code
-  --enable-widec          compile with experimental wide-char code
-EOF
-cat <<EOF
-  --enable-xmc-glitch     compile with experimental xmc code
+  --enable-widec          compile with experimental wide-char/UTF-8 code
 Testing/development Options:
   --enable-echo           build: display "compiling" commands (default)
   --enable-warnings       build: turn on GCC compiler warnings
+EOF
+cat <<EOF
   --enable-assertions     test: turn on generation of assertion code
   --disable-leaks         test: suppress permanent memory-leaks
   --enable-expanded       test: generate functions for certain macros
   --disable-macros        test: use functions rather than macros
 Ada95 Binding Options:
-  --with-ada-compiler=CMD Specify Ada95 compiler command (default gnatmake)
+  --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)
   --with-ada-include=DIR  Ada includes are in DIR (default: PREFIX/lib/ada/adainclude)
   --with-ada-objects=DIR  Ada objects are in DIR (default: PREFIX/lib/ada/adalib)
-EOF
-cat <<EOF
 EOF
     exit 0 ;;
 
@@ -409,7 +417,7 @@ EOF
     verbose=yes ;;
 
   -version | --version | --versio | --versi | --vers)
-    echo "configure generated by autoconf version 2.13.19990117"
+    echo "configure generated by autoconf version 2.13.20000819"
     exit 0 ;;
 
   -with-* | --with-*)
@@ -636,13 +644,34 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
 
 if test -f $srcdir/config.guess ; then
        
+# Do some error checking and defaulting for the host and target type.
+# The inputs are:
+#    configure --host=HOST --target=TARGET --build=BUILD NONOPT
+#
+# The rules are:
+# 1. You are not allowed to specify --host, --target, and nonopt at the
+#    same time.
+# 2. Host defaults to nonopt.
+# 3. If nonopt is not specified, then host defaults to the current host,
+#    as determined by config.guess.
+# 4. Target and build default to nonopt.
+# 5. If nonopt is not specified, then target and build default to host.
+
+# The aliases save the names the user supplied, while $host etc.
+# will get canonicalized.
+case $host---$target---$nonopt in
+NONE---*---* | *---NONE---* | *---*---NONE) ;;
+*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
+esac
+
+
 # Make sure we can run config.sub.
 if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
 else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:646: checking host system type" >&5
+echo "configure:675: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -662,6 +691,47 @@ host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
 host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 echo "$ac_t""$host" 1>&6
 
+echo $ac_n "checking target system type""... $ac_c" 1>&6
+echo "configure:696: checking target system type" >&5
+
+target_alias=$target
+case "$target_alias" in
+NONE)
+  case $nonopt in
+  NONE) target_alias=$host_alias ;;
+  *) target_alias=$nonopt ;;
+  esac ;;
+esac
+
+target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
+target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+echo "$ac_t""$target" 1>&6
+
+echo $ac_n "checking build system type""... $ac_c" 1>&6
+echo "configure:714: checking build system type" >&5
+
+build_alias=$build
+case "$build_alias" in
+NONE)
+  case $nonopt in
+  NONE) build_alias=$host_alias ;;
+  *) build_alias=$nonopt ;;
+  esac ;;
+esac
+
+build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
+build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+echo "$ac_t""$build" 1>&6
+
+test "$host_alias" != "$target_alias" &&
+  test "$program_prefix$program_suffix$program_transform_name" = \
+    NONENONEs,x,x, &&
+  program_prefix=${target_alias}-
+
        system_name="$host_os"
 else
        system_name="`(uname -s -r) 2>/dev/null`"
@@ -733,7 +803,7 @@ cf_user_CFLAGS="$CFLAGS"
 ###    Default install-location
 
 echo $ac_n "checking for prefix""... $ac_c" 1>&6
-echo "configure:737: checking for prefix" >&5
+echo "configure:807: checking for prefix" >&5
 if test "x$prefix" = "xNONE" ; then
        case "$cf_cv_system_name" in
                # non-vendor systems don't have a conflict
@@ -748,7 +818,7 @@ echo "$ac_t""$prefix" 1>&6
 
 if test "x$prefix" = "xNONE" ; then
 echo $ac_n "checking for default include-directory""... $ac_c" 1>&6
-echo "configure:752: checking for default include-directory" >&5
+echo "configure:822: checking for default include-directory" >&5
 test -n "$verbose" && echo 1>&6
 for cf_symbol in \
        $includedir \
@@ -778,7 +848,7 @@ fi
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:782: checking for $ac_word" >&5
+echo "configure:852: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -808,7 +878,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:812: checking for $ac_word" >&5
+echo "configure:882: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -859,7 +929,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:863: checking for $ac_word" >&5
+echo "configure:933: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -891,7 +961,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:895: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:965: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -902,12 +972,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 906 "configure"
+#line 976 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:981: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -933,12 +1003,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:937: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1007: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:942: checking whether we are using GNU C" >&5
+echo "configure:1012: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -947,7 +1017,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:951: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1021: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -966,7 +1036,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:970: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1040: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -997,18 +1067,18 @@ else
   fi
 fi
 
-if test -n "$GCC" ; then
-echo $ac_n "checking version of gcc""... $ac_c" 1>&6
-echo "configure:1003: checking version of gcc" >&5
-eval "$CC --version"
+if test "$GCC" = yes ; then
+       echo $ac_n "checking version of gcc""... $ac_c" 1>&6
+echo "configure:1073: checking version of gcc" >&5
+       eval "$CC --version"
 fi
-if test $host != $build; then
-  for ac_prog in $CC gcc cc
+if test "$host" != $build; then
+       for ac_prog in $CC gcc cc
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1012: checking for $ac_word" >&5
+echo "configure:1082: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_BUILD_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1037,9 +1107,12 @@ fi
 test -n "$BUILD_CC" && break
 done
 
+else
+       BUILD_CC="$CC"
 fi
+
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1043: checking how to run the C preprocessor" >&5
+echo "configure:1116: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -1054,13 +1127,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 1058 "configure"
+#line 1131 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1064: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1137: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1071,13 +1144,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 1075 "configure"
+#line 1148 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1081: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1154: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1088,13 +1161,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
-#line 1092 "configure"
+#line 1165 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1098: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1171: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1120,13 +1193,13 @@ echo "$ac_t""$CPP" 1>&6
 
 if test $ac_cv_prog_gcc = yes; then
     echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
-echo "configure:1124: checking whether ${CC-cc} needs -traditional" >&5
+echo "configure:1197: checking whether ${CC-cc} needs -traditional" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
     ac_pattern="Autoconf.*'x'"
   cat > conftest.$ac_ext <<EOF
-#line 1130 "configure"
+#line 1203 "configure"
 #include "confdefs.h"
 #include <sgtty.h>
 Autoconf TIOCGETP
@@ -1144,7 +1217,7 @@ rm -f conftest*
 
   if test $ac_cv_prog_gcc_traditional = no; then
     cat > conftest.$ac_ext <<EOF
-#line 1148 "configure"
+#line 1221 "configure"
 #include "confdefs.h"
 #include <termio.h>
 Autoconf TCGETA
@@ -1166,7 +1239,7 @@ echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6
 fi
 
 echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
-echo "configure:1170: checking for POSIXized ISC" >&5
+echo "configure:1243: checking for POSIXized ISC" >&5
 if test -d /etc/conf/kconfig.d &&
   grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
 then
@@ -1188,7 +1261,7 @@ fi
 
 
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:1192: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:1265: checking for ${CC-cc} option to accept ANSI C" >&5
 if eval "test \"`echo '$''{'cf_cv_ansi_cc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1212,7 +1285,7 @@ for cf_arg in "-DCC_HAS_PROTOS" \
 do
        CFLAGS="$cf_save_CFLAGS $cf_arg"
        cat > conftest.$ac_ext <<EOF
-#line 1216 "configure"
+#line 1289 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -1228,7 +1301,7 @@ int main() {
        struct s2 {int (*f) (double a);};
 ; return 0; }
 EOF
-if { (eval echo configure:1232: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1305: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -1289,7 +1362,7 @@ freebsd*) #(vi
   # Extract the first word of "ldconfig", so it can be a program name with args.
 set dummy ldconfig; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1293: checking for $ac_word" >&5
+echo "configure:1366: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_LDCONFIG'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1326,7 +1399,7 @@ esac
 
 
 echo $ac_n "checking if you want to ensure bool is consistent with C++""... $ac_c" 1>&6
-echo "configure:1330: checking if you want to ensure bool is consistent with C++" >&5
+echo "configure:1403: checking if you want to ensure bool is consistent with C++" >&5
 
 # Check whether --with-cxx or --without-cxx was given.
 if test "${with_cxx+set}" = set; then
@@ -1346,7 +1419,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1350: checking for $ac_word" >&5
+echo "configure:1423: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1378,7 +1451,7 @@ test -n "$CXX" || CXX="gcc"
 
 
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1382: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
+echo "configure:1455: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 
 ac_ext=C
 # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1389,12 +1462,12 @@ cross_compiling=$ac_cv_prog_cxx_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 1393 "configure"
+#line 1466 "configure"
 #include "confdefs.h"
 
 int main(){return(0);}
 EOF
-if { (eval echo configure:1398: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cxx_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -1420,12 +1493,12 @@ if test $ac_cv_prog_cxx_works = no; then
   echo "$ac_t""You don't have any C++ compiler, too bad" 1>&6;                 cf_with_cxx=no; CXX=""; GXX="";
 fi
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1424: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1497: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
 cross_compiling=$ac_cv_prog_cxx_cross
 
 echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
-echo "configure:1429: checking whether we are using GNU C++" >&5
+echo "configure:1502: checking whether we are using GNU C++" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1434,7 +1507,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1438: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1511: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gxx=yes
 else
   ac_cv_prog_gxx=no
@@ -1453,7 +1526,7 @@ ac_test_CXXFLAGS="${CXXFLAGS+set}"
 ac_save_CXXFLAGS="$CXXFLAGS"
 CXXFLAGS=
 echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:1457: checking whether ${CXX-g++} accepts -g" >&5
+echo "configure:1530: checking whether ${CXX-g++} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1485,10 +1558,19 @@ else
 fi
 
        fi
-if test -n "$GXX" ; then case "`${CXX-g++} --version`" in 1*|2.[0-6]*) GXX=""; CXX=""; ac_cv_prog_gxx=no; cf_cxx_library=no ; echo No: templates do not work;; esac; fi
+
+if test "$GXX" = yes; then
+       case "`${CXX-g++} --version`" in
+       1*|2.[0-6]*)
+               GXX=""; CXX=""; ac_cv_prog_gxx=no
+               cf_cxx_library=no
+               echo No: templates do not work
+               ;;
+       esac
+fi
 
 echo $ac_n "checking if you want to build C++ binding and demo""... $ac_c" 1>&6
-echo "configure:1492: checking if you want to build C++ binding and demo" >&5
+echo "configure:1574: checking if you want to build C++ binding and demo" >&5
 
 # Check whether --with-cxx-binding or --without-cxx-binding was given.
 if test "${with_cxx_binding+set}" = set; then
@@ -1501,7 +1583,7 @@ fi
 echo "$ac_t""$cf_with_cxx_binding" 1>&6
 
 echo $ac_n "checking if you want to build with Ada95""... $ac_c" 1>&6
-echo "configure:1505: checking if you want to build with Ada95" >&5
+echo "configure:1587: checking if you want to build with Ada95" >&5
 
 # Check whether --with-ada or --without-ada was given.
 if test "${with_ada+set}" = set; then
@@ -1514,7 +1596,7 @@ fi
 echo "$ac_t""$cf_with_ada" 1>&6
 
 echo $ac_n "checking if you want to build programs such as tic""... $ac_c" 1>&6
-echo "configure:1518: checking if you want to build programs such as tic" >&5
+echo "configure:1600: checking if you want to build programs such as tic" >&5
 
 # Check whether --with-progs or --without-progs was given.
 if test "${with_progs+set}" = set; then
@@ -1526,18 +1608,50 @@ fi
 
 echo "$ac_t""$cf_with_progs" 1>&6
 
+echo $ac_n "checking if you wish to install curses.h""... $ac_c" 1>&6
+echo "configure:1613: checking if you wish to install curses.h" >&5
+
+# Check whether --with-curses-h or --without-curses-h was given.
+if test "${with_curses_h+set}" = set; then
+  withval="$with_curses_h"
+  with_curses_h=$withval
+else
+  with_curses_h=yes
+fi
+
+echo "$ac_t""$with_curses_h" 1>&6
+
 modules_to_build="ncurses"
 if test "X$cf_with_progs" != Xno ; then
 modules_to_build="$modules_to_build progs tack"
 fi
 modules_to_build="$modules_to_build panel menu form"
 
+if test "$program_transform_name" = s,x,x,; then
+  program_transform_name=
+else
+  # Double any \ or $.  echo might interpret backslashes.
+  cat <<\EOF_SED > conftestsed
+s,\\,\\\\,g; s,\$,$$,g
+EOF_SED
+  program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
+  rm -f conftestsed
+fi
+test "$program_prefix" != NONE &&
+  program_transform_name="s,^,${program_prefix},; $program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+  program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
+
+# sed with no file args requires a program.
+test "$program_transform_name" = "" && program_transform_name="s,x,x,"
+
 for ac_prog in mawk gawk nawk awk
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1541: checking for $ac_word" >&5
+echo "configure:1655: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1567,7 +1681,7 @@ test -n "$AWK" && break
 done
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:1571: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:1685: checking whether ${MAKE-make} sets \${MAKE}" >&5
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1605,7 +1719,7 @@ fi
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1609: checking for a BSD compatible install" >&5
+echo "configure:1723: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1668,7 +1782,7 @@ case $INSTALL in
 esac
 
 echo $ac_n "checking for long file names""... $ac_c" 1>&6
-echo "configure:1672: checking for long file names" >&5
+echo "configure:1786: checking for long file names" >&5
 if eval "test \"`echo '$''{'ac_cv_sys_long_file_names'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1711,8 +1825,32 @@ EOF
 
 fi
 
+
+echo $ac_n "checking if filesystem supports mixed-case filenames""... $ac_c" 1>&6
+echo "configure:1831: checking if filesystem supports mixed-case filenames" >&5
+if eval "test \"`echo '$''{'cf_cv_mixedcase'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       rm -f conftest CONFTEST
+       echo test >conftest
+       if test -f CONFTEST ; then
+               cf_cv_mixedcase=no
+       else
+               cf_cv_mixedcase=yes
+       fi
+       rm -f conftest CONFTEST
+
+fi
+
+echo "$ac_t""$cf_cv_mixedcase" 1>&6
+test "$cf_cv_mixedcase" = yes && cat >> confdefs.h <<\EOF
+#define MIXEDCASE_FILENAMES 1
+EOF
+
+
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1716: checking whether ln -s works" >&5
+echo "configure:1854: checking whether ln -s works" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1735,7 +1873,7 @@ fi
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1739: checking for $ac_word" >&5
+echo "configure:1877: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1762,12 +1900,94 @@ else
   echo "$ac_t""no" 1>&6
 fi
 
+
+
+# Extract the first word of "ctags", so it can be a program name with args.
+set dummy ctags; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:1909: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_MAKE_LOWER_TAGS'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$MAKE_LOWER_TAGS"; then
+  ac_cv_prog_MAKE_LOWER_TAGS="$MAKE_LOWER_TAGS" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_MAKE_LOWER_TAGS="yes"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_prog_MAKE_LOWER_TAGS" && ac_cv_prog_MAKE_LOWER_TAGS="no"
+fi
+fi
+MAKE_LOWER_TAGS="$ac_cv_prog_MAKE_LOWER_TAGS"
+if test -n "$MAKE_LOWER_TAGS"; then
+  echo "$ac_t""$MAKE_LOWER_TAGS" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+
+if test "$cf_cv_mixedcase" = yes ; then
+       # Extract the first word of "etags", so it can be a program name with args.
+set dummy etags; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:1941: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_MAKE_UPPER_TAGS'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$MAKE_UPPER_TAGS"; then
+  ac_cv_prog_MAKE_UPPER_TAGS="$MAKE_UPPER_TAGS" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_MAKE_UPPER_TAGS="yes"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_prog_MAKE_UPPER_TAGS" && ac_cv_prog_MAKE_UPPER_TAGS="no"
+fi
+fi
+MAKE_UPPER_TAGS="$ac_cv_prog_MAKE_UPPER_TAGS"
+if test -n "$MAKE_UPPER_TAGS"; then
+  echo "$ac_t""$MAKE_UPPER_TAGS" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+else
+       MAKE_UPPER_TAGS=no
+fi
+
+if test "$MAKE_UPPER_TAGS" = yes ; then
+       MAKE_UPPER_TAGS=
+else
+       MAKE_UPPER_TAGS="#"
+fi
+
+
+if test "$MAKE_LOWER_TAGS" = yes ; then
+       MAKE_LOWER_TAGS=
+else
+       MAKE_LOWER_TAGS="#"
+fi
+
+
 for ac_prog in tdlint lint alint
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1771: checking for $ac_word" >&5
+echo "configure:1991: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LINT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1801,7 +2021,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1805: checking for $ac_word" >&5
+echo "configure:2025: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1837,7 +2057,7 @@ if eval "test \"`echo '$''{'cf_cv_subst_LD'+set}'`\" = set"; then
 else
   
 echo $ac_n "checking for loader (symbol LD)""... $ac_c" 1>&6
-echo "configure:1841: checking for loader (symbol LD)" >&5
+echo "configure:2061: checking for loader (symbol LD)" >&5
 test -z "$LD" && LD=ld
 echo "$ac_t""$LD" 1>&6
 
@@ -1851,7 +2071,7 @@ if eval "test \"`echo '$''{'cf_cv_subst_AR'+set}'`\" = set"; then
 else
   
 echo $ac_n "checking for archiver (symbol AR)""... $ac_c" 1>&6
-echo "configure:1855: checking for archiver (symbol AR)" >&5
+echo "configure:2075: checking for archiver (symbol AR)" >&5
 test -z "$AR" && AR=ar
 echo "$ac_t""$AR" 1>&6
 
@@ -1865,7 +2085,7 @@ if eval "test \"`echo '$''{'cf_cv_subst_AR_OPTS'+set}'`\" = set"; then
 else
   
 echo $ac_n "checking for archiver options (symbol AR_OPTS)""... $ac_c" 1>&6
-echo "configure:1869: checking for archiver options (symbol AR_OPTS)" >&5
+echo "configure:2089: checking for archiver options (symbol AR_OPTS)" >&5
 test -z "$AR_OPTS" && AR_OPTS=rv
 echo "$ac_t""$AR_OPTS" 1>&6
 
@@ -1877,7 +2097,7 @@ AR_OPTS=${cf_cv_subst_AR_OPTS}
 
 
 echo $ac_n "checking for makeflags variable""... $ac_c" 1>&6
-echo "configure:1881: checking for makeflags variable" >&5
+echo "configure:2101: checking for makeflags variable" >&5
 if eval "test \"`echo '$''{'cf_cv_makeflags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1913,7 +2133,7 @@ echo "$ac_t""$cf_cv_makeflags" 1>&6
 
 
 echo $ac_n "checking if you have specified an install-prefix""... $ac_c" 1>&6
-echo "configure:1917: checking if you have specified an install-prefix" >&5
+echo "configure:2137: checking if you have specified an install-prefix" >&5
 
 # Check whether --with-install-prefix or --without-install-prefix was given.
 if test "${with_install_prefix+set}" = set; then
@@ -1921,365 +2141,115 @@ if test "${with_install_prefix+set}" = set; then
   case "$withval" in #(vi
        yes|no) #(vi
                ;;
-       *)      INSTALL_PREFIX="$withval"
+       *)      DESTDIR="$withval"
                ;;
        esac
 fi
 
-echo "$ac_t""$INSTALL_PREFIX" 1>&6
+echo "$ac_t""$DESTDIR" 1>&6
 
 
 ###############################################################################
 
 
- echo $ac_n "checking format of man-pages""... $ac_c" 1>&6
-echo "configure:1937: checking format of man-pages" >&5
+### Options to allow the user to specify the set of libraries which are used.
+### Use "--without-normal --with-shared" to allow the default model to be
+### shared, for example.
+cf_list_models=""
 
+echo $ac_n "checking if you want to build libraries with libtool""... $ac_c" 1>&6
+echo "configure:2162: checking if you want to build libraries with libtool" >&5
 
-# Check whether --with-manpage-format or --without-manpage-format was given.
-if test "${with_manpage_format+set}" = set; then
-  withval="$with_manpage_format"
-  cf_manpage_form=$withval
+# Check whether --with-libtool or --without-libtool was given.
+if test "${with_libtool+set}" = set; then
+  withval="$with_libtool"
+  with_libtool=$withval
 else
-  cf_manpage_form=unknown
+  with_libtool=no
 fi
 
+echo "$ac_t""$with_libtool" 1>&6
+if test "$with_libtool" = "yes"; then
+       cf_list_models="$cf_list_models libtool"
+       test -z "$LIBTOOL" && LIBTOOL=libtool
+else
+       LIBTOOL=""
+fi
 
-case ".$cf_manpage_form" in
-.gzip|.compress|.BSDI|.normal|.formatted) # (vi
-  ;;
-.unknown|.) # (vi
-  if test -z "$MANPATH" ; then
-    MANPATH="/usr/man:/usr/share/man"
-  fi
-  # look for the 'date' man-page (it's most likely to be installed!)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  cf_manpage_form=unknown
-  for cf_dir in $MANPATH; do
-    test -z "$cf_dir" && cf_dir=/usr/man
-    for cf_name in $cf_dir/*/date.[01]* $cf_dir/*/date
-    do
-       cf_test=`echo $cf_name | sed -e 's/*//'`
-       if test "x$cf_test" = "x$cf_name" ; then
-         case "$cf_name" in
-         *.gz) cf_manpage_form=gzip;;
-         *.Z)  cf_manpage_form=compress;;
-         *.0)  cf_manpage_form=BSDI,formatted;;
-         *)    cf_manpage_form=normal;;
-         esac
-         break
-       fi
-    done
-    if test "$cf_manpage_form" != "unknown" ; then
-       break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-.*) # (vi
-  echo "configure: warning: Unexpected manpage-format" 1>&2
-  ;;
-esac
 
-echo "$ac_t""$cf_manpage_form" 1>&6
+echo $ac_n "checking if you want to build shared libraries""... $ac_c" 1>&6
+echo "configure:2182: checking if you want to build shared libraries" >&5
 
+# Check whether --with-shared or --without-shared was given.
+if test "${with_shared+set}" = set; then
+  withval="$with_shared"
+  with_shared=$withval
+else
+  with_shared=no
+fi
 
-echo $ac_n "checking for manpage renaming""... $ac_c" 1>&6
-echo "configure:1989: checking for manpage renaming" >&5
+echo "$ac_t""$with_shared" 1>&6
+test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
 
+echo $ac_n "checking if you want to build static libraries""... $ac_c" 1>&6
+echo "configure:2196: checking if you want to build static libraries" >&5
 
-# Check whether --with-manpage-renames or --without-manpage-renames was given.
-if test "${with_manpage_renames+set}" = set; then
-  withval="$with_manpage_renames"
-  cf_manpage_renames=$withval
+# Check whether --with-normal or --without-normal was given.
+if test "${with_normal+set}" = set; then
+  withval="$with_normal"
+  with_normal=$withval
 else
-  cf_manpage_renames=yes
+  with_normal=yes
 fi
 
+echo "$ac_t""$with_normal" 1>&6
+test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal"
 
-case ".$cf_manpage_renames" in #(vi
-.no) #(vi
-  ;;
-.|.yes)
-  # Debian 'man' program?
-  if test -f /etc/debian_version ; then
-    cf_manpage_renames=`cd $srcdir && pwd`/man/man_db.renames
-  else
-    cf_manpage_renames=no
-  fi
-  ;;
-esac
-
-if test "$cf_manpage_renames" != no ; then
-  if test ! -f $cf_manpage_renames ; then
-    { echo "configure: error: not a filename: $cf_manpage_renames" 1>&2; exit 1; }
-  fi
-
-  test ! -d man && mkdir man
+echo $ac_n "checking if you want to build debug libraries""... $ac_c" 1>&6
+echo "configure:2210: checking if you want to build debug libraries" >&5
 
-  # Construct a sed-script to perform renaming within man-pages
-  if test -n "$cf_manpage_renames" ; then
-    test ! -d man && mkdir man
-    $srcdir/man/make_sed.sh $cf_manpage_renames >man/edit_man.sed
-  fi
+# Check whether --with-debug or --without-debug was given.
+if test "${with_debug+set}" = set; then
+  withval="$with_debug"
+  with_debug=$withval
+else
+  with_debug=yes
 fi
 
-echo "$ac_t""$cf_manpage_renames" 1>&6
-
-
-echo $ac_n "checking for manpage symlinks""... $ac_c" 1>&6
-echo "configure:2032: checking for manpage symlinks" >&5
+echo "$ac_t""$with_debug" 1>&6
+test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug"
 
+echo $ac_n "checking if you want to build profiling libraries""... $ac_c" 1>&6
+echo "configure:2224: checking if you want to build profiling libraries" >&5
 
-# Check whether --with-manpage-symlinks or --without-manpage-symlinks was given.
-if test "${with_manpage_symlinks+set}" = set; then
-  withval="$with_manpage_symlinks"
-  cf_manpage_symlinks=$withval
+# Check whether --with-profile or --without-profile was given.
+if test "${with_profile+set}" = set; then
+  withval="$with_profile"
+  with_profile=$withval
 else
-  cf_manpage_symlinks=yes
+  with_profile=no
 fi
 
+echo "$ac_t""$with_profile" 1>&6
+test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
 
-echo "$ac_t""$cf_manpage_symlinks" 1>&6
+###############################################################################
 
-
-  if test "$prefix" = "NONE" ; then
-     cf_prefix="$ac_default_prefix"
-  else
-     cf_prefix="$prefix"
-  fi
-
-  case "$cf_manpage_form" in # (vi
-  *formatted*) # (vi
-    cf_subdir='$mandir/cat'
-    cf_format=yes
-    ;;
-  *)
-    cf_subdir='$mandir/man'
-    cf_format=no
-    ;;
-  esac
-
-test ! -d man && mkdir man
-cat >man/edit_man.sh <<CF_EOF
-#! /bin/sh
-# this script is generated by the configure-script
-prefix="$cf_prefix"
-datadir="$datadir"
-MKDIRS="`cd $srcdir && pwd`/mkinstalldirs"
-INSTALL="$INSTALL"
-INSTALL_DATA="$INSTALL_DATA"
-
-TMP=\${TMPDIR-/tmp}/man\$\$
-trap "rm -f \$TMP" 0 1 2 5 15
-
-verb=\$1
-shift
-
-mandir=\$1
-shift
-
-srcdir=\$1
-shift
-
-for i in \$* ; do
-case \$i in #(vi
-*.orig|*.rej) ;; #(vi
-*.[0-9]*)
-       section=\`expr "\$i" : '.*\\.\\([0-9]\\)[xm]*'\`;
-       if test \$verb = installing ; then
-       if test ! -d $cf_subdir\${section} ; then
-               \$MKDIRS $cf_subdir\$section
-       fi
-       fi
-       aliases=
-       source=\`basename \$i\`
-CF_EOF
-if test "$cf_manpage_symlinks" = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
-       aliases=\`sed -f \$srcdir/manlinks.sed \$source | sort -u\`
-CF_EOF
-fi
-if test "$cf_manpage_renames" = no ; then
-cat >>man/edit_man.sh <<CF_EOF
-       target=$cf_subdir\${section}/\$source
-       sed -e "s,@DATADIR@,\$datadir," < \$i >\$TMP
-CF_EOF
-else
-cat >>man/edit_man.sh <<CF_EOF
-       target=\`grep "^\$source" $cf_manpage_renames | $AWK '{print \$2}'\`
-       if test -z "\$target" ; then
-               echo '? missing rename for '\$source
-               target="\$source"
-       fi
-       target="$cf_subdir\$section/\$target"
-       test \$verb = installing && sed -e "s,@DATADIR@,\$datadir," < \$i | sed -f edit_man.sed >\$TMP
-CF_EOF
-fi
-if test $cf_format = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
-       nroff -man \$TMP >\$TMP.out
-       mv \$TMP.out \$TMP
-CF_EOF
-fi
-case "$cf_manpage_form" in #(vi
-*compress*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
-       if test \$verb = installing ; then
-       if ( compress -f \$TMP )
-       then
-               mv \$TMP.Z \$TMP
-       fi
-       fi
-       target="\$target.Z"
-CF_EOF
-  ;;
-*gzip*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
-       if test \$verb = installing ; then
-       if ( gzip -f \$TMP )
-       then
-               mv \$TMP.gz \$TMP
-       fi
-       fi
-       target="\$target.gz"
-CF_EOF
-  ;;
-*BSDI*)
-cat >>man/edit_man.sh <<CF_EOF
-       # BSDI installs only .0 suffixes in the cat directories
-       target="\`echo \$target|sed -e 's/\.[1-9]\+.\?/.0/'\`"
-CF_EOF
-  ;;
-esac
-cat >>man/edit_man.sh <<CF_EOF
-       echo \$verb \$target
-       suffix=\`basename \$target | sed -e 's/^[^.]*//'\`
-       if test \$verb = installing ; then
-               \$INSTALL_DATA \$TMP \$target
-               test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
-                               target=\`basename \$target\`
-                               for cf_alias in \$aliases
-                               do
-                                       if test -f \$cf_alias\${suffix} ; then
-                                               if ( cmp -s \$target \$cf_alias\${suffix} )
-                                               then
-                                                       :
-                                               else
-                                                       echo .. \$verb alias \$cf_alias\${suffix}
-                                                       rm -f \$cf_alias\${suffix}
-                                                       $LN_S \$target \$cf_alias\${suffix}
-                                               fi
-                                       else
-                                               echo .. \$verb alias \$cf_alias\${suffix}
-                                               rm -f \$cf_alias\${suffix}
-                                               $LN_S \$target \$cf_alias\${suffix}
-                                       fi
-                               done
-                       )
-               )
-       else
-               rm -f \$target
-               test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
-                               for cf_alias in \$aliases
-                               do
-                                       echo .. \$verb alias \$cf_alias\${suffix}
-                                       rm -f \$cf_alias\${suffix}
-                               done
-                       )
-               )
-       fi
-       ;;
-esac
-done
-exit 0
-CF_EOF
-chmod 755 man/edit_man.sh
-
-
-
-###############################################################################
-
-
-### Options to allow the user to specify the set of libraries which are used.
-### Use "--without-normal --with-shared" to allow the default model to be
-### shared, for example.
-cf_list_models=""
-
-echo $ac_n "checking if you want to build shared libraries""... $ac_c" 1>&6
-echo "configure:2213: checking if you want to build shared libraries" >&5
-
-# Check whether --with-shared or --without-shared was given.
-if test "${with_shared+set}" = set; then
-  withval="$with_shared"
-  with_shared=$withval
-else
-  with_shared=no
-fi
-
-echo "$ac_t""$with_shared" 1>&6
-test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
-
-echo $ac_n "checking if you want to build static libraries""... $ac_c" 1>&6
-echo "configure:2227: checking if you want to build static libraries" >&5
-
-# Check whether --with-normal or --without-normal was given.
-if test "${with_normal+set}" = set; then
-  withval="$with_normal"
-  with_normal=$withval
-else
-  with_normal=yes
-fi
-
-echo "$ac_t""$with_normal" 1>&6
-test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal"
-
-echo $ac_n "checking if you want to build debug libraries""... $ac_c" 1>&6
-echo "configure:2241: checking if you want to build debug libraries" >&5
-
-# Check whether --with-debug or --without-debug was given.
-if test "${with_debug+set}" = set; then
-  withval="$with_debug"
-  with_debug=$withval
-else
-  with_debug=yes
-fi
-
-echo "$ac_t""$with_debug" 1>&6
-test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug"
-
-echo $ac_n "checking if you want to build profiling libraries""... $ac_c" 1>&6
-echo "configure:2255: checking if you want to build profiling libraries" >&5
-
-# Check whether --with-profile or --without-profile was given.
-if test "${with_profile+set}" = set; then
-  withval="$with_profile"
-  with_profile=$withval
-else
-  with_profile=no
-fi
-
-echo "$ac_t""$with_profile" 1>&6
-test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
-
-###############################################################################
-
-echo $ac_n "checking for specified models""... $ac_c" 1>&6
-echo "configure:2271: checking for specified models" >&5
-test -z "$cf_list_models" && cf_list_models=normal
-echo "$ac_t""$cf_list_models" 1>&6
+echo $ac_n "checking for specified models""... $ac_c" 1>&6
+echo "configure:2240: checking for specified models" >&5
+test -z "$cf_list_models" && cf_list_models=normal
+test "$with_libtool" = "yes" && cf_list_models=libtool
+echo "$ac_t""$cf_list_models" 1>&6
 
 ### Use the first model as the default, and save its suffix for use in building
 ### up test-applications.
 echo $ac_n "checking for default model""... $ac_c" 1>&6
-echo "configure:2278: checking for default model" >&5
+echo "configure:2248: checking for default model" >&5
 DFT_LWR_MODEL=`echo $cf_list_models | $AWK '{print $1}'`
 echo "$ac_t""$DFT_LWR_MODEL" 1>&6
 
 
-DFT_UPR_MODEL=`echo $DFT_LWR_MODEL | tr '[a-z]' '[A-Z]'`
+DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 
 TINFO_NAME=tinfo
@@ -2306,7 +2276,7 @@ LIB_SUFFIX=
 ###############################################################################
 
 echo $ac_n "checking if you want to build a separate terminfo library""... $ac_c" 1>&6
-echo "configure:2310: checking if you want to build a separate terminfo library" >&5
+echo "configure:2280: checking if you want to build a separate terminfo library" >&5
 
 # Check whether --with-termlib or --without-termlib was given.
 if test "${with_termlib+set}" = set; then
@@ -2320,7 +2290,7 @@ echo "$ac_t""$with_termlib" 1>&6
 
 ### Checks for special libraries, must be done up-front.
 echo $ac_n "checking if you want to link with dbmalloc for testing""... $ac_c" 1>&6
-echo "configure:2324: checking if you want to link with dbmalloc for testing" >&5
+echo "configure:2294: checking if you want to link with dbmalloc for testing" >&5
 
 # Check whether --with-dbmalloc or --without-dbmalloc was given.
 if test "${with_dbmalloc+set}" = set; then
@@ -2331,9 +2301,9 @@ else
 fi
 
 echo "$ac_t""$with_dbmalloc" 1>&6
-if test $with_dbmalloc = yes ; then
+if test "$with_dbmalloc" = yes ; then
        echo $ac_n "checking for debug_malloc in -ldbmalloc""... $ac_c" 1>&6
-echo "configure:2337: checking for debug_malloc in -ldbmalloc" >&5
+echo "configure:2307: checking for debug_malloc in -ldbmalloc" >&5
 ac_lib_var=`echo dbmalloc'_'debug_malloc | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2341,7 +2311,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldbmalloc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2345 "configure"
+#line 2315 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2352,7 +2322,7 @@ int main() {
 debug_malloc()
 ; return 0; }
 EOF
-if { (eval echo configure:2356: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2382,7 +2352,7 @@ fi
 fi
 
 echo $ac_n "checking if you want to link with dmalloc for testing""... $ac_c" 1>&6
-echo "configure:2386: checking if you want to link with dmalloc for testing" >&5
+echo "configure:2356: checking if you want to link with dmalloc for testing" >&5
 
 # Check whether --with-dmalloc or --without-dmalloc was given.
 if test "${with_dmalloc+set}" = set; then
@@ -2393,9 +2363,9 @@ else
 fi
 
 echo "$ac_t""$with_dmalloc" 1>&6
-if test $with_dmalloc = yes ; then
+if test "$with_dmalloc" = yes ; then
        echo $ac_n "checking for dmalloc_debug in -ldmalloc""... $ac_c" 1>&6
-echo "configure:2399: checking for dmalloc_debug in -ldmalloc" >&5
+echo "configure:2369: checking for dmalloc_debug in -ldmalloc" >&5
 ac_lib_var=`echo dmalloc'_'dmalloc_debug | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2403,7 +2373,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldmalloc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2407 "configure"
+#line 2377 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2414,7 +2384,7 @@ int main() {
 dmalloc_debug()
 ; return 0; }
 EOF
-if { (eval echo configure:2418: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2445,7 +2415,7 @@ fi
 
 SHLIB_LIST=""
 echo $ac_n "checking if you want to link with the gpm mouse library""... $ac_c" 1>&6
-echo "configure:2449: checking if you want to link with the gpm mouse library" >&5
+echo "configure:2419: checking if you want to link with the gpm mouse library" >&5
 
 # Check whether --with-gpm or --without-gpm was given.
 if test "${with_gpm+set}" = set; then
@@ -2456,9 +2426,9 @@ else
 fi
 
 echo "$ac_t""$with_gpm" 1>&6
-if test $with_gpm = yes ; then
+if test "$with_gpm" = yes ; then
        echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:2462: checking for Gpm_Open in -lgpm" >&5
+echo "configure:2432: checking for Gpm_Open in -lgpm" >&5
 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2466,7 +2436,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2470 "configure"
+#line 2440 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2477,7 +2447,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:2481: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2503,17 +2473,17 @@ EOF
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2507: checking for $ac_hdr" >&5
+echo "configure:2477: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2512 "configure"
+#line 2482 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2517: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2487: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2561,8 +2531,9 @@ fi
 
 
 echo $ac_n "checking for default loader flags""... $ac_c" 1>&6
-echo "configure:2565: checking for default loader flags" >&5
+echo "configure:2535: checking for default loader flags" >&5
 case $DFT_LWR_MODEL in
+libtool) LD_MODEL=''   ;;
 normal)  LD_MODEL=''   ;;
 debug)   LD_MODEL=$CC_G_OPT ;;
 profile) LD_MODEL='-pg';;
@@ -2571,7 +2542,7 @@ esac
 echo "$ac_t""$LD_MODEL" 1>&6
 
 echo $ac_n "checking if rpath option should be used""... $ac_c" 1>&6
-echo "configure:2575: checking if rpath option should be used" >&5
+echo "configure:2546: checking if rpath option should be used" >&5
 
 # Check whether --enable-rpath or --disable-rpath was given.
 if test "${enable_rpath+set}" = set; then
@@ -2593,7 +2564,7 @@ echo "$ac_t""$cf_cv_ld_rpath" 1>&6
        cf_cv_do_symlinks=no
 
        echo $ac_n "checking if release/abi version should be used for shared libs""... $ac_c" 1>&6
-echo "configure:2597: checking if release/abi version should be used for shared libs" >&5
+echo "configure:2568: checking if release/abi version should be used for shared libs" >&5
        
 # Check whether --with-shlib-version or --without-shlib-version was given.
 if test "${with_shlib_version+set}" = set; then
@@ -2621,23 +2592,23 @@ fi
 
        # Some less-capable ports of gcc support only -fpic
        CC_SHARED_OPTS=
-       if test -n "$GCC"
+       if test "$GCC" = yes
        then
                echo $ac_n "checking which $CC option to use""... $ac_c" 1>&6
-echo "configure:2628: checking which $CC option to use" >&5
+echo "configure:2599: checking which $CC option to use" >&5
                cf_save_CFLAGS="$CFLAGS"
                for CC_SHARED_OPTS in -fPIC -fpic ''
                do
                        CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS"
                        cat > conftest.$ac_ext <<EOF
-#line 2634 "configure"
+#line 2605 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 int x = 1
 ; return 0; }
 EOF
-if { (eval echo configure:2641: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2612: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   break
 else
@@ -2654,23 +2625,9 @@ rm -f conftest*
        beos*)
                MK_SHARED_LIB='$(CC) -o $@ -Xlinker -soname=`basename $@` -nostart -e 0'
                ;;
-       hpux10.*)
-               # (tested with gcc 2.7.2 -- I don't have c89)
-               if test -n "$GCC"; then
-                       LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)'
-               else
-                       CC_SHARED_OPTS='+Z'
-                       LD_SHARED_OPTS='-Wl,+b,$(libdir)'
-               fi
-               MK_SHARED_LIB='$(LD) +b $(libdir) -b +h `basename $@` -o $@'
-               # HP-UX shared libraries must be executable, and should be
-               # readonly to exploit a quirk in the memory manager.
-               INSTALL_LIB="-m 555"
-               cf_cv_do_symlinks=reverse
-               ;;
        hpux*)
                # (tested with gcc 2.7.2 -- I don't have c89)
-               if test -n "$GCC"; then
+               if test "$GCC" = yes; then
                        LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)'
                else
                        CC_SHARED_OPTS='+Z'
@@ -2682,21 +2639,27 @@ rm -f conftest*
                INSTALL_LIB="-m 555"
                ;;
        irix*)
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-Wl,-rpath,"
+                       EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS"
+               fi
                # tested with IRIX 5.2 and 'cc'.
-               if test -z "$GCC"; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $@` -o $@'
                cf_cv_rm_so_locs=yes
                ;;
        linux*|gnu*)
-               # tested with Linux 2.0.29 and gcc 2.7.2 (ELF)
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath,"
-               if test $DFT_LWR_MODEL = "shared" ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-Wl,-rpath,"
+                       EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $@ .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $@'
                ;;
        openbsd2*)
@@ -2706,17 +2669,17 @@ rm -f conftest*
        openbsd*|freebsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -o $@'
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        netbsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath,"
-               if test $DFT_LWR_MODEL = "shared" && test $cf_cv_ld_rpath = yes ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath,"
+               if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
                        EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS"
                        MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $@ .$(REL_VERSION)`.$(ABI_VERSION) -o $@'
-                       if test $cf_cv_shlib_version = auto; then
+                       if test "$cf_cv_shlib_version" = auto; then
                        if test ! -f /usr/libexec/ld.elf_so; then
                                cf_cv_shlib_version=rel
                        fi
@@ -2730,56 +2693,63 @@ rm -f conftest*
                # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
                # link with shared libs).
                MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $@`'
-               test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-rpath"
                case $host_os in
                osf4*)
                        MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
                        ;;
                esac
                MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $@'
-               if test $DFT_LWR_MODEL = "shared" ; then
-                       LOCAL_LDFLAGS='-Wl,-rpath,../lib'
-                       LOCAL_LDFLAGS2='-Wl,-rpath,../../lib'
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
+                       cf_ld_rpath_opt="-rpath"
+                       # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
                cf_cv_rm_so_locs=yes
                ;;
        sco3.2v5*)  # (also uw2* and UW7) hops 13-Apr-98
                # tested with osr5.0.5
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-belf -KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $@ .$(REL_VERSION)`.$(ABI_VERSION) -o $@'
-               if test $cf_cv_ld_rpath = yes ; then
+               if test "$cf_cv_ld_rpath" = yes ; then
                        # only way is to set LD_RUN_PATH but no switch for it
                        RUN_PATH=$libdir
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                LINK_PROGS='LD_RUN_PATH=$(libdir)'
                LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib'
                ;;
        sunos4*)
                # tested with SunOS 4.1.1 and gcc 2.7.0
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -assert pure-text -o $@'
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        solaris2*)
                # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $@ .$(REL_VERSION)`.$(ABI_VERSION) -o $@'
-               if test $cf_cv_ld_rpath = yes ; then
+               if test "$DFT_LWR_MODEL" = "shared" ; then
+                       LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)"
+                       LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+               fi
+               if test "$cf_cv_ld_rpath" = yes ; then
                        cf_ld_rpath_opt="-R"
-                       EXTRA_LDFLAGS="-R ../lib:\$(libdir) $EXTRA_LDFLAGS"
+                       EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
                fi
-               test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        sysv5uw7*|unix_sv*)
                # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc)
-               if test $ac_cv_prog_gcc != yes; then
+               if test "$ac_cv_prog_gcc" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -d y -G -o $@'
@@ -2806,18 +2776,18 @@ rm -f conftest*
 
        if test -n "$cf_ld_rpath_opt" ; then
                echo $ac_n "checking if we need a space after rpath option""... $ac_c" 1>&6
-echo "configure:2810: checking if we need a space after rpath option" >&5
+echo "configure:2780: checking if we need a space after rpath option" >&5
                cf_save_LIBS="$LIBS"
-               LIBS="$LIBS ${cf_ld_rpath_opt}/usr/lib"
+               LIBS="$LIBS ${cf_ld_rpath_opt}$libdir"
                cat > conftest.$ac_ext <<EOF
-#line 2814 "configure"
+#line 2784 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:2821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2791: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_rpath_space=no
 else
@@ -2829,7 +2799,7 @@ fi
 rm -f conftest*
                LIBS="$cf_save_LIBS"
                echo "$ac_t""$cf_rpath_space" 1>&6
-               test $cf_rpath_space = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt "
+               test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt "
                MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)"
        fi
 
@@ -2856,7 +2826,7 @@ fi
 
 ###    use option --disable-overwrite to leave out the link to -lcurses
 echo $ac_n "checking if you wish to install ncurses overwriting curses""... $ac_c" 1>&6
-echo "configure:2860: checking if you wish to install ncurses overwriting curses" >&5
+echo "configure:2830: checking if you wish to install ncurses overwriting curses" >&5
 
 # Check whether --enable-overwrite or --disable-overwrite was given.
 if test "${enable_overwrite+set}" = set; then
@@ -2869,24 +2839,47 @@ fi
 echo "$ac_t""$with_overwrite" 1>&6
 
 echo $ac_n "checking if external terminfo-database is used""... $ac_c" 1>&6
-echo "configure:2873: checking if external terminfo-database is used" >&5
+echo "configure:2843: checking if external terminfo-database is used" >&5
 
 # Check whether --enable-database or --disable-database was given.
 if test "${enable_database+set}" = set; then
   enableval="$enable_database"
-  with_database=$enableval
+  use_database=$enableval
 else
-  with_database=yes
+  use_database=yes
 fi
 
-echo "$ac_t""$with_database" 1>&6
-test $with_database != no && cat >> confdefs.h <<\EOF
+echo "$ac_t""$use_database" 1>&6
+
+case $host_os in #(vi
+os2*) #(vi
+       TERMINFO_SRC='${top_srcdir}/misc/emx.src'
+       ;;
+*) #(vi
+       TERMINFO_SRC='${top_srcdir}/misc/terminfo.src'
+       ;;
+esac
+
+
+if test "$use_database" != no ; then
+       cat >> confdefs.h <<\EOF
 #define USE_DATABASE 1
 EOF
 
+       echo $ac_n "checking which terminfo source-file will be installed""... $ac_c" 1>&6
+echo "configure:2871: checking which terminfo source-file will be installed" >&5
+       
+# Check whether --enable-database or --disable-database was given.
+if test "${enable_database+set}" = set; then
+  enableval="$enable_database"
+  TERMINFO_SRC=$withval
+fi
+
+       echo "$ac_t""$TERMINFO_SRC" 1>&6
+fi
 
 echo $ac_n "checking for list of fallback descriptions""... $ac_c" 1>&6
-echo "configure:2890: checking for list of fallback descriptions" >&5
+echo "configure:2883: checking for list of fallback descriptions" >&5
 
 # Check whether --with-fallbacks or --without-fallbacks was given.
 if test "${with_fallbacks+set}" = set; then
@@ -2900,6 +2893,13 @@ echo "$ac_t""$with_fallback" 1>&6
 FALLBACK_LIST=`echo $with_fallback|sed -e 's/,/ /g'`
 
 
+if test "$use_database" = no ; then
+       if test -z $with_fallback ; then
+               { echo "configure: error: You have disabled the database w/o specifying fallbacks" 1>&2; exit 1; }
+       fi
+       TERMINFO="${datadir}/terminfo"
+else
+
 echo $ac_n "checking for list of terminfo directories""... $ac_c" 1>&6
 echo "configure:2905: checking for list of terminfo directories" >&5
 
@@ -2951,16 +2951,54 @@ test -n "$TERMINFO_DIRS" && cat >> confdefs.h <<EOF
 EOF
 
 
-if test $with_database = no ; then
-       if test -z $with_fallback ; then
-               { echo "configure: error: You have disabled the database w/o specifying fallbacks" 1>&2; exit 1; }
-       fi
+echo $ac_n "checking for default terminfo directory""... $ac_c" 1>&6
+echo "configure:2956: checking for default terminfo directory" >&5
+
+# Check whether --with-default-terminfo-dir or --without-default-terminfo-dir was given.
+if test "${with_default_terminfo_dir+set}" = set; then
+  withval="$with_default_terminfo_dir"
+  :
+else
+  withval="${TERMINFO-${datadir}/terminfo}"
+fi
+
+case ".$withval" in #(vi
+./*) #(vi
+  ;;
+.a-zA-Z:\\/*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s@NONE@$ac_default_prefix@`
+    ;;
+  esac
+  ;; #(vi
+.NONE/*)
+  withval=`echo $withval | sed -e s@NONE@$ac_default_prefix@`
+  ;;
+*)
+  { echo "configure: error: expected a pathname" 1>&2; exit 1; }
+  ;;
+esac
+
+eval TERMINFO="$withval"
+
+echo "$ac_t""$TERMINFO" 1>&6
+cat >> confdefs.h <<EOF
+#define TERMINFO "$TERMINFO"
+EOF
+
+
 fi
 
+
+
 ###    use option --disable-big-core to make tic run on small machines
 ###    We need 4Mb, check if we can allocate 50% more than that.
 echo $ac_n "checking if big-core option selected""... $ac_c" 1>&6
-echo "configure:2964: checking if big-core option selected" >&5
+echo "configure:3002: checking if big-core option selected" >&5
 
 # Check whether --enable-big-core or --disable-big-core was given.
 if test "${enable_big_core+set}" = set; then
@@ -2971,14 +3009,20 @@ else
   with_big_core=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 2975 "configure"
+#line 3013 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
 #include <string.h>
-int main() { exit(malloc(6000000L) == 0); }
+int main() {
+       unsigned long n = 6000000L;
+       char *s = malloc(n);
+       if (s != 0)
+               s[0] = s[n-1] = 0;
+       exit(s == 0);
+}
 EOF
-if { (eval echo configure:2982: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   with_big_core=yes
 else
@@ -3000,7 +3044,7 @@ EOF
 
 ###    use option --enable-termcap to compile in the termcap fallback support
 echo $ac_n "checking if you want termcap-fallback support""... $ac_c" 1>&6
-echo "configure:3004: checking if you want termcap-fallback support" >&5
+echo "configure:3048: checking if you want termcap-fallback support" >&5
 
 # Check whether --enable-termcap or --disable-termcap was given.
 if test "${enable_termcap+set}" = set; then
@@ -3021,7 +3065,7 @@ else
 
 ###    use option --enable-getcap to use a hacked getcap for reading termcaps
 echo $ac_n "checking if fast termcap-loader is needed""... $ac_c" 1>&6
-echo "configure:3025: checking if fast termcap-loader is needed" >&5
+echo "configure:3069: checking if fast termcap-loader is needed" >&5
 
 # Check whether --enable-getcap or --disable-getcap was given.
 if test "${enable_getcap+set}" = set; then
@@ -3038,7 +3082,7 @@ EOF
 
 
 echo $ac_n "checking if translated termcaps will be cached in ~/.terminfo""... $ac_c" 1>&6
-echo "configure:3042: checking if translated termcaps will be cached in ~/.terminfo" >&5
+echo "configure:3086: checking if translated termcaps will be cached in ~/.terminfo" >&5
 
 # Check whether --enable-getcap-cache or --disable-getcap-cache was given.
 if test "${enable_getcap_cache+set}" = set; then
@@ -3064,12 +3108,12 @@ for ac_func in \
        unlink 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3068: checking for $ac_func" >&5
+echo "configure:3112: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3073 "configure"
+#line 3117 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3092,7 +3136,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3140: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3123,12 +3167,12 @@ if test "$ac_cv_prog_cc_cross" = yes ; then
                symlink 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3127: checking for $ac_func" >&5
+echo "configure:3171: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3132 "configure"
+#line 3176 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3151,7 +3195,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3155: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3199: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3177,7 +3221,7 @@ done
 
 else
        echo $ac_n "checking if link/symlink functions work""... $ac_c" 1>&6
-echo "configure:3181: checking if link/symlink functions work" >&5
+echo "configure:3225: checking if link/symlink functions work" >&5
 if eval "test \"`echo '$''{'cf_cv_link_funcs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3189,7 +3233,7 @@ else
                        eval 'ac_cv_func_'$cf_func'=error'
 else
   cat > conftest.$ac_ext <<EOF
-#line 3193 "configure"
+#line 3237 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -3218,18 +3262,11 @@ int main()
 }
                        
 EOF
-if { (eval echo configure:3222: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3266: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   
                        cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
                        eval 'ac_cv_func_'$cf_func'=yes'
-                       
-cf_FUNC=`echo $cf_func | tr '[a-z]' '[A-Z]'`
-
-                       cat >> confdefs.h <<EOF
-#define HAVE_$cf_FUNC 1
-EOF
-
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
@@ -3246,6 +3283,14 @@ fi
 fi
 
 echo "$ac_t""$cf_cv_link_funcs" 1>&6
+       test "$ac_cv_func_link"    = yes && cat >> confdefs.h <<\EOF
+#define HAVE_LINK 1
+EOF
+
+       test "$ac_cv_func_symlink" = yes && cat >> confdefs.h <<\EOF
+#define HAVE_SYMLINK 1
+EOF
+
 fi
 
 
@@ -3254,7 +3299,7 @@ with_symlinks=no
 
 if test "$ac_cv_func_link" != yes ; then
     echo $ac_n "checking if tic should use symbolic links""... $ac_c" 1>&6
-echo "configure:3258: checking if tic should use symbolic links" >&5
+echo "configure:3303: checking if tic should use symbolic links" >&5
     if test "$ac_cv_func_symlink" = yes ; then
        with_symlinks=yes
     else
@@ -3263,7 +3308,7 @@ echo "configure:3258: checking if tic should use symbolic links" >&5
     echo "$ac_t""$with_symlinks" 1>&6
 elif test "$ac_cv_func_symlink" != yes ; then
     echo $ac_n "checking if tic should use hard links""... $ac_c" 1>&6
-echo "configure:3267: checking if tic should use hard links" >&5
+echo "configure:3312: checking if tic should use hard links" >&5
     if test "$ac_cv_func_link" = yes ; then
        with_links=yes
     else
@@ -3272,7 +3317,7 @@ echo "configure:3267: checking if tic should use hard links" >&5
     echo "$ac_t""$with_links" 1>&6
 else
     echo $ac_n "checking if tic should use symbolic links""... $ac_c" 1>&6
-echo "configure:3276: checking if tic should use symbolic links" >&5
+echo "configure:3321: checking if tic should use symbolic links" >&5
     
 # Check whether --enable-symlinks or --disable-symlinks was given.
 if test "${enable_symlinks+set}" = set; then
@@ -3296,7 +3341,7 @@ EOF
 
 ###   use option --enable-broken-linker to force on use of broken-linker support
 echo $ac_n "checking if you want broken-linker support code""... $ac_c" 1>&6
-echo "configure:3300: checking if you want broken-linker support code" >&5
+echo "configure:3345: checking if you want broken-linker support code" >&5
 
 # Check whether --enable-broken_linker or --disable-broken_linker was given.
 if test "${enable_broken_linker+set}" = set; then
@@ -3314,38 +3359,387 @@ EOF
 
 ###   use option --enable-bsdpad to have tputs process BSD-style prefix padding
 echo $ac_n "checking if tputs should process BSD-style prefix padding""... $ac_c" 1>&6
-echo "configure:3318: checking if tputs should process BSD-style prefix padding" >&5
+echo "configure:3363: checking if tputs should process BSD-style prefix padding" >&5
 
 # Check whether --enable-bsdpad or --disable-bsdpad was given.
 if test "${enable_bsdpad+set}" = set; then
   enableval="$enable_bsdpad"
   with_bsdpad=$enableval
 else
-  with_bsdpad=no
+  with_bsdpad=no
+fi
+
+echo "$ac_t""$with_bsdpad" 1>&6
+test "$with_bsdpad" = yes && cat >> confdefs.h <<\EOF
+#define BSD_TPUTS 1
+EOF
+
+
+### Enable compiling-in rcs id's
+echo $ac_n "checking if RCS identifiers should be compiled-in""... $ac_c" 1>&6
+echo "configure:3381: checking if RCS identifiers should be compiled-in" >&5
+
+# Check whether --with-rcs-ids or --without-rcs-ids was given.
+if test "${with_rcs_ids+set}" = set; then
+  withval="$with_rcs_ids"
+  with_rcs_ids=$withval
+else
+  with_rcs_ids=no
+fi
+
+echo "$ac_t""$with_rcs_ids" 1>&6
+test "$with_rcs_ids" = yes && cat >> confdefs.h <<\EOF
+#define USE_RCS_IDS 1
+EOF
+
+
+###############################################################################
+
+
+ echo $ac_n "checking format of man-pages""... $ac_c" 1>&6
+echo "configure:3401: checking format of man-pages" >&5
+
+
+# Check whether --with-manpage-format or --without-manpage-format was given.
+if test "${with_manpage_format+set}" = set; then
+  withval="$with_manpage_format"
+  cf_manpage_form=$withval
+else
+  cf_manpage_form=unknown
+fi
+
+
+case ".$cf_manpage_form" in
+.gzip|.compress|.BSDI|.normal|.formatted) # (vi
+  ;;
+.unknown|.) # (vi
+  if test -z "$MANPATH" ; then
+    MANPATH="/usr/man:/usr/share/man"
+  fi
+  # look for the 'date' man-page (it's most likely to be installed!)
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+  cf_manpage_form=unknown
+  for cf_dir in $MANPATH; do
+    test -z "$cf_dir" && cf_dir=/usr/man
+    for cf_name in $cf_dir/*/date.[01]* $cf_dir/*/date
+    do
+       cf_test=`echo $cf_name | sed -e 's/*//'`
+       if test "x$cf_test" = "x$cf_name" ; then
+         case "$cf_name" in
+         *.gz) cf_manpage_form=gzip;;
+         *.Z)  cf_manpage_form=compress;;
+         *.0)  cf_manpage_form=BSDI,formatted;;
+         *)    cf_manpage_form=normal;;
+         esac
+         break
+       fi
+    done
+    if test "$cf_manpage_form" != "unknown" ; then
+       break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+.*) # (vi
+  echo "configure: warning: Unexpected manpage-format" 1>&2
+  ;;
+esac
+
+echo "$ac_t""$cf_manpage_form" 1>&6
+
+
+echo $ac_n "checking for manpage renaming""... $ac_c" 1>&6
+echo "configure:3453: checking for manpage renaming" >&5
+
+
+# Check whether --with-manpage-renames or --without-manpage-renames was given.
+if test "${with_manpage_renames+set}" = set; then
+  withval="$with_manpage_renames"
+  cf_manpage_renames=$withval
+else
+  cf_manpage_renames=yes
+fi
+
+
+case ".$cf_manpage_renames" in #(vi
+.no) #(vi
+  ;;
+.|.yes)
+  # Debian 'man' program?
+  if test -f /etc/debian_version ; then
+    cf_manpage_renames=`cd $srcdir && pwd`/man/man_db.renames
+  else
+    cf_manpage_renames=no
+  fi
+  ;;
+esac
+
+if test "$cf_manpage_renames" != no ; then
+  if test ! -f $cf_manpage_renames ; then
+    { echo "configure: error: not a filename: $cf_manpage_renames" 1>&2; exit 1; }
+  fi
+
+  test ! -d man && mkdir man
+
+  # Construct a sed-script to perform renaming within man-pages
+  if test -n "$cf_manpage_renames" ; then
+    test ! -d man && mkdir man
+    $srcdir/man/make_sed.sh $cf_manpage_renames >man/edit_man.sed
+  fi
+fi
+
+echo "$ac_t""$cf_manpage_renames" 1>&6
+
+
+echo $ac_n "checking for manpage symlinks""... $ac_c" 1>&6
+echo "configure:3496: checking for manpage symlinks" >&5
+
+
+# Check whether --with-manpage-symlinks or --without-manpage-symlinks was given.
+if test "${with_manpage_symlinks+set}" = set; then
+  withval="$with_manpage_symlinks"
+  cf_manpage_symlinks=$withval
+else
+  cf_manpage_symlinks=yes
+fi
+
+
+echo "$ac_t""$cf_manpage_symlinks" 1>&6
+
+
+echo $ac_n "checking for manpage tbl""... $ac_c" 1>&6
+echo "configure:3512: checking for manpage tbl" >&5
+
+
+# Check whether --with-manpage-tbl or --without-manpage-tbl was given.
+if test "${with_manpage_tbl+set}" = set; then
+  withval="$with_manpage_tbl"
+  cf_manpage_tbl=$withval
+else
+  cf_manpage_tbl=no
+fi
+
+
+echo "$ac_t""$cf_manpage_tbl" 1>&6
+
+
+  if test "$prefix" = "NONE" ; then
+     cf_prefix="$ac_default_prefix"
+  else
+     cf_prefix="$prefix"
+  fi
+
+  case "$cf_manpage_form" in # (vi
+  *formatted*) # (vi
+    cf_subdir='$mandir/cat'
+    cf_format=yes
+    ;;
+  *)
+    cf_subdir='$mandir/man'
+    cf_format=no
+    ;;
+  esac
+
+test ! -d man && mkdir man
+cat >man/edit_man.sh <<CF_EOF
+#! /bin/sh
+# this script is generated by the configure-script
+prefix="$cf_prefix"
+datadir="$datadir"
+TERMINFO="$TERMINFO"
+MKDIRS="`cd $srcdir && pwd`/mkinstalldirs"
+INSTALL="$INSTALL"
+INSTALL_DATA="$INSTALL_DATA"
+transform="$program_transform_name"
+
+TMP=\${TMPDIR-/tmp}/man\$\$
+trap "rm -f \$TMP" 0 1 2 5 15
+
+verb=\$1
+shift
+
+mandir=\$1
+shift
+
+srcdir=\$1
+shift
+
+for i in \$* ; do
+case \$i in #(vi
+*.orig|*.rej) ;; #(vi
+*.[0-9]*)
+       section=\`expr "\$i" : '.*\\.\\([0-9]\\)[xm]*'\`;
+       if test \$verb = installing ; then
+       if test ! -d $cf_subdir\${section} ; then
+               \$MKDIRS $cf_subdir\$section
+       fi
+       fi
+       aliases=
+       source=\`basename \$i\`
+       inalias=\$source
+       test ! -f \$inalias && inalias="\$srcdir/\$inalias"
+       if test ! -f \$inalias ; then
+               echo .. skipped \$source
+               continue
+       fi
+CF_EOF
+if test "$cf_manpage_symlinks" = yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       aliases=\`sed -f \$srcdir/manlinks.sed \$inalias | sort -u\`
+CF_EOF
+fi
+if test "$cf_manpage_renames" = no ; then
+cat >>man/edit_man.sh <<CF_EOF
+       # perform program transformations for section 1 man pages
+       if test \$section = 1 ; then
+               target=$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
+       else
+               target=$cf_subdir\${section}/\$source
+       fi
+
+       # replace variables in man page
+CF_EOF
+       
+       for cf_name in  captoinfo clear infocmp infotocap tic toe tput 
+       do
+cat >>man/edit_man.sh <<CF_EOF
+       prog_$cf_name=\`echo $cf_name|sed "\${transform}"\`
+CF_EOF
+       done
+       
+cat >>man/edit_man.sh <<CF_EOF
+       sed     -e "s,@DATADIR@,\$datadir," \\
+               -e "s,@TERMINFO@,\$TERMINFO," \\
+CF_EOF
+       
+       for cf_name in  captoinfo clear infocmp infotocap tic toe tput 
+       do
+               cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+cat >>man/edit_man.sh <<CF_EOF
+               -e "s,@$cf_NAME@,\$prog_$cf_name," \\
+CF_EOF
+       done
+       
+cat >>man/edit_man.sh <<CF_EOF
+               < \$i >\$TMP
+CF_EOF
+else
+cat >>man/edit_man.sh <<CF_EOF
+       target=\`grep "^\$source" $cf_manpage_renames | $AWK '{print \$2}'\`
+       if test -z "\$target" ; then
+               echo '? missing rename for '\$source
+               target="\$source"
+       fi
+       target="$cf_subdir\$section/\$target"
+       test \$verb = installing && sed -e "s,@DATADIR@,\$datadir," < \$i | sed -f edit_man.sed >\$TMP
+CF_EOF
 fi
+if test $cf_manpage_tbl = yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       tbl \$TMP >\$TMP.out
+       mv \$TMP.out \$TMP
+CF_EOF
+fi
+if test $with_curses_h != yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       sed -e "/\#[    ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
+       mv \$TMP.out \$TMP
+CF_EOF
+fi
+if test $cf_format = yes ; then
+cat >>man/edit_man.sh <<CF_EOF
+       nroff -man \$TMP >\$TMP.out
+       mv \$TMP.out \$TMP
+CF_EOF
+fi
+case "$cf_manpage_form" in #(vi
+*compress*) #(vi
+cat >>man/edit_man.sh <<CF_EOF
+       if test \$verb = installing ; then
+       if ( compress -f \$TMP )
+       then
+               mv \$TMP.Z \$TMP
+       fi
+       fi
+       target="\$target.Z"
+CF_EOF
+  ;;
+*gzip*) #(vi
+cat >>man/edit_man.sh <<CF_EOF
+       if test \$verb = installing ; then
+       if ( gzip -f \$TMP )
+       then
+               mv \$TMP.gz \$TMP
+       fi
+       fi
+       target="\$target.gz"
+CF_EOF
+  ;;
+*BSDI*)
+cat >>man/edit_man.sh <<CF_EOF
+       # BSDI installs only .0 suffixes in the cat directories
+       target="\`echo \$target|sed -e 's/\.[1-9]\+.\?/.0/'\`"
+CF_EOF
+  ;;
+esac
+cat >>man/edit_man.sh <<CF_EOF
+       suffix=\`basename \$target | sed -e 's/^[^.]*//'\`
+       if test \$verb = installing ; then
+               echo \$verb \$target
+               \$INSTALL_DATA \$TMP \$target
+               test -n "\$aliases" && (
+                       cd $cf_subdir\${section} && (
+                               target=\`basename \$target\`
+                               for cf_alias in \$aliases
+                               do
+                                       if test \$section = 1 ; then
+                                               cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+                                       fi
 
-echo "$ac_t""$with_bsdpad" 1>&6
-test "$with_bsdpad" = yes && cat >> confdefs.h <<\EOF
-#define BSD_TPUTS 1
-EOF
-
-
-### Enable compiling-in rcs id's
-echo $ac_n "checking if RCS identifiers should be compiled-in""... $ac_c" 1>&6
-echo "configure:3336: checking if RCS identifiers should be compiled-in" >&5
+                                       if test -f \$cf_alias\${suffix} ; then
+                                               if ( cmp -s \$target \$cf_alias\${suffix} )
+                                               then
+                                                       :
+                                               else
+                                                       echo .. \$verb alias \$cf_alias\${suffix}
+                                                       rm -f \$cf_alias\${suffix}
+                                                       $LN_S \$target \$cf_alias\${suffix}
+                                               fi
+                                       else
+                                               echo .. \$verb alias \$cf_alias\${suffix}
+                                               rm -f \$cf_alias\${suffix}
+                                               $LN_S \$target \$cf_alias\${suffix}
+                                       fi
+                               done
+                       )
+               )
+       elif test \$verb = removing ; then
+               echo \$verb \$target
+               rm -f \$target
+               test -n "\$aliases" && (
+                       cd $cf_subdir\${section} && (
+                               for cf_alias in \$aliases
+                               do
+                                       if test \$section = 1 ; then
+                                               cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
+                                       fi
 
-# Check whether --with-rcs-ids or --without-rcs-ids was given.
-if test "${with_rcs_ids+set}" = set; then
-  withval="$with_rcs_ids"
-  with_rcs_ids=$withval
-else
-  with_rcs_ids=no
-fi
+                                       echo .. \$verb alias \$cf_alias\${suffix}
+                                       rm -f \$cf_alias\${suffix}
+                               done
+                       )
+               )
+       else
+#              echo ".hy 0"
+               cat \$TMP
+       fi
+       ;;
+esac
+done
+exit 0
+CF_EOF
+chmod 755 man/edit_man.sh
 
-echo "$ac_t""$with_rcs_ids" 1>&6
-test "$with_rcs_ids" = yes && cat >> confdefs.h <<\EOF
-#define USE_RCS_IDS 1
-EOF
 
 
 ###############################################################################
@@ -3353,7 +3747,7 @@ EOF
 
 ### Note that some functions (such as const) are normally disabled anyway.
 echo $ac_n "checking if you want to build with function extensions""... $ac_c" 1>&6
-echo "configure:3357: checking if you want to build with function extensions" >&5
+echo "configure:3751: checking if you want to build with function extensions" >&5
 
 # Check whether --enable-ext-funcs or --disable-ext-funcs was given.
 if test "${enable_ext_funcs+set}" = set; then
@@ -3365,6 +3759,10 @@ fi
 
 echo "$ac_t""$with_ext_funcs" 1>&6
 if test "$with_ext_funcs" = yes ; then
+       cat >> confdefs.h <<\EOF
+#define HAVE_CURSES_VERSION 1
+EOF
+
        cat >> confdefs.h <<\EOF
 #define HAVE_HAS_KEY 1
 EOF
@@ -3389,7 +3787,7 @@ fi
 
 ###   use option --enable-const to turn on use of const beyond that in XSI.
 echo $ac_n "checking for extended use of const keyword""... $ac_c" 1>&6
-echo "configure:3393: checking for extended use of const keyword" >&5
+echo "configure:3791: checking for extended use of const keyword" >&5
 
 # Check whether --enable-const or --disable-const was given.
 if test "${enable_const+set}" = set; then
@@ -3400,36 +3798,14 @@ else
 fi
 
 echo "$ac_t""$with_ext_const" 1>&6
-NCURSES_CONST=""
+NCURSES_CONST='/*nothing*/'
 if test "$with_ext_const" = yes ; then
-       cat >> confdefs.h <<\EOF
-#define NCURSES_CONST const
-EOF
-
        NCURSES_CONST=const
 fi
 
 
-###   use option --enable-hashmap to turn on use of hashmap scrolling logic
-echo $ac_n "checking if you want hashmap scrolling-optimization code""... $ac_c" 1>&6
-echo "configure:3416: checking if you want hashmap scrolling-optimization code" >&5
-
-# Check whether --enable-hashmap or --disable-hashmap was given.
-if test "${enable_hashmap+set}" = set; then
-  enableval="$enable_hashmap"
-  with_hashmap=$enableval
-else
-  with_hashmap=yes
-fi
-
-echo "$ac_t""$with_hashmap" 1>&6
-test "$with_hashmap" = yes && cat >> confdefs.h <<\EOF
-#define USE_HASHMAP 1
-EOF
-
-
 echo $ac_n "checking if you want \$NCURSES_NO_PADDING code""... $ac_c" 1>&6
-echo "configure:3433: checking if you want \$NCURSES_NO_PADDING code" >&5
+echo "configure:3809: checking if you want \$NCURSES_NO_PADDING code" >&5
 
 # Check whether --enable-no-padding or --disable-no-padding was given.
 if test "${enable_no_padding+set}" = set; then
@@ -3447,7 +3823,7 @@ EOF
 
 ###   use option --enable-sigwinch to turn on use of SIGWINCH logic
 echo $ac_n "checking if you want SIGWINCH handler""... $ac_c" 1>&6
-echo "configure:3451: checking if you want SIGWINCH handler" >&5
+echo "configure:3827: checking if you want SIGWINCH handler" >&5
 
 # Check whether --enable-sigwinch or --disable-sigwinch was given.
 if test "${enable_sigwinch+set}" = set; then
@@ -3465,7 +3841,7 @@ EOF
 
 ###   use option --enable-tcap-names to allow user to define new capabilities
 echo $ac_n "checking if you want user-definable terminal capabilities like termcap""... $ac_c" 1>&6
-echo "configure:3469: checking if you want user-definable terminal capabilities like termcap" >&5
+echo "configure:3845: checking if you want user-definable terminal capabilities like termcap" >&5
 
 # Check whether --enable-tcap-names or --disable-tcap-names was given.
 if test "${enable_tcap_names+set}" = set; then
@@ -3481,9 +3857,10 @@ test "$with_tcap_names" = yes && NCURSES_XNAMES=1
 
 
 ###############################################################################
+# These options are relatively safe to experiment with.
 
-echo $ac_n "checking if you want all experimental code""... $ac_c" 1>&6
-echo "configure:3487: checking if you want all experimental code" >&5
+echo $ac_n "checking if you want all development code""... $ac_c" 1>&6
+echo "configure:3864: checking if you want all development code" >&5
 
 # Check whether --with-develop or --without-develop was given.
 if test "${with_develop+set}" = set; then
@@ -3496,8 +3873,8 @@ fi
 echo "$ac_t""$with_develop" 1>&6
 
 ###   use option --enable-colorfgbg to turn on use of $COLORFGBG environment
-echo $ac_n "checking if you want experimental colorfgbg code""... $ac_c" 1>&6
-echo "configure:3501: checking if you want experimental colorfgbg code" >&5
+echo $ac_n "checking if you want colorfgbg code""... $ac_c" 1>&6
+echo "configure:3878: checking if you want colorfgbg code" >&5
 
 # Check whether --enable-hard-tabs or --disable-hard-tabs was given.
 if test "${enable_hard_tabs+set}" = set; then
@@ -3514,8 +3891,8 @@ EOF
 
 
 ###   use option --enable-hard-tabs to turn on use of hard-tabs optimize
-echo $ac_n "checking if you want experimental hard-tabs code""... $ac_c" 1>&6
-echo "configure:3519: checking if you want experimental hard-tabs code" >&5
+echo $ac_n "checking if you want hard-tabs code""... $ac_c" 1>&6
+echo "configure:3896: checking if you want hard-tabs code" >&5
 
 # Check whether --enable-hard-tabs or --disable-hard-tabs was given.
 if test "${enable_hard_tabs+set}" = set; then
@@ -3531,8 +3908,82 @@ test "$with_hardtabs" = yes && cat >> confdefs.h <<\EOF
 EOF
 
 
+echo $ac_n "checking if you want to use restrict environment when running as root""... $ac_c" 1>&6
+echo "configure:3913: checking if you want to use restrict environment when running as root" >&5
+
+# Check whether --enable-root-environ or --disable-root-environ was given.
+if test "${enable_root_environ+set}" = set; then
+  enableval="$enable_root_environ"
+  with_root_environ=$enableval
+else
+  with_root_environ=yes
+fi
+
+echo "$ac_t""$with_root_environ" 1>&6
+test "$with_root_environ" = yes && cat >> confdefs.h <<\EOF
+#define USE_ROOT_ENVIRON 1
+EOF
+
+
+###   use option --enable-xmc-glitch to turn on use of magic-cookie optimize
+echo $ac_n "checking if you want limited support for xmc""... $ac_c" 1>&6
+echo "configure:3931: checking if you want limited support for xmc" >&5
+
+# Check whether --enable-xmc-glitch or --disable-xmc-glitch was given.
+if test "${enable_xmc_glitch+set}" = set; then
+  enableval="$enable_xmc_glitch"
+  with_xmc_glitch=$enableval
+else
+  with_xmc_glitch=$with_develop
+fi
+
+echo "$ac_t""$with_xmc_glitch" 1>&6
+test "$with_xmc_glitch" = yes && cat >> confdefs.h <<\EOF
+#define USE_XMC_SUPPORT 1
+EOF
+
+
+###############################################################################
+# These are just experimental, probably should not be in a package:
+
+
+echo $ac_n "checking if you do not want to assume colors are white-on-black""... $ac_c" 1>&6
+echo "configure:3952: checking if you do not want to assume colors are white-on-black" >&5
+
+# Check whether --enable-assumed-color or --disable-assumed-color was given.
+if test "${enable_assumed_color+set}" = set; then
+  enableval="$enable_assumed_color"
+  with_assumed_color=$enableval
+else
+  with_assumed_color=yes
+fi
+
+echo "$ac_t""$with_assumed_color" 1>&6
+test "$with_assumed_color" = yes && cat >> confdefs.h <<\EOF
+#define USE_ASSUMED_COLOR 1
+EOF
+
+
+###   use option --enable-hashmap to turn on use of hashmap scrolling logic
+echo $ac_n "checking if you want hashmap scrolling-optimization code""... $ac_c" 1>&6
+echo "configure:3970: checking if you want hashmap scrolling-optimization code" >&5
+
+# Check whether --enable-hashmap or --disable-hashmap was given.
+if test "${enable_hashmap+set}" = set; then
+  enableval="$enable_hashmap"
+  with_hashmap=$enableval
+else
+  with_hashmap=yes
+fi
+
+echo "$ac_t""$with_hashmap" 1>&6
+test "$with_hashmap" = yes && cat >> confdefs.h <<\EOF
+#define USE_HASHMAP 1
+EOF
+
+
 echo $ac_n "checking if you want experimental safe-sprintf code""... $ac_c" 1>&6
-echo "configure:3536: checking if you want experimental safe-sprintf code" >&5
+echo "configure:3987: checking if you want experimental safe-sprintf code" >&5
 
 # Check whether --enable-safe-sprintf or --disable-safe-sprintf was given.
 if test "${enable_safe_sprintf+set}" = set; then
@@ -3552,7 +4003,7 @@ EOF
 # when hashmap is used scroll hints are useless
 if test "$with_hashmap" = no ; then
 echo $ac_n "checking if you want to experiment without scrolling-hints code""... $ac_c" 1>&6
-echo "configure:3556: checking if you want to experiment without scrolling-hints code" >&5
+echo "configure:4007: checking if you want to experiment without scrolling-hints code" >&5
 
 # Check whether --enable-scroll-hints or --disable-scroll-hints was given.
 if test "${enable_scroll_hints+set}" = set; then
@@ -3571,7 +4022,7 @@ fi
 
 ###   use option --enable-widec to turn on use of wide-character support
 echo $ac_n "checking if you want experimental wide-character code""... $ac_c" 1>&6
-echo "configure:3575: checking if you want experimental wide-character code" >&5
+echo "configure:4026: checking if you want experimental wide-character code" >&5
 
 # Check whether --enable-widec or --disable-widec was given.
 if test "${enable_widec+set}" = set; then
@@ -3590,28 +4041,12 @@ EOF
 
 fi
 
-###   use option --enable-xmc-glitch to turn on use of magic-cookie optimize
-echo $ac_n "checking if you want experimental xmc code""... $ac_c" 1>&6
-echo "configure:3596: checking if you want experimental xmc code" >&5
-
-# Check whether --enable-xmc-glitch or --disable-xmc-glitch was given.
-if test "${enable_xmc_glitch+set}" = set; then
-  enableval="$enable_xmc_glitch"
-  with_xmc_glitch=$enableval
-else
-  with_xmc_glitch=$with_develop
-fi
-
-echo "$ac_t""$with_xmc_glitch" 1>&6
-test "$with_xmc_glitch" = yes && cat >> confdefs.h <<\EOF
-#define USE_XMC_SUPPORT 1
-EOF
-
-
 ###############################################################################
 
 
 ###    use option --disable-echo to suppress full display compiling commands
+echo $ac_n "checking if you want to display full commands during build""... $ac_c" 1>&6
+echo "configure:4050: checking if you want to display full commands during build" >&5
 
 # Check whether --enable-echo or --disable-echo was given.
 if test "${enable_echo+set}" = set; then
@@ -3625,10 +4060,14 @@ if test "$with_echo" = yes; then
        ECHO_LINK=
 else
        ECHO_LINK='@ echo linking $@ ... ;'
+       test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent"
 fi
+echo "$ac_t""$with_echo" 1>&6
 
 
 ###    use option --enable-warnings to turn on all gcc warnings
+echo $ac_n "checking if you want to see compiler warnings""... $ac_c" 1>&6
+echo "configure:4071: checking if you want to see compiler warnings" >&5
 
 # Check whether --enable-warnings or --disable-warnings was given.
 if test "${enable_warnings+set}" = set; then
@@ -3636,17 +4075,19 @@ if test "${enable_warnings+set}" = set; then
   with_warnings=$enableval
 fi
 
+echo "$ac_t""$with_warnings" 1>&6
+
 if test -n "$with_warnings"; then
        ADAFLAGS="$ADAFLAGS -gnatg"
        
-if test -n "$GCC"
+if test "$GCC" = yes
 then
                cat > conftest.$ac_ext <<EOF
-#line 3646 "configure"
+#line 4087 "configure"
 int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
 EOF
                echo "checking for $CC warning options" 1>&6
-echo "configure:3650: checking for $CC warning options" >&5
+echo "configure:4091: checking for $CC warning options" >&5
        cf_save_CFLAGS="$CFLAGS"
        EXTRA_CFLAGS="-W -Wall"
        cf_warn_CONST=""
@@ -3664,7 +4105,7 @@ echo "configure:3650: checking for $CC warning options" >&5
                Wstrict-prototypes $cf_warn_CONST
        do
                CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-               if { (eval echo configure:3668: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+               if { (eval echo configure:4109: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
                        test -n "$verbose" && echo "$ac_t""... -$cf_opt" 1>&6
                        EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
                        test "$cf_opt" = Wcast-qual && EXTRA_CFLAGS="$EXTRA_CFLAGS -DXTSTRINGDEFINES"
@@ -3677,7 +4118,7 @@ fi
 
 fi
 
-if test -n "$GCC"
+if test "$GCC" = yes
 then
 cat > conftest.i <<EOF
 #ifndef GCC_PRINTF
@@ -3693,12 +4134,12 @@ cat > conftest.i <<EOF
 #define GCC_UNUSED /* nothing */
 #endif
 EOF
-if test -n "$GCC"
+if test "$GCC" = yes
 then
        echo "checking for $CC __attribute__ directives" 1>&6
-echo "configure:3700: checking for $CC __attribute__ directives" >&5
+echo "configure:4141: checking for $CC __attribute__ directives" >&5
        cat > conftest.$ac_ext <<EOF
-#line 3702 "configure"
+#line 4143 "configure"
 #include "confdefs.h"
 #include "conftest.h"
 #include "conftest.i"
@@ -3720,7 +4161,7 @@ EOF
                for cf_attribute in scanf printf unused noreturn
        do
                
-CF_ATTRIBUTE=`echo $cf_attribute | tr '[a-z]' '[A-Z]'`
+CF_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
                cf_directive="__attribute__(($cf_attribute))"
                echo "checking for $CC $cf_directive" 1>&5
@@ -3736,7 +4177,7 @@ EOF
 EOF
                        ;;
                esac
-               if { (eval echo configure:3740: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+               if { (eval echo configure:4181: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
                        test -n "$verbose" && echo "$ac_t""... $cf_attribute" 1>&6
                        cat conftest.h >>confdefs.h
 #              else
@@ -3751,6 +4192,8 @@ fi
 
 
 ###    use option --enable-assertions to turn on generation of assertion code
+echo $ac_n "checking if you want to enable runtime assertions""... $ac_c" 1>&6
+echo "configure:4197: checking if you want to enable runtime assertions" >&5
 
 # Check whether --enable-assertions or --disable-assertions was given.
 if test "${enable_assertions+set}" = set; then
@@ -3760,9 +4203,10 @@ else
   with_assertions=no
 fi
 
+echo "$ac_t""$with_assertions" 1>&6
 if test -n "$GCC"
 then
-       if test $with_assertions = no
+       if test "$with_assertions" = no
        then
                cat >> confdefs.h <<\EOF
 #define NDEBUG 1
@@ -3779,7 +4223,7 @@ fi
 # Check whether --enable-leaks or --disable-leaks was given.
 if test "${enable_leaks+set}" = set; then
   enableval="$enable_leaks"
-  test $enableval = no && cat >> confdefs.h <<\EOF
+  test "$enableval" = no && cat >> confdefs.h <<\EOF
 #define NO_LEAKS 1
 EOF
 
@@ -3795,7 +4239,7 @@ EOF
 # Check whether --enable-expanded or --disable-expanded was given.
 if test "${enable_expanded+set}" = set; then
   enableval="$enable_expanded"
-  test $enableval = yes && cat >> confdefs.h <<\EOF
+  test "$enableval" = yes && cat >> confdefs.h <<\EOF
 #define NCURSES_EXPANDED 1
 EOF
 
@@ -3807,7 +4251,7 @@ fi
 # Check whether --enable-macros or --disable-macros was given.
 if test "${enable_macros+set}" = set; then
   enableval="$enable_macros"
-  test $enableval = no && cat >> confdefs.h <<\EOF
+  test "$enableval" = no && cat >> confdefs.h <<\EOF
 #define NCURSES_NOMACROS 1
 EOF
 
@@ -3816,12 +4260,12 @@ fi
 
 ###    Checks for libraries.
 echo $ac_n "checking for gettimeofday""... $ac_c" 1>&6
-echo "configure:3820: checking for gettimeofday" >&5
+echo "configure:4264: checking for gettimeofday" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gettimeofday'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3825 "configure"
+#line 4269 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gettimeofday(); below.  */
@@ -3844,7 +4288,7 @@ gettimeofday();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4292: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gettimeofday=yes"
 else
@@ -3867,7 +4311,7 @@ else
 
 
 echo $ac_n "checking for gettimeofday in -lbsd""... $ac_c" 1>&6
-echo "configure:3871: checking for gettimeofday in -lbsd" >&5
+echo "configure:4315: checking for gettimeofday in -lbsd" >&5
 ac_lib_var=`echo bsd'_'gettimeofday | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3875,7 +4319,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3879 "configure"
+#line 4323 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3886,7 +4330,7 @@ int main() {
 gettimeofday()
 ; return 0; }
 EOF
-if { (eval echo configure:3890: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4334: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3914,13 +4358,13 @@ fi
 
 
 echo $ac_n "checking if -lm needed for math functions""... $ac_c" 1>&6
-echo "configure:3918: checking if -lm needed for math functions" >&5
+echo "configure:4362: checking if -lm needed for math functions" >&5
 if eval "test \"`echo '$''{'cf_cv_need_libm'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 3924 "configure"
+#line 4368 "configure"
 #include "confdefs.h"
 
        #include <stdio.h>
@@ -3930,7 +4374,7 @@ int main() {
 double x = rand(); printf("result = %g\n", sin(x))
 ; return 0; }
 EOF
-if { (eval echo configure:3934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4378: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_need_libm=no
 else
@@ -3952,12 +4396,12 @@ fi
 
 ###    Checks for header files.
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:3956: checking for ANSI C header files" >&5
+echo "configure:4400: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3961 "configure"
+#line 4405 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -3965,7 +4409,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3969: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4413: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3982,7 +4426,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 3986 "configure"
+#line 4430 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF