about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--CHANGES53
-rw-r--r--LYMessages_en.h1
-rw-r--r--WWW/Library/Implementation/HTString.c10
-rw-r--r--WWW/Library/Implementation/SGML.c3
-rw-r--r--aclocal.m421
-rw-r--r--build-slang.com2
-rwxr-xr-xconfig.guess477
-rwxr-xr-xconfig.sub202
-rwxr-xr-xconfigure1652
-rw-r--r--configure.in163
-rw-r--r--intl/ChangeLog64
-rw-r--r--intl/VERSION2
-rw-r--r--intl/bindtextdom.c16
-rw-r--r--intl/cat-compat.c6
-rw-r--r--intl/dcgettext.c59
-rw-r--r--intl/dgettext.c30
-rw-r--r--intl/explodename.c17
-rw-r--r--intl/finddomain.c43
-rw-r--r--intl/gettext.c6
-rw-r--r--intl/gettext.h4
-rw-r--r--intl/gettextP.h24
-rw-r--r--intl/hash-string.h4
-rw-r--r--intl/intl-compat.c4
-rw-r--r--intl/l10nflist.c12
-rw-r--r--intl/libgettext.h18
-rw-r--r--intl/loadinfo.h20
-rw-r--r--intl/loadmsgcat.c51
-rw-r--r--intl/localealias.c146
-rw-r--r--intl/makefile.in58
-rw-r--r--intl/textdomain.c12
-rw-r--r--makefile.in6
-rw-r--r--makelynx.bat73
-rw-r--r--po/makefile.inn36
-rw-r--r--samples/mild-colors.lss12
-rw-r--r--src/GridText.c2
-rw-r--r--src/HTFWriter.c4
-rw-r--r--src/HTML.c16
-rw-r--r--src/LYCurses.c281
-rw-r--r--src/LYCurses.h33
-rw-r--r--src/LYExtern.c4
-rw-r--r--src/LYForms.c170
-rw-r--r--src/LYGlobalDefs.h4
-rw-r--r--src/LYHash.h3
-rw-r--r--src/LYKeymap.c547
-rw-r--r--src/LYKeymap.h20
-rw-r--r--src/LYMail.c9
-rw-r--r--src/LYMain.c40
-rw-r--r--src/LYMainLoop.c58
-rw-r--r--src/LYOptions.c157
-rw-r--r--src/LYStrings.c427
-rw-r--r--src/LYStrings.h10
-rw-r--r--src/LYStyle.c143
-rw-r--r--src/LYStyle.h4
-rw-r--r--src/LYUtils.c10
-rw-r--r--userdefs.h4
55 files changed, 3208 insertions, 2045 deletions
diff --git a/CHANGES b/CHANGES
index 0513613e..42f42555 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,55 @@
 Changes since Lynx 2.8 release
 ===============================================================================
 
+2000-07-16 (2.8.4dev.5)
+* remove "*:OS/390:*:*" item from config.guess -PG
+* add os390 item to $host_os case-statement in configure.in -PG
+* move $host_os case-statement in configure.in before some configuration tests
+  such as CF_BUNDLED_INTL which might perform compile-time tests -TD
+* use LYLocalFileToURL() in handle_LYK_CHDIR() to ensure that DOSPATH is
+  handled properly, inserting a '/' (reported by DK) -TD
+* correct loop condition in HTSaveToFile(), from dev.4 changes for -cmd_script
+  option which left it ignoring 'c' for cancel -TD
+* speed up local directory access for DJGPP by setting _djstat_flags (Gisle
+  Vanem)
+* updates for makelynx.bat, and improved call on the blat mailer (note -f field
+  not needed or wanted):  -Victor Schneider
+* fix Debian bug #65151:  "<> in javascript causes premature </script>"
+  (reported by H Nanosecond <aldomel@ix.netcom.com>) -KW
+* replaced all occurences of 'black' with 'default' in /samples/mild-colors.lss
+  to make it more reasonable on terminals with non-black background -VH
+* modify color-style initialization to avoid passing -1's as attribute codes
+  which would happen if the lynx.lss file was not found, or if not all styles
+  were set in that file.  Also if lynx.lss is not found, initialize the
+  predefined styles to match those in samples/lynx.lss -TD
+* modify handling of empty values for radio and checkbox fields to avoid
+  sending "on" as the value (reported by Janne Peltonen <jkhp@cc.hut.fi>) -KW
+* don't double backslash characters in HTQuoteParameter(), since that changes
+  the string a program invoked through system will see.  Note this assumes UNIX
+  or POSIX interpretation of single-quoted strings by the shell -KW
+* implement first draft of command-completion using popup menu for selection.
+  Pressing tab twice in the prompt for command or URLs will display a sorted
+  list of the choices -TD
+* implement a simple parser for Lynx commands which are normally bound to keys
+  using KEYMAP.  This is bound to ':', so you can for instance type ":quit" to
+  exit.  The parser allows unique abbreviations, so ":q" is equivalent to
+  ":quit" -TD
+* consolidate/simplify logic for displaying popup menus -TD
+* rewrote tab-completion to use an HTList -TD
+* move related logic into LYSubwindow() to reduce clutter - TD
+* make $(DESTDIR) variable work for po directory -TD
+* update bundled intl directory to match gettext-0.10.35 (except for fixes to
+  build scripts) -TD
+* modify configure macro CF_CURSES_LIBS to use a different order for library
+  checks if it has found ncurses header files (i.e., they are installed as
+  /usr/include/curses.h).  This is done to fix an problem where there are two
+  versions of the curses/ncurses libraries installed, and the "curses" library
+  is not ncurses (from a report by Sergei Pokrovsky <pok@nbsp.nsk.su>) -TD
+* fix for configure script from dialog:  If we really do not use included intl,
+  suppress the command that would attempt to symlink the two copies of its
+  header -TD
+* updates for config.guess, config.sub from tin -TD
+
 2000-06-23 (2.8.4dev.4)
 * modify handling to EXTERNAL settings by adding a new field in lynx.cfg.  When
   TRUE, then activating (using arrow-right for example) the link with URL
@@ -25,7 +74,7 @@ Changes since Lynx 2.8 release
       #define SUPPORT_CHDIR 
   in userdefs.h -VH
 * add definitions to allow slang configuration to implement scrollbars.  This
-  will no work for any termcap/terminfo-based systems, appears specific to
+  will not work for any termcap/terminfo-based systems, appears specific to
   MS-DOS (patch by Gisle Vanem)
 * updates for config.guess, config.sub from tin -TD
 * fix typo in CF_CHECK_ERRNO configure macro (reported by John Coyne
@@ -3421,7 +3470,7 @@ Changes since Lynx 2.8 release
      default), will now bring up the editor within a TEXTAREA, so there's no
      need to "waste" a separate keybinding (though you can still additionally
      bind the function separately, if desired).
-  2.  Converts any tab chars in the edited file, to spaces in the TEXTAREA
+  2. Converts any tab chars in the edited file, to spaces in the TEXTAREA
      anchor line.  The tabstop is currently #define'd to the quasi-standard
      value of 8.  (If anyone thinks that needs to be user configurable, feel
      free to add that to the o(ptions) form/menu,
diff --git a/LYMessages_en.h b/LYMessages_en.h
index 75051d6d..e790f7ab 100644
--- a/LYMessages_en.h
+++ b/LYMessages_en.h
@@ -579,6 +579,7 @@
 #define NEED_ADVANCED_USER_MODE gettext("That key requires Advanced User mode.")
 #define CONTENT_TYPE_MSG gettext("Content-type: %s")
 #define COMMAND_PROMPT gettext("Command: ")
+#define COMMAND_UNKNOWN gettext("Unknown or ambiguous command")
 #define VERSION_SEGMENT gettext(" Version ")
 #define FIRST_SEGMENT gettext(" first")
 #define GUESSING_SEGMENT gettext(", guessing...")
diff --git a/WWW/Library/Implementation/HTString.c b/WWW/Library/Implementation/HTString.c
index 89160f16..c57d51c4 100644
--- a/WWW/Library/Implementation/HTString.c
+++ b/WWW/Library/Implementation/HTString.c
@@ -864,10 +864,14 @@ PUBLIC char *HTQuoteParameter ARGS1(
 	    result[n++] = parameter[i];
 	    result[n++] = D_QUOTE;
 	    result[n++] = S_QUOTE;
-	} else if (parameter[i] == '\\') {
-	    result[n++] = parameter[i];
-	    result[n++] = parameter[i];
 	} else {
+	    /* Note:  No special handling of other characters, including
+	       backslash, since we are constructing a single-quoted string!
+	       Backslash has no special escape meaning within those for sh
+	       and compatible shells, so trying to escape a backslash by
+	       doubling it is unnecessary and would be interpreted by the
+	       shell as an additional data character. - kw 2000-05-02
+	       */
 	    result[n++] = parameter[i];
 	}
     }
diff --git a/WWW/Library/Implementation/SGML.c b/WWW/Library/Implementation/SGML.c
index e6f0fab7..efa921dc 100644
--- a/WWW/Library/Implementation/SGML.c
+++ b/WWW/Library/Implementation/SGML.c
@@ -2163,7 +2163,8 @@ top1:
 	    /*
 	    **	If complete match, end litteral.
 	    */
-	    if ((c == '>') && testtag && !testtag->name[string->size-2]) {
+	    if ((c == '>') && testtag &&
+		string->size > 1 && !testtag->name[string->size-2]) {
 #ifdef USE_PRETTYSRC
 		if (psrc_view) {
 		    PSRCSTART(abracket);PUTC('<');PUTC('/');PSRCSTOP(abracket);
diff --git a/aclocal.m4 b/aclocal.m4
index 31adcaa9..7b751654 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -4,7 +4,7 @@ dnl and Jim Spath <jspath@mail.bcpl.lib.md.us>
 dnl and Philippe De Muyter <phdm@macqel.be>
 dnl
 dnl Created: 1997/1/28
-dnl Updated: 2000/5/20
+dnl Updated: 2000/7/11
 dnl
 dnl The autoconf used in Lynx development is GNU autoconf, patched
 dnl by Tom Dickey.  See your local GNU archives, and this URL:
@@ -387,9 +387,15 @@ AC_DEFUN(AM_WITH_NLS,
     if test "$PACKAGE" = gettext; then
       USE_NLS=yes
       USE_INCLUDED_LIBINTL=yes
+    fi
 
-      AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
+    # If we really do not use included intl, suppress the command that
+    # would attempt to symlink the two copies of its header.
+    if test "$USE_INCLUDED_LIBINTL" != yes; then
+      nls_cv_header_libgt=
+      nls_cv_header_intl=
     fi
+    AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
 
     AC_OUTPUT_COMMANDS([ #(vi
       case "\$CONFIG_FILES" in
@@ -884,10 +890,17 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 	cf_term_lib=""
 	cf_curs_lib=""
 
+	if test ".$cf_cv_ncurses_version" != .no
+	then
+		cf_check_list="ncurses curses cursesX"
+	else
+		cf_check_list="cursesX curses ncurses"
+	fi
+
 	# Check for library containing tgoto.  Do this before curses library
 	# because it may be needed to link the test-case for initscr.
 	AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[
-		for cf_term_lib in termcap termlib unknown
+		for cf_term_lib in $cf_check_list termcap termlib unknown
 		do
 			AC_CHECK_LIB($cf_term_lib,tgoto,[break])
 		done
@@ -895,7 +908,7 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 
 	# Check for library containing initscr
 	test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-	for cf_curs_lib in cursesX curses ncurses xcurses jcurses unknown
+	for cf_curs_lib in $cf_check_list xcurses jcurses unknown
 	do
 		AC_CHECK_LIB($cf_curs_lib,initscr,[break])
 	done
diff --git a/build-slang.com b/build-slang.com
index 54cc712a..0d8151ab 100644
--- a/build-slang.com
+++ b/build-slang.com
@@ -9,7 +9,7 @@ $!    object library does not already exist.
 $!=========================================================================
 $!   NOTE:  Set SLANGINC to the location of your slang.h and slcurses.h,
 $!   ====   and SLANGLIB to the location of your slang.olb (can be relative
-$!          to the lynx2-8.src subdirectory of this distribution):
+$!          to the [.src] subdirectory of this distribution):
 $!
 $! SLANGINC = "[-.slang.src]"
 $! SLANGLIB = "[-.slang.src]"
diff --git a/config.guess b/config.guess
index aed5f011..66d80793 100755
--- a/config.guess
+++ b/config.guess
@@ -1,8 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
 #   Free Software Foundation, Inc.
-#
+
+version='2000-06-13'
+
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
@@ -23,8 +25,7 @@
 # the same distribution terms that you use for the rest of that program.
 
 # Written by Per Bothner <bothner@cygnus.com>.
-# The master version of this file is at the FSF in /home/gd/gnu/lib.
-# Please send patches to <autoconf-patches@gnu.org>.
+# Please send patches to <config-patches@gnu.org>.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
@@ -37,6 +38,46 @@
 # (but try to keep the structure clean).
 #
 
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of this system.
+
+Operation modes:
+  -h, --help               print this help, then exit
+  -V, --version            print version number, then exit"
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case "$1" in
+    --version | --vers* | -V )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       exec >&2
+       echo "$me: invalid option $1"
+       echo "$help"
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
 # Use $HOST_CC if defined. $CC may point to a cross-compiler
 if test x"$CC_FOR_BUILD" = x; then
   if test x"$HOST_CC" != x; then
@@ -68,6 +109,43 @@ 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
+    *:NetBSD:*:*)
+	# Netbsd (nbsd) targets should (where applicable) match one or
+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+	# switched to ELF, *-*-netbsd* would select the old
+	# object file format.  This provides both forward
+	# compatibility and a consistent mechanism for selecting the
+	# object file format.
+	# Determine the machine/vendor (is the vendor relevant).
+	case "${UNAME_MACHINE}" in
+	    amiga) machine=m68k-cbm ;;
+	    arm32) machine=arm-unknown ;;
+	    atari*) machine=m68k-atari ;;
+	    sun3*) machine=m68k-sun ;;
+	    mac68k) machine=m68k-apple ;;
+	    macppc) machine=powerpc-apple ;;
+	    hp3[0-9][05]) machine=m68k-hp ;;
+	    ibmrt|romp-ibm) machine=romp-ibm ;;
+	    *) machine=${UNAME_MACHINE}-unknown ;;
+	esac
+	# The Operating System including object format.
+	if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+		| grep __ELF__ >/dev/null
+	then
+	    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+	    # Return netbsd for either.  FIX?
+	    os=netbsd
+	else
+	    os=netbsdelf
+	fi
+	# The OS release
+	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+	# contains redundant information, the shorter form:
+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+	echo "${machine}-${os}${release}"
+	exit 0 ;;
     alpha:OSF1:*:*)
 	if test $UNAME_RELEASE = "V4.0"; then
 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -77,41 +155,51 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	# A Xn.n version is an unreleased experimental baselevel.
 	# 1.2 uses "1.2" for uname -r.
 	cat <<EOF >$dummy.s
+	.data
+\$Lformat:
+	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
+
+	.text
 	.globl main
+	.align 4
 	.ent main
 main:
-	.frame \$30,0,\$26,0
-	.prologue 0
-	.long 0x47e03d80 # implver $0
-	lda \$2,259
-	.long 0x47e20c21 # amask $2,$1
-	srl \$1,8,\$2
-	sll \$2,2,\$2
-	sll \$0,3,\$0
-	addl \$1,\$0,\$0
-	addl \$2,\$0,\$0
-	ret \$31,(\$26),1
+	.frame \$30,16,\$26,0
+	ldgp \$29,0(\$27)
+	.prologue 1
+	.long 0x47e03d80 # implver \$0
+	lda \$2,-1
+	.long 0x47e20c21 # amask \$2,\$1
+	lda \$16,\$Lformat
+	mov \$0,\$17
+	not \$1,\$18
+	jsr \$26,printf
+	ldgp \$29,0(\$26)
+	mov 0,\$16
+	jsr \$26,exit
 	.end main
 EOF
 	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
 	if test "$?" = 0 ; then
-		./$dummy
-		case "$?" in
-			7)
+		case `./$dummy` in
+			0-0)
 				UNAME_MACHINE="alpha"
 				;;
-			15)
+			1-0)
 				UNAME_MACHINE="alphaev5"
 				;;
-			14)
+			1-1)
 				UNAME_MACHINE="alphaev56"
 				;;
-			10)
+			1-101)
 				UNAME_MACHINE="alphapca56"
 				;;
-			16)
+			2-303)
 				UNAME_MACHINE="alphaev6"
 				;;
+			2-307)
+				UNAME_MACHINE="alphaev67"
+				;;
 		esac
 	fi
 	rm -f $dummy.s $dummy
@@ -129,9 +217,6 @@ EOF
     Amiga*:UNIX_System_V:4.0:*)
 	echo m68k-cbm-sysv4
 	exit 0;;
-    amiga:NetBSD:*:*)
-      echo m68k-cbm-netbsd${UNAME_RELEASE}
-      exit 0 ;;
     amiga:OpenBSD:*:*)
 	echo m68k-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
@@ -156,15 +241,9 @@ EOF
     wgrisc:OpenBSD:*:*)
 	echo mipsel-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit 0 ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
 	echo arm-acorn-riscix${UNAME_RELEASE}
 	exit 0;;
-    arm32:NetBSD:*:*)
-	echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-	exit 0 ;;
     SR2?01:HI-UX/MPP:*:*)
 	echo hppa1.1-hitachi-hiuxmpp
 	exit 0;;
@@ -221,9 +300,6 @@ EOF
     aushp:SunOS:*:*)
 	echo sparc-auspex-sunos${UNAME_RELEASE}
 	exit 0 ;;
-    atari*:NetBSD:*:*)
-	echo m68k-atari-netbsd${UNAME_RELEASE}
-	exit 0 ;;
     atari*:OpenBSD:*:*)
 	echo m68k-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
@@ -236,32 +312,26 @@ EOF
     # MiNT.  But MiNT is downward compatible to TOS, so this should
     # be no problem.
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
+        echo m68k-atari-mint${UNAME_RELEASE}
 	exit 0 ;;
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
 	echo m68k-atari-mint${UNAME_RELEASE}
-	exit 0 ;;
+        exit 0 ;;
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
+        echo m68k-atari-mint${UNAME_RELEASE}
 	exit 0 ;;
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-	echo m68k-milan-mint${UNAME_RELEASE}
-	exit 0 ;;
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit 0 ;;
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-	echo m68k-hades-mint${UNAME_RELEASE}
-	exit 0 ;;
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit 0 ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-	echo m68k-unknown-mint${UNAME_RELEASE}
-	exit 0 ;;
-    sun3*:NetBSD:*:*)
-	echo m68k-sun-netbsd${UNAME_RELEASE}
-	exit 0 ;;
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit 0 ;;
     sun3*:OpenBSD:*:*)
 	echo m68k-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
-    mac68k:NetBSD:*:*)
-	echo m68k-apple-netbsd${UNAME_RELEASE}
-	exit 0 ;;
     mac68k:OpenBSD:*:*)
 	echo m68k-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
@@ -274,9 +344,6 @@ EOF
     powerpc:machten:*:*)
 	echo powerpc-apple-machten${UNAME_RELEASE}
 	exit 0 ;;
-    macppc:NetBSD:*:*)
-	echo powerpc-apple-netbsd${UNAME_RELEASE}
-	exit 0 ;;
     RISC*:Mach:*:*)
 	echo mips-dec-mach_bsd4.3
 	exit 0 ;;
@@ -292,6 +359,7 @@ EOF
     mips:*:*:UMIPS | mips:*:*:RISCos)
 	sed 's/^	//' << EOF >$dummy.c
 #ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
 	int main (int argc, char *argv[]) {
 #else
 	int main (argc, argv) int argc; char *argv[]; {
@@ -329,9 +397,9 @@ EOF
 	echo m88k-motorola-sysv3
 	exit 0 ;;
     AViiON:dgux:*:*)
-	# DG/UX returns AViiON for all architectures
-	UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
+        # DG/UX returns AViiON for all architectures
+        UNAME_PROCESSOR=`/usr/bin/uname -p`
+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
 	then
 	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
 	       [ ${TARGET_BINARY_INTERFACE}x = x ]
@@ -343,7 +411,7 @@ EOF
 	else
 	    echo i586-dg-dgux${UNAME_RELEASE}
 	fi
-	exit 0 ;;
+ 	exit 0 ;;
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
 	echo m88k-dolphin-sysv3
 	exit 0 ;;
@@ -360,16 +428,16 @@ 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.
+    *:MVS:*:* | *:OS390:*:*|*:OS/390:*:*)
+			       # uname -m gives a processor model number  /* S/390 -- gil -- 1389 */
+	echo s390-ibm-os390    # on R1 and R2, uname -s reports OS390
+	exit 0 ;;              # on R3, uname -s reports OS/390
+    ????????: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 '
+	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
     i?86:AIX:*:*)
 	echo i386-ibm-aix
 	exit 0 ;;
-    *:MVS:*:* | *:OS390:*:* | *:OS/390:*:*)
-			       # uname -m gives a processor model number  /* S/390 -- gil -- 1389 */
-	echo s390-ibm-os390    # on R1 and R2, uname -s reports OS390
-	exit 0 ;;              # on R3, uname -s reports OS/390
     *:AIX:2:3)
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
 		sed 's/^		//' << EOF >$dummy.c
@@ -412,7 +480,7 @@ EOF
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
 	echo romp-ibm-bsd4.4
 	exit 0 ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC NetBSD and
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
 	exit 0 ;;                           # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
@@ -432,36 +500,38 @@ EOF
 	    9000/31? )            HP_ARCH=m68000 ;;
 	    9000/[34]?? )         HP_ARCH=m68k ;;
 	    9000/[678][0-9][0-9])
-	      sed 's/^              //' << EOF >$dummy.c
-	      #include <stdlib.h>
-	      #include <unistd.h>
+              sed 's/^              //' << EOF >$dummy.c
 
-	      int main ()
-	      {
-	      #if defined(_SC_KERNEL_BITS)
-		  long bits = sysconf(_SC_KERNEL_BITS);
-	      #endif
-		  long cpu  = sysconf (_SC_CPU_VERSION);
+              #define _HPUX_SOURCE
+              #include <stdlib.h>
+              #include <unistd.h>
 
-		  switch (cpu)
-		{
-		case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-		case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-		case CPU_PA_RISC2_0:
-	      #if defined(_SC_KERNEL_BITS)
-		    switch (bits)
-			{
-			case 64: puts ("hppa2.0w"); break;
-			case 32: puts ("hppa2.0n"); break;
-			default: puts ("hppa2.0"); break;
-			} break;
-	      #else  /* !defined(_SC_KERNEL_BITS) */
-		    puts ("hppa2.0"); break;
-	      #endif
-		default: puts ("hppa1.0"); break;
-		}
-		  exit (0);
-	      }
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+              	{
+              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+              	case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+              	    switch (bits)
+              		{
+              		case 64: puts ("hppa2.0w"); break;
+              		case 32: puts ("hppa2.0n"); break;
+              		default: puts ("hppa2.0"); break;
+              		} break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+              	    puts ("hppa2.0"); break;
+              #endif
+              	default: puts ("hppa1.0"); break;
+              	}
+                  exit (0);
+              }
 EOF
 	(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
 	rm -f $dummy.c $dummy
@@ -529,25 +599,25 @@ EOF
 	exit 0 ;;
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
 	echo c1-convex-bsd
-	exit 0 ;;
+        exit 0 ;;
     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
 	if getsysinfo -f scalar_acc
 	then echo c32-convex-bsd
 	else echo c2-convex-bsd
 	fi
-	exit 0 ;;
+        exit 0 ;;
     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
 	echo c34-convex-bsd
-	exit 0 ;;
+        exit 0 ;;
     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
 	echo c38-convex-bsd
-	exit 0 ;;
+        exit 0 ;;
     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
 	echo c4-convex-bsd
-	exit 0 ;;
+        exit 0 ;;
     CRAY*X-MP:*:*:*)
 	echo xmp-cray-unicos
-	exit 0 ;;
+        exit 0 ;;
     CRAY*Y-MP:*:*:*)
 	echo ymp-cray-unicos${UNAME_RELEASE}
 	exit 0 ;;
@@ -557,29 +627,29 @@ EOF
 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
 	exit 0 ;;
     CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE}
+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY*T3E:*:*:*)
-	echo alpha-cray-unicosmk${UNAME_RELEASE}
+	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*SV1:*:*:*)
+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY-2:*:*:*)
 	echo cray2-cray-unicos
-	exit 0 ;;
+        exit 0 ;;
     F300:UNIX_System_V:*:*)
-	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-	echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit 0 ;;
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+        echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        exit 0 ;;
     F301:UNIX_System_V:*:*)
        echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
        exit 0 ;;
-    hp3[0-9][05]:NetBSD:*:*)
-	echo m68k-hp-netbsd${UNAME_RELEASE}
-	exit 0 ;;
     hp300:OpenBSD:*:*)
 	echo m68k-unknown-openbsd${UNAME_RELEASE}
 	exit 0 ;;
-    i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
+    i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
 	exit 0 ;;
     sparc*:BSD/OS:*:*)
@@ -589,17 +659,8 @@ EOF
 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
 	exit 0 ;;
     *:FreeBSD:*:*)
-	if test -x /usr/bin/objformat; then
-	    if test "elf" = "`/usr/bin/objformat`"; then
-		echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-		exit 0
-	    fi
-	fi
 	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
 	exit 0 ;;
-    *:NetBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-	exit 0 ;;
     *:OpenBSD:*:*)
 	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
 	exit 0 ;;
@@ -627,6 +688,9 @@ EOF
     *:GNU:*:*)
 	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit 0 ;;
+    i*86:Minix:*:*)
+	echo ${UNAME_MACHINE}-pc-minix
+	exit 0 ;;
     *:Linux:*:*)
 
 	# The BFD linker knows what the default object file format is, so
@@ -639,7 +703,7 @@ EOF
 				    s/.*supported emulations: *//
 				    s/ .*//
 				    p'`
-	case "$ld_supported_emulations" in
+        case "$ld_supported_emulations" in
 	  *ia64)
 		echo "${UNAME_MACHINE}-unknown-linux"
 		exit 0
@@ -648,6 +712,10 @@ EOF
 		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
 		exit 0
 		;;
+	  elf_i?86)
+		echo "${UNAME_MACHINE}-pc-linux"
+		exit 0
+		;;
 	  i?86coff)
 		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
 		exit 0
@@ -661,7 +729,7 @@ EOF
 		exit 0
 		;;
 	  elf32arm*)
-		echo "${UNAME_MACHINE}-unknown-linux-gnu"
+		echo "${UNAME_MACHINE}-unknown-linux-gnuoldld"
 		exit 0
 		;;
 	  armelf_linux*)
@@ -672,7 +740,7 @@ EOF
 		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
 		exit 0
 		;;
-	  elf32ppc*)
+	  elf32ppc | elf32ppclinux)
 		# Determine Lib Version
 		cat >$dummy.c <<EOF
 #include <features.h>
@@ -704,50 +772,60 @@ EOF
 		echo powerpc-unknown-linux-gnu${LIBC}
 		exit 0
 		;;
-	elf64_ia64)
+	  shelf_linux)
 		echo "${UNAME_MACHINE}-unknown-linux-gnu"
 		exit 0
 		;;
 	esac
 
 	if test "${UNAME_MACHINE}" = "alpha" ; then
-		sed 's/^	//'  <<EOF >$dummy.s
-		.globl main
-		.ent main
-	main:
-		.frame \$30,0,\$26,0
-		.prologue 0
-		.long 0x47e03d80 # implver $0
-		lda \$2,259
-		.long 0x47e20c21 # amask $2,$1
-		srl \$1,8,\$2
-		sll \$2,2,\$2
-		sll \$0,3,\$0
-		addl \$1,\$0,\$0
-		addl \$2,\$0,\$0
-		ret \$31,(\$26),1
-		.end main
+		cat <<EOF >$dummy.s
+			.data
+		\$Lformat:
+			.byte 37,100,45,37,120,10,0	# "%d-%x\n"
+
+			.text
+			.globl main
+			.align 4
+			.ent main
+		main:
+			.frame \$30,16,\$26,0
+			ldgp \$29,0(\$27)
+			.prologue 1
+			.long 0x47e03d80 # implver \$0
+			lda \$2,-1
+			.long 0x47e20c21 # amask \$2,\$1
+			lda \$16,\$Lformat
+			mov \$0,\$17
+			not \$1,\$18
+			jsr \$26,printf
+			ldgp \$29,0(\$26)
+			mov 0,\$16
+			jsr \$26,exit
+			.end main
 EOF
 		LIBC=""
 		$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
 		if test "$?" = 0 ; then
-			./$dummy
-			case "$?" in
-			7)
+			case `./$dummy` in
+			0-0)
 				UNAME_MACHINE="alpha"
 				;;
-			15)
+			1-0)
 				UNAME_MACHINE="alphaev5"
 				;;
-			14)
+			1-1)
 				UNAME_MACHINE="alphaev56"
 				;;
-			10)
+			1-101)
 				UNAME_MACHINE="alphapca56"
 				;;
-			16)
+			2-303)
 				UNAME_MACHINE="alphaev6"
 				;;
+			2-307)
+				UNAME_MACHINE="alphaev67"
+				;;
 			esac
 
 			objdump --private-headers $dummy | \
@@ -761,6 +839,7 @@ EOF
 	elif test "${UNAME_MACHINE}" = "mips" ; then
 	  cat >$dummy.c <<EOF
 #ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
 	int main (int argc, char *argv[]) {
 #else
 	int main (argc, argv) int argc; char *argv[]; {
@@ -776,6 +855,8 @@ EOF
 EOF
 	  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
 	  rm -f $dummy.c $dummy
+	elif test "${UNAME_MACHINE}" = "s390"; then
+	  echo s390-ibm-linux && exit 0
 	else
 	  # Either a pre-BFD a.out linker (linux-gnuoldld)
 	  # or one that does not give us useful --help.
@@ -797,6 +878,7 @@ EOF
 	  cat >$dummy.c <<EOF
 #include <features.h>
 #ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
 	int main (int argc, char *argv[]) {
 #else
 	int main (argc, argv) int argc; char *argv[]; {
@@ -826,11 +908,11 @@ EOF
 	echo i386-sequent-sysv4
 	exit 0 ;;
     i?86:UNIX_SV:4.2MP:2.*)
-	# Unixware is an offshoot of SVR4, but it has its own version
-	# number series starting with 2...
-	# I am not positive that other SVR4 systems won't match this,
+        # Unixware is an offshoot of SVR4, but it has its own version
+        # number series starting with 2...
+        # I am not positive that other SVR4 systems won't match this,
 	# I just have to hope.  -- rms.
-	# Use sysv4.2uw... so that sysv4* matches it.
+        # Use sysv4.2uw... so that sysv4* matches it.
 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
 	exit 0 ;;
     i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
@@ -842,9 +924,9 @@ EOF
 	fi
 	exit 0 ;;
     i?86:*:5:7*)
-	# Fixed at (any) Pentium or better
-	UNAME_MACHINE=i586
-	if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
+        # Fixed at (any) Pentium or better
+        UNAME_MACHINE=i586
+        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
 	    echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
 	else
 	    echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
@@ -868,11 +950,15 @@ EOF
 		echo ${UNAME_MACHINE}-pc-sysv32
 	fi
 	exit 0 ;;
+    i?86:*DOS:*:*)
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+	exit 0 ;;
     pc:*:*:*)
-	# uname -m prints for DJGPP always 'pc', but it prints nothing about
-	# the processor, so we play safe by assuming i386.
+	# Left here for compatibility:
+        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+        # the processor, so we play safe by assuming i386.
 	echo i386-pc-msdosdjgpp
-	exit 0 ;;
+        exit 0 ;;
     Intel:Mach:3*:*)
 	echo i386-pc-mach3
 	exit 0 ;;
@@ -901,8 +987,8 @@ EOF
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
 	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && echo i486-ncr-sysv4 && exit 0 ;;
+        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+          && echo i486-ncr-sysv4 && exit 0 ;;
     m68*:LynxOS:2.*:*)
 	echo m68k-unknown-lynxos${UNAME_RELEASE}
 	exit 0 ;;
@@ -936,9 +1022,9 @@ EOF
 	fi
 	exit 0 ;;
     PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-			   # says <Richard.M.Bartel@ccMail.Census.GOV>
-	echo i586-unisys-sysv4
-	exit 0 ;;
+                           # says <Richard.M.Bartel@ccMail.Census.GOV>
+        echo i586-unisys-sysv4
+        exit 0 ;;
     *:UNIX_System_V:4*:FTX*)
 	# From Gerald Hewes <hewes@openmarket.com>.
 	# How about differentiating between stratus architectures? -djm
@@ -956,11 +1042,11 @@ EOF
 	exit 0 ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
 	if [ -d /usr/nec ]; then
-		echo mips-nec-sysv${UNAME_RELEASE}
+	        echo mips-nec-sysv${UNAME_RELEASE}
 	else
-		echo mips-unknown-sysv${UNAME_RELEASE}
+	        echo mips-unknown-sysv${UNAME_RELEASE}
 	fi
-	exit 0 ;;
+        exit 0 ;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
 	echo powerpc-be-beos
 	exit 0 ;;
@@ -982,8 +1068,26 @@ EOF
     *:Rhapsody:*:*)
 	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
 	exit 0 ;;
+    *:Darwin:*:*)
+	echo `uname -p`-apple-darwin${UNAME_RELEASE}
+	exit 0 ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+	if test "${UNAME_MACHINE}" = "x86pc"; then
+		UNAME_MACHINE=pc
+	fi
+	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
+	exit 0 ;;
     *:QNX:*:4*)
-	echo i386-qnx-qnx${UNAME_VERSION}
+	echo i386-pc-qnx
+	exit 0 ;;
+    NSR-W:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk${UNAME_RELEASE}
+	exit 0 ;;
+    BS2000:POSIX*:*:*)
+	echo bs2000-siemens-sysv
+	exit 0 ;;
+    DS/*:UNIX_System_V:*:*)
+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
 	exit 0 ;;
 esac
 
@@ -1006,11 +1110,11 @@ main ()
 #include <sys/param.h>
   printf ("m68k-sony-newsos%s\n",
 #ifdef NEWSOS4
-	  "4"
+          "4"
 #else
 	  ""
 #endif
-	 ); exit (0);
+         ); exit (0);
 #endif
 #endif
 
@@ -1124,6 +1228,47 @@ then
     esac
 fi
 
-#echo '(Unable to guess system type)' 1>&2
+cat >&2 <<EOF
+$0: unable to guess system type
+
+The $version version of this script cannot recognize your system type.
+Please download the most up to date version of the config scripts:
+
+    ftp://ftp.gnu.org/pub/gnu/config/
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess version = $version
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
 
 exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "version='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/config.sub b/config.sub
index 7ed14e67..abd90f3a 100755
--- a/config.sub
+++ b/config.sub
@@ -1,6 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script, version 1.1.
-#   Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+#   Free Software Foundation, Inc.
+
+version='2000-06-13'
+
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
 # can handle that machine.  It does not imply ALL GNU software can.
@@ -25,6 +29,8 @@
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
+# Please send patches to <config-patches@gnu.org>.
+#
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
@@ -45,30 +51,61 @@
 #	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
 # It is wrong to echo any other type of specification.
 
-if [ x$1 = x ]
-then
-	echo Configuration name missing. 1>&2
-	echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
-	echo "or     $0 ALIAS" 1>&2
-	echo where ALIAS is a recognized configuration type. 1>&2
-	exit 1
-fi
+me=`echo "$0" | sed -e 's,.*/,,'`
 
-# First pass through any local machine types.
-case $1 in
-	*local*)
-		echo $1
-		exit 0
-		;;
-	*)
-	;;
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help               print this help, then exit
+  -V, --version            print version number, then exit"
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case "$1" in
+    --version | --vers* | -V )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       exec >&2
+       echo "$me: invalid option $1"
+       echo "$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit 0;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
 esac
 
 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  hurd-gnu* | linux-gnu*)
+  nto-qnx* | linux-gnu*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -94,7 +131,7 @@ case $os in
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple)
+	-apple | -axis)
 		os=
 		basic_machine=$1
 		;;
@@ -169,15 +206,19 @@ case $basic_machine in
 	tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
 		| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
 		| 580 | i960 | h8300 \
+		| x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \
 		| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
-		| alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
-		| we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
+		| hppa64 \
+		| alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \
+		| alphaev6[78] \
+		| we32k | ns16k | clipper | i370 | sh | sh[34] \
+		| powerpc | powerpcle \
 		| 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
 		| mips64orion | mips64orionel | mipstx39 | mipstx39el \
 		| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
 		| mips64vr5000 | miprs64vr5000el | mcore \
 		| sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
-		| thumb | d10v | fr30)
+		| thumb | d10v | fr30 | avr)
 		basic_machine=$basic_machine-unknown
 		;;
 	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
@@ -186,7 +227,7 @@ case $basic_machine in
 	# We use `pc' rather than `unknown'
 	# because (1) that's what they normally are, and
 	# (2) the word "unknown" tends to confuse beginning users.
-	i[34567]86)
+	i[234567]86)
 	  basic_machine=$basic_machine-pc
 	  ;;
 	# Object if more than one company name word.
@@ -196,13 +237,16 @@ case $basic_machine in
 		;;
 	# Recognize the basic CPU types with company name.
 	# FIXME: clean up the formatting here.
-	vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
+	vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
 	      | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
 	      | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
 	      | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
 	      | xmp-* | ymp-* \
-	      | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
-	      | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
+	      | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \
+	      | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \
+	      | hppa2.0n-* | hppa64-* \
+	      | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \
+	      | alphaev6[78]-* \
 	      | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
 	      | clipper-* | orion-* \
 	      | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
@@ -210,9 +254,10 @@ case $basic_machine in
 	      | mips64el-* | mips64orion-* | mips64orionel-* \
 	      | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
 	      | mipstx39-* | mipstx39el-* | mcore-* \
-	      | f301-* | armv*-* | t3e-* \
+	      | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
 	      | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
-	      | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
+	      | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \
+	      | bs2000-*)
 		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
@@ -310,6 +355,9 @@ case $basic_machine in
 	crds | unos)
 		basic_machine=m68k-crds
 		;;
+	cris | cris-* | etrax*)
+		basic_machine=cris-axis
+		;;
 	da30 | da30-*)
 		basic_machine=m68k-da30
 		;;
@@ -430,7 +478,6 @@ case $basic_machine in
 		;;
 	i370-ibm* | ibm*)
 		basic_machine=i370-ibm
-		os=-mvs
 		;;
 	s390 | s390-ibm*)
 # OS/390 support after:
@@ -472,9 +519,6 @@ case $basic_machine in
 		basic_machine=i386-unknown
 		os=-mingw32
 		;;
-	i386-qnx | qnx)
-		basic_machine=i386-qnx
-		;;
 	iris | iris4d)
 		basic_machine=mips-sgi
 		case $os in
@@ -521,6 +565,10 @@ case $basic_machine in
 	mips3*)
 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
 		;;
+	mmix*)
+		basic_machine=mmix-knuth
+		os=-mmixware
+		;;
 	monitor)
 		basic_machine=m68k-rom68k
 		os=-coff
@@ -593,6 +641,9 @@ case $basic_machine in
 	np1)
 		basic_machine=np1-gould
 		;;
+	nsr-tandem)
+		basic_machine=nsr-tandem
+		;;
 	op50n-* | op60c-*)
 		basic_machine=hppa1.1-oki
 		os=-proelf
@@ -619,13 +670,13 @@ case $basic_machine in
 	pbb)
 		basic_machine=m68k-tti
 		;;
-	pc532 | pc532-*)
+        pc532 | pc532-*)
 		basic_machine=ns32k-pc532
 		;;
 	pentium | p5 | k5 | k6 | nexen)
 		basic_machine=i586-pc
 		;;
-	pentiumpro | p6 | 6x86)
+	pentiumpro | p6 | 6x86 | athlon)
 		basic_machine=i686-pc
 		;;
 	pentiumii | pentium2)
@@ -634,7 +685,7 @@ case $basic_machine in
 	pentium-* | p5-* | k5-* | k6-* | nexen-*)
 		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
-	pentiumpro-* | p6-* | 6x86-*)
+	pentiumpro-* | p6-* | 6x86-* | athlon-*)
 		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
 	pentiumii-* | pentium2-*)
@@ -646,12 +697,12 @@ case $basic_machine in
 	power)	basic_machine=rs6000-ibm
 		;;
 	ppc)	basic_machine=powerpc-unknown
-		;;
+	        ;;
 	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
 	ppcle | powerpclittle | ppc-le | powerpc-little)
 		basic_machine=powerpcle-unknown
-		;;
+	        ;;
 	ppcle-* | powerpclittle-*)
 		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
@@ -737,6 +788,10 @@ case $basic_machine in
 	sun386 | sun386i | roadrunner)
 		basic_machine=i386-sun
 		;;
+	sv1)
+		basic_machine=sv1-cray
+		os=-unicos
+		;;
 	symmetry)
 		basic_machine=i386-sequent
 		os=-dynix
@@ -775,8 +830,8 @@ case $basic_machine in
 		os=-vms
 		;;
 	vpp*|vx|vx-*)
-	       basic_machine=f301-fujitsu
-	       ;;
+               basic_machine=f301-fujitsu
+               ;;
 	vxworks960)
 		basic_machine=i960-wrs
 		os=-vxworks
@@ -801,7 +856,7 @@ case $basic_machine in
 		basic_machine=xmp-cray
 		os=-unicos
 		;;
-	xps | xps100)
+        xps | xps100)
 		basic_machine=xps100-honeywell
 		;;
 	z8k-*-coff)
@@ -846,10 +901,13 @@ case $basic_machine in
 	we32k)
 		basic_machine=we32k-att
 		;;
+	sh3 | sh4)
+		base_machine=sh-unknown
+		;;
 	sparc | sparcv9)
 		basic_machine=sparc-sun
 		;;
-	cydra)
+        cydra)
 		basic_machine=cydra-cydrome
 		;;
 	orion)
@@ -891,8 +949,8 @@ esac
 if [ x"$os" != x"" ]
 then
 case $os in
-	# First match some system type aliases
-	# that might get confused with valid system types.
+        # First match some system type aliases
+        # that might get confused with valid system types.
 	# -solaris* is a basic system type, with this one exception.
 	-solaris1 | -solaris1.*)
 		os=`echo $os | sed -e 's|solaris1|sunos4|'`
@@ -918,7 +976,7 @@ case $os in
 	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
 	      | -aos* \
-	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* | -os390* \
+	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
 	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
@@ -926,19 +984,29 @@ case $os in
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
-	      | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
+	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
+	      | -openstep* | -oskit*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
+	-qnx*)
+		case $basic_machine in
+		    x86-* | i[34567]86-*)
+			;;
+		    *)
+			os=-nto$os
+			;;
+		esac
+		;;
+	-nto*)
+		os=-nto-qnx
+		;;
 	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
 	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
-	      | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
+	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
 		;;
 	-mac*)
 		os=`echo $os | sed -e 's|mac|macos|'`
 		;;
-	-hurd*)
-		os=`echo $os `
-		;;
 	-linux*)
 		os=`echo $os | sed -e 's|linux|linux-gnu|'`
 		;;
@@ -951,6 +1019,9 @@ case $os in
 	-opened*)
 		os=-openedition
 		;;
+	-wince*)
+		os=-wince
+		;;
 	-osfrose*)
 		os=-osfrose
 		;;
@@ -973,7 +1044,10 @@ case $os in
 		os=-sysv
 		;;
 	-ns2 )
-		os=-nextstep2
+	        os=-nextstep2
+		;;
+	-nsk)
+		os=-nsk
 		;;
 	# Preserve the version number of sinix5.
 	-sinix5.*)
@@ -988,9 +1062,6 @@ case $os in
 	-oss*)
 		os=-sysv3
 		;;
-	-qnx)
-		os=-qnx4
-		;;
 	-svr4)
 		os=-sysv4
 		;;
@@ -1012,8 +1083,8 @@ case $os in
 	-xenix)
 		os=-xenix
 		;;
-	-*mint | -*MiNT)
-		os=-mint
+        -*mint | -*MiNT)
+	        os=-mint
 		;;
 	-none)
 		;;
@@ -1046,7 +1117,7 @@ case $basic_machine in
 	arm*-semi)
 		os=-aout
 		;;
-	pdp11-*)
+        pdp11-*)
 		os=-none
 		;;
 	*-dec | vax-*)
@@ -1082,9 +1153,6 @@ case $basic_machine in
 	*-be)
 		os=-beos
 		;;
-	s390-ibm)
-		os=-os390  #  /* S/390 -- gil -- 1451 */
-		;;
 	*-ibm)
 		os=-aix
 		;;
@@ -1139,19 +1207,19 @@ case $basic_machine in
 	*-next)
 		os=-nextstep3
 		;;
-	*-gould)
+        *-gould)
 		os=-sysv
 		;;
-	*-highlevel)
+        *-highlevel)
 		os=-bsd
 		;;
 	*-encore)
 		os=-bsd
 		;;
-	*-sgi)
+        *-sgi)
 		os=-irix
 		;;
-	*-siemens)
+        *-siemens)
 		os=-sysv4
 		;;
 	*-masscomp)
@@ -1244,3 +1312,11 @@ case $basic_machine in
 esac
 
 echo $basic_machine$os
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "version='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/configure b/configure
index d06e814c..e9355cbe 100755
--- a/configure
+++ b/configure
@@ -606,6 +606,7 @@ else
 fi
 
 
+CONFIG_H=lynx_cfg.h
 
 
 ac_aux_dir=
@@ -636,7 +637,7 @@ 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:640: checking host system type" >&5
+echo "configure:641: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -683,6 +684,14 @@ if test ".$system_name" != ".$cf_cv_system_name" ; then
 fi
 
 
+PACKAGE=lynx
+VERSION=2.8.3
+
+
+
+
+
+
 test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
 
 
@@ -691,7 +700,7 @@ test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && ec
 # 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:695: checking for $ac_word" >&5
+echo "configure:704: 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
@@ -721,7 +730,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:725: checking for $ac_word" >&5
+echo "configure:734: 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
@@ -772,7 +781,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:776: checking for $ac_word" >&5
+echo "configure:785: 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
@@ -804,7 +813,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:808: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:817: 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.
@@ -815,12 +824,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 819 "configure"
+#line 828 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:824: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:833: \"$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
@@ -846,12 +855,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:850: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:859: 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:855: checking whether we are using GNU C" >&5
+echo "configure:864: 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
@@ -860,7 +869,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:864: \"$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:873: \"$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
@@ -879,7 +888,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:883: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:892: 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
@@ -911,7 +920,7 @@ else
 fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:915: checking how to run the C preprocessor" >&5
+echo "configure:924: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -926,13 +935,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 930 "configure"
+#line 939 "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:936: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:945: \"$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
   :
@@ -943,13 +952,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 947 "configure"
+#line 956 "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:953: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:962: \"$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
   :
@@ -960,13 +969,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
-#line 964 "configure"
+#line 973 "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:970: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:979: \"$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
   :
@@ -991,7 +1000,7 @@ fi
 echo "$ac_t""$CPP" 1>&6
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:995: checking whether ln -s works" >&5
+echo "configure:1004: 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
@@ -1014,7 +1023,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:1018: checking for $ac_word" >&5
+echo "configure:1027: 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
@@ -1042,7 +1051,7 @@ else
 fi
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:1046: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:1055: 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
@@ -1080,7 +1089,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:1084: checking for a BSD compatible install" >&5
+echo "configure:1093: 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
@@ -1137,7 +1146,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:1141: checking for $ac_word" >&5
+echo "configure:1150: 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
@@ -1168,9 +1177,9 @@ done
 
 
 echo $ac_n "checking for AIX""... $ac_c" 1>&6
-echo "configure:1172: checking for AIX" >&5
+echo "configure:1181: checking for AIX" >&5
 cat > conftest.$ac_ext <<EOF
-#line 1174 "configure"
+#line 1183 "configure"
 #include "confdefs.h"
 #ifdef _AIX
   yes
@@ -1192,7 +1201,7 @@ rm -f conftest*
 
 
 echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
-echo "configure:1196: checking for POSIXized ISC" >&5
+echo "configure:1205: 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
@@ -1218,7 +1227,7 @@ fi
 
 
 echo $ac_n "checking if you want to see long compiling messages""... $ac_c" 1>&6
-echo "configure:1222: checking if you want to see long compiling messages" >&5
+echo "configure:1231: checking if you want to see long compiling messages" >&5
 
 # Check whether --enable-echo or --disable-echo was given.
 if test "${enable_echo+set}" = set; then
@@ -1266,7 +1275,7 @@ fi
 
 
 echo $ac_n "checking if you want to check memory-leaks""... $ac_c" 1>&6
-echo "configure:1270: checking if you want to check memory-leaks" >&5
+echo "configure:1279: checking if you want to check memory-leaks" >&5
 
 # Check whether --enable-find-leaks or --disable-find-leaks was given.
 if test "${enable_find_leaks+set}" = set; then
@@ -1290,7 +1299,7 @@ EOF
 
 
 echo $ac_n "checking if you want to enable debug-code""... $ac_c" 1>&6
-echo "configure:1294: checking if you want to enable debug-code" >&5
+echo "configure:1303: checking if you want to enable debug-code" >&5
 
 # Check whether --enable-debug or --disable-debug was given.
 if test "${enable_debug+set}" = set; then
@@ -1332,7 +1341,7 @@ else
 fi
 
 echo $ac_n "checking if you want to enable lynx trace code *recommended* ""... $ac_c" 1>&6
-echo "configure:1336: checking if you want to enable lynx trace code *recommended* " >&5
+echo "configure:1345: checking if you want to enable lynx trace code *recommended* " >&5
 
 # Check whether --enable-trace or --disable-trace was given.
 if test "${enable_trace+set}" = set; then
@@ -1358,7 +1367,7 @@ EOF
 if test -n "$GCC"
 then
 echo $ac_n "checking if you want to turn on gcc warnings""... $ac_c" 1>&6
-echo "configure:1362: checking if you want to turn on gcc warnings" >&5
+echo "configure:1371: checking if you want to turn on gcc warnings" >&5
 
 # Check whether --enable-warnings or --disable-warnings was given.
 if test "${enable_warnings+set}" = set; then
@@ -1398,9 +1407,9 @@ EOF
 if test -n "$GCC"
 then
 	echo "checking for $CC __attribute__ directives" 1>&6
-echo "configure:1402: checking for $CC __attribute__ directives" >&5
+echo "configure:1411: checking for $CC __attribute__ directives" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 1404 "configure"
+#line 1413 "configure"
 #include "confdefs.h"
 #include "conftest.h"
 #include "conftest.i"
@@ -1438,7 +1447,7 @@ EOF
 EOF
 			;;
 		esac
-		if { (eval echo configure:1442: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1451: \"$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
@@ -1455,11 +1464,11 @@ fi
 if test -n "$GCC"
 then
 		cat > conftest.$ac_ext <<EOF
-#line 1459 "configure"
+#line 1468 "configure"
 int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
 EOF
 		echo "checking for $CC warning options" 1>&6
-echo "configure:1463: checking for $CC warning options" >&5
+echo "configure:1472: checking for $CC warning options" >&5
 	cf_save_CFLAGS="$CFLAGS"
 	EXTRA_CFLAGS="-W -Wall"
 	cf_warn_CONST=""
@@ -1477,7 +1486,7 @@ echo "configure:1463: checking for $CC warning options" >&5
 		Wstrict-prototypes $cf_warn_CONST
 	do
 		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-		if { (eval echo configure:1481: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1490: \"$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"
@@ -1495,12 +1504,12 @@ fi
 
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1499: checking for ANSI C header files" >&5
+echo "configure:1508: 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 1504 "configure"
+#line 1513 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -1508,7 +1517,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1512: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1521: \"$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*
@@ -1525,7 +1534,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 1529 "configure"
+#line 1538 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -1543,7 +1552,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1547 "configure"
+#line 1556 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -1564,7 +1573,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 1568 "configure"
+#line 1577 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -1575,7 +1584,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:1579: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1588: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -1599,12 +1608,12 @@ EOF
 fi
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:1603: checking for working const" >&5
+echo "configure:1612: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1608 "configure"
+#line 1617 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -1653,7 +1662,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:1657: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1666: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -1674,21 +1683,21 @@ EOF
 fi
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:1678: checking for inline" >&5
+echo "configure:1687: checking for inline" >&5
 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
-#line 1685 "configure"
+#line 1694 "configure"
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
-if { (eval echo configure:1692: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1701: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
@@ -1714,12 +1723,12 @@ EOF
 esac
 
 echo $ac_n "checking for off_t""... $ac_c" 1>&6
-echo "configure:1718: checking for off_t" >&5
+echo "configure:1727: checking for off_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1723 "configure"
+#line 1732 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -1747,12 +1756,12 @@ EOF
 fi
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:1751: checking for size_t" >&5
+echo "configure:1760: checking for size_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1756 "configure"
+#line 1765 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -1782,19 +1791,19 @@ fi
 # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:1786: checking for working alloca.h" >&5
+echo "configure:1795: checking for working alloca.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1791 "configure"
+#line 1800 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:1798: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1807: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_header_alloca_h=yes
 else
@@ -1815,12 +1824,12 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:1819: checking for alloca" >&5
+echo "configure:1828: checking for alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1824 "configure"
+#line 1833 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -1848,7 +1857,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:1852: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1861: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_alloca_works=yes
 else
@@ -1880,12 +1889,12 @@ EOF
 
 
 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:1884: checking whether alloca needs Cray hooks" >&5
+echo "configure:1893: checking whether alloca needs Cray hooks" >&5
 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1889 "configure"
+#line 1898 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -1910,12 +1919,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
 if test $ac_cv_os_cray = yes; then
 for ac_func in _getb67 GETB67 getb67; do
   echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:1914: checking for $ac_func" >&5
+echo "configure:1923: 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 1919 "configure"
+#line 1928 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -1938,7 +1947,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1942: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1951: \"$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
@@ -1965,7 +1974,7 @@ done
 fi
 
 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:1969: checking stack direction for C alloca" >&5
+echo "configure:1978: checking stack direction for C alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1973,7 +1982,7 @@ else
   ac_cv_c_stack_direction=0
 else
   cat > conftest.$ac_ext <<EOF
-#line 1977 "configure"
+#line 1986 "configure"
 #include "confdefs.h"
 find_stack_direction ()
 {
@@ -1992,7 +2001,7 @@ main ()
   exit (find_stack_direction() < 0);
 }
 EOF
-if { (eval echo configure:1996: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2005: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_stack_direction=1
 else
@@ -2017,17 +2026,17 @@ for ac_hdr in unistd.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2021: checking for $ac_hdr" >&5
+echo "configure:2030: 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 2026 "configure"
+#line 2035 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2031: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2040: \"$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*
@@ -2056,12 +2065,12 @@ done
 for ac_func in getpagesize
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2060: checking for $ac_func" >&5
+echo "configure:2069: 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 2065 "configure"
+#line 2074 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2084,7 +2093,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2088: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2097: \"$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
@@ -2109,7 +2118,7 @@ fi
 done
 
 echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:2113: checking for working mmap" >&5
+echo "configure:2122: checking for working mmap" >&5
 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2117,7 +2126,7 @@ else
   ac_cv_func_mmap_fixed_mapped=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 2121 "configure"
+#line 2130 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Haertel and Jim Avera for this test.
@@ -2257,7 +2266,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:2261: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2270: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_mmap_fixed_mapped=yes
 else
@@ -2290,17 +2299,17 @@ unistd.h sys/param.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2294: checking for $ac_hdr" >&5
+echo "configure:2303: 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 2299 "configure"
+#line 2308 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2304: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2313: \"$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*
@@ -2330,12 +2339,12 @@ done
 strdup __argz_count __argz_stringify __argz_next
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2334: checking for $ac_func" >&5
+echo "configure:2343: 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 2339 "configure"
+#line 2348 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2358,7 +2367,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2362: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2371: \"$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
@@ -2387,12 +2396,12 @@ done
      for ac_func in stpcpy
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2391: checking for $ac_func" >&5
+echo "configure:2400: 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 2396 "configure"
+#line 2405 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2415,7 +2424,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2419: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2428: \"$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
@@ -2449,19 +2458,19 @@ EOF
 
    if test $ac_cv_header_locale_h = yes; then
     echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
-echo "configure:2453: checking for LC_MESSAGES" >&5
+echo "configure:2462: checking for LC_MESSAGES" >&5
 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2458 "configure"
+#line 2467 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 return LC_MESSAGES
 ; return 0; }
 EOF
-if { (eval echo configure:2465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_val_LC_MESSAGES=yes
 else
@@ -2482,7 +2491,7 @@ EOF
     fi
   fi
    echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
-echo "configure:2486: checking whether NLS is requested" >&5
+echo "configure:2495: checking whether NLS is requested" >&5
         
 # Check whether --enable-nls or --disable-nls was given.
 if test "${enable_nls+set}" = set; then
@@ -2503,7 +2512,7 @@ fi
 EOF
 
       echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
-echo "configure:2507: checking whether included gettext is requested" >&5
+echo "configure:2516: checking whether included gettext is requested" >&5
       
 # Check whether --with-included-gettext or --without-included-gettext was given.
 if test "${with_included_gettext+set}" = set; then
@@ -2523,17 +2532,17 @@ fi
 
 	ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
-echo "configure:2527: checking for libintl.h" >&5
+echo "configure:2536: checking for libintl.h" >&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 2532 "configure"
+#line 2541 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2537: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2546: \"$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*
@@ -2550,19 +2559,19 @@ fi
 if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6
-echo "configure:2554: checking for gettext in libc" >&5
+echo "configure:2563: checking for gettext in libc" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2559 "configure"
+#line 2568 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 int main() {
 return (int) gettext ("")
 ; return 0; }
 EOF
-if { (eval echo configure:2566: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2575: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   gt_cv_func_gettext_libc=yes
 else
@@ -2578,7 +2587,7 @@ echo "$ac_t""$gt_cv_func_gettext_libc" 1>&6
 
 	   if test "$gt_cv_func_gettext_libc" != "yes"; then
 	     echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
-echo "configure:2582: checking for bindtextdomain in -lintl" >&5
+echo "configure:2591: checking for bindtextdomain in -lintl" >&5
 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2586,7 +2595,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2590 "configure"
+#line 2599 "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
@@ -2597,7 +2606,7 @@ int main() {
 bindtextdomain()
 ; return 0; }
 EOF
-if { (eval echo configure:2601: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2610: \"$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
@@ -2615,19 +2624,19 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
    gt_save_LIBS="$LIBS"
 		 LIBS="$gt_save_LIBS -lintl"
 	         echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6
-echo "configure:2619: checking for gettext in libintl" >&5
+echo "configure:2628: checking for gettext in libintl" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2624 "configure"
+#line 2633 "configure"
 #include "confdefs.h"
 
 int main() {
 return (int) gettext ("")
 ; return 0; }
 EOF
-if { (eval echo configure:2631: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   gt_cv_func_gettext_libintl=yes
 else
@@ -2660,7 +2669,7 @@ EOF
 	      # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2664: checking for $ac_word" >&5
+echo "configure:2673: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2694,12 +2703,12 @@ fi
 		for ac_func in dcgettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2698: checking for $ac_func" >&5
+echo "configure:2707: 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 2703 "configure"
+#line 2712 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2722,7 +2731,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2726: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2735: \"$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
@@ -2749,7 +2758,7 @@ done
 		# Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2753: checking for $ac_word" >&5
+echo "configure:2762: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2785,7 +2794,7 @@ fi
 		# Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2789: checking for $ac_word" >&5
+echo "configure:2798: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2817,7 +2826,7 @@ else
 fi
 
 		cat > conftest.$ac_ext <<EOF
-#line 2821 "configure"
+#line 2830 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -2825,7 +2834,7 @@ extern int _nl_msg_cat_cntr;
 			       return _nl_msg_cat_cntr
 ; return 0; }
 EOF
-if { (eval echo configure:2829: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2838: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   CATOBJEXT=.gmo
 		   DATADIRNAME=share
@@ -2848,7 +2857,7 @@ fi
 
         if test "$CATOBJEXT" = "NONE"; then
 	  echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
-echo "configure:2852: checking whether catgets can be used" >&5
+echo "configure:2861: checking whether catgets can be used" >&5
 	  
 # Check whether --with-catgets or --without-catgets was given.
 if test "${with_catgets+set}" = set; then
@@ -2862,7 +2871,7 @@ fi
 
 	  if test "$nls_cv_use_catgets" = "yes"; then
 	    	    echo $ac_n "checking for main in -li""... $ac_c" 1>&6
-echo "configure:2866: checking for main in -li" >&5
+echo "configure:2875: checking for main in -li" >&5
 ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2870,14 +2879,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-li  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2874 "configure"
+#line 2883 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2890: \"$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
@@ -2905,12 +2914,12 @@ else
 fi
 
 	    echo $ac_n "checking for catgets""... $ac_c" 1>&6
-echo "configure:2909: checking for catgets" >&5
+echo "configure:2918: checking for catgets" >&5
 if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2914 "configure"
+#line 2923 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char catgets(); below.  */
@@ -2933,7 +2942,7 @@ catgets();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2946: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_catgets=yes"
 else
@@ -2955,7 +2964,7 @@ EOF
 	       # Extract the first word of "gencat", so it can be a program name with args.
 set dummy gencat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2959: checking for $ac_word" >&5
+echo "configure:2968: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2991,7 +3000,7 @@ fi
 		 # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2995: checking for $ac_word" >&5
+echo "configure:3004: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3028,7 +3037,7 @@ fi
 		   # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3032: checking for $ac_word" >&5
+echo "configure:3041: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3063,7 +3072,7 @@ fi
 		 # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3067: checking for $ac_word" >&5
+echo "configure:3076: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3121,7 +3130,7 @@ fi
         # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3125: checking for $ac_word" >&5
+echo "configure:3134: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3155,7 +3164,7 @@ fi
         # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3159: checking for $ac_word" >&5
+echo "configure:3168: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3191,7 +3200,7 @@ fi
         # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3195: checking for $ac_word" >&5
+echo "configure:3204: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3256,9 +3265,15 @@ fi
     if test "$PACKAGE" = gettext; then
       USE_NLS=yes
       USE_INCLUDED_LIBINTL=yes
+    fi
 
-      
+    # If we really do not use included intl, suppress the command that
+    # would attempt to symlink the two copies of its header.
+    if test "$USE_INCLUDED_LIBINTL" != yes; then
+      nls_cv_header_libgt=
+      nls_cv_header_intl=
     fi
+    
 
     
 
@@ -3285,7 +3300,7 @@ fi
        LINGUAS=
      else
        echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
-echo "configure:3289: checking for catalogs to be installed" >&5
+echo "configure:3304: checking for catalogs to be installed" >&5
        NEW_LINGUAS=
        for lang in ${LINGUAS=$ALL_LINGUAS}; do
          case "$ALL_LINGUAS" in
@@ -3314,17 +3329,17 @@ echo "configure:3289: checking for catalogs to be installed" >&5
      if test "$CATOBJEXT" = ".cat"; then
        ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
-echo "configure:3318: checking for linux/version.h" >&5
+echo "configure:3333: checking for linux/version.h" >&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 3323 "configure"
+#line 3338 "configure"
 #include "confdefs.h"
 #include <linux/version.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3328: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3343: \"$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*
@@ -3405,7 +3420,7 @@ use_our_messages=no
 if test "$USE_NLS" = yes ; then
 if test -d $srcdir/po ; then
 echo $ac_n "checking if we should use included message-library""... $ac_c" 1>&6
-echo "configure:3409: checking if we should use included message-library" >&5
+echo "configure:3424: checking if we should use included message-library" >&5
 	
 # Check whether --enable-included-msgs or --disable-included-msgs was given.
 if test "${enable_included_msgs+set}" = set; then
@@ -3441,17 +3456,17 @@ elif test "$USE_NLS" = yes ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3445: checking for $ac_hdr" >&5
+echo "configure:3460: 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 3450 "configure"
+#line 3465 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3455: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3470: \"$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*
@@ -3561,7 +3576,7 @@ eval NLS_DATADIR="$withval"
 
 
 echo $ac_n "checking if you want full utility pathnames""... $ac_c" 1>&6
-echo "configure:3565: checking if you want full utility pathnames" >&5
+echo "configure:3580: checking if you want full utility pathnames" >&5
 
 # Check whether --enable-full-paths or --disable-full-paths was given.
 if test "${enable_full_paths+set}" = set; then
@@ -3586,7 +3601,7 @@ EOF
 
 
 echo $ac_n "checking for system mailer""... $ac_c" 1>&6
-echo "configure:3590: checking for system mailer" >&5
+echo "configure:3605: checking for system mailer" >&5
 if eval "test \"`echo '$''{'cf_cv_SYSTEM_MAIL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3613,7 +3628,7 @@ EOF
 
 
 echo $ac_n "checking system mail flags""... $ac_c" 1>&6
-echo "configure:3617: checking system mail flags" >&5
+echo "configure:3632: checking system mail flags" >&5
 if eval "test \"`echo '$''{'cf_cv_system_mail_flags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3641,7 +3656,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "chmod", so it can be a program name with args.
 set dummy chmod; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3645: checking for $ac_word" >&5
+echo "configure:3660: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3676,7 +3691,7 @@ fi
 
 else
 	echo $ac_n "checking for chmod""... $ac_c" 1>&6
-echo "configure:3680: checking for chmod" >&5
+echo "configure:3695: checking for chmod" >&5
 	echo "$ac_t""$CHMOD" 1>&6
 	eval 'ac_cv_path_'CHMOD'="'chmod'"'
 fi
@@ -3718,7 +3733,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "compress", so it can be a program name with args.
 set dummy compress; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3722: checking for $ac_word" >&5
+echo "configure:3737: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3753,7 +3768,7 @@ fi
 
 else
 	echo $ac_n "checking for compress""... $ac_c" 1>&6
-echo "configure:3757: checking for compress" >&5
+echo "configure:3772: checking for compress" >&5
 	echo "$ac_t""$COMPRESS" 1>&6
 	eval 'ac_cv_path_'COMPRESS'="'compress'"'
 fi
@@ -3795,7 +3810,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "cp", so it can be a program name with args.
 set dummy cp; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3799: checking for $ac_word" >&5
+echo "configure:3814: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3830,7 +3845,7 @@ fi
 
 else
 	echo $ac_n "checking for cp""... $ac_c" 1>&6
-echo "configure:3834: checking for cp" >&5
+echo "configure:3849: checking for cp" >&5
 	echo "$ac_t""$COPY" 1>&6
 	eval 'ac_cv_path_'COPY'="'cp'"'
 fi
@@ -3872,7 +3887,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gzip", so it can be a program name with args.
 set dummy gzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3876: checking for $ac_word" >&5
+echo "configure:3891: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3907,7 +3922,7 @@ fi
 
 else
 	echo $ac_n "checking for gzip""... $ac_c" 1>&6
-echo "configure:3911: checking for gzip" >&5
+echo "configure:3926: checking for gzip" >&5
 	echo "$ac_t""$GZIP" 1>&6
 	eval 'ac_cv_path_'GZIP'="'gzip'"'
 fi
@@ -3949,7 +3964,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mkdir", so it can be a program name with args.
 set dummy mkdir; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3953: checking for $ac_word" >&5
+echo "configure:3968: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MKDIR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3984,7 +3999,7 @@ fi
 
 else
 	echo $ac_n "checking for mkdir""... $ac_c" 1>&6
-echo "configure:3988: checking for mkdir" >&5
+echo "configure:4003: checking for mkdir" >&5
 	echo "$ac_t""$MKDIR" 1>&6
 	eval 'ac_cv_path_'MKDIR'="'mkdir'"'
 fi
@@ -4026,7 +4041,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mv", so it can be a program name with args.
 set dummy mv; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4030: checking for $ac_word" >&5
+echo "configure:4045: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4061,7 +4076,7 @@ fi
 
 else
 	echo $ac_n "checking for mv""... $ac_c" 1>&6
-echo "configure:4065: checking for mv" >&5
+echo "configure:4080: checking for mv" >&5
 	echo "$ac_t""$MV" 1>&6
 	eval 'ac_cv_path_'MV'="'mv'"'
 fi
@@ -4103,7 +4118,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "rm", so it can be a program name with args.
 set dummy rm; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4107: checking for $ac_word" >&5
+echo "configure:4122: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4138,7 +4153,7 @@ fi
 
 else
 	echo $ac_n "checking for rm""... $ac_c" 1>&6
-echo "configure:4142: checking for rm" >&5
+echo "configure:4157: checking for rm" >&5
 	echo "$ac_t""$RM" 1>&6
 	eval 'ac_cv_path_'RM'="'rm'"'
 fi
@@ -4180,7 +4195,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "tar", so it can be a program name with args.
 set dummy tar; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4184: checking for $ac_word" >&5
+echo "configure:4199: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4215,7 +4230,7 @@ fi
 
 else
 	echo $ac_n "checking for tar""... $ac_c" 1>&6
-echo "configure:4219: checking for tar" >&5
+echo "configure:4234: checking for tar" >&5
 	echo "$ac_t""$TAR" 1>&6
 	eval 'ac_cv_path_'TAR'="'tar'"'
 fi
@@ -4257,7 +4272,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "touch", so it can be a program name with args.
 set dummy touch; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4261: checking for $ac_word" >&5
+echo "configure:4276: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4292,7 +4307,7 @@ fi
 
 else
 	echo $ac_n "checking for touch""... $ac_c" 1>&6
-echo "configure:4296: checking for touch" >&5
+echo "configure:4311: checking for touch" >&5
 	echo "$ac_t""$TOUCH" 1>&6
 	eval 'ac_cv_path_'TOUCH'="'touch'"'
 fi
@@ -4334,7 +4349,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gunzip", so it can be a program name with args.
 set dummy gunzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4338: checking for $ac_word" >&5
+echo "configure:4353: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNCOMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4369,7 +4384,7 @@ fi
 
 else
 	echo $ac_n "checking for gunzip""... $ac_c" 1>&6
-echo "configure:4373: checking for gunzip" >&5
+echo "configure:4388: checking for gunzip" >&5
 	echo "$ac_t""$UNCOMPRESS" 1>&6
 	eval 'ac_cv_path_'UNCOMPRESS'="'gunzip'"'
 fi
@@ -4411,7 +4426,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "unzip", so it can be a program name with args.
 set dummy unzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4415: checking for $ac_word" >&5
+echo "configure:4430: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4446,7 +4461,7 @@ fi
 
 else
 	echo $ac_n "checking for unzip""... $ac_c" 1>&6
-echo "configure:4450: checking for unzip" >&5
+echo "configure:4465: checking for unzip" >&5
 	echo "$ac_t""$UNZIP" 1>&6
 	eval 'ac_cv_path_'UNZIP'="'unzip'"'
 fi
@@ -4488,7 +4503,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "bzip2", so it can be a program name with args.
 set dummy bzip2; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4492: checking for $ac_word" >&5
+echo "configure:4507: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_BZIP2'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4523,7 +4538,7 @@ fi
 
 else
 	echo $ac_n "checking for bzip2""... $ac_c" 1>&6
-echo "configure:4527: checking for bzip2" >&5
+echo "configure:4542: checking for bzip2" >&5
 	echo "$ac_t""$BZIP2" 1>&6
 	eval 'ac_cv_path_'BZIP2'="'bzip2'"'
 fi
@@ -4565,7 +4580,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "uudecode", so it can be a program name with args.
 set dummy uudecode; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4569: checking for $ac_word" >&5
+echo "configure:4584: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UUDECODE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4600,7 +4615,7 @@ fi
 
 else
 	echo $ac_n "checking for uudecode""... $ac_c" 1>&6
-echo "configure:4604: checking for uudecode" >&5
+echo "configure:4619: checking for uudecode" >&5
 	echo "$ac_t""$UUDECODE" 1>&6
 	eval 'ac_cv_path_'UUDECODE'="'uudecode'"'
 fi
@@ -4642,7 +4657,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zcat", so it can be a program name with args.
 set dummy zcat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4646: checking for $ac_word" >&5
+echo "configure:4661: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4677,7 +4692,7 @@ fi
 
 else
 	echo $ac_n "checking for zcat""... $ac_c" 1>&6
-echo "configure:4681: checking for zcat" >&5
+echo "configure:4696: checking for zcat" >&5
 	echo "$ac_t""$ZCAT" 1>&6
 	eval 'ac_cv_path_'ZCAT'="'zcat'"'
 fi
@@ -4719,7 +4734,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zip", so it can be a program name with args.
 set dummy zip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4723: checking for $ac_word" >&5
+echo "configure:4738: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4754,7 +4769,7 @@ fi
 
 else
 	echo $ac_n "checking for zip""... $ac_c" 1>&6
-echo "configure:4758: checking for zip" >&5
+echo "configure:4773: checking for zip" >&5
 	echo "$ac_t""$ZIP" 1>&6
 	eval 'ac_cv_path_'ZIP'="'zip'"'
 fi
@@ -4796,7 +4811,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "telnet", so it can be a program name with args.
 set dummy telnet; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4800: checking for $ac_word" >&5
+echo "configure:4815: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TELNET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4831,7 +4846,7 @@ fi
 
 else
 	echo $ac_n "checking for telnet""... $ac_c" 1>&6
-echo "configure:4835: checking for telnet" >&5
+echo "configure:4850: checking for telnet" >&5
 	echo "$ac_t""$TELNET" 1>&6
 	eval 'ac_cv_path_'TELNET'="'telnet'"'
 fi
@@ -4873,7 +4888,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "tn3270", so it can be a program name with args.
 set dummy tn3270; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4877: checking for $ac_word" >&5
+echo "configure:4892: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TN3270'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4908,7 +4923,7 @@ fi
 
 else
 	echo $ac_n "checking for tn3270""... $ac_c" 1>&6
-echo "configure:4912: checking for tn3270" >&5
+echo "configure:4927: checking for tn3270" >&5
 	echo "$ac_t""$TN3270" 1>&6
 	eval 'ac_cv_path_'TN3270'="'tn3270'"'
 fi
@@ -4950,7 +4965,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "rlogin", so it can be a program name with args.
 set dummy rlogin; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4954: checking for $ac_word" >&5
+echo "configure:4969: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_RLOGIN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4985,7 +5000,7 @@ fi
 
 else
 	echo $ac_n "checking for rlogin""... $ac_c" 1>&6
-echo "configure:4989: checking for rlogin" >&5
+echo "configure:5004: checking for rlogin" >&5
 	echo "$ac_t""$RLOGIN" 1>&6
 	eval 'ac_cv_path_'RLOGIN'="'rlogin'"'
 fi
@@ -5037,7 +5052,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "install", so it can be a program name with args.
 set dummy install; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5041: checking for $ac_word" >&5
+echo "configure:5056: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_INSTALL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5072,7 +5087,7 @@ fi
 
 else
 	echo $ac_n "checking for install""... $ac_c" 1>&6
-echo "configure:5076: checking for install" >&5
+echo "configure:5091: checking for install" >&5
 	echo "$ac_t""$INSTALL" 1>&6
 	eval 'ac_cv_path_'INSTALL'="'install'"'
 fi
@@ -5121,7 +5136,7 @@ EOF
 if test -z "$GCC" ; then
 	
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:5125: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:5140: 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
@@ -5145,7 +5160,7 @@ for cf_arg in "-DCC_HAS_PROTOS" \
 do
 	CFLAGS="$cf_save_CFLAGS $cf_arg"
 	cat > conftest.$ac_ext <<EOF
-#line 5149 "configure"
+#line 5164 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -5161,7 +5176,7 @@ int main() {
 	struct s2 {int (*f) (double a);};
 ; return 0; }
 EOF
-if { (eval echo configure:5165: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5180: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -5189,12 +5204,12 @@ fi
 
 fi
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:5193: checking for working const" >&5
+echo "configure:5208: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5198 "configure"
+#line 5213 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -5243,7 +5258,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:5247: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5262: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -5285,7 +5300,7 @@ clix*)
 	# contributed by Alex Matulich (matuli_a@marlin.navsea.navy.mil) also
 	# references -lmalloc and -lbsd.
 	echo $ac_n "checking for strcmp in -lc_s""... $ac_c" 1>&6
-echo "configure:5289: checking for strcmp in -lc_s" >&5
+echo "configure:5304: checking for strcmp in -lc_s" >&5
 ac_lib_var=`echo c_s'_'strcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5293,7 +5308,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5297 "configure"
+#line 5312 "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
@@ -5304,7 +5319,7 @@ int main() {
 strcmp()
 ; return 0; }
 EOF
-if { (eval echo configure:5308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5323: \"$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
@@ -5398,7 +5413,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:5402: checking for $ac_word" >&5
+echo "configure:5417: 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
@@ -5443,17 +5458,17 @@ sony-newsos*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5447: checking for $ac_hdr" >&5
+echo "configure:5462: 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 5452 "configure"
+#line 5467 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5457: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5472: \"$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*
@@ -5497,17 +5512,17 @@ ultrix*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5501: checking for $ac_hdr" >&5
+echo "configure:5516: 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 5506 "configure"
+#line 5521 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5511: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5526: \"$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*
@@ -5543,13 +5558,13 @@ esac
 
 
 echo $ac_n "checking if we must define _GNU_SOURCE""... $ac_c" 1>&6
-echo "configure:5547: checking if we must define _GNU_SOURCE" >&5
+echo "configure:5562: checking if we must define _GNU_SOURCE" >&5
 if eval "test \"`echo '$''{'cf_cv_gnu_source'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 5553 "configure"
+#line 5568 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 int main() {
@@ -5559,7 +5574,7 @@ make an error
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:5563: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5578: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_gnu_source=no
 else
@@ -5569,7 +5584,7 @@ else
   cf_save="$CFLAGS"
 	 CFLAGS="$CFLAGS -D_GNU_SOURCE"
 	 cat > conftest.$ac_ext <<EOF
-#line 5573 "configure"
+#line 5588 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 int main() {
@@ -5579,7 +5594,7 @@ make an error
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:5583: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5598: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_gnu_source=no
 else
@@ -5604,16 +5619,16 @@ if test -n "$TRY_CFLAGS" ; then
 	cf_save_CFLAGS="$CFLAGS"
 	CFLAGS="$CFLAGS $TRY_CFLAGS"
 	echo $ac_n "checking if we should use compile options $TRY_CFLAGS""... $ac_c" 1>&6
-echo "configure:5608: checking if we should use compile options $TRY_CFLAGS" >&5
+echo "configure:5623: checking if we should use compile options $TRY_CFLAGS" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 5610 "configure"
+#line 5625 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 FILE *fp = stdin
 ; return 0; }
 EOF
-if { (eval echo configure:5617: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5632: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -5631,7 +5646,7 @@ fi
 ### Look for network libraries first, since some functions (such as gethostname)
 ### are used in a lot of places.
 echo $ac_n "checking if you want socks library""... $ac_c" 1>&6
-echo "configure:5635: checking if you want socks library" >&5
+echo "configure:5650: checking if you want socks library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5651,7 +5666,7 @@ fi
 echo "$ac_t""$cf_cv_use_libsocks" 1>&6
 
 echo $ac_n "checking if you want socks5 library""... $ac_c" 1>&6
-echo "configure:5655: checking if you want socks5 library" >&5
+echo "configure:5670: checking if you want socks5 library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks5'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5717,7 +5732,7 @@ cat >> confdefs.h <<\EOF
 EOF
 
 cat > conftest.$ac_ext <<EOF
-#line 5721 "configure"
+#line 5736 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -5726,7 +5741,7 @@ int main() {
 	accept((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5745: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -5756,9 +5771,9 @@ cat >> confdefs.h <<\EOF
 EOF
 
 echo $ac_n "checking if the socks library uses socks4 prefix""... $ac_c" 1>&6
-echo "configure:5760: checking if the socks library uses socks4 prefix" >&5
+echo "configure:5775: checking if the socks library uses socks4 prefix" >&5
 cat > conftest.$ac_ext <<EOF
-#line 5762 "configure"
+#line 5777 "configure"
 #include "confdefs.h"
 
 #include <socks.h>
@@ -5767,7 +5782,7 @@ int main() {
 	Rinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5771: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cat >> confdefs.h <<\EOF
 #define USE_SOCKS4_PREFIX 1
@@ -5779,14 +5794,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 5783 "configure"
+#line 5798 "configure"
 #include "confdefs.h"
 #include <socks.h>
 int main() {
 SOCKSinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5805: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_use_socks4=no
 else
@@ -5855,7 +5870,7 @@ else
 	
 cf_test_netlibs=no
 echo $ac_n "checking for network libraries""... $ac_c" 1>&6
-echo "configure:5859: checking for network libraries" >&5
+echo "configure:5874: checking for network libraries" >&5
 if eval "test \"`echo '$''{'cf_cv_netlibs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5866,12 +5881,12 @@ cf_test_netlibs=yes
 for ac_func in gethostname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5870: checking for $ac_func" >&5
+echo "configure:5885: 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 5875 "configure"
+#line 5890 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -5894,7 +5909,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5898: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5913: \"$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
@@ -5917,7 +5932,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:5921: checking for gethostname in -lnsl" >&5
+echo "configure:5936: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5925,7 +5940,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5929 "configure"
+#line 5944 "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
@@ -5936,7 +5951,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:5940: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5955: \"$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
@@ -5969,7 +5984,7 @@ else
 	
 		
 echo $ac_n "checking for gethostname in -lsocket""... $ac_c" 1>&6
-echo "configure:5973: checking for gethostname in -lsocket" >&5
+echo "configure:5988: checking for gethostname in -lsocket" >&5
 ac_lib_var=`echo socket'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5977,7 +5992,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5981 "configure"
+#line 5996 "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
@@ -5988,7 +6003,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:5992: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6007: \"$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
@@ -6033,7 +6048,7 @@ done
 # I don't know the entrypoints - 97/7/22 TD
 # AC_HAVE_LIBRARY(inet,cf_cv_netlibs="-linet $cf_cv_netlibs")
 echo $ac_n "checking for main in -linet""... $ac_c" 1>&6
-echo "configure:6037: checking for main in -linet" >&5
+echo "configure:6052: checking for main in -linet" >&5
 ac_lib_var=`echo inet'_'main | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6041,14 +6056,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-linet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6045 "configure"
+#line 6060 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6052: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6067: \"$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
@@ -6073,12 +6088,12 @@ if test "$ac_cv_func_lsocket" != no ; then
 for ac_func in socket
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6077: checking for $ac_func" >&5
+echo "configure:6092: 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 6082 "configure"
+#line 6097 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6101,7 +6116,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6120: \"$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
@@ -6124,7 +6139,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:6128: checking for socket in -lsocket" >&5
+echo "configure:6143: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6132,7 +6147,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6136 "configure"
+#line 6151 "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
@@ -6143,7 +6158,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:6147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6162: \"$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
@@ -6176,7 +6191,7 @@ else
 	
 		
 echo $ac_n "checking for socket in -lbsd""... $ac_c" 1>&6
-echo "configure:6180: checking for socket in -lbsd" >&5
+echo "configure:6195: checking for socket in -lbsd" >&5
 ac_lib_var=`echo bsd'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6184,7 +6199,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6188 "configure"
+#line 6203 "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
@@ -6195,7 +6210,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:6199: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6214: \"$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
@@ -6240,12 +6255,12 @@ fi
 for ac_func in gethostbyname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6244: checking for $ac_func" >&5
+echo "configure:6259: 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 6249 "configure"
+#line 6264 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6268,7 +6283,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6272: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6287: \"$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
@@ -6291,7 +6306,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:6295: checking for gethostbyname in -lnsl" >&5
+echo "configure:6310: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6299,7 +6314,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6303 "configure"
+#line 6318 "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
@@ -6310,7 +6325,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:6314: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6329: \"$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
@@ -6351,12 +6366,12 @@ done
 for ac_func in strcasecmp
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6355: checking for $ac_func" >&5
+echo "configure:6370: 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 6360 "configure"
+#line 6375 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6379,7 +6394,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6398: \"$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
@@ -6402,7 +6417,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for strcasecmp in -lresolv""... $ac_c" 1>&6
-echo "configure:6406: checking for strcasecmp in -lresolv" >&5
+echo "configure:6421: checking for strcasecmp in -lresolv" >&5
 ac_lib_var=`echo resolv'_'strcasecmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6410,7 +6425,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6414 "configure"
+#line 6429 "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
@@ -6421,7 +6436,7 @@ int main() {
 strcasecmp()
 ; return 0; }
 EOF
-if { (eval echo configure:6425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6440: \"$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
@@ -6467,13 +6482,13 @@ test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6
 fi
 
 echo $ac_n "checking for inet_aton function""... $ac_c" 1>&6
-echo "configure:6471: checking for inet_aton function" >&5
+echo "configure:6486: checking for inet_aton function" >&5
 if eval "test \"`echo '$''{'cf_cv_have_inet_aton'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6477 "configure"
+#line 6492 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -6484,7 +6499,7 @@ int main() {
 inet_aton(0, (struct in_addr *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:6488: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6503: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_have_inet_aton=yes
 else
@@ -6504,13 +6519,13 @@ EOF
 
 else
     echo $ac_n "checking for inet_addr function""... $ac_c" 1>&6
-echo "configure:6508: checking for inet_addr function" >&5
+echo "configure:6523: checking for inet_addr function" >&5
 if eval "test \"`echo '$''{'cf_cv_have_inet_addr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 6514 "configure"
+#line 6529 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -6521,7 +6536,7 @@ int main() {
 inet_addr(0)
 ; return 0; }
 EOF
-if { (eval echo configure:6525: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6540: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_have_inet_addr=yes
 else
@@ -6536,7 +6551,7 @@ fi
 echo "$ac_t""$cf_cv_have_inet_addr" 1>&6
     if test "$cf_cv_have_inet_addr" = no ; then
 	echo $ac_n "checking for library with inet_addr""... $ac_c" 1>&6
-echo "configure:6540: checking for library with inet_addr" >&5
+echo "configure:6555: checking for library with inet_addr" >&5
 if eval "test \"`echo '$''{'cf_cv_lib_inet_addr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6546,7 +6561,7 @@ else
 	    do
 		LIBS="$cf_save_LIBS $cf_inetlib"
 		cat > conftest.$ac_ext <<EOF
-#line 6550 "configure"
+#line 6565 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -6557,7 +6572,7 @@ int main() {
 inet_addr(0)
 ; return 0; }
 EOF
-if { (eval echo configure:6561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6576: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_lib_inet_addr=$cf_inetlib
 else
@@ -6584,7 +6599,7 @@ fi
 
 
 echo $ac_n "checking for screen type""... $ac_c" 1>&6
-echo "configure:6588: checking for screen type" >&5
+echo "configure:6603: checking for screen type" >&5
 if eval "test \"`echo '$''{'cf_cv_screen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6624,14 +6639,88 @@ esac
 
 case $cf_cv_screen in
 curses)
+	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
+echo "configure:6644: checking for ncurses version" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	if test "$cross_compiling" = yes; then
+  
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+	{ (eval echo configure:6669: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	if test -f conftest.out ; then
+		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
+		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+		rm -f conftest.out
+	fi
+
+else
+  cat > conftest.$ac_ext <<EOF
+#line 6678 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	exit(0);
+}
+EOF
+if { (eval echo configure:6701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  
+	cf_cv_ncurses_version=`cat $cf_tempfile`
+	rm -f $cf_tempfile
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -fr conftest*
+fi
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_version" 1>&6
+
 	
 echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:6630: checking for initscr" >&5
+echo "configure:6719: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6635 "configure"
+#line 6724 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -6654,7 +6743,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6658: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6747: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -6675,7 +6764,7 @@ else
 case $host_os in #(vi
 freebsd*) #(vi
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:6679: checking for tgoto in -lmytinfo" >&5
+echo "configure:6768: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6683,7 +6772,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6687 "configure"
+#line 6776 "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
@@ -6694,7 +6783,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:6698: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6787: \"$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
@@ -6717,7 +6806,7 @@ fi
 	;;
 hpux10.*|hpux11.*)
 	echo $ac_n "checking for initscr in -lcur_colr""... $ac_c" 1>&6
-echo "configure:6721: checking for initscr in -lcur_colr" >&5
+echo "configure:6810: checking for initscr in -lcur_colr" >&5
 ac_lib_var=`echo cur_colr'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6725,7 +6814,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcur_colr  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6729 "configure"
+#line 6818 "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
@@ -6736,7 +6825,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6829: \"$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
@@ -6760,7 +6849,7 @@ else
   echo "$ac_t""no" 1>&6
 
 	echo $ac_n "checking for initscr in -lHcurses""... $ac_c" 1>&6
-echo "configure:6764: checking for initscr in -lHcurses" >&5
+echo "configure:6853: checking for initscr in -lHcurses" >&5
 ac_lib_var=`echo Hcurses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6768,7 +6857,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lHcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6772 "configure"
+#line 6861 "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
@@ -6779,7 +6868,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6783: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6872: \"$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
@@ -6825,15 +6914,22 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 	cf_term_lib=""
 	cf_curs_lib=""
 
+	if test ".$cf_cv_ncurses_version" != .no
+	then
+		cf_check_list="ncurses curses cursesX"
+	else
+		cf_check_list="cursesX curses ncurses"
+	fi
+
 	# Check for library containing tgoto.  Do this before curses library
 	# because it may be needed to link the test-case for initscr.
 	echo $ac_n "checking for tgoto""... $ac_c" 1>&6
-echo "configure:6832: checking for tgoto" >&5
+echo "configure:6928: checking for tgoto" >&5
 if eval "test \"`echo '$''{'ac_cv_func_tgoto'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6837 "configure"
+#line 6933 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char tgoto(); below.  */
@@ -6856,7 +6952,7 @@ tgoto();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6860: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6956: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_tgoto=yes"
 else
@@ -6874,10 +6970,10 @@ if eval "test \"`echo '$ac_cv_func_'tgoto`\" = yes"; then
 else
   echo "$ac_t""no" 1>&6
 
-		for cf_term_lib in termcap termlib unknown
+		for cf_term_lib in $cf_check_list termcap termlib unknown
 		do
 			echo $ac_n "checking for tgoto in -l$cf_term_lib""... $ac_c" 1>&6
-echo "configure:6881: checking for tgoto in -l$cf_term_lib" >&5
+echo "configure:6977: checking for tgoto in -l$cf_term_lib" >&5
 ac_lib_var=`echo $cf_term_lib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6885,7 +6981,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_term_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6889 "configure"
+#line 6985 "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
@@ -6896,7 +6992,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:6900: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6996: \"$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
@@ -6923,10 +7019,10 @@ fi
 
 	# Check for library containing initscr
 	test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-	for cf_curs_lib in cursesX curses ncurses xcurses jcurses unknown
+	for cf_curs_lib in $cf_check_list xcurses jcurses unknown
 	do
 		echo $ac_n "checking for initscr in -l$cf_curs_lib""... $ac_c" 1>&6
-echo "configure:6930: checking for initscr in -l$cf_curs_lib" >&5
+echo "configure:7026: checking for initscr in -l$cf_curs_lib" >&5
 ac_lib_var=`echo $cf_curs_lib'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6934,7 +7030,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_curs_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6938 "configure"
+#line 7034 "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
@@ -6945,7 +7041,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6949: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7045: \"$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
@@ -6971,16 +7067,16 @@ fi
 	LIBS="-l$cf_curs_lib $cf_save_LIBS"
 	if test "$cf_term_lib" = unknown ; then
 		echo $ac_n "checking if we can link with $cf_curs_lib library""... $ac_c" 1>&6
-echo "configure:6975: checking if we can link with $cf_curs_lib library" >&5
+echo "configure:7071: checking if we can link with $cf_curs_lib library" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 6977 "configure"
+#line 7073 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7080: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -6994,16 +7090,16 @@ rm -f conftest*
 		test $cf_result = no && { echo "configure: error: Cannot link curses library" 1>&2; exit 1; }
 	elif test "$cf_term_lib" != predefined ; then
 		echo $ac_n "checking if we need both $cf_curs_lib and $cf_term_lib libraries""... $ac_c" 1>&6
-echo "configure:6998: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+echo "configure:7094: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 7000 "configure"
+#line 7096 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:7007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7103: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=no
 else
@@ -7013,14 +7109,14 @@ else
   
 			LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
 			cat > conftest.$ac_ext <<EOF
-#line 7017 "configure"
+#line 7113 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:7024: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7120: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -7042,14 +7138,14 @@ fi
 
 	
 echo $ac_n "checking for curses performance tradeoff""... $ac_c" 1>&6
-echo "configure:7046: checking for curses performance tradeoff" >&5
+echo "configure:7142: checking for curses performance tradeoff" >&5
 if eval "test \"`echo '$''{'cf_cv_curs_performance'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cf_cv_curs_performance=no
     cat > conftest.$ac_ext <<EOF
-#line 7053 "configure"
+#line 7149 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7063,11 +7159,11 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7163: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 7071 "configure"
+#line 7167 "configure"
 #include "confdefs.h"
 
 #define CURS_PERFORMANCE
@@ -7082,7 +7178,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7086: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7182: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_curs_performance=yes
 else
@@ -7107,13 +7203,13 @@ EOF
 ncurses)
 	
 echo $ac_n "checking for ncurses header file""... $ac_c" 1>&6
-echo "configure:7111: checking for ncurses header file" >&5
+echo "configure:7207: checking for ncurses header file" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7117 "configure"
+#line 7213 "configure"
 #include "confdefs.h"
 #include <curses.h>
 int main() {
@@ -7130,7 +7226,7 @@ make an error
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7134: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7230: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_header=predefined
 else
@@ -7230,7 +7326,7 @@ done
 	;;
 esac
 echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:7234: checking for ncurses version" >&5
+echo "configure:7330: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7255,7 +7351,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:7259: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:7355: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -7264,7 +7360,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 7268 "configure"
+#line 7364 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -7287,7 +7383,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:7291: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7387: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -7304,7 +7400,7 @@ fi
 echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 
 
-	
+
 
 	# This works, except for the special case where we find gpm, but
 	# ncurses is in a nonstandard location via $LIBS, and we really want
@@ -7312,7 +7408,7 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 cf_ncurses_LIBS=""
 cf_ncurses_SAVE="$LIBS"
 echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:7316: checking for Gpm_Open in -lgpm" >&5
+echo "configure:7412: 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
@@ -7320,7 +7416,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7324 "configure"
+#line 7420 "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
@@ -7331,7 +7427,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:7335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7431: \"$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
@@ -7347,7 +7443,7 @@ fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
-echo "configure:7351: checking for initscr in -lgpm" >&5
+echo "configure:7447: checking for initscr in -lgpm" >&5
 ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7355,7 +7451,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7359 "configure"
+#line 7455 "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
@@ -7366,7 +7462,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:7370: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7466: \"$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
@@ -7397,7 +7493,7 @@ freebsd*)
 	# This is only necessary if you are linking against an obsolete
 	# version of ncurses (but it should do no harm, since it's static).
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:7401: checking for tgoto in -lmytinfo" >&5
+echo "configure:7497: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7405,7 +7501,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7409 "configure"
+#line 7505 "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
@@ -7416,7 +7512,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:7420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7516: \"$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
@@ -7444,12 +7540,12 @@ LIBS="$cf_ncurses_LIBS $LIBS"
 	eval 'cf_cv_have_lib_'ncurses'=no'
 	cf_libdir=""
 	echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:7448: checking for initscr" >&5
+echo "configure:7544: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7453 "configure"
+#line 7549 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -7472,7 +7568,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7476: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7572: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -7492,17 +7588,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6
-echo "configure:7496: checking for initscr in -lncurses" >&5
+echo "configure:7592: checking for initscr in -lncurses" >&5
 		LIBS="-lncurses $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 7499 "configure"
+#line 7595 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:7506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 eval 'cf_cv_have_lib_'ncurses'=yes'
@@ -7546,17 +7642,17 @@ cf_search="$cf_search $HOME/lib $HOME/lib/ncurses $HOME/ncurses/lib"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lncurses in $cf_libdir""... $ac_c" 1>&6
-echo "configure:7550: checking for -lncurses in $cf_libdir" >&5
+echo "configure:7646: checking for -lncurses in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lncurses $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 7553 "configure"
+#line 7649 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:7560: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7656: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 eval 'cf_cv_have_lib_'ncurses'=yes'
@@ -7586,7 +7682,7 @@ fi
 
 if test -n "$cf_ncurses_LIBS" ; then
 	echo $ac_n "checking if we can link ncurses without $cf_ncurses_LIBS""... $ac_c" 1>&6
-echo "configure:7590: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
+echo "configure:7686: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
 	cf_ncurses_SAVE="$LIBS"
 	for p in $cf_ncurses_LIBS ; do
 		q=`echo $LIBS | sed -e 's/'$p' //' -e 's/'$p'$//'`
@@ -7595,14 +7691,14 @@ echo "configure:7590: checking if we can link ncurses without $cf_ncurses_LIBS"
 		fi
 	done
 	cat > conftest.$ac_ext <<EOF
-#line 7599 "configure"
+#line 7695 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:7606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7702: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 else
@@ -7615,6 +7711,80 @@ fi
 rm -f conftest*
 fi
 
+	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
+echo "configure:7716: checking for ncurses version" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	if test "$cross_compiling" = yes; then
+  
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+	{ (eval echo configure:7741: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	if test -f conftest.out ; then
+		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
+		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+		rm -f conftest.out
+	fi
+
+else
+  cat > conftest.$ac_ext <<EOF
+#line 7750 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	exit(0);
+}
+EOF
+if { (eval echo configure:7773: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  
+	cf_cv_ncurses_version=`cat $cf_tempfile`
+	rm -f $cf_tempfile
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -fr conftest*
+fi
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_version" 1>&6
+
 	;;
 pdcurses)
 	# do this last, since it changes definition of main: CF_PDCURSES_X11
@@ -7622,20 +7792,20 @@ pdcurses)
 slang)
 	
 echo $ac_n "checking for slang header file""... $ac_c" 1>&6
-echo "configure:7626: checking for slang header file" >&5
+echo "configure:7796: checking for slang header file" >&5
 if eval "test \"`echo '$''{'cf_cv_slang_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7632 "configure"
+#line 7802 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 printf("%s\n", SLANG_VERSION)
 ; return 0; }
 EOF
-if { (eval echo configure:7639: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7809: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_slang_header=predefined
 else
@@ -7731,24 +7901,24 @@ else
   
 cf_cv_termlib=none
 cat > conftest.$ac_ext <<EOF
-#line 7735 "configure"
+#line 7905 "configure"
 #include "confdefs.h"
 
 int main() {
 char *x=(char*)tgoto("",0,0)
 ; return 0; }
 EOF
-if { (eval echo configure:7742: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7912: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 7745 "configure"
+#line 7915 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=tigetstr("")
 ; return 0; }
 EOF
-if { (eval echo configure:7752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7922: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_termlib=terminfo
 else
@@ -7777,16 +7947,16 @@ if test "$cf_cv_termlib" = none; then
 	for cf_func in tigetstr tgetstr
 	do
 		echo $ac_n "checking for $cf_func in -l$cf_lib""... $ac_c" 1>&6
-echo "configure:7781: checking for $cf_func in -l$cf_lib" >&5
+echo "configure:7951: checking for $cf_func in -l$cf_lib" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 7783 "configure"
+#line 7953 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=$cf_func("")
 ; return 0; }
 EOF
-if { (eval echo configure:7790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7960: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -7813,7 +7983,7 @@ fi
 if test "$cf_cv_termlib" = none; then
 	# allow curses library for broken AIX system.
 	echo $ac_n "checking for initscr in -lcurses""... $ac_c" 1>&6
-echo "configure:7817: checking for initscr in -lcurses" >&5
+echo "configure:7987: checking for initscr in -lcurses" >&5
 ac_lib_var=`echo curses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7821,7 +7991,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7825 "configure"
+#line 7995 "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
@@ -7832,7 +8002,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:7836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8006: \"$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
@@ -7853,7 +8023,7 @@ else
 fi
 
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:7857: checking for tgoto in -ltermcap" >&5
+echo "configure:8027: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7861,7 +8031,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7865 "configure"
+#line 8035 "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
@@ -7872,7 +8042,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:7876: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8046: \"$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
@@ -7904,12 +8074,12 @@ fi
 
 cf_slang_LIBS2="$LIBS"
 echo $ac_n "checking for acos""... $ac_c" 1>&6
-echo "configure:7908: checking for acos" >&5
+echo "configure:8078: checking for acos" >&5
 if eval "test \"`echo '$''{'ac_cv_func_acos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7913 "configure"
+#line 8083 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char acos(); below.  */
@@ -7932,7 +8102,7 @@ acos();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8106: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_acos=yes"
 else
@@ -7951,7 +8121,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for acos in -lm""... $ac_c" 1>&6
-echo "configure:7955: checking for acos in -lm" >&5
+echo "configure:8125: checking for acos in -lm" >&5
 ac_lib_var=`echo m'_'acos | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7959,7 +8129,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lm $LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7963 "configure"
+#line 8133 "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
@@ -7970,7 +8140,7 @@ int main() {
 acos()
 ; return 0; }
 EOF
-if { (eval echo configure:7974: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8144: \"$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
@@ -8010,12 +8180,12 @@ fi
 	eval 'cf_cv_have_lib_'slang'=no'
 	cf_libdir=""
 	echo $ac_n "checking for SLtt_get_screen_size""... $ac_c" 1>&6
-echo "configure:8014: checking for SLtt_get_screen_size" >&5
+echo "configure:8184: checking for SLtt_get_screen_size" >&5
 if eval "test \"`echo '$''{'ac_cv_func_SLtt_get_screen_size'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8019 "configure"
+#line 8189 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char SLtt_get_screen_size(); below.  */
@@ -8038,7 +8208,7 @@ SLtt_get_screen_size();
 
 ; return 0; }
 EOF
-if { (eval echo configure:8042: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8212: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_SLtt_get_screen_size=yes"
 else
@@ -8058,17 +8228,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for SLtt_get_screen_size in -lslang""... $ac_c" 1>&6
-echo "configure:8062: checking for SLtt_get_screen_size in -lslang" >&5
+echo "configure:8232: checking for SLtt_get_screen_size in -lslang" >&5
 		LIBS="-lslang $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 8065 "configure"
+#line 8235 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:8072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 eval 'cf_cv_have_lib_'slang'=yes'
@@ -8112,17 +8282,17 @@ cf_search="$cf_search $HOME/lib $HOME/lib/slang $HOME/slang/lib"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lslang in $cf_libdir""... $ac_c" 1>&6
-echo "configure:8116: checking for -lslang in $cf_libdir" >&5
+echo "configure:8286: checking for -lslang in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lslang $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 8119 "configure"
+#line 8289 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:8126: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8296: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 eval 'cf_cv_have_lib_'slang'=yes'
@@ -8151,7 +8321,7 @@ fi
 
 cf_slang_LIBS3="$LIBS"
 echo $ac_n "checking if we can link slang without termcap""... $ac_c" 1>&6
-echo "configure:8155: checking if we can link slang without termcap" >&5
+echo "configure:8325: checking if we can link slang without termcap" >&5
 if test -n "`echo $cf_slang_LIBS1 | sed -e 's/ //g'`" ; then
 	cf_exclude=`echo ".$cf_slang_LIBS2" | sed -e "s@$cf_slang_LIBS1@@" -e 's@^.@@'`
 else
@@ -8159,14 +8329,14 @@ else
 fi
 LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s@$cf_exclude@@" -e 's@^.@@'`
 cat > conftest.$ac_ext <<EOF
-#line 8163 "configure"
+#line 8333 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:8170: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8340: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -8183,13 +8353,13 @@ test $cf_result = no && LIBS="$cf_slang_LIBS3"
 
 
 echo $ac_n "checking if we must tell slang this is UNIX""... $ac_c" 1>&6
-echo "configure:8187: checking if we must tell slang this is UNIX" >&5
+echo "configure:8357: checking if we must tell slang this is UNIX" >&5
 if eval "test \"`echo '$''{'cf_cv_slang_unix'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8193 "configure"
+#line 8363 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
@@ -8203,7 +8373,7 @@ SLang_TT_Baud_Rate = 1
 
 ; return 0; }
 EOF
-if { (eval echo configure:8207: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_slang_unix=yes
 else
@@ -8229,7 +8399,7 @@ eval cf_libdir=$libdir
 cf_libdir=`echo $cf_libdir | sed -e s@'^NONE/'@$prefix/@ -e s@'^NONE/'@$ac_default_prefix/@`
 
 echo $ac_n "checking for location of config-file""... $ac_c" 1>&6
-echo "configure:8233: checking for location of config-file" >&5
+echo "configure:8403: checking for location of config-file" >&5
 LYNX_CFG_FILE=$cf_libdir/lynx.cfg
 cat >> confdefs.h <<EOF
 #define LYNX_CFG_FILE "$LYNX_CFG_FILE"
@@ -8241,7 +8411,7 @@ CHARSET_DEFS=
 
 
 echo $ac_n "checking if you want only a few charsets""... $ac_c" 1>&6
-echo "configure:8245: checking if you want only a few charsets" >&5
+echo "configure:8415: checking if you want only a few charsets" >&5
 
 # Check whether --with-charsets or --without-charsets was given.
 if test "${with_charsets+set}" = set; then
@@ -8302,12 +8472,12 @@ fi
 
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:8306: checking for ANSI C header files" >&5
+echo "configure:8476: 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 8311 "configure"
+#line 8481 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -8315,7 +8485,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8319: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8489: \"$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*
@@ -8332,7 +8502,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 8336 "configure"
+#line 8506 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -8350,7 +8520,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 8354 "configure"
+#line 8524 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -8371,7 +8541,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 8375 "configure"
+#line 8545 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -8382,7 +8552,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:8386: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8556: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -8406,12 +8576,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:8410: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:8580: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8415 "configure"
+#line 8585 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -8420,7 +8590,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:8424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8594: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -8445,12 +8615,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:8449: checking for $ac_hdr that defines DIR" >&5
+echo "configure:8619: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8454 "configure"
+#line 8624 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -8458,7 +8628,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:8462: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8632: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -8483,7 +8653,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:8487: checking for opendir in -ldir" >&5
+echo "configure:8657: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -8491,7 +8661,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 8495 "configure"
+#line 8665 "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
@@ -8502,7 +8672,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:8506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8676: \"$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
@@ -8524,7 +8694,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:8528: checking for opendir in -lx" >&5
+echo "configure:8698: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -8532,7 +8702,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 8536 "configure"
+#line 8706 "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
@@ -8543,7 +8713,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:8547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8717: \"$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
@@ -8584,17 +8754,17 @@ for ac_hdr in \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8588: checking for $ac_hdr" >&5
+echo "configure:8758: 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 8593 "configure"
+#line 8763 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8598: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8768: \"$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*
@@ -8622,13 +8792,13 @@ done
 
 
 echo $ac_n "checking termio.h and termios.h""... $ac_c" 1>&6
-echo "configure:8626: checking termio.h and termios.h" >&5
+echo "configure:8796: checking termio.h and termios.h" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_termios'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 8632 "configure"
+#line 8802 "configure"
 #include "confdefs.h"
 
 #if HAVE_TERMIO_H
@@ -8641,7 +8811,7 @@ int main() {
 putchar (0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:8645: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8815: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_termios=yes
 else
@@ -8661,13 +8831,13 @@ EOF
 
 
 echo $ac_n "checking for sigaction and structs""... $ac_c" 1>&6
-echo "configure:8665: checking for sigaction and structs" >&5
+echo "configure:8835: checking for sigaction and structs" >&5
 if eval "test \"`echo '$''{'cf_cv_func_sigaction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8671 "configure"
+#line 8841 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8682,7 +8852,7 @@ struct sigaction act;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:8686: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8856: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_func_sigaction=yes
 else
@@ -8706,17 +8876,17 @@ for ac_hdr in sys/wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8710: checking for $ac_hdr" >&5
+echo "configure:8880: 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 8715 "configure"
+#line 8885 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8720: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8890: \"$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*
@@ -8753,17 +8923,17 @@ for ac_hdr in wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8757: checking for $ac_hdr" >&5
+echo "configure:8927: 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 8762 "configure"
+#line 8932 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8767: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8937: \"$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*
@@ -8793,17 +8963,17 @@ for ac_hdr in waitstatus.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8797: checking for $ac_hdr" >&5
+echo "configure:8967: 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 8802 "configure"
+#line 8972 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8807: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8977: \"$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*
@@ -8844,13 +9014,13 @@ fi
 
 
 echo $ac_n "checking for union wait""... $ac_c" 1>&6
-echo "configure:8848: checking for union wait" >&5
+echo "configure:9018: checking for union wait" >&5
 if eval "test \"`echo '$''{'cf_cv_type_unionwait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 8854 "configure"
+#line 9024 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -8861,7 +9031,7 @@ int x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:8865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_type_unionwait=no
 	 echo compiles ok w/o union wait 1>&5
@@ -8872,7 +9042,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 8876 "configure"
+#line 9046 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -8887,7 +9057,7 @@ union wait x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:8891: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_type_unionwait=yes
 	 echo compiles ok with union wait and possibly macros too 1>&5
@@ -8914,20 +9084,20 @@ EOF
 if test $cf_cv_type_unionwait = yes; then
 
 	echo $ac_n "checking if union wait can be used as wait-arg""... $ac_c" 1>&6
-echo "configure:8918: checking if union wait can be used as wait-arg" >&5
+echo "configure:9088: checking if union wait can be used as wait-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_wait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 8924 "configure"
+#line 9094 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; wait(&x)
 ; return 0; }
 EOF
-if { (eval echo configure:8931: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9101: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_wait=yes
 else
@@ -8947,20 +9117,20 @@ EOF
 
 
 	echo $ac_n "checking if union wait can be used as waitpid-arg""... $ac_c" 1>&6
-echo "configure:8951: checking if union wait can be used as waitpid-arg" >&5
+echo "configure:9121: checking if union wait can be used as waitpid-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_waitpid'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 8957 "configure"
+#line 9127 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; waitpid(0, &x, 0)
 ; return 0; }
 EOF
-if { (eval echo configure:8964: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9134: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_waitpid=yes
 else
@@ -8986,17 +9156,17 @@ for ac_hdr in stdarg.h varargs.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8990: checking for $ac_hdr" >&5
+echo "configure:9160: 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 8995 "configure"
+#line 9165 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:9000: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:9170: \"$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*
@@ -9023,13 +9193,13 @@ fi
 done
 
 echo $ac_n "checking for standard varargs""... $ac_c" 1>&6
-echo "configure:9027: checking for standard varargs" >&5
+echo "configure:9197: checking for standard varargs" >&5
 if eval "test \"`echo '$''{'cf_cv_ansi_varargs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9033 "configure"
+#line 9203 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDARG_H
@@ -9044,7 +9214,7 @@ int main() {
 return 0;} int foo(char *fmt,...){va_list args;va_start(args,fmt);va_end(args)
 ; return 0; }
 EOF
-if { (eval echo configure:9048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9218: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_varargs=yes
 else
@@ -9064,12 +9234,12 @@ EOF
 
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:9068: checking for uid_t in sys/types.h" >&5
+echo "configure:9238: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9073 "configure"
+#line 9243 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -9098,7 +9268,7 @@ EOF
 fi
 
 echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6
-echo "configure:9102: checking type of array argument to getgroups" >&5
+echo "configure:9272: checking type of array argument to getgroups" >&5
 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9106,7 +9276,7 @@ else
   ac_cv_type_getgroups=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 9110 "configure"
+#line 9280 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Rendell for this test.  */
@@ -9131,7 +9301,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:9135: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9305: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
     ac_cv_type_getgroups=gid_t
 else
@@ -9145,7 +9315,7 @@ fi
 
 if test $ac_cv_type_getgroups = cross; then
         cat > conftest.$ac_ext <<EOF
-#line 9149 "configure"
+#line 9319 "configure"
 #include "confdefs.h"
 #include <unistd.h>
 EOF
@@ -9169,12 +9339,12 @@ EOF
 
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:9173: checking for pid_t" >&5
+echo "configure:9343: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9178 "configure"
+#line 9348 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -9202,12 +9372,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:9206: checking for uid_t in sys/types.h" >&5
+echo "configure:9376: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9211 "configure"
+#line 9381 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -9236,12 +9406,12 @@ EOF
 fi
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:9240: checking for mode_t" >&5
+echo "configure:9410: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9245 "configure"
+#line 9415 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -9272,17 +9442,17 @@ fi
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:9276: checking for vfork.h" >&5
+echo "configure:9446: checking for vfork.h" >&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 9281 "configure"
+#line 9451 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:9286: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:9456: \"$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*
@@ -9307,18 +9477,18 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:9311: checking for working vfork" >&5
+echo "configure:9481: checking for working vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
   echo $ac_n "checking for vfork""... $ac_c" 1>&6
-echo "configure:9317: checking for vfork" >&5
+echo "configure:9487: checking for vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9322 "configure"
+#line 9492 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vfork(); below.  */
@@ -9341,7 +9511,7 @@ vfork();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9345: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9515: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_vfork=yes"
 else
@@ -9363,7 +9533,7 @@ fi
 ac_cv_func_vfork_works=$ac_cv_func_vfork
 else
   cat > conftest.$ac_ext <<EOF
-#line 9367 "configure"
+#line 9537 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -9458,7 +9628,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:9462: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9632: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_vfork_works=yes
 else
@@ -9482,13 +9652,13 @@ fi
 
 
 echo $ac_n "checking if we should use fcntl or ioctl""... $ac_c" 1>&6
-echo "configure:9486: checking if we should use fcntl or ioctl" >&5
+echo "configure:9656: checking if we should use fcntl or ioctl" >&5
 if eval "test \"`echo '$''{'cf_cv_fionbio'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9492 "configure"
+#line 9662 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -9500,7 +9670,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:9504: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9674: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_fionbio=ioctl
 else
@@ -9509,7 +9679,7 @@ else
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 9513 "configure"
+#line 9683 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -9526,7 +9696,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:9530: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9700: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_fionbio=fcntl
 else
@@ -9549,20 +9719,20 @@ EOF
 
 
 echo $ac_n "checking for broken/missing definition of remove""... $ac_c" 1>&6
-echo "configure:9553: checking for broken/missing definition of remove" >&5
+echo "configure:9723: checking for broken/missing definition of remove" >&5
 if eval "test \"`echo '$''{'cf_cv_baddef_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9559 "configure"
+#line 9729 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:9566: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9736: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_baddef_remove=no
 else
@@ -9570,7 +9740,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 9574 "configure"
+#line 9744 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 		int __unlink(name) { return unlink(name); } 
@@ -9578,7 +9748,7 @@ int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:9582: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_baddef_remove=yes
 else
@@ -9602,13 +9772,13 @@ EOF
 
 
 echo $ac_n "checking for lstat""... $ac_c" 1>&6
-echo "configure:9606: checking for lstat" >&5
+echo "configure:9776: checking for lstat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_lstat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9612 "configure"
+#line 9782 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -9617,7 +9787,7 @@ int main() {
 lstat(".", (struct stat *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:9621: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9791: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_lstat=yes
 else
@@ -9661,12 +9831,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9665: checking for $ac_func" >&5
+echo "configure:9835: 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 9670 "configure"
+#line 9840 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9689,7 +9859,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9693: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9863: \"$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
@@ -9719,12 +9889,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9723: checking for $ac_func" >&5
+echo "configure:9893: 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 9728 "configure"
+#line 9898 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9747,7 +9917,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9751: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9921: \"$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
@@ -9778,12 +9948,12 @@ for ac_func in strstr
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:9782: checking for $ac_func declaration" >&5
+echo "configure:9952: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9787 "configure"
+#line 9957 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -9792,11 +9962,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:9796: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9966: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 9800 "configure"
+#line 9970 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -9805,7 +9975,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:9809: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9979: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -9847,12 +10017,12 @@ for ac_func in getgrgid getgrnam
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:9851: checking for $ac_func declaration" >&5
+echo "configure:10021: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9856 "configure"
+#line 10026 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -9863,11 +10033,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:9867: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10037: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 9871 "configure"
+#line 10041 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -9878,7 +10048,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:9882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -9920,13 +10090,13 @@ done
 
 
 echo $ac_n "checking if TRUE/FALSE are defined""... $ac_c" 1>&6
-echo "configure:9924: checking if TRUE/FALSE are defined" >&5
+echo "configure:10094: checking if TRUE/FALSE are defined" >&5
 if eval "test \"`echo '$''{'cf_cv_bool_defs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9930 "configure"
+#line 10100 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9935,7 +10105,7 @@ int main() {
 int x = TRUE, y = FALSE
 ; return 0; }
 EOF
-if { (eval echo configure:9939: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10109: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_bool_defs=yes
 else
@@ -9962,13 +10132,13 @@ fi
 
 
 echo $ac_n "checking if external errno is declared""... $ac_c" 1>&6
-echo "configure:9966: checking if external errno is declared" >&5
+echo "configure:10136: checking if external errno is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 9972 "configure"
+#line 10142 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_STDLIB_H
@@ -9981,7 +10151,7 @@ int main() {
 long x = (long) errno
 ; return 0; }
 EOF
-if { (eval echo configure:9985: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10155: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'errno'=yes'
 else
@@ -10012,13 +10182,13 @@ fi
 # It's possible (for near-UNIX clones) that the data doesn't exist
 
 echo $ac_n "checking if external errno exists""... $ac_c" 1>&6
-echo "configure:10016: checking if external errno exists" >&5
+echo "configure:10186: checking if external errno exists" >&5
 if eval "test \"`echo '$''{'cf_cv_have_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 10022 "configure"
+#line 10192 "configure"
 #include "confdefs.h"
 
 #undef errno
@@ -10028,7 +10198,7 @@ int main() {
 errno = 2
 ; return 0; }
 EOF
-if { (eval echo configure:10032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10202: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval 'cf_cv_have_'errno'=yes'
 else
@@ -10060,21 +10230,21 @@ fi
 
 
 echo $ac_n "checking if we can set errno""... $ac_c" 1>&6
-echo "configure:10064: checking if we can set errno" >&5
+echo "configure:10234: checking if we can set errno" >&5
 if eval "test \"`echo '$''{'cf_cv_set_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 10071 "configure"
+#line 10241 "configure"
 #include "confdefs.h"
 #include <errno.h>
 int main() {
 errno = 255
 ; return 0; }
 EOF
-if { (eval echo configure:10078: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10248: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_set_errno=maybe
 else
@@ -10086,7 +10256,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 10090 "configure"
+#line 10260 "configure"
 #include "confdefs.h"
 
 #include <errno.h>
@@ -10096,7 +10266,7 @@ int main()
 	exit(errno != 255);
 }
 EOF
-if { (eval echo configure:10100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:10270: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_set_errno=yes
 else
@@ -10119,20 +10289,20 @@ EOF
 
 
 echo $ac_n "checking for setlocale()""... $ac_c" 1>&6
-echo "configure:10123: checking for setlocale()" >&5
+echo "configure:10293: checking for setlocale()" >&5
 if eval "test \"`echo '$''{'cf_cv_locale'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 10129 "configure"
+#line 10299 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 setlocale(LC_ALL, "")
 ; return 0; }
 EOF
-if { (eval echo configure:10136: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10306: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_locale=yes
 else
@@ -10153,13 +10323,13 @@ EOF
 
 
 echo $ac_n "checking if NGROUPS is defined""... $ac_c" 1>&6
-echo "configure:10157: checking if NGROUPS is defined" >&5
+echo "configure:10327: checking if NGROUPS is defined" >&5
 if eval "test \"`echo '$''{'cf_cv_ngroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 10163 "configure"
+#line 10333 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -10173,7 +10343,7 @@ int main() {
 int x = NGROUPS
 ; return 0; }
 EOF
-if { (eval echo configure:10177: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10347: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=yes
 else
@@ -10181,7 +10351,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 10185 "configure"
+#line 10355 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -10195,7 +10365,7 @@ int main() {
 int x = NGROUPS_MAX
 ; return 0; }
 EOF
-if { (eval echo configure:10199: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10369: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=NGROUPS_MAX
 else
@@ -10229,13 +10399,13 @@ for cf_name in sys_nerr sys_errlist
 do
     
 echo $ac_n "checking if external $cf_name is declared""... $ac_c" 1>&6
-echo "configure:10233: checking if external $cf_name is declared" >&5
+echo "configure:10403: checking if external $cf_name is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_$cf_name'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 10239 "configure"
+#line 10409 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_STDLIB_H
@@ -10248,7 +10418,7 @@ int main() {
 long x = (long) $cf_name
 ; return 0; }
 EOF
-if { (eval echo configure:10252: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10422: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'$cf_name'=yes'
 else
@@ -10279,13 +10449,13 @@ fi
 # It's possible (for near-UNIX clones) that the data doesn't exist
 
 echo $ac_n "checking if external $cf_name exists""... $ac_c" 1>&6
-echo "configure:10283: checking if external $cf_name exists" >&5
+echo "configure:10453: checking if external $cf_name exists" >&5
 if eval "test \"`echo '$''{'cf_cv_have_$cf_name'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 10289 "configure"
+#line 10459 "configure"
 #include "confdefs.h"
 
 #undef $cf_name
@@ -10295,7 +10465,7 @@ int main() {
 $cf_name = 2
 ; return 0; }
 EOF
-if { (eval echo configure:10299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10469: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval 'cf_cv_have_'$cf_name'=yes'
 else
@@ -10331,17 +10501,17 @@ for ac_hdr in lastlog.h paths.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:10335: checking for $ac_hdr" >&5
+echo "configure:10505: 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 10340 "configure"
+#line 10510 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10345: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10515: \"$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*
@@ -10368,13 +10538,13 @@ fi
 done
 
 echo $ac_n "checking for lastlog path""... $ac_c" 1>&6
-echo "configure:10372: checking for lastlog path" >&5
+echo "configure:10542: checking for lastlog path" >&5
 if eval "test \"`echo '$''{'cf_cv_path_lastlog'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 10378 "configure"
+#line 10548 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10389,7 +10559,7 @@ int main() {
 char *path = _PATH_LASTLOG
 ; return 0; }
 EOF
-if { (eval echo configure:10393: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10563: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_path_lastlog="_PATH_LASTLOG"
 else
@@ -10416,7 +10586,7 @@ EOF
 
 
 echo $ac_n "checking for utmp implementation""... $ac_c" 1>&6
-echo "configure:10420: checking for utmp implementation" >&5
+echo "configure:10590: checking for utmp implementation" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10424,7 +10594,7 @@ else
 	cf_cv_have_utmp=no
 for cf_header in utmpx utmp ; do
 	cat > conftest.$ac_ext <<EOF
-#line 10428 "configure"
+#line 10598 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10440,7 +10610,7 @@ struct $cf_header x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:10444: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10614: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=$cf_header
 	 break
@@ -10450,7 +10620,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 10454 "configure"
+#line 10624 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10466,7 +10636,7 @@ struct $cf_header x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:10470: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10640: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=$cf_header
 	 cat >> confdefs.h <<\EOF
@@ -10501,13 +10671,13 @@ EOF
 
 if test $cf_cv_have_utmp != no ; then
 echo $ac_n "checking if utmp.ut_host is declared""... $ac_c" 1>&6
-echo "configure:10505: checking if utmp.ut_host is declared" >&5
+echo "configure:10675: checking if utmp.ut_host is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp_ut_host'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 10511 "configure"
+#line 10681 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10516,7 +10686,7 @@ int main() {
 struct $cf_cv_have_utmp x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:10520: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10690: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp_ut_host=yes
 else
@@ -10540,7 +10710,7 @@ fi
 
 if test $cf_cv_have_utmp != no ; then
 echo $ac_n "checking for exit-status in $cf_cv_have_utmp""... $ac_c" 1>&6
-echo "configure:10544: checking for exit-status in $cf_cv_have_utmp" >&5
+echo "configure:10714: checking for exit-status in $cf_cv_have_utmp" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp_ut_xstatus'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10552,7 +10722,7 @@ for cf_result in \
 	ut_exit.ut_exit
 do
 cat > conftest.$ac_ext <<EOF
-#line 10556 "configure"
+#line 10726 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10561,7 +10731,7 @@ int main() {
 struct $cf_cv_have_utmp x; long y = x.$cf_result = 0
 ; return 0; }
 EOF
-if { (eval echo configure:10565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10735: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp_ut_xstatus=$cf_result
 	 break
@@ -10593,13 +10763,13 @@ fi
 
 if test $cf_cv_have_utmp != no ; then
 echo $ac_n "checking if utmp.ut_xtime is declared""... $ac_c" 1>&6
-echo "configure:10597: checking if utmp.ut_xtime is declared" >&5
+echo "configure:10767: checking if utmp.ut_xtime is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp_ut_xtime'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 10603 "configure"
+#line 10773 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10608,7 +10778,7 @@ int main() {
 struct $cf_cv_have_utmp x; long y = x.ut_xtime = 0
 ; return 0; }
 EOF
-if { (eval echo configure:10612: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10782: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp_ut_xtime=yes
 else
@@ -10616,7 +10786,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 10620 "configure"
+#line 10790 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10625,7 +10795,7 @@ int main() {
 struct $cf_cv_have_utmp x; long y = x.ut_tv.tv_sec
 ; return 0; }
 EOF
-if { (eval echo configure:10629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10799: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp_ut_xtime=define
 else
@@ -10660,13 +10830,13 @@ fi
 
 if test $cf_cv_have_utmp != no ; then
 echo $ac_n "checking if utmp.ut_session is declared""... $ac_c" 1>&6
-echo "configure:10664: checking if utmp.ut_session is declared" >&5
+echo "configure:10834: checking if utmp.ut_session is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp_ut_session'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 10670 "configure"
+#line 10840 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10675,7 +10845,7 @@ int main() {
 struct $cf_cv_have_utmp x; long y = x.ut_session
 ; return 0; }
 EOF
-if { (eval echo configure:10679: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10849: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp_ut_session=yes
 else
@@ -10700,14 +10870,14 @@ fi
 	
 
 echo $ac_n "checking if $cf_cv_have_utmp is SYSV flavor""... $ac_c" 1>&6
-echo "configure:10704: checking if $cf_cv_have_utmp is SYSV flavor" >&5
+echo "configure:10874: checking if $cf_cv_have_utmp is SYSV flavor" >&5
 if eval "test \"`echo '$''{'cf_cv_sysv_utmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 test "$cf_cv_have_utmp" = "utmp" && cf_prefix="ut" || cf_prefix="utx"
 cat > conftest.$ac_ext <<EOF
-#line 10711 "configure"
+#line 10881 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10721,7 +10891,7 @@ struct $cf_cv_have_utmp x;
 	end${cf_prefix}ent();
 ; return 0; }
 EOF
-if { (eval echo configure:10725: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10895: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_sysv_utmp=yes
 else
@@ -10744,13 +10914,13 @@ fi
 
 
 echo $ac_n "checking if external h_errno exists""... $ac_c" 1>&6
-echo "configure:10748: checking if external h_errno exists" >&5
+echo "configure:10918: checking if external h_errno exists" >&5
 if eval "test \"`echo '$''{'cf_cv_have_h_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 10754 "configure"
+#line 10924 "configure"
 #include "confdefs.h"
 
 #undef h_errno
@@ -10760,7 +10930,7 @@ int main() {
 h_errno = 2
 ; return 0; }
 EOF
-if { (eval echo configure:10764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval 'cf_cv_have_'h_errno'=yes'
 else
@@ -10790,13 +10960,13 @@ fi
 
 
 echo $ac_n "checking if character set is EBCDIC""... $ac_c" 1>&6
-echo "configure:10794: checking if character set is EBCDIC" >&5
+echo "configure:10964: checking if character set is EBCDIC" >&5
 if eval "test \"`echo '$''{'cf_cv_ebcdic'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 10800 "configure"
+#line 10970 "configure"
 #include "confdefs.h"
  
 int main() {
@@ -10809,7 +10979,7 @@ make an error "Character set is not EBCDIC"
 #endif 
 ; return 0; }
 EOF
-if { (eval echo configure:10813: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10983: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
    # TryCompile action if true
 cf_cv_ebcdic=yes 
@@ -10843,7 +11013,7 @@ esac
 if test $cf_cv_screen != slang ; then
 	
 echo $ac_n "checking if curses supports alternate-character set""... $ac_c" 1>&6
-echo "configure:10847: checking if curses supports alternate-character set" >&5
+echo "configure:11017: checking if curses supports alternate-character set" >&5
 if eval "test \"`echo '$''{'cf_cv_alt_char_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10851,7 +11021,7 @@ else
 for mapname in acs_map _acs_map
 do
 	cat > conftest.$ac_ext <<EOF
-#line 10855 "configure"
+#line 11025 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -10860,7 +11030,7 @@ int main() {
 chtype x = $mapname['l']; $mapname['m'] = 0
 ; return 0; }
 EOF
-if { (eval echo configure:10864: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11034: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_alt_char_set=$mapname
 	 break
@@ -10883,13 +11053,13 @@ EOF
 
 	
 echo $ac_n "checking if curses supports fancy attributes""... $ac_c" 1>&6
-echo "configure:10887: checking if curses supports fancy attributes" >&5
+echo "configure:11057: checking if curses supports fancy attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_fancy_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 10893 "configure"
+#line 11063 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -10902,7 +11072,7 @@ attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
 	
 ; return 0; }
 EOF
-if { (eval echo configure:10906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11076: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_fancy_curses=yes
 else
@@ -10921,91 +11091,17 @@ test $cf_cv_fancy_curses = yes && cat >> confdefs.h <<\EOF
 EOF
 
 
-	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:10926: checking for ncurses version" >&5
-if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  
-	cf_cv_ncurses_version=no
-	cf_tempfile=out$$
-	if test "$cross_compiling" = yes; then
-  
-
-	# This will not work if the preprocessor splits the line after the
-	# Autoconf token.  The 'unproto' program does that.
-	cat > conftest.$ac_ext <<EOF
-#include <${cf_cv_ncurses_header-curses.h}>
-#undef Autoconf
-#ifdef NCURSES_VERSION
-Autoconf NCURSES_VERSION
-#else
-#ifdef __NCURSES_H
-Autoconf "old"
-#endif
-;
-#endif
-EOF
-	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:10951: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
-	if test -f conftest.out ; then
-		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
-		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-		rm -f conftest.out
-	fi
-
-else
-  cat > conftest.$ac_ext <<EOF
-#line 10960 "configure"
-#include "confdefs.h"
-
-#include <${cf_cv_ncurses_header-curses.h}>
-int main()
-{
-	FILE *fp = fopen("$cf_tempfile", "w");
-#ifdef NCURSES_VERSION
-# ifdef NCURSES_VERSION_PATCH
-	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
-# else
-	fprintf(fp, "%s\n", NCURSES_VERSION);
-# endif
-#else
-# ifdef __NCURSES_H
-	fprintf(fp, "old\n");
-# else
-	make an error
-# endif
-#endif
-	exit(0);
-}
-EOF
-if { (eval echo configure:10983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
-  
-	cf_cv_ncurses_version=`cat $cf_tempfile`
-	rm -f $cf_tempfile
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$cf_cv_ncurses_version" 1>&6
-
 	
 
 if test "$cf_cv_ncurses_version" != no ; then
 echo $ac_n "checking for obsolete/broken version of ncurses""... $ac_c" 1>&6
-echo "configure:11003: checking for obsolete/broken version of ncurses" >&5
+echo "configure:11099: checking for obsolete/broken version of ncurses" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 11009 "configure"
+#line 11105 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -11019,7 +11115,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:11023: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:11119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_broken=no
 else
@@ -11044,13 +11140,13 @@ fi
 
 	
 echo $ac_n "checking if curses supports color attributes""... $ac_c" 1>&6
-echo "configure:11048: checking if curses supports color attributes" >&5
+echo "configure:11144: checking if curses supports color attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_color_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 11054 "configure"
+#line 11150 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -11065,7 +11161,7 @@ chtype x = COLOR_BLUE;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:11069: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_color_curses=yes
 else
@@ -11092,7 +11188,7 @@ fi
 
 	
 echo $ac_n "checking declaration of size-change""... $ac_c" 1>&6
-echo "configure:11096: checking declaration of size-change" >&5
+echo "configure:11192: checking declaration of size-change" >&5
 if eval "test \"`echo '$''{'cf_cv_sizechange'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -11106,7 +11202,7 @@ do
     CFLAGS="$cf_save_CFLAGS"
     test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts"
     cat > conftest.$ac_ext <<EOF
-#line 11110 "configure"
+#line 11206 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if HAVE_TERMIOS_H
@@ -11145,7 +11241,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:11149: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:11245: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sizechange=yes
 else
@@ -11177,20 +11273,20 @@ EOF
 
 	
 echo $ac_n "checking if ttytype is declared in curses library""... $ac_c" 1>&6
-echo "configure:11181: checking if ttytype is declared in curses library" >&5
+echo "configure:11277: checking if ttytype is declared in curses library" >&5
 if eval "test \"`echo '$''{'cf_cv_have_ttytype'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 11187 "configure"
+#line 11283 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 char *x = &ttytype[1]; *x = 1
 ; return 0; }
 EOF
-if { (eval echo configure:11194: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11290: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_have_ttytype=yes
 else
@@ -11211,13 +11307,13 @@ EOF
 
 	
 echo $ac_n "checking if we must define _XOPEN_SOURCE_EXTENDED""... $ac_c" 1>&6
-echo "configure:11215: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
+echo "configure:11311: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
 if eval "test \"`echo '$''{'cf_cv_need_xopen_extension'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 11221 "configure"
+#line 11317 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -11227,7 +11323,7 @@ int main() {
 	long x = winnstr(stdscr, "", 0)
 ; return 0; }
 EOF
-if { (eval echo configure:11231: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_need_xopen_extension=no
 else
@@ -11235,7 +11331,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 11239 "configure"
+#line 11335 "configure"
 #include "confdefs.h"
 
 #define _XOPEN_SOURCE_EXTENDED
@@ -11246,7 +11342,7 @@ int main() {
 	long x = winnstr(stdscr, "", 0)
 ; return 0; }
 EOF
-if { (eval echo configure:11250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_need_xopen_extension=yes
 else
@@ -11282,9 +11378,9 @@ do
 cf_tr_func=`echo $cf_func | tr '[a-z]' '[A-Z]'`
 
 	echo $ac_n "checking for ${cf_func}""... $ac_c" 1>&6
-echo "configure:11286: checking for ${cf_func}" >&5
+echo "configure:11382: checking for ${cf_func}" >&5
 	
-echo "(line 11288) testing ${cf_func} ..." 1>&5
+echo "(line 11384) testing ${cf_func} ..." 1>&5
 
 	if eval "test \"`echo '$''{'cf_cv_func_$cf_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -11293,7 +11389,7 @@ else
 		eval cf_result='$ac_cv_func_'$cf_func
 		if test ".$cf_result" != ".no"; then
 			cat > conftest.$ac_ext <<EOF
-#line 11297 "configure"
+#line 11393 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_XCURSES
@@ -11313,7 +11409,7 @@ long foo = (long)(&${cf_func});
 			
 ; return 0; }
 EOF
-if { (eval echo configure:11317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11413: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -11345,7 +11441,7 @@ fi
 
 
 echo $ac_n "checking if configuration info should be browsable""... $ac_c" 1>&6
-echo "configure:11349: checking if configuration info should be browsable" >&5
+echo "configure:11445: checking if configuration info should be browsable" >&5
 
 # Check whether --enable-config-info or --disable-config-info was given.
 if test "${enable_config_info+set}" = set; then
@@ -11369,7 +11465,7 @@ EOF
 
 
 echo $ac_n "checking if new-style forms-based options screen should be used""... $ac_c" 1>&6
-echo "configure:11373: checking if new-style forms-based options screen should be used" >&5
+echo "configure:11469: checking if new-style forms-based options screen should be used" >&5
 
 # Check whether --enable-forms-options or --disable-forms-options was given.
 if test "${enable_forms_options+set}" = set; then
@@ -11393,7 +11489,7 @@ EOF
 
 
 echo $ac_n "checking if old-style options menu should be used""... $ac_c" 1>&6
-echo "configure:11397: checking if old-style options menu should be used" >&5
+echo "configure:11493: checking if old-style options menu should be used" >&5
 
 # Check whether --enable-menu-options or --disable-menu-options was given.
 if test "${enable_menu_options+set}" = set; then
@@ -11417,7 +11513,7 @@ EOF
 
 
 echo $ac_n "checking if experimental address-list page should be used""... $ac_c" 1>&6
-echo "configure:11421: checking if experimental address-list page should be used" >&5
+echo "configure:11517: checking if experimental address-list page should be used" >&5
 
 # Check whether --enable-addrlist-page or --disable-addrlist-page was given.
 if test "${enable_addrlist_page+set}" = set; then
@@ -11441,7 +11537,7 @@ EOF
 
 
 echo $ac_n "checking if experimental charset-selection logic should be used""... $ac_c" 1>&6
-echo "configure:11445: checking if experimental charset-selection logic should be used" >&5
+echo "configure:11541: checking if experimental charset-selection logic should be used" >&5
 
 # Check whether --enable-charset-choice or --disable-charset-choice was given.
 if test "${enable_charset_choice+set}" = set; then
@@ -11465,7 +11561,7 @@ EOF
 
 
 echo $ac_n "checking if experimental CJK logic should be used""... $ac_c" 1>&6
-echo "configure:11469: checking if experimental CJK logic should be used" >&5
+echo "configure:11565: checking if experimental CJK logic should be used" >&5
 
 # Check whether --enable-cjk or --disable-cjk was given.
 if test "${enable_cjk+set}" = set; then
@@ -11489,7 +11585,7 @@ EOF
 
 
 echo $ac_n "checking if color-style code should be used""... $ac_c" 1>&6
-echo "configure:11493: checking if color-style code should be used" >&5
+echo "configure:11589: checking if color-style code should be used" >&5
 
 # Check whether --enable-color-style or --disable-color-style was given.
 if test "${enable_color_style+set}" = set; then
@@ -11537,7 +11633,7 @@ EOF
 	echo "$ac_t""yes" 1>&6
 
 	echo $ac_n "checking for location of style-sheet file""... $ac_c" 1>&6
-echo "configure:11541: checking for location of style-sheet file" >&5
+echo "configure:11637: checking for location of style-sheet file" >&5
 	LYNX_LSS_FILE=$cf_libdir/lynx.lss
 	cat >> confdefs.h <<EOF
 #define LYNX_LSS_FILE "$LYNX_LSS_FILE"
@@ -11555,7 +11651,7 @@ test ".$cf_cv_func_use_default_colors" = ".yes" && use_dft_colors=maybe
 
 if test "$use_dft_colors" != no ; then
 echo $ac_n "checking if you want to use default-colors""... $ac_c" 1>&6
-echo "configure:11559: checking if you want to use default-colors" >&5
+echo "configure:11655: checking if you want to use default-colors" >&5
 
 # Check whether --enable-default-colors or --disable-default-colors was given.
 if test "${enable_default_colors+set}" = set; then
@@ -11580,7 +11676,7 @@ EOF
 fi
 
 echo $ac_n "checking if experimental file-upload logic should be used""... $ac_c" 1>&6
-echo "configure:11584: checking if experimental file-upload logic should be used" >&5
+echo "configure:11680: checking if experimental file-upload logic should be used" >&5
 
 # Check whether --enable-file-upload or --disable-file-upload was given.
 if test "${enable_file_upload+set}" = set; then
@@ -11604,7 +11700,7 @@ EOF
 
 
 echo $ac_n "checking if experimental htmlized lynx.cfg should be built""... $ac_c" 1>&6
-echo "configure:11608: checking if experimental htmlized lynx.cfg should be built" >&5
+echo "configure:11704: checking if experimental htmlized lynx.cfg should be built" >&5
 
 # Check whether --enable-htmlized-cfg or --disable-htmlized-cfg was given.
 if test "${enable_htmlized_cfg+set}" = set; then
@@ -11633,7 +11729,7 @@ fi
 
 
 echo $ac_n "checking if experimental element-justification logic should be used""... $ac_c" 1>&6
-echo "configure:11637: checking if experimental element-justification logic should be used" >&5
+echo "configure:11733: checking if experimental element-justification logic should be used" >&5
 
 # Check whether --enable-justify-elts or --disable-justify-elts was given.
 if test "${enable_justify_elts+set}" = set; then
@@ -11657,7 +11753,7 @@ EOF
 
 
 echo $ac_n "checking if experimental keyboard-layout logic should be used""... $ac_c" 1>&6
-echo "configure:11661: checking if experimental keyboard-layout logic should be used" >&5
+echo "configure:11757: checking if experimental keyboard-layout logic should be used" >&5
 
 # Check whether --enable-kbd-layout or --disable-kbd-layout was given.
 if test "${enable_kbd_layout+set}" = set; then
@@ -11681,7 +11777,7 @@ EOF
 
 
 echo $ac_n "checking if experimental JavaScript support should be used""... $ac_c" 1>&6
-echo "configure:11685: checking if experimental JavaScript support should be used" >&5
+echo "configure:11781: checking if experimental JavaScript support should be used" >&5
 
 # Check whether --enable-libjs or --disable-libjs was given.
 if test "${enable_libjs+set}" = set; then
@@ -11705,7 +11801,7 @@ EOF
 
 
 echo $ac_n "checking if html source should be colorized""... $ac_c" 1>&6
-echo "configure:11709: checking if html source should be colorized" >&5
+echo "configure:11805: checking if html source should be colorized" >&5
 
 # Check whether --enable-prettysrc or --disable-prettysrc was given.
 if test "${enable_prettysrc+set}" = set; then
@@ -11729,7 +11825,7 @@ EOF
 
 
 echo $ac_n "checking if read-progress message should show ETA""... $ac_c" 1>&6
-echo "configure:11733: checking if read-progress message should show ETA" >&5
+echo "configure:11829: checking if read-progress message should show ETA" >&5
 
 # Check whether --enable-read-eta or --disable-read-eta was given.
 if test "${enable_read_eta+set}" = set; then
@@ -11753,7 +11849,7 @@ EOF
 
 
 echo $ac_n "checking if scrollbar code should be used""... $ac_c" 1>&6
-echo "configure:11757: checking if scrollbar code should be used" >&5
+echo "configure:11853: checking if scrollbar code should be used" >&5
 
 # Check whether --enable-scrollbar or --disable-scrollbar was given.
 if test "${enable_scrollbar+set}" = set; then
@@ -11784,7 +11880,7 @@ EOF
 fi
 
 echo $ac_n "checking if source caching should be used""... $ac_c" 1>&6
-echo "configure:11788: checking if source caching should be used" >&5
+echo "configure:11884: checking if source caching should be used" >&5
 
 # Check whether --enable-source-cache or --disable-source-cache was given.
 if test "${enable_source_cache+set}" = set; then
@@ -11811,7 +11907,7 @@ EOF
 
 
 echo $ac_n "checking if alternative line-edit bindings should be used""... $ac_c" 1>&6
-echo "configure:11815: checking if alternative line-edit bindings should be used" >&5
+echo "configure:11911: checking if alternative line-edit bindings should be used" >&5
 
 # Check whether --enable-alt-bindings or --disable-alt-bindings was given.
 if test "${enable_alt_bindings+set}" = set; then
@@ -11835,7 +11931,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use extended HTML DTD logic""... $ac_c" 1>&6
-echo "configure:11839: checking if you want to use extended HTML DTD logic" >&5
+echo "configure:11935: checking if you want to use extended HTML DTD logic" >&5
 
 # Check whether --enable-extended-dtd or --disable-extended-dtd was given.
 if test "${enable_extended_dtd+set}" = set; then
@@ -11859,7 +11955,7 @@ EOF
 
 
 echo $ac_n "checking if partial-display should be used""... $ac_c" 1>&6
-echo "configure:11863: checking if partial-display should be used" >&5
+echo "configure:11959: checking if partial-display should be used" >&5
 
 # Check whether --enable-partial or --disable-partial was given.
 if test "${enable_partial+set}" = set; then
@@ -11883,7 +11979,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use external commands""... $ac_c" 1>&6
-echo "configure:11887: checking if you want to use external commands" >&5
+echo "configure:11983: checking if you want to use external commands" >&5
 
 # Check whether --enable-externs or --disable-externs was given.
 if test "${enable_externs+set}" = set; then
@@ -11907,7 +12003,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use setfont support""... $ac_c" 1>&6
-echo "configure:11911: checking if you want to use setfont support" >&5
+echo "configure:12007: checking if you want to use setfont support" >&5
 
 # Check whether --enable-font-switch or --disable-font-switch was given.
 if test "${enable_font_switch+set}" = set; then
@@ -11931,7 +12027,7 @@ EOF
 
 
 echo $ac_n "checking if you want cgi-link support""... $ac_c" 1>&6
-echo "configure:11935: checking if you want cgi-link support" >&5
+echo "configure:12031: checking if you want cgi-link support" >&5
 
 # Check whether --enable-cgi-links or --disable-cgi-links was given.
 if test "${enable_cgi_links+set}" = set; then
@@ -11950,7 +12046,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if you want change-exec support""... $ac_c" 1>&6
-echo "configure:11954: checking if you want change-exec support" >&5
+echo "configure:12050: checking if you want change-exec support" >&5
 
 # Check whether --enable-change-exec or --disable-change-exec was given.
 if test "${enable_change_exec+set}" = set; then
@@ -11974,7 +12070,7 @@ EOF
 
 
 echo $ac_n "checking if you want exec-links support""... $ac_c" 1>&6
-echo "configure:11978: checking if you want exec-links support" >&5
+echo "configure:12074: checking if you want exec-links support" >&5
 
 # Check whether --enable-exec-links or --disable-exec-links was given.
 if test "${enable_exec_links+set}" = set; then
@@ -11998,7 +12094,7 @@ EOF
 
 
 echo $ac_n "checking if you want exec-scripts support""... $ac_c" 1>&6
-echo "configure:12002: checking if you want exec-scripts support" >&5
+echo "configure:12098: checking if you want exec-scripts support" >&5
 
 # Check whether --enable-exec-scripts or --disable-exec-scripts was given.
 if test "${enable_exec_scripts+set}" = set; then
@@ -12022,7 +12118,7 @@ EOF
 
 
 echo $ac_n "checking if you want internal-links feature""... $ac_c" 1>&6
-echo "configure:12026: checking if you want internal-links feature" >&5
+echo "configure:12122: checking if you want internal-links feature" >&5
 
 # Check whether --enable-internal-links or --disable-internal-links was given.
 if test "${enable_internal_links+set}" = set; then
@@ -12046,7 +12142,7 @@ EOF
 
 
 echo $ac_n "checking if you want to fork NSL requests""... $ac_c" 1>&6
-echo "configure:12050: checking if you want to fork NSL requests" >&5
+echo "configure:12146: checking if you want to fork NSL requests" >&5
 
 # Check whether --enable-nsl-fork or --disable-nsl-fork was given.
 if test "${enable_nsl_fork+set}" = set; then
@@ -12070,7 +12166,7 @@ EOF
 
 
 echo $ac_n "checking if you want to log URL requests via syslog""... $ac_c" 1>&6
-echo "configure:12074: checking if you want to log URL requests via syslog" >&5
+echo "configure:12170: checking if you want to log URL requests via syslog" >&5
 
 # Check whether --enable-syslog or --disable-syslog was given.
 if test "${enable_syslog+set}" = set; then
@@ -12094,7 +12190,7 @@ EOF
 
 
 echo $ac_n "checking if persistent-cookie logic should be used""... $ac_c" 1>&6
-echo "configure:12098: checking if persistent-cookie logic should be used" >&5
+echo "configure:12194: checking if persistent-cookie logic should be used" >&5
 
 # Check whether --enable-persistent-cookies or --disable-persistent-cookies was given.
 if test "${enable_persistent_cookies+set}" = set; then
@@ -12118,7 +12214,7 @@ EOF
 
 
 echo $ac_n "checking if you want to underline links""... $ac_c" 1>&6
-echo "configure:12122: checking if you want to underline links" >&5
+echo "configure:12218: checking if you want to underline links" >&5
 
 # Check whether --enable-underlines or --disable-underlines was given.
 if test "${enable_underlines+set}" = set; then
@@ -12142,7 +12238,7 @@ EOF
 
 
 echo $ac_n "checking if help files should be gzip'ed""... $ac_c" 1>&6
-echo "configure:12146: checking if help files should be gzip'ed" >&5
+echo "configure:12242: checking if help files should be gzip'ed" >&5
 
 # Check whether --enable-gzip-help or --disable-gzip-help was given.
 if test "${enable_gzip_help+set}" = set; then
@@ -12171,7 +12267,7 @@ fi
 
 
 echo $ac_n "checking if you want to use zlib for decompression of some gzip files""... $ac_c" 1>&6
-echo "configure:12175: checking if you want to use zlib for decompression of some gzip files" >&5
+echo "configure:12271: checking if you want to use zlib for decompression of some gzip files" >&5
 
 # Check whether --with-zlib or --without-zlib was given.
 if test "${with_zlib+set}" = set; then
@@ -12185,16 +12281,16 @@ echo "$ac_t""$use_zlib" 1>&6
 
 if test ".$use_zlib" != ".no" ; then
 	echo $ac_n "checking if we need to add -I option to get zlib.h""... $ac_c" 1>&6
-echo "configure:12189: checking if we need to add -I option to get zlib.h" >&5
+echo "configure:12285: checking if we need to add -I option to get zlib.h" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 12191 "configure"
+#line 12287 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12198: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12294: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   echo "$ac_t""no" 1>&6
 else
@@ -12248,12 +12344,12 @@ rm -f conftest*
 	eval 'cf_cv_have_lib_'z'=no'
 	cf_libdir=""
 	echo $ac_n "checking for gzopen""... $ac_c" 1>&6
-echo "configure:12252: checking for gzopen" >&5
+echo "configure:12348: checking for gzopen" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gzopen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12257 "configure"
+#line 12353 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gzopen(); below.  */
@@ -12276,7 +12372,7 @@ gzopen();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12280: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12376: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gzopen=yes"
 else
@@ -12296,17 +12392,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for gzopen in -lz""... $ac_c" 1>&6
-echo "configure:12300: checking for gzopen in -lz" >&5
+echo "configure:12396: checking for gzopen in -lz" >&5
 		LIBS="-lz $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 12303 "configure"
+#line 12399 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:12310: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 eval 'cf_cv_have_lib_'z'=yes'
@@ -12350,17 +12446,17 @@ cf_search="$cf_search $HOME/lib $HOME/lib/z $HOME/z/lib"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lz in $cf_libdir""... $ac_c" 1>&6
-echo "configure:12354: checking for -lz in $cf_libdir" >&5
+echo "configure:12450: checking for -lz in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lz $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 12357 "configure"
+#line 12453 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:12364: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12460: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 eval 'cf_cv_have_lib_'z'=yes'
@@ -12394,7 +12490,7 @@ EOF
 fi
 
 echo $ac_n "checking if you want to exclude FINGER code""... $ac_c" 1>&6
-echo "configure:12398: checking if you want to exclude FINGER code" >&5
+echo "configure:12494: checking if you want to exclude FINGER code" >&5
 
 # Check whether --enable-finger or --disable-finger was given.
 if test "${enable_finger+set}" = set; then
@@ -12418,7 +12514,7 @@ EOF
 
 
 echo $ac_n "checking if you want to exclude GOPHER code""... $ac_c" 1>&6
-echo "configure:12422: checking if you want to exclude GOPHER code" >&5
+echo "configure:12518: checking if you want to exclude GOPHER code" >&5
 
 # Check whether --enable-gopher or --disable-gopher was given.
 if test "${enable_gopher+set}" = set; then
@@ -12442,7 +12538,7 @@ EOF
 
 
 echo $ac_n "checking if you want to exclude NEWS code""... $ac_c" 1>&6
-echo "configure:12446: checking if you want to exclude NEWS code" >&5
+echo "configure:12542: checking if you want to exclude NEWS code" >&5
 
 # Check whether --enable-news or --disable-news was given.
 if test "${enable_news+set}" = set; then
@@ -12466,7 +12562,7 @@ EOF
 
 
 echo $ac_n "checking if you want to exclude FTP code""... $ac_c" 1>&6
-echo "configure:12470: checking if you want to exclude FTP code" >&5
+echo "configure:12566: checking if you want to exclude FTP code" >&5
 
 # Check whether --enable-ftp or --disable-ftp was given.
 if test "${enable_ftp+set}" = set; then
@@ -12495,7 +12591,7 @@ EOF
 # All DirEd functions that were enabled on compilation can be disabled
 # or modified at run time via DIRED_MENU symbols in lynx.cfg.
 echo $ac_n "checking if directory-editor code should be used""... $ac_c" 1>&6
-echo "configure:12499: checking if directory-editor code should be used" >&5
+echo "configure:12595: checking if directory-editor code should be used" >&5
 
 # Check whether --enable-dired or --disable-dired was given.
 if test "${enable_dired+set}" = set; then
@@ -12521,7 +12617,7 @@ EOF
 
 
 	echo $ac_n "checking if you wish to allow extracting from archives via DirEd""... $ac_c" 1>&6
-echo "configure:12525: checking if you wish to allow extracting from archives via DirEd" >&5
+echo "configure:12621: checking if you wish to allow extracting from archives via DirEd" >&5
 	
 # Check whether --enable-dired-dearchive or --disable-dired-dearchive was given.
 if test "${enable_dired_dearchive+set}" = set; then
@@ -12540,7 +12636,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if DirEd mode should override keys""... $ac_c" 1>&6
-echo "configure:12544: checking if DirEd mode should override keys" >&5
+echo "configure:12640: checking if DirEd mode should override keys" >&5
 	
 # Check whether --enable-dired-override or --disable-dired-override was given.
 if test "${enable_dired_override+set}" = set; then
@@ -12566,7 +12662,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow permissions commands via DirEd""... $ac_c" 1>&6
-echo "configure:12570: checking if you wish to allow permissions commands via DirEd" >&5
+echo "configure:12666: checking if you wish to allow permissions commands via DirEd" >&5
 	
 # Check whether --enable-dired-permit or --disable-dired-permit was given.
 if test "${enable_dired_permit+set}" = set; then
@@ -12592,7 +12688,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow executable-permission commands via DirEd""... $ac_c" 1>&6
-echo "configure:12596: checking if you wish to allow executable-permission commands via DirEd" >&5
+echo "configure:12692: checking if you wish to allow executable-permission commands via DirEd" >&5
 	
 # Check whether --enable-dired-xpermit or --disable-dired-xpermit was given.
 if test "${enable_dired_xpermit+set}" = set; then
@@ -12611,7 +12707,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "tar" commands from DirEd""... $ac_c" 1>&6
-echo "configure:12615: checking if you wish to allow "tar" commands from DirEd" >&5
+echo "configure:12711: checking if you wish to allow "tar" commands from DirEd" >&5
 	
 # Check whether --enable-dired-tar or --disable-dired-tar was given.
 if test "${enable_dired_tar+set}" = set; then
@@ -12637,7 +12733,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "uudecode" commands from DirEd""... $ac_c" 1>&6
-echo "configure:12641: checking if you wish to allow "uudecode" commands from DirEd" >&5
+echo "configure:12737: checking if you wish to allow "uudecode" commands from DirEd" >&5
 	
 # Check whether --enable-dired-uudecode or --disable-dired-uudecode was given.
 if test "${enable_dired_uudecode+set}" = set; then
@@ -12663,7 +12759,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "zip" and "unzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:12667: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
+echo "configure:12763: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-zip or --disable-dired-zip was given.
 if test "${enable_dired_zip+set}" = set; then
@@ -12689,7 +12785,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "gzip" and "gunzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:12693: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
+echo "configure:12789: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-gzip or --disable-dired-gzip was given.
 if test "${enable_dired_gzip+set}" = set; then
@@ -12716,7 +12812,7 @@ fi
 fi
 
 echo $ac_n "checking if you want long-directory listings""... $ac_c" 1>&6
-echo "configure:12720: checking if you want long-directory listings" >&5
+echo "configure:12816: checking if you want long-directory listings" >&5
 
 # Check whether --enable-long-list or --disable-long-list was given.
 if test "${enable_long_list+set}" = set; then
@@ -12742,7 +12838,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if parent-directory references are permitted""... $ac_c" 1>&6
-echo "configure:12746: checking if parent-directory references are permitted" >&5
+echo "configure:12842: checking if parent-directory references are permitted" >&5
 
 # Check whether --enable-parent-dir-refs or --disable-parent-dir-refs was given.
 if test "${enable_parent_dir_refs+set}" = set; then
@@ -12767,7 +12863,7 @@ if test $cf_cv_screen = pdcurses ; then
 # Uses ac_ vars as temps to allow command line to override cache and checks.
 # --without-x overrides everything else, but does not touch the cache.
 echo $ac_n "checking for X""... $ac_c" 1>&6
-echo "configure:12771: checking for X" >&5
+echo "configure:12867: checking for X" >&5
 
 
 # Check whether --with-x or --without-x was given.
@@ -12830,12 +12926,12 @@ if test "$ac_x_includes" = NO; then
 
   # First, try using that file with no special directory specified.
 cat > conftest.$ac_ext <<EOF
-#line 12834 "configure"
+#line 12930 "configure"
 #include "confdefs.h"
 #include <$x_direct_test_include>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12839: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12935: \"$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*
@@ -12904,14 +13000,14 @@ if test "$ac_x_libraries" = NO; then
   ac_save_LIBS="$LIBS"
   LIBS="-l$x_direct_test_library $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 12908 "configure"
+#line 13004 "configure"
 #include "confdefs.h"
 
 int main() {
 ${x_direct_test_function}()
 ; return 0; }
 EOF
-if { (eval echo configure:12915: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   LIBS="$ac_save_LIBS"
 # We can link X programs with no special library path.
@@ -13011,7 +13107,7 @@ clix*)
 	# FIXME: modify the library lookup in autoconf to
 	# allow _s.a suffix ahead of .a
 	echo $ac_n "checking for open in -lc_s""... $ac_c" 1>&6
-echo "configure:13015: checking for open in -lc_s" >&5
+echo "configure:13111: checking for open in -lc_s" >&5
 ac_lib_var=`echo c_s'_'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
@@ -13019,7 +13115,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13023 "configure"
+#line 13119 "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
@@ -13030,7 +13126,7 @@ int main() {
 open()
 ; return 0; }
 EOF
-if { (eval echo configure:13034: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13130: \"$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
@@ -13047,7 +13143,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   LIBS="-lc_s $LIBS"
 	echo $ac_n "checking for gethostname in -lbsd""... $ac_c" 1>&6
-echo "configure:13051: checking for gethostname in -lbsd" >&5
+echo "configure:13147: checking for gethostname in -lbsd" >&5
 ac_lib_var=`echo bsd'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13055,7 +13151,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13059 "configure"
+#line 13155 "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
@@ -13066,7 +13162,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:13070: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13166: \"$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
@@ -13083,7 +13179,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   LIBS="-lbsd $LIBS"
 	echo $ac_n "checking for gethostname in -lnsl_s""... $ac_c" 1>&6
-echo "configure:13087: checking for gethostname in -lnsl_s" >&5
+echo "configure:13183: checking for gethostname in -lnsl_s" >&5
 ac_lib_var=`echo nsl_s'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13091,7 +13187,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13095 "configure"
+#line 13191 "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
@@ -13102,7 +13198,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:13106: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13202: \"$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
@@ -13119,7 +13215,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   LIBS="-lnsl_s $LIBS"
 	echo $ac_n "checking for XOpenDisplay in -lX11_s""... $ac_c" 1>&6
-echo "configure:13123: checking for XOpenDisplay in -lX11_s" >&5
+echo "configure:13219: checking for XOpenDisplay in -lX11_s" >&5
 ac_lib_var=`echo X11_s'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13127,7 +13223,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13131 "configure"
+#line 13227 "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
@@ -13138,7 +13234,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:13142: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13238: \"$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
@@ -13155,7 +13251,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   LIBS="-lX11_s $LIBS"
 	echo $ac_n "checking for XtAppInitialize in -lXt_s""... $ac_c" 1>&6
-echo "configure:13159: checking for XtAppInitialize in -lXt_s" >&5
+echo "configure:13255: checking for XtAppInitialize in -lXt_s" >&5
 ac_lib_var=`echo Xt_s'_'XtAppInitialize | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13163,7 +13259,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXt_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13167 "configure"
+#line 13263 "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
@@ -13174,7 +13270,7 @@ int main() {
 XtAppInitialize()
 ; return 0; }
 EOF
-if { (eval echo configure:13178: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13274: \"$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
@@ -13215,7 +13311,7 @@ fi
 	;;
 *)
 	echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:13219: checking for socket in -lsocket" >&5
+echo "configure:13315: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13223,7 +13319,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13227 "configure"
+#line 13323 "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
@@ -13234,7 +13330,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:13238: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13334: \"$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
@@ -13262,7 +13358,7 @@ else
 fi
 
 	echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:13266: checking for gethostname in -lnsl" >&5
+echo "configure:13362: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13270,7 +13366,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13274 "configure"
+#line 13370 "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
@@ -13281,7 +13377,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:13285: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13381: \"$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
@@ -13332,17 +13428,17 @@ else
     case "`(uname -sr) 2>/dev/null`" in
     "SunOS 5"*)
       echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
-echo "configure:13336: checking whether -R must be followed by a space" >&5
+echo "configure:13432: checking whether -R must be followed by a space" >&5
       ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
       cat > conftest.$ac_ext <<EOF
-#line 13339 "configure"
+#line 13435 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13442: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_nospace=yes
 else
@@ -13358,14 +13454,14 @@ rm -f conftest*
       else
 	LIBS="$ac_xsave_LIBS -R $x_libraries"
 	cat > conftest.$ac_ext <<EOF
-#line 13362 "configure"
+#line 13458 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13369: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_space=yes
 else
@@ -13397,7 +13493,7 @@ rm -f conftest*
     # libraries were built with DECnet support.  And karl@cs.umb.edu says
     # the Alpha needs dnet_stub (dnet does not exist).
     echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
-echo "configure:13401: checking for dnet_ntoa in -ldnet" >&5
+echo "configure:13497: checking for dnet_ntoa in -ldnet" >&5
 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13405,7 +13501,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13409 "configure"
+#line 13505 "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
@@ -13416,7 +13512,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:13420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13516: \"$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
@@ -13438,7 +13534,7 @@ fi
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
       echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
-echo "configure:13442: checking for dnet_ntoa in -ldnet_stub" >&5
+echo "configure:13538: checking for dnet_ntoa in -ldnet_stub" >&5
 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13446,7 +13542,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet_stub  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13450 "configure"
+#line 13546 "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
@@ -13457,7 +13553,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:13461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13557: \"$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
@@ -13486,12 +13582,12 @@ fi
     # The nsl library prevents programs from opening the X display
     # on Irix 5.2, according to dickey@clark.net.
     echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:13490: checking for gethostbyname" >&5
+echo "configure:13586: checking for gethostbyname" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13495 "configure"
+#line 13591 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gethostbyname(); below.  */
@@ -13514,7 +13610,7 @@ gethostbyname();
 
 ; return 0; }
 EOF
-if { (eval echo configure:13518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13614: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gethostbyname=yes"
 else
@@ -13535,7 +13631,7 @@ fi
 
     if test $ac_cv_func_gethostbyname = no; then
       echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:13539: checking for gethostbyname in -lnsl" >&5
+echo "configure:13635: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13543,7 +13639,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13547 "configure"
+#line 13643 "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
@@ -13554,7 +13650,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:13558: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13654: \"$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
@@ -13584,12 +13680,12 @@ fi
     # -lsocket must be given before -lnsl if both are needed.
     # We assume that if connect needs -lnsl, so does gethostbyname.
     echo $ac_n "checking for connect""... $ac_c" 1>&6
-echo "configure:13588: checking for connect" >&5
+echo "configure:13684: checking for connect" >&5
 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13593 "configure"
+#line 13689 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char connect(); below.  */
@@ -13612,7 +13708,7 @@ connect();
 
 ; return 0; }
 EOF
-if { (eval echo configure:13616: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13712: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_connect=yes"
 else
@@ -13633,7 +13729,7 @@ fi
 
     if test $ac_cv_func_connect = no; then
       echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
-echo "configure:13637: checking for connect in -lsocket" >&5
+echo "configure:13733: checking for connect in -lsocket" >&5
 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13641,7 +13737,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13645 "configure"
+#line 13741 "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
@@ -13652,7 +13748,7 @@ int main() {
 connect()
 ; return 0; }
 EOF
-if { (eval echo configure:13656: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13752: \"$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
@@ -13676,12 +13772,12 @@ fi
 
     # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
     echo $ac_n "checking for remove""... $ac_c" 1>&6
-echo "configure:13680: checking for remove" >&5
+echo "configure:13776: checking for remove" >&5
 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13685 "configure"
+#line 13781 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char remove(); below.  */
@@ -13704,7 +13800,7 @@ remove();
 
 ; return 0; }
 EOF
-if { (eval echo configure:13708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_remove=yes"
 else
@@ -13725,7 +13821,7 @@ fi
 
     if test $ac_cv_func_remove = no; then
       echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
-echo "configure:13729: checking for remove in -lposix" >&5
+echo "configure:13825: checking for remove in -lposix" >&5
 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13733,7 +13829,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13737 "configure"
+#line 13833 "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
@@ -13744,7 +13840,7 @@ int main() {
 remove()
 ; return 0; }
 EOF
-if { (eval echo configure:13748: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13844: \"$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
@@ -13768,12 +13864,12 @@ fi
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     echo $ac_n "checking for shmat""... $ac_c" 1>&6
-echo "configure:13772: checking for shmat" >&5
+echo "configure:13868: checking for shmat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13777 "configure"
+#line 13873 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char shmat(); below.  */
@@ -13796,7 +13892,7 @@ shmat();
 
 ; return 0; }
 EOF
-if { (eval echo configure:13800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_shmat=yes"
 else
@@ -13817,7 +13913,7 @@ fi
 
     if test $ac_cv_func_shmat = no; then
       echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
-echo "configure:13821: checking for shmat in -lipc" >&5
+echo "configure:13917: checking for shmat in -lipc" >&5
 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13825,7 +13921,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lipc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13829 "configure"
+#line 13925 "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
@@ -13836,7 +13932,7 @@ int main() {
 shmat()
 ; return 0; }
 EOF
-if { (eval echo configure:13840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13936: \"$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
@@ -13869,7 +13965,7 @@ fi
   # libraries we check for below, so use a different variable.
   #  --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
   echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
-echo "configure:13873: checking for IceConnectionNumber in -lICE" >&5
+echo "configure:13969: checking for IceConnectionNumber in -lICE" >&5
 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13877,7 +13973,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lICE $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13881 "configure"
+#line 13977 "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
@@ -13888,7 +13984,7 @@ int main() {
 IceConnectionNumber()
 ; return 0; }
 EOF
-if { (eval echo configure:13892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13988: \"$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
@@ -13915,7 +14011,7 @@ fi
 	LDFLAGS="$LDFLAGS $X_LIBS"
 	CFLAGS="$CFLAGS $X_CFLAGS"
 	echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
-echo "configure:13919: checking for XOpenDisplay in -lX11" >&5
+echo "configure:14015: checking for XOpenDisplay in -lX11" >&5
 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13923,7 +14019,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13927 "configure"
+#line 14023 "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
@@ -13934,7 +14030,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:13938: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14034: \"$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
@@ -13955,7 +14051,7 @@ else
 fi
 
 	echo $ac_n "checking for XtAppInitialize in -lXt""... $ac_c" 1>&6
-echo "configure:13959: checking for XtAppInitialize in -lXt" >&5
+echo "configure:14055: checking for XtAppInitialize in -lXt" >&5
 ac_lib_var=`echo Xt'_'XtAppInitialize | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13963,7 +14059,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13967 "configure"
+#line 14063 "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
@@ -13974,7 +14070,7 @@ int main() {
 XtAppInitialize()
 ; return 0; }
 EOF
-if { (eval echo configure:13978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14074: \"$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
@@ -14031,7 +14127,7 @@ fi
 
 
 echo $ac_n "checking for XextCreateExtension in -lXext""... $ac_c" 1>&6
-echo "configure:14035: checking for XextCreateExtension in -lXext" >&5
+echo "configure:14131: checking for XextCreateExtension in -lXext" >&5
 ac_lib_var=`echo Xext'_'XextCreateExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -14039,7 +14135,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXext  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 14043 "configure"
+#line 14139 "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
@@ -14050,7 +14146,7 @@ int main() {
 XextCreateExtension()
 ; return 0; }
 EOF
-if { (eval echo configure:14054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14150: \"$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
@@ -14086,13 +14182,13 @@ do
 		if test $cf_path != default ; then
 			CFLAGS="-I$cf_path/include $cf_save"
 			echo $ac_n "checking for $cf_test in $cf_path""... $ac_c" 1>&6
-echo "configure:14090: checking for $cf_test in $cf_path" >&5
+echo "configure:14186: checking for $cf_test in $cf_path" >&5
 		else
 			echo $ac_n "checking for $cf_test""... $ac_c" 1>&6
-echo "configure:14093: checking for $cf_test" >&5
+echo "configure:14189: checking for $cf_test" >&5
 		fi
 		cat > conftest.$ac_ext <<EOF
-#line 14096 "configure"
+#line 14192 "configure"
 #include "confdefs.h"
 
 #include <X11/Intrinsic.h>
@@ -14101,7 +14197,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:14105: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -14127,21 +14223,21 @@ rm -f conftest*
 			if test $cf_path != default ; then
 				LIBS="-L$cf_path/lib $cf_lib $LIBS"
 				echo $ac_n "checking for $cf_lib in $cf_path""... $ac_c" 1>&6
-echo "configure:14131: checking for $cf_lib in $cf_path" >&5
+echo "configure:14227: checking for $cf_lib in $cf_path" >&5
 			else
 				LIBS="$cf_lib $LIBS"
 				echo $ac_n "checking for $cf_test in $cf_lib""... $ac_c" 1>&6
-echo "configure:14135: checking for $cf_test in $cf_lib" >&5
+echo "configure:14231: checking for $cf_test in $cf_lib" >&5
 			fi
 			cat > conftest.$ac_ext <<EOF
-#line 14138 "configure"
+#line 14234 "configure"
 #include "confdefs.h"
 
 int main() {
 $cf_test()
 ; return 0; }
 EOF
-if { (eval echo configure:14145: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14241: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -14182,7 +14278,7 @@ EOF
 LDFLAGS="$LDFLAGS $X_LIBS"
 CFLAGS="$CFLAGS $X_CFLAGS"
 echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
-echo "configure:14186: checking for XOpenDisplay in -lX11" >&5
+echo "configure:14282: checking for XOpenDisplay in -lX11" >&5
 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -14190,7 +14286,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 14194 "configure"
+#line 14290 "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
@@ -14201,7 +14297,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:14205: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14301: \"$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
@@ -14222,14 +14318,14 @@ else
 fi
 
 echo $ac_n "checking for XCurses library""... $ac_c" 1>&6
-echo "configure:14226: checking for XCurses library" >&5
+echo "configure:14322: checking for XCurses library" >&5
 if eval "test \"`echo '$''{'cf_cv_lib_XCurses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 LIBS="-lXCurses $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 14233 "configure"
+#line 14329 "configure"
 #include "confdefs.h"
 
 #include <xcurses.h>
@@ -14239,7 +14335,7 @@ int main() {
 XCursesExit();
 ; return 0; }
 EOF
-if { (eval echo configure:14243: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14339: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_lib_XCurses=yes
 else
@@ -14273,7 +14369,7 @@ fi
 else
 	
 echo $ac_n "checking if we can include termio.h with curses""... $ac_c" 1>&6
-echo "configure:14277: checking if we can include termio.h with curses" >&5
+echo "configure:14373: checking if we can include termio.h with curses" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14282,7 +14378,7 @@ else
     CFLAGS="$CFLAGS -DHAVE_CONFIG_H -I. -I${srcdir-.} -I${srcdir-.}/src -I${srcdir-.}/WWW/Library/Implementation"
     touch lynx_cfg.h
     cat > conftest.$ac_ext <<EOF
-#line 14286 "configure"
+#line 14382 "configure"
 #include "confdefs.h"
 
 #include <LYCurses.h>
@@ -14291,7 +14387,7 @@ int main() {
 putchar(0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:14295: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14391: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_curses=yes
 else
@@ -14437,7 +14533,7 @@ trap 'rm -fr `echo "makefile \
 	src/makefile \
 	src/chrtrans/makefile \
 	$SUB_MAKEFILE
-	 lynx_cfg.h:config.hin" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+	 $CONFIG_H:config.hin" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
 EOF
 cat >> $CONFIG_STATUS <<EOF
 
@@ -14474,6 +14570,10 @@ s%@host_alias@%$host_alias%g
 s%@host_cpu@%$host_cpu%g
 s%@host_vendor@%$host_vendor%g
 s%@host_os@%$host_os%g
+s%@PACKAGE@%$PACKAGE%g
+s%@VERSION@%$VERSION%g
+s%@DESTDIR@%$DESTDIR%g
+s%@CONFIG_H@%$CONFIG_H%g
 s%@CC@%$CC%g
 s%@CPP@%$CPP%g
 s%@LN_S@%$LN_S%g
@@ -14676,7 +14776,7 @@ ac_eD='%g'
 if test "${CONFIG_HEADERS+set}" != set; then
 EOF
 cat >> $CONFIG_STATUS <<EOF
-  CONFIG_HEADERS="lynx_cfg.h:config.hin"
+  CONFIG_HEADERS="$CONFIG_H:config.hin"
 EOF
 cat >> $CONFIG_STATUS <<\EOF
 fi
diff --git a/configure.in b/configure.in
index d2e54ee7..da041af3 100644
--- a/configure.in
+++ b/configure.in
@@ -7,10 +7,19 @@ AC_PREREQ(2.12.971222)
 rm -f config.cache
 
 AC_INIT(userdefs.h)
-AC_CONFIG_HEADER(lynx_cfg.h:config.hin)
+CONFIG_H=lynx_cfg.h
+AC_CONFIG_HEADER($CONFIG_H:config.hin)
 
 CF_CHECK_CACHE
 
+PACKAGE=lynx
+VERSION=2.8.3
+
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
+AC_SUBST(DESTDIR)
+AC_SUBST(CONFIG_H)
+
 dnl Set of available languages (based on source distribution)
 test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
 
@@ -107,84 +116,12 @@ fi
 fi
 
 dnl --------------------------------------------------------------------------
-dnl --------------------------------------------------------------------------
-
-CF_HELP_MESSAGE(
-Basic Configuration Options:)
-
-dnl internationalization macros
-CF_BUNDLED_INTL(makefile)
-
-INTLDIR_CPPFLAGS="#"
-if test -z "$INTLDIR_MAKE" ; then
-	INTLDIR_CPPFLAGS=
-fi
-
-AC_SUBST(INTLDIR_CPPFLAGS)
-
-CF_WITH_PATH(nls-datadir,
-[  --with-nls-datadir=DIR  NLS data, parent of locale],
-NLS_DATADIR,
-[PREFIX/DATADIR],
-[$prefix/$DATADIRNAME])
-
-AC_MSG_CHECKING(if you want full utility pathnames)
-CF_ARG_DISABLE(full-paths,
-	[  --disable-full-paths    control whether full utility pathnames are used],
-	[with_full_paths=no],
-	[with_full_paths=yes])
-AC_MSG_RESULT($with_full_paths)
-test $with_full_paths = no && AC_DEFINE(USE_EXECVP)
-
-CF_DEFINE_PROG(system mailer, SYSTEM_MAIL,
-	/usr/mmdf/bin/submit \
-	/usr/sbin/sendmail \
-	/usr/lib/sendmail  \
-	)
-CF_SYSTEM_MAIL_FLAGS
-
-CF_PATH_PROG(CHMOD,	chmod)
-CF_PATH_PROG(COMPRESS,	compress)
-CF_PATH_PROG(COPY,	cp)
-CF_PATH_PROG(GZIP,	gzip)
-CF_PATH_PROG(MKDIR,	mkdir)
-CF_PATH_PROG(MV,	mv)
-CF_PATH_PROG(RM,	rm)
-CF_PATH_PROG(TAR,	tar)
-CF_PATH_PROG(TOUCH,	touch)
-CF_PATH_PROG(UNCOMPRESS,gunzip)
-CF_PATH_PROG(UNZIP,	unzip)
-CF_PATH_PROG(BZIP2,	bzip2)
-CF_PATH_PROG(UUDECODE,	uudecode)
-CF_PATH_PROG(ZCAT,	zcat)
-CF_PATH_PROG(ZIP,	zip)
-CF_PATH_PROG(TELNET,	telnet)
-CF_PATH_PROG(TN3270,	tn3270)
-CF_PATH_PROG(RLOGIN,	rlogin)
-
-dnl 'INSTALL' is a special case, since the configure script has to find a
-dnl BSD-compatible one so the build/install works properly.
-case "$INSTALL" in
-$srcdir*) # (vi
-	AC_DEFINE_UNQUOTED(INSTALL_PATH,"install")
-	;;
-*) # (vi
-	cf_save_INSTALL="$INSTALL"
-	CF_PATH_PROG(INSTALL,	install)
-	INSTALL="$cf_save_INSTALL"
-	;;
-esac
-
-dnl --------------------------------------------------------------------------
 dnl Checks for compiler & standard-library characteristics
 dnl --------------------------------------------------------------------------
 
 dnl If we're able to run this script, this is true!
 AC_DEFINE(UNIX)
 
-if test -z "$GCC" ; then
-	CF_ANSI_CC_CHECK
-fi
 AC_C_CONST
 
 dnl Only add to this case statement things that we cannot design tests for.
@@ -250,6 +187,9 @@ os2*)
 	LDFLAGS=`echo "$LDFLAGS -Zmt -Zcrtdll" | sed "s/-Zexe//g"`
 	PROG_EXT=".exe"
 	;;
+os390)	: ${CFLAGS="-D_ALL_SOURCE -Wl,EDIT=NO"}
+	: ${CC=c89}
+	;;
 osf4*)
 	# The -Olimit flag (see below) is no longer available with
 	# Digital C 5.2, which is bundled with Digital UNIX 4.0.
@@ -305,6 +245,79 @@ ultrix*)
 esac
 AC_SUBST(PROG_EXT)
 
+if test -z "$GCC" ; then
+	CF_ANSI_CC_CHECK
+fi
+
+dnl --------------------------------------------------------------------------
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Basic Configuration Options:)
+
+dnl internationalization macros
+CF_BUNDLED_INTL(makefile)
+
+INTLDIR_CPPFLAGS="#"
+if test -z "$INTLDIR_MAKE" ; then
+	INTLDIR_CPPFLAGS=
+fi
+
+AC_SUBST(INTLDIR_CPPFLAGS)
+
+CF_WITH_PATH(nls-datadir,
+[  --with-nls-datadir=DIR  NLS data, parent of locale],
+NLS_DATADIR,
+[PREFIX/DATADIR],
+[$prefix/$DATADIRNAME])
+
+AC_MSG_CHECKING(if you want full utility pathnames)
+CF_ARG_DISABLE(full-paths,
+	[  --disable-full-paths    control whether full utility pathnames are used],
+	[with_full_paths=no],
+	[with_full_paths=yes])
+AC_MSG_RESULT($with_full_paths)
+test $with_full_paths = no && AC_DEFINE(USE_EXECVP)
+
+CF_DEFINE_PROG(system mailer, SYSTEM_MAIL,
+	/usr/mmdf/bin/submit \
+	/usr/sbin/sendmail \
+	/usr/lib/sendmail  \
+	)
+CF_SYSTEM_MAIL_FLAGS
+
+CF_PATH_PROG(CHMOD,	chmod)
+CF_PATH_PROG(COMPRESS,	compress)
+CF_PATH_PROG(COPY,	cp)
+CF_PATH_PROG(GZIP,	gzip)
+CF_PATH_PROG(MKDIR,	mkdir)
+CF_PATH_PROG(MV,	mv)
+CF_PATH_PROG(RM,	rm)
+CF_PATH_PROG(TAR,	tar)
+CF_PATH_PROG(TOUCH,	touch)
+CF_PATH_PROG(UNCOMPRESS,gunzip)
+CF_PATH_PROG(UNZIP,	unzip)
+CF_PATH_PROG(BZIP2,	bzip2)
+CF_PATH_PROG(UUDECODE,	uudecode)
+CF_PATH_PROG(ZCAT,	zcat)
+CF_PATH_PROG(ZIP,	zip)
+CF_PATH_PROG(TELNET,	telnet)
+CF_PATH_PROG(TN3270,	tn3270)
+CF_PATH_PROG(RLOGIN,	rlogin)
+
+dnl 'INSTALL' is a special case, since the configure script has to find a
+dnl BSD-compatible one so the build/install works properly.
+case "$INSTALL" in
+$srcdir*) # (vi
+	AC_DEFINE_UNQUOTED(INSTALL_PATH,"install")
+	;;
+*) # (vi
+	cf_save_INSTALL="$INSTALL"
+	CF_PATH_PROG(INSTALL,	install)
+	INSTALL="$cf_save_INSTALL"
+	;;
+esac
+
 CF_GNU_SOURCE
 
 dnl Collect tests for compiler options into one place
@@ -376,12 +389,13 @@ esac
 
 case $cf_cv_screen in
 curses)
+	CF_NCURSES_VERSION
 	CF_CURSES_LIBS
 	CF_CURS_PERFORMANCE
 	;;
 ncurses)
-	CF_NCURSES_CPPFLAGS
 	CF_NCURSES_LIBS
+	CF_NCURSES_VERSION
 	;;
 pdcurses)
 	# do this last, since it changes definition of main: CF_PDCURSES_X11
@@ -545,7 +559,6 @@ CF_EBCDIC
 if test $cf_cv_screen != slang ; then
 	CF_ALT_CHAR_SET
 	CF_FANCY_CURSES
-	CF_NCURSES_VERSION
 	CF_NCURSES_BROKEN
 	CF_COLOR_CURSES
 	CF_SIZECHANGE
diff --git a/intl/ChangeLog b/intl/ChangeLog
index ecff6f6b..19895015 100644
--- a/intl/ChangeLog
+++ b/intl/ChangeLog
@@ -1,3 +1,67 @@
+1998-04-29  Ulrich Drepper  <drepper@cygnus.com>
+
+	* intl/localealias.c (read_alias_file): Use unsigned char for
+	local variables.  Remove unused variable tp.
+	* intl/l10nflist.c (_nl_normalize_codeset): Use unsigned char *
+	for type of codeset.  For loosing Solaris systems.
+	* intl/loadinfo.h: Adapt prototype of _nl_normalize_codeset.
+	* intl/bindtextdom.c (BINDTEXTDOMAIN): Don't define local variable
+	len if not needed.
+	Patches by Jim Meyering.
+
+1998-04-28  Ulrich Drepper  <drepper@cygnus.com>
+
+	* loadmsgcat.c (_nl_load_domain): Don't assign the element use_mmap if
+	mmap is not supported.
+
+	* hash-string.h: Don't include <values.h>.
+
+1998-04-27  Ulrich Drepper  <drepper@cygnus.com>
+
+	* textdomain.c: Use strdup is available.
+
+	* localealias.c: Define HAVE_MEMPCPY so that we can use this
+	function.  Define and use semapahores to protect modfication of
+	global objects when compiling for glibc.  Add code to allow
+	freeing alias table.
+
+	* l10nflist.c: Don't assume stpcpy not being a macro.
+
+	* gettextP.h: Define internal_function macri if not already done.
+	Use glibc byte-swap macros instead of defining SWAP when compiled
+	for glibc.
+	(struct loaded_domain): Add elements to allow unloading.
+
+	* Makefile.in (distclean): Don't remove libintl.h here.
+
+	* bindtextdomain.c: Carry over changes from glibc.  Use strdup if
+	available.
+
+	* dcgettext.c: Don't assume stpcpy not being a macro.  Mark internal
+	functions.  Add memory freeing code for glibc.
+
+	* dgettext.c: Update copyright.
+
+	* explodename.c: Include stdlib.h and string.h only if they exist.
+	Use strings.h eventually.
+
+	* finddomain.c: Mark internal functions.  Use strdup if available.
+	Add memory freeing code for glibc.
+
+1997-10-10 20:00  Ulrich Drepper  <drepper@cygnus.com>
+
+	* libgettext.h: Fix dummy textdomain and bindtextdomain macros.
+	They should return reasonable values.
+	Reported by Tom Tromey <tromey@cygnus.com>.
+
+1997-09-16 03:33  Ulrich Drepper  <drepper@cygnus.com>
+
+	* libgettext.h: Define PARAMS also to `args' if __cplusplus is defined.
+	* intlh.inst.in: Likewise.
+	Reported by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>.
+
+	* libintl.glibc: Update from current glibc version.
+
 1997-09-06 02:10  Ulrich Drepper  <drepper@cygnus.com>
 
 	* intlh.inst.in: Reformat copyright.
diff --git a/intl/VERSION b/intl/VERSION
index d31950a6..ee66b061 100644
--- a/intl/VERSION
+++ b/intl/VERSION
@@ -1 +1 @@
-GNU gettext library from gettext-0.10.32
+GNU gettext library from gettext-0.10.35
diff --git a/intl/bindtextdom.c b/intl/bindtextdom.c
index d700dd53..d9c3f349 100644
--- a/intl/bindtextdom.c
+++ b/intl/bindtextdom.c
@@ -1,5 +1,5 @@
 /* Implementation of the bindtextdomain(3) function
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #if defined STDC_HEADERS || defined _LIBC
@@ -41,10 +41,10 @@ void free ();
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
-#include <gettext.h>
-#include <gettextP.h>
+#include "gettext.h"
+#include "gettextP.h"
 
 /* @@ end of prolog @@ */
 
@@ -61,7 +61,9 @@ extern struct binding *_nl_domain_bindings;
    prefix.  So we have to make a difference here.  */
 #ifdef _LIBC
 # define BINDTEXTDOMAIN __bindtextdomain
-# define strdup(str) __strdup (str)
+# ifndef strdup
+#  define strdup(str) __strdup (str)
+# endif
 #else
 # define BINDTEXTDOMAIN bindtextdomain__
 #endif
@@ -133,7 +135,9 @@ BINDTEXTDOMAIN (domainname, dirname)
   else
     {
       /* We have to create a new binding.  */
+#if !defined _LIBC && !defined HAVE_STRDUP
       size_t len;
+#endif
       struct binding *new_binding =
 	(struct binding *) malloc (sizeof (*new_binding));
 
diff --git a/intl/cat-compat.c b/intl/cat-compat.c
index 13323820..867d901b 100644
--- a/intl/cat-compat.c
+++ b/intl/cat-compat.c
@@ -16,7 +16,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #include <stdio.h>
@@ -35,7 +35,7 @@ char *getenv ();
 # include <nl_types.h>
 #endif
 
-#include <libgettext.h>
+#include "libgettext.h"
 
 /* @@ end of prolog @@ */
 
@@ -44,7 +44,7 @@ char *getenv ();
      setting of `local'.''
    However it does not specify the exact format.  And even worse: POSIX
    defines this not at all.  So we can use this feature only on selected
-   system (e.g., those using GNU C Library).  */
+   system (e.g. those using GNU C Library).  */
 #ifdef _LIBC
 # define HAVE_LOCALE_NULL
 #endif
diff --git a/intl/dcgettext.c b/intl/dcgettext.c
index 47331cc6..eeaafcce 100644
--- a/intl/dcgettext.c
+++ b/intl/dcgettext.c
@@ -1,5 +1,5 @@
-/* Implementation of the dcgettext(3) function
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Implementation of the dcgettext(3) function.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #include <sys/types.h>
@@ -75,14 +75,14 @@ void free ();
 # include <unistd.h>
 #endif
 
-#include <gettext.h>
-#include <gettextP.h>
+#include "gettext.h"
+#include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
-#include <hash-string.h>
+#include "hash-string.h"
 
 /* @@ end of prolog @@ */
 
@@ -91,7 +91,9 @@ void free ();
    because some ANSI C functions will require linking with this object
    file and the name space must not be polluted.  */
 # define getcwd __getcwd
-# define stpcpy __stpcpy
+# ifndef stpcpy
+#  define stpcpy __stpcpy
+# endif
 #else
 # if !defined HAVE_GETCWD
 char *getwd ();
@@ -141,7 +143,7 @@ static char *stpcpy PARAMS ((char *dest, const char *src));
      setting of `local'.''
    However it does not specify the exact format.  And even worse: POSIX
    defines this not at all.  So we can use this feature only on selected
-   system (e.g., those using GNU C Library).  */
+   system (e.g. those using GNU C Library).  */
 #ifdef _LIBC
 # define HAVE_LOCALE_NULL
 #endif
@@ -162,10 +164,11 @@ struct binding *_nl_domain_bindings;
 
 /* Prototypes for local functions.  */
 static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file,
-			       const char *msgid));
-static const char *category_to_name PARAMS ((int category));
+			       const char *msgid)) internal_function;
+static const char *category_to_name PARAMS ((int category)) internal_function;
 static const char *guess_category_value PARAMS ((int category,
-						 const char *categoryname));
+						 const char *categoryname))
+     internal_function;
 
 
 /* For those loosing systems which don't have `alloca' we have to add
@@ -325,7 +328,7 @@ DCGETTEXT (domainname, msgid, category)
 	{
 	  /* The whole contents of CATEGORYVALUE has been searched but
 	     no valid entry has been found.  We solve this situation
-	     by implicitly appending a "C" entry, i.e., no translation
+	     by implicitly appending a "C" entry, i.e. no translation
 	     will take place.  */
 	  single_locale[0] = 'C';
 	  single_locale[1] = '\0';
@@ -388,6 +391,7 @@ weak_alias (__dcgettext, dcgettext);
 
 
 static char *
+internal_function
 find_msg (domain_file, msgid)
      struct loaded_l10nfile *domain_file;
      const char *msgid;
@@ -476,6 +480,7 @@ find_msg (domain_file, msgid)
 
 /* Return string representation of locale CATEGORY.  */
 static const char *
+internal_function
 category_to_name (category)
      int category;
 {
@@ -535,6 +540,7 @@ category_to_name (category)
 
 /* Guess value of current locale from value of the environment variables.  */
 static const char *
+internal_function
 guess_category_value (category, categoryname)
      int category;
      const char *categoryname;
@@ -580,7 +586,7 @@ guess_category_value (category, categoryname)
    avoid the non-standard function stpcpy.  In GNU C Library this
    function is available, though.  Also allow the symbol HAVE_STPCPY
    to be defined.  */
-#if !_LIBC && !HAVE_STPCPY
+#if !defined(_LIBC) && !defined(HAVE_STPCPY)
 static char *
 stpcpy (dest, src)
      char *dest;
@@ -591,3 +597,28 @@ stpcpy (dest, src)
   return dest - 1;
 }
 #endif
+
+
+#ifdef _LIBC
+/* If we want to free all resources we have to do some work at
+   program's end.  */
+static void __attribute__ ((unused))
+free_mem (void)
+{
+  struct binding *runp;
+
+  for (runp = _nl_domain_bindings; runp != NULL; runp = runp->next)
+    {
+      free (runp->domainname);
+      if (runp->dirname != _nl_default_dirname)
+	/* Yes, this is a pointer comparison.  */
+	free (runp->dirname);
+    }
+
+  if (_nl_current_default_domain != _nl_default_default_domain)
+    /* Yes, again a pointer comparison.  */
+    free ((char *) _nl_current_default_domain);
+}
+
+text_set_element (__libc_subfreeres, free_mem);
+#endif
diff --git a/intl/dgettext.c b/intl/dgettext.c
index d5f479c3..0510c2b0 100644
--- a/intl/dgettext.c
+++ b/intl/dgettext.c
@@ -1,22 +1,22 @@
-/* dgettext.c -- implementation of the dgettext(3) function
-   Copyright (C) 1995 Software Foundation, Inc.
+/* Implementation of the dgettext(3) function
+   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
 
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
 
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software Foundation,
+   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #if defined HAVE_LOCALE_H || defined _LIBC
@@ -26,7 +26,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
 
 /* @@ end of prolog @@ */
diff --git a/intl/explodename.c b/intl/explodename.c
index a7cce98b..8066dc29 100644
--- a/intl/explodename.c
+++ b/intl/explodename.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
    Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
@@ -16,14 +16,21 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
-#include <stdlib.h>
-#include <string.h>
+#if defined STDC_HEADERS || defined _LIBC
+# include <stdlib.h>
+#endif
+
+#if defined HAVE_STRING_H || defined _LIBC
+# include <string.h>
+#else
+# include <strings.h>
+#endif
 #include <sys/types.h>
 
-#include <loadinfo.h>
+#include "loadinfo.h"
 
 /* On some strange systems still no definition of NULL is found.  Sigh!  */
 #ifndef NULL
diff --git a/intl/finddomain.c b/intl/finddomain.c
index 33c11fc7..81ea29bf 100644
--- a/intl/finddomain.c
+++ b/intl/finddomain.c
@@ -1,5 +1,5 @@
 /* Handle list of needed message catalogs
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
    Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #include <ctype.h>
@@ -53,12 +53,12 @@ void free ();
 # include <unistd.h>
 #endif
 
-#include <gettext.h>
-#include <gettextP.h>
+#include "gettext.h"
+#include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
 
 /* @@ end of prolog @@ */
@@ -70,6 +70,7 @@ static struct loaded_l10nfile *_nl_loaded_domains;
    the DOMAINNAME and CATEGORY parameters with respect to the currently
    established bindings.  */
 struct loaded_l10nfile *
+internal_function
 _nl_find_domain (dirname, locale, domainname)
      const char *dirname;
      char *locale;
@@ -95,9 +96,9 @@ _nl_find_domain (dirname, locale, domainname)
 
 	language[_territory][+audience][+special][,[sponsor][_revision]]
 
-     Beside the first all of them are allowed to be missing.  If the
-     full specified locale is not found, the less specific one are
-     looked for.  The various part will be stripped of according to
+     Beside the first part all of them are allowed to be missing.  If
+     the full specified locale is not found, the less specific one are
+     looked for.  The various parts will be stripped off according to
      the following order:
 		(1) revision
 		(2) sponsor
@@ -142,12 +143,18 @@ _nl_find_domain (dirname, locale, domainname)
   alias_value = _nl_expand_alias (locale);
   if (alias_value != NULL)
     {
+#if defined _LIBC || defined HAVE_STRDUP
+      locale = strdup (alias_value);
+      if (locale == NULL)
+	return NULL;
+#else
       size_t len = strlen (alias_value) + 1;
       locale = (char *) malloc (len);
       if (locale == NULL)
 	return NULL;
 
       memcpy (locale, alias_value, len);
+#endif
     }
 
   /* Now we determine the single parts of the locale name.  First
@@ -187,3 +194,23 @@ _nl_find_domain (dirname, locale, domainname)
 
   return retval;
 }
+
+
+#ifdef _LIBC
+static void __attribute__ ((unused))
+free_mem (void)
+{
+  struct loaded_l10nfile *runp = _nl_loaded_domains;
+
+  while (runp != NULL)
+    {
+      struct loaded_l10nfile *here = runp;
+      if (runp->data != NULL)
+	_nl_unload_domain ((struct loaded_domain *) runp->data);
+      runp = runp->next;
+      free (here);
+    }
+}
+
+text_set_element (__libc_subfreeres, free_mem);
+#endif
diff --git a/intl/gettext.c b/intl/gettext.c
index b7791872..d929f98d 100644
--- a/intl/gettext.c
+++ b/intl/gettext.c
@@ -1,4 +1,4 @@
-/* Implementation of gettext(3) function
+/* Implementation of gettext(3) function.
    Copyright (C) 1995, 1997 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -16,7 +16,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #ifdef _LIBC
@@ -37,7 +37,7 @@
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
 
 /* @@ end of prolog @@ */
diff --git a/intl/gettext.h b/intl/gettext.h
index 6b4b9e33..d0d608b7 100644
--- a/intl/gettext.h
+++ b/intl/gettext.h
@@ -1,4 +1,4 @@
-/* Internal header for GNU gettext internationalization functions
+/* Internal header for GNU gettext internationalization functions.
    Copyright (C) 1995, 1997 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 
 #include <stdio.h>
 
-#if HAVE_LIMITS_H || _LIBC
+#if defined(HAVE_LIMITS_H) || defined(_LIBC)
 # include <limits.h>
 #endif
 
diff --git a/intl/gettextP.h b/intl/gettextP.h
index 197d62da..00c52031 100644
--- a/intl/gettextP.h
+++ b/intl/gettextP.h
@@ -1,5 +1,6 @@
 /* Header describing internals of gettext library
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -18,7 +19,7 @@
 #ifndef _GETTEXTP_H
 #define _GETTEXTP_H
 
-#include <loadinfo.h>
+#include "loadinfo.h"
 
 /* @@ end of prolog @@ */
 
@@ -30,11 +31,19 @@
 # endif
 #endif
 
+#ifndef internal_function
+# define internal_function
+#endif
+
 #ifndef W
 # define W(flag, data) ((flag) ? SWAP (data) : (data))
 #endif
 
 
+#ifdef _LIBC
+# include <byteswap.h>
+# define SWAP(i) bswap_32 (i)
+#else
 static nls_uint32 SWAP PARAMS ((nls_uint32 i));
 
 static inline nls_uint32
@@ -43,11 +52,14 @@ SWAP (i)
 {
   return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
 }
+#endif
 
 
 struct loaded_domain
 {
   const char *data;
+  int use_mmap;
+  size_t mmap_size;
   int must_swap;
   nls_uint32 nstrings;
   struct string_desc *orig_tab;
@@ -65,8 +77,12 @@ struct binding
 
 struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
 						 char *__locale,
-						 const char *__domainname));
-void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain));
+						 const char *__domainname))
+     internal_function;
+void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain))
+     internal_function;
+void _nl_unload_domain PARAMS ((struct loaded_domain *__domain))
+     internal_function;
 
 /* @@ begin of epilog @@ */
 
diff --git a/intl/hash-string.h b/intl/hash-string.h
index e66e8417..cacb38e4 100644
--- a/intl/hash-string.h
+++ b/intl/hash-string.h
@@ -16,10 +16,6 @@
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
-#ifdef HAVE_VALUES_H
-# include <values.h>
-#endif
-
 /* @@ end of prolog @@ */
 
 #ifndef PARAMS
diff --git a/intl/intl-compat.c b/intl/intl-compat.c
index e17e68d7..503efa0f 100644
--- a/intl/intl-compat.c
+++ b/intl/intl-compat.c
@@ -17,10 +17,10 @@ along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
-#include <libgettext.h>
+#include "libgettext.h"
 
 /* @@ end of prolog @@ */
 
diff --git a/intl/l10nflist.c b/intl/l10nflist.c
index 2ae35962..9c7dc183 100644
--- a/intl/l10nflist.c
+++ b/intl/l10nflist.c
@@ -1,6 +1,6 @@
 /* Handle list of needed message catalogs
    Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 
@@ -48,7 +48,7 @@
 # include <stdlib.h>
 #endif
 
-#include <loadinfo.h>
+#include "loadinfo.h"
 
 /* On some strange systems still no definition of NULL is found.  Sigh!  */
 #ifndef NULL
@@ -65,7 +65,9 @@
 /* Rename the non ANSI C functions.  This is required by the standard
    because some ANSI C functions will require linking with this object
    file and the name space must not be polluted.  */
-# define stpcpy(dest, src) __stpcpy(dest, src)
+# ifndef stpcpy
+#  define stpcpy(dest, src) __stpcpy(dest, src)
+# endif
 #else
 # ifndef HAVE_STPCPY
 static char *stpcpy PARAMS ((char *dest, const char *src));
@@ -350,7 +352,7 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
    names.  */
 const char *
 _nl_normalize_codeset (codeset, name_len)
-     const char *codeset;
+     const unsigned char *codeset;
      size_t name_len;
 {
   int len = 0;
diff --git a/intl/libgettext.h b/intl/libgettext.h
index 3d49ab51..248e0635 100644
--- a/intl/libgettext.h
+++ b/intl/libgettext.h
@@ -1,5 +1,5 @@
 /* Message catalogs for internationalization.
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -15,13 +15,13 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
-/* Because on some systems (e.g., Solaris) we sometimes have to include
+/* Because on some systems (e.g. Solaris) we sometimes have to include
    the systems libintl.h as well as this file we have more complex
    include protection above.  But the systems header might perhaps also
    define _LIBINTL_H and therefore we have to protect the definition here.  */
 
-#if !defined (_LIBINTL_H) || !defined (_LIBGETTEXT_H)
-#if !defined (_LIBINTL_H)
+#if !defined _LIBINTL_H || !defined _LIBGETTEXT_H
+#ifndef _LIBINTL_H
 # define _LIBINTL_H	1
 #endif
 #define _LIBGETTEXT_H	1
@@ -44,7 +44,7 @@ extern "C" {
 /* @@ end of prolog @@ */
 
 #ifndef PARAMS
-# if __STDC__
+# if __STDC__ || defined __cplusplus
 #  define PARAMS(args) args
 # else
 #  define PARAMS(args) ()
@@ -76,7 +76,7 @@ struct _msg_ent
 };
 
 
-#if HAVE_CATGETS
+#ifdef HAVE_CATGETS
 /* These two variables are defined in the automatically by po-to-tbl.sed
    generated file `cat-id-tbl.c'.  */
 extern const struct _msg_ent _msg_tbl[];
@@ -126,7 +126,7 @@ extern char *bindtextdomain__ PARAMS ((const char *__domainname,
 /* Solaris 2.3 has the gettext function but dcgettext is missing.
    So we omit this optimization for Solaris 2.3.  BTW, Solaris 2.4
    has dcgettext.  */
-# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT)
+# if !defined(HAVE_CATGETS) && (!defined(HAVE_GETTEXT) || defined(HAVE_DCGETTEXT))
 
 #  define gettext(Msgid)						      \
      dgettext (NULL, Msgid)
@@ -168,8 +168,8 @@ extern int _nl_msg_cat_cntr;
 # define gettext(Msgid) (Msgid)
 # define dgettext(Domainname, Msgid) (Msgid)
 # define dcgettext(Domainname, Msgid, Category) (Msgid)
-# define textdomain(Domainname) while (0) /* nothing */
-# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */
+# define textdomain(Domainname) ((char *) Domainname)
+# define bindtextdomain(Domainname, Dirname) ((char *) Dirname)
 
 #endif
 
diff --git a/intl/loadinfo.h b/intl/loadinfo.h
index c67c2eb2..f4ebf6d8 100644
--- a/intl/loadinfo.h
+++ b/intl/loadinfo.h
@@ -1,3 +1,21 @@
+/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software Foundation,
+   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+
 #ifndef PARAMS
 # if __STDC__
 #  define PARAMS(args) args
@@ -32,7 +50,7 @@ struct loaded_l10nfile
 };
 
 
-extern const char *_nl_normalize_codeset PARAMS ((const char *codeset,
+extern const char *_nl_normalize_codeset PARAMS ((const unsigned char *codeset,
 						  size_t name_len));
 
 extern struct loaded_l10nfile *
diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c
index 19b2cce9..515892df 100644
--- a/intl/loadmsgcat.c
+++ b/intl/loadmsgcat.c
@@ -1,5 +1,5 @@
-/* Load needed message catalogs
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Load needed message catalogs.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #include <fcntl.h>
@@ -35,8 +35,8 @@
 # include <sys/mman.h>
 #endif
 
-#include <gettext.h>
-#include <gettextP.h>
+#include "gettext.h"
+#include "gettextP.h"
 
 /* @@ end of prolog @@ */
 
@@ -44,7 +44,6 @@
 /* Rename the non ISO C functions.  This is required by the standard
    because some ISO C functions will require linking with this object
    file and the name space must not be polluted.  */
-# define fstat  __fstat
 # define open   __open
 # define close  __close
 # define read   __read
@@ -61,10 +60,12 @@ int _nl_msg_cat_cntr = 0;
 /* Load the message catalogs specified by FILENAME.  If it is no valid
    message catalog do nothing.  */
 void
+internal_function
 _nl_load_domain (domain_file)
      struct loaded_l10nfile *domain_file;
 {
   int fd;
+  size_t size;
   struct stat st;
   struct mo_file_header *data = (struct mo_file_header *) -1;
 #if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
@@ -90,7 +91,8 @@ _nl_load_domain (domain_file)
 
   /* We must know about the size of the file.  */
   if (fstat (fd, &st) != 0
-      && st.st_size < (off_t) sizeof (struct mo_file_header))
+      || (size = (size_t) st.st_size) != st.st_size
+      || size < sizeof (struct mo_file_header))
     {
       /* Something went wrong.  */
       close (fd);
@@ -101,7 +103,7 @@ _nl_load_domain (domain_file)
     || defined _LIBC
   /* Now we are ready to load the file.  If mmap() is available we try
      this first.  If not available or it failed we try to load it.  */
-  data = (struct mo_file_header *) mmap (NULL, st.st_size, PROT_READ,
+  data = (struct mo_file_header *) mmap (NULL, size, PROT_READ,
 					 MAP_PRIVATE, fd, 0);
 
   if (data != (struct mo_file_header *) -1)
@@ -112,18 +114,18 @@ _nl_load_domain (domain_file)
     }
 #endif
 
-  /* If the data is not yet available (i.e., mmap'ed) we try to load
+  /* If the data is not yet available (i.e. mmap'ed) we try to load
      it manually.  */
   if (data == (struct mo_file_header *) -1)
     {
-      off_t to_read;
+      size_t to_read;
       char *read_ptr;
 
-      data = (struct mo_file_header *) malloc (st.st_size);
+      data = (struct mo_file_header *) malloc (size);
       if (data == NULL)
 	return;
 
-      to_read = st.st_size;
+      to_read = size;
       read_ptr = (char *) data;
       do
 	{
@@ -150,7 +152,7 @@ _nl_load_domain (domain_file)
 #if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
     || defined _LIBC
       if (use_mmap)
-	munmap ((caddr_t) data, st.st_size);
+	munmap ((caddr_t) data, size);
       else
 #endif
 	free (data);
@@ -164,6 +166,11 @@ _nl_load_domain (domain_file)
 
   domain = (struct loaded_domain *) domain_file->data;
   domain->data = (char *) data;
+#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
+    || defined _LIBC
+  domain->use_mmap = use_mmap;
+#endif
+  domain->mmap_size = size;
   domain->must_swap = data->magic != _MAGIC;
 
   /* Fill in the information about the available tables.  */
@@ -184,7 +191,7 @@ _nl_load_domain (domain_file)
 #if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
     || defined _LIBC
       if (use_mmap)
-	munmap ((caddr_t) data, st.st_size);
+	munmap ((caddr_t) data, size);
       else
 #endif
 	free (data);
@@ -197,3 +204,19 @@ _nl_load_domain (domain_file)
      translations invalid.  */
   ++_nl_msg_cat_cntr;
 }
+
+
+#ifdef _LIBC
+void
+internal_function
+_nl_unload_domain (domain)
+     struct loaded_domain *domain;
+{
+  if (domain->use_mmap)
+    munmap ((caddr_t) domain->data, domain->mmap_size);
+  else
+    free ((void *) domain->data);
+
+  free (domain);
+}
+#endif
diff --git a/intl/localealias.c b/intl/localealias.c
index d13b2c64..bca555a6 100644
--- a/intl/localealias.c
+++ b/intl/localealias.c
@@ -1,5 +1,5 @@
-/* Handle aliases for locale names
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Handle aliases for locale names.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
    Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #include <ctype.h>
@@ -69,8 +69,8 @@ void free ();
 # endif
 #endif
 
-#include <gettext.h>
-#include <gettextP.h>
+#include "gettext.h"
+#include "gettextP.h"
 
 /* @@ end of prolog @@ */
 
@@ -79,6 +79,14 @@ void free ();
    because some ANSI C functions will require linking with this object
    file and the name space must not be polluted.  */
 # define strcasecmp __strcasecmp
+
+# define mempcpy __mempcpy
+# define HAVE_MEMPCPY	1
+
+/* We need locking here since we can be called from different places.  */
+# include <bits/libc-lock.h>
+
+__libc_lock_define_initialized (static, lock);
 #endif
 
 
@@ -125,13 +133,17 @@ struct alias_map
 };
 
 
+static char *string_space = NULL;
+static size_t string_space_act = 0;
+static size_t string_space_max = 0;
 static struct alias_map *map;
 static size_t nmap = 0;
 static size_t maxmap = 0;
 
 
 /* Prototypes for local functions.  */
-static size_t read_alias_file PARAMS ((const char *fname, int fname_len));
+static size_t read_alias_file PARAMS ((const char *fname, int fname_len))
+     internal_function;
 static void extend_alias_table PARAMS ((void));
 static int alias_compare PARAMS ((const struct alias_map *map1,
 				  const struct alias_map *map2));
@@ -143,8 +155,13 @@ _nl_expand_alias (name)
 {
   static const char *locale_alias_path = LOCALE_ALIAS_PATH;
   struct alias_map *retval;
+  const char *result = NULL;
   size_t added;
 
+#ifdef _LIBC
+  __libc_lock_lock (lock);
+#endif
+
   do
     {
       struct alias_map item;
@@ -162,7 +179,10 @@ _nl_expand_alias (name)
 
       /* We really found an alias.  Return the value.  */
       if (retval != NULL)
-	return retval->value;
+	{
+	  result = retval->value;
+	  break;
+	}
 
       /* Perhaps we can find another alias file.  */
       added = 0;
@@ -183,11 +203,16 @@ _nl_expand_alias (name)
     }
   while (added != 0);
 
-  return NULL;
+#ifdef _LIBC
+  __libc_lock_unlock (lock);
+#endif
+
+  return result;
 }
 
 
 static size_t
+internal_function
 read_alias_file (fname, fname_len)
      const char *fname;
      int fname_len;
@@ -202,8 +227,13 @@ read_alias_file (fname, fname_len)
 
   full_fname = (char *) alloca (fname_len + sizeof aliasfile);
   ADD_BLOCK (block_list, full_fname);
+#ifdef HAVE_MEMPCPY
+  mempcpy (mempcpy (full_fname, fname, fname_len),
+	   aliasfile, sizeof aliasfile);
+#else
   memcpy (full_fname, fname, fname_len);
   memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile);
+#endif
 
   fp = fopen (full_fname, "r");
   if (fp == NULL)
@@ -220,15 +250,28 @@ read_alias_file (fname, fname_len)
 	 b) these fields must be usable as file names and so must not
 	    be that long
        */
-      char buf[BUFSIZ];
-      char *alias;
-      char *value;
-      char *cp;
+      unsigned char buf[BUFSIZ];
+      unsigned char *alias;
+      unsigned char *value;
+      unsigned char *cp;
 
-      if (fgets (buf, BUFSIZ, fp) == NULL)
+      if (fgets (buf, sizeof buf, fp) == NULL)
 	/* EOF reached.  */
 	break;
 
+      /* Possibly not the whole line fits into the buffer.  Ignore
+	 the rest of the line.  */
+      if (strchr (buf, '\n') == NULL)
+	{
+	  char altbuf[BUFSIZ];
+	  do
+	    if (fgets (altbuf, sizeof altbuf, fp) == NULL)
+	      /* Make sure the inner loop will be left.  The outer loop
+		 will exit at the `feof' test.  */
+	      break;
+	  while (strchr (altbuf, '\n') == NULL);
+	}
+
       cp = buf;
       /* Ignore leading white space.  */
       while (isspace (cp[0]))
@@ -250,8 +293,8 @@ read_alias_file (fname, fname_len)
 
 	  if (cp[0] != '\0')
 	    {
-	      char *tp;
-	      size_t len;
+	      size_t alias_len;
+	      size_t value_len;
 
 	      value = cp++;
 	      while (cp[0] != '\0' && !isspace (cp[0]))
@@ -271,42 +314,37 @@ read_alias_file (fname, fname_len)
 	      if (nmap >= maxmap)
 		extend_alias_table ();
 
-	      /* We cannot depend on strdup available in the libc.  Sigh!  */
-	      len = strlen (alias) + 1;
-	      tp = (char *) malloc (len);
-	      if (tp == NULL)
-		{
-		  FREE_BLOCKS (block_list);
-		  return added;
-		}
-	      memcpy (tp, alias, len);
-	      map[nmap].alias = tp;
+	      alias_len = strlen (alias) + 1;
+	      value_len = strlen (value) + 1;
 
-	      len = strlen (value) + 1;
-	      tp = (char *) malloc (len);
-	      if (tp == NULL)
+	      if (string_space_act + alias_len + value_len > string_space_max)
 		{
-		  FREE_BLOCKS (block_list);
-		  return added;
+		  /* Increase size of memory pool.  */
+		  size_t new_size = (string_space_max
+				     + (alias_len + value_len > 1024
+					? alias_len + value_len : 1024));
+		  char *new_pool = (char *) realloc (string_space, new_size);
+		  if (new_pool == NULL)
+		    {
+		      FREE_BLOCKS (block_list);
+		      return added;
+		    }
+		  string_space = new_pool;
+		  string_space_max = new_size;
 		}
-	      memcpy (tp, value, len);
-	      map[nmap].value = tp;
+
+	      map[nmap].alias = memcpy (&string_space[string_space_act],
+					alias, alias_len);
+	      string_space_act += alias_len;
+
+	      map[nmap].value = memcpy (&string_space[string_space_act],
+					value, value_len);
+	      string_space_act += value_len;
 
 	      ++nmap;
 	      ++added;
 	    }
 	}
-
-      /* Possibly not the whole line fits into the buffer.  Ignore
-	 the rest of the line.  */
-      while (strchr (cp, '\n') == NULL)
-	{
-	  cp = buf;
-	  if (fgets (buf, BUFSIZ, fp) == NULL)
-	    /* Make sure the inner loop will be left.  The outer loop
-	       will exit at the `feof' test.  */
-	    *cp = '\n';
-	}
     }
 
   /* Should we test for ferror()?  I think we have to silently ignore
@@ -329,22 +367,30 @@ extend_alias_table ()
   struct alias_map *new_map;
 
   new_size = maxmap == 0 ? 100 : 2 * maxmap;
-  new_map = (struct alias_map *) malloc (new_size
-					 * sizeof (struct alias_map));
+  new_map = (struct alias_map *) realloc (map, (new_size
+						* sizeof (struct alias_map)));
   if (new_map == NULL)
     /* Simply don't extend: we don't have any more core.  */
     return;
 
-  memcpy (new_map, map, nmap * sizeof (struct alias_map));
-
-  if (maxmap != 0)
-    free (map);
-
   map = new_map;
   maxmap = new_size;
 }
 
 
+#ifdef _LIBC
+static void __attribute__ ((unused))
+free_mem (void)
+{
+  if (string_space != NULL)
+    free (string_space);
+  if (map != NULL)
+    free (map);
+}
+text_set_element (__libc_subfreeres, free_mem);
+#endif
+
+
 static int
 alias_compare (map1, map2)
      const struct alias_map *map1;
diff --git a/intl/makefile.in b/intl/makefile.in
index 719c2ecb..a3d8a2b0 100644
--- a/intl/makefile.in
+++ b/intl/makefile.in
@@ -15,13 +15,22 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-# PACKAGE = @PACKAGE@
-PACKAGE = lynx
-# VERSION = @VERSION@
-VERSION = 2.8.3
-
-SHELL = @CONFIG_SHELL@
+# Changes:
+# #	Added a variable $(MAKEFILE) permitting us to use "makefile.in" for
+#	ease of porting to systems with case-independent filenames.
+# #	Renamed po2tbl.sed.in to po2tbl.sed_in to allow bundling in VMS zips.
+# #	Set CDPATH to . in the makefile.in's that use cd, in case user has set
+#	CDPATH without . at the beginning.
+# #	Add variable $(CONFIG_H) permitting us to use a different name than
+#	"config.h" in the parent package.
+
+PACKAGE = @PACKAGE@
+VERSION = @VERSION@
+
+SHELL = /bin/sh
 CDPATH = .
+MAKEFILE = makefile
+CONFIG_H = @CONFIG_H@
 
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
@@ -43,11 +52,13 @@ subdir = intl
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 MKINSTALLDIRS = @MKINSTALLDIRS@
+DESTDIR = @DESTDIR@
 
 l = @l@
 
 AR = ar
 CC = @CC@
+LN_S = @LN_S@
 LIBTOOL = @LIBTOOL@
 RANLIB = @RANLIB@
 
@@ -70,7 +81,7 @@ finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \
 explodename.$lo
 CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo
 GETTOBJS = intl-compat.$lo
-DISTFILES.common = ChangeLog makefile.in linux-msg.sed po2tbl.sed_in \
+DISTFILES.common = ChangeLog $(MAKEFILE).in linux-msg.sed po2tbl.sed_in \
 xopen-msg.sed $(HEADERS) $(SOURCES)
 DISTFILES.normal = VERSION
 DISTFILES.gettext = libintl.glibc intlh.inst.in
@@ -117,26 +128,26 @@ install-exec: all
 	if test "$(PACKAGE)" = "gettext" \
 	   && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
 	  if test -r $(MKINSTALLDIRS); then \
-	    $(MKINSTALLDIRS) $(libdir) $(includedir); \
+	    $(MKINSTALLDIRS) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
 	  else \
-	    $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \
+	    $(top_srcdir)/mkinstalldirs $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
 	  fi; \
-	  $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \
-	  $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \
+	  $(INSTALL_DATA) intlh.inst $(DESTDIR)$(includedir)/libintl.h; \
+	  $(INSTALL_DATA) libintl.a $(DESTDIR)$(libdir)/libintl.a; \
 	else \
 	  : ; \
 	fi
 install-data: all
 	if test "$(PACKAGE)" = "gettext"; then \
 	  if test -r $(MKINSTALLDIRS); then \
-	    $(MKINSTALLDIRS) $(gettextsrcdir); \
+	    $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
 	  else \
-	    $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
+	    $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
 	  fi; \
-	  $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \
+	  $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
 	  dists="$(DISTFILES.common)"; \
 	  for file in $$dists; do \
-	    $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \
+	    $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$(gettextsrcdir)/$$file; \
 	  done; \
 	else \
 	  : ; \
@@ -148,12 +159,14 @@ installcheck:
 uninstall:
 	dists="$(DISTFILES.common)"; \
 	for file in $$dists; do \
-	  rm -f $(gettextsrcdir)/$$file; \
+	  rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
 	done
 
 info dvi:
 
-$(OBJECTS): ../lynx_cfg.h libgettext.h
+$(OBJECTS): config.h libgettext.h
+config.h : $(top_srcdir)/@CONFIG_H@
+	cp $(top_srcdir)/@CONFIG_H@ $@
 bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h
 dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h
 
@@ -174,7 +187,8 @@ mostlyclean:
 clean: mostlyclean
 
 distclean: clean
-	rm -f makefile ID TAGS po2msg.sed po2tbl.sed # libintl.h
+	rm -f $(MAKEFILE) ID TAGS po2msg.sed po2tbl.sed libintl.h
+	rm -f config.h
 
 maintainer-clean: distclean
 	@echo "This command is intended for maintainers to use;"
@@ -184,7 +198,7 @@ maintainer-clean: distclean
 # GNU gettext needs not contain the file `VERSION' but contains some
 # other files which should not be distributed in other packages.
 distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
-dist distdir: makefile $(DISTFILES)
+dist distdir: $(MAKEFILE) $(DISTFILES)
 	if test "$(PACKAGE)" = gettext; then \
 	  additional="$(DISTFILES.gettext)"; \
 	else \
@@ -198,13 +212,13 @@ dist distdir: makefile $(DISTFILES)
 dist-libc:
 	tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc
 
-makefile: makefile.in ../config.status
+$(MAKEFILE): $(MAKEFILE).in ../config.status
 	cd .. \
 	  && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
 
 # The dependency for intlh.inst is different in gettext and all other
-# packages.  Because we cannot you GNU make features we have to solve
-# the problem while rewriting makefile.in.
+# packages.  Because we cannot use GNU make features we have to solve
+# the problem while rewriting $(MAKEFILE).in.
 @GT_YES@intlh.inst: intlh.inst.in ../config.status
 @GT_YES@	cd .. \
 @GT_YES@	&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \
diff --git a/intl/textdomain.c b/intl/textdomain.c
index cddebefd..88557460 100644
--- a/intl/textdomain.c
+++ b/intl/textdomain.c
@@ -1,5 +1,5 @@
-/* Implementation of the textdomain(3) function
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Implementation of the textdomain(3) function.
+   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
    Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifdef HAVE_CONFIG_H
-# include <lynx_cfg.h>
+# include <config.h>
 #endif
 
 #if defined STDC_HEADERS || defined _LIBC
@@ -36,7 +36,7 @@
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include <libgettext.h>
+# include "libgettext.h"
 #endif
 
 /* @@ end of prolog @@ */
@@ -54,7 +54,9 @@ extern const char *_nl_current_default_domain;
    prefix.  So we have to make a difference here.  */
 #ifdef _LIBC
 # define TEXTDOMAIN __textdomain
-# define strdup(str) __strdup (str)
+# ifndef strdup
+#  define strdup(str) __strdup (str)
+# endif
 #else
 # define TEXTDOMAIN textdomain__
 #endif
diff --git a/makefile.in b/makefile.in
index 879757eb..952ce201 100644
--- a/makefile.in
+++ b/makefile.in
@@ -28,16 +28,16 @@ LN_S		= @LN_S@
 
 ## This is the version which we are developing (or, upon release, make this
 ## the same).  Use no dots in the name, since it must work on VMS and MS-DOS.
-VERSION		= 2-8-3
+VERSION		= 2-8-4
 
 ##this is the name of the directory the lynx source code is in.
-##(e.g., lynx2-8-3, not the full path)
+##(e.g., lynx2-8-4, not the full path)
 lynxdir= lynx$(VERSION)
 lynxname= lynx$(VERSION)
 
 ## The 'DESTDIR' variable allows you to install the program into a different
 ## location, e.g., for packaging, without affecting the compiled-in pathnames.
-DESTDIR=
+DESTDIR= @DESTDIR@
 
 ## Where you want lynx installed
 bindir= @bindir@
diff --git a/makelynx.bat b/makelynx.bat
index a50a7b95..1c65384e 100644
--- a/makelynx.bat
+++ b/makelynx.bat
@@ -1,28 +1,46 @@
-REM Windows/Dos batch makefile for MingW32 and lynx.exe

-REM Remember to precede this by "command /E:32000" and to set the

-REM MingW32 paths

-REM Usage: makelynx [all|src|link]

-REM Default option: all

-REM Specifying "src" causes the libwww code to be skipped.

-REM Specifying "link" causes the batch file to skip to the final

-REM linking phase.

-REM Note that you have to edit i386-mingw32\include\stdlib.h to put

-REM an "#ifndef WIN_EX" around the declaration for `sleep', or the

-REM compile won't work.  There is also an "#ifndef PDCURSES" around

-REM the declaration for `beep' for the same reason.  To change the

-REM console library from libslang to libpdcurses, uncomment the

-REM `SET LIBRARY' line below.

+@echo Windows/Dos batch makefile for MingW32 and lynx.exe

+@echo Remember to precede this by "command /E:8192" and to set the

+@echo MingW32 C_INCLUDE_PATH and %C_INCLUDE_PATH%..\..\bin paths

+@echo

+@echo Usage: makelynx [all|src|link]

+@echo Default option: all

+@echo Specifying "src" causes the libwww code to be skipped.

+@echo Specifying "link" causes the batch file to skip to the final

+@echo linking phase.

+@echo

+PAUSE

+@echo Note that you have to edit i386-mingw32\include\stdlib.h to put

+@echo an "#ifndef WIN_EX" around the declaration for `sleep', or the

+@echo compile won't work.  There is also an "#ifndef PDCURSES" around

+@echo the declaration for `beep' for the same reason.  To change the

+@echo console library from libslang to libpdcurses, uncomment the

+@echo `SET LIBRARY' line below.

 

-REM Taken from the MSC makefile:

+PAUSE

 

-REM PUT THIS IN htutils.h:  LY_MAXPATH=1024

 REM SET LIBRARY=PDCURSES

 

+set CC=gcc

+

+echo /* Generated lynx_cfg.h file in the lynx directory: */ > lynx_cfg.h

+echo. >> lynx_cfg.h

+echo #define _WIN_CC		 1 >> lynx_cfg.h

+echo #define USE_ALT_BLAT_MAILER 1 >> lynx_cfg.h

+echo #define USE_BLAT_MAILER	 1 >> lynx_cfg.h

+echo #define ANSI_VARARGS	 1 >> lynx_cfg.h

+echo #define HAVE_GETCWD	 1 >> lynx_cfg.h

+echo #define LY_MAXPATH       1024 >> lynx_cfg.h

+rem echo #define USE_SCROLLBAR	 1 >> lynx_cfg.h

+

 SET DEFINES=-DCJK_EX

+SET DEFINES=%DEFINES% -DHAVE_CONFIG_H

+SET DEFINES=%DEFINES% -DNO_CONFIG_INFO

 SET DEFINES=%DEFINES% -DSH_EX

 SET DEFINES=%DEFINES% -DWIN_EX

-SET DEFINES=%DEFINES% -D_WIN_CC

 SET DEFINES=%DEFINES% -D_WINDOWS

+SET DEFINES=%DEFINES% -DUSE_EXTERNALS

+SET DEFINES=%DEFINES% -DEXP_JUSTIFY_ELTS

+SET DEFINES=%DEFINES% -DDIRED_SUPPORT

 SET DEFINES=%DEFINES% -DDOSPATH

 SET DEFINES=%DEFINES% -DEXP_ALT_BINDINGS

 SET DEFINES=%DEFINES% -DEXP_PERSISTENT_COOKIES

@@ -51,8 +69,6 @@ SET DEFINES=%DEFINES% -DCOLOR_CURSES
 SET DEFINES=%DEFINES% -DPDCURSES

 SET DEFINES=%DEFINES% -DUSE_MULTIBYTE_CURSES

 :endif1

-SET DEFINES=%DEFINES% -DUSE_EXTERNALS

-SET DEFINES=%DEFINES% -DUSE_ALT_BLAT_MAILER

 

 if not "%1" == "src" goto else

 	cd src

@@ -65,9 +81,11 @@ if not "%1" == "link" goto endif
 

 SET INCLUDES=-I. -I..\..\.. -I..\..\..\src

 

-SET CFLAGS=-O %INCLUDES% %DEFINES%

-SET COMPILE_CMD=gcc -c %CFLAGS%

+REM Your compiler may not support -mpentium.

+REM In that case, replace -mpentium with -m486 or nothing.

 

+set CFLAGS=-O3 -mpentium %INCLUDES% %DEFINES%

+set COMPILE_CMD=%CC% -c %CFLAGS%

 

 cd WWW\Library\Implementation

 erase *.o

@@ -151,12 +169,12 @@ cd ..\..\..\src\chrtrans
 erase *.o

 

 SET INCLUDES=-I. -I.. -I..\.. -I..\..\WWW\Library\Implementation

-SET CFLAGS=-O %INCLUDES% %DEFINES%

-SET COMPILE_CMD=gcc -c %CFLAGS%

+SET CFLAGS=-O3 -mpentium %INCLUDES% %DEFINES%

+SET COMPILE_CMD=%CC% -c %CFLAGS%

 

 %COMPILE_CMD% makeuctb.c

 if errorlevel 1 PAUSE

-gcc -o makeuctb.exe makeuctb.o

+%CC% -o makeuctb.exe makeuctb.o

 if errorlevel 1 PAUSE

 

 call makew32.bat

@@ -165,8 +183,8 @@ cd ..\
 

 :src

 SET INCLUDES=-I. -I.. -I.\chrtrans -I..\WWW\Library\Implementation

-SET CFLAGS=-O %INCLUDES% %DEFINES%

-SET COMPILE_CMD=gcc -c %CFLAGS%

+SET CFLAGS=-O3 -mpentium %INCLUDES% %DEFINES%

+SET COMPILE_CMD=%CC% -c %CFLAGS%

 SET PATH=..\WWW\Library\Implementation;%PATH%

 erase *.o

 

@@ -283,6 +301,5 @@ goto endif2
 SET LIBS=-L..\WWW\Library\Implementation -lwww -lslang -lwsock32 -luser32

 :endif2

 

-gcc -o lynx *.o %LIBS%

-strip lynx.exe

+%CC% -s -o lynx *.o %LIBS%

 if exist lynx.exe ECHO "Welcome to lynx!"

diff --git a/po/makefile.inn b/po/makefile.inn
index 96f66781..7b63ddbe 100644
--- a/po/makefile.inn
+++ b/po/makefile.inn
@@ -6,24 +6,24 @@
 # but which still want to provide support for the GNU gettext functionality.
 # Please note that the actual code is *not* freely available.
 
-# PACKAGE = @PACKAGE@
-PACKAGE = lynx
-# VERSION = @VERSION@
-VERSION = 2.8.3
+PACKAGE = @PACKAGE@
+VERSION = @VERSION@
 
-SHELL = @CONFIG_SHELL@
+SHELL = /bin/sh
 @SET_MAKE@
 
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
 
+DESTDIR= @DESTDIR@
+
 prefix = @prefix@
 exec_prefix = @exec_prefix@
 datadir = @NLS_DATADIR@
-localedir = $(datadir)/locale
-gnulocaledir = $(prefix)/share/locale
-gettextsrcdir = $(prefix)/share/gettext/po
+localedir = $(DESTDIR)$(datadir)/locale
+gnulocaledir = $(DESTDIR)$(prefix)/share/locale
+gettextsrcdir = $(DESTDIR)$(prefix)/share/gettext/po
 subdir = po
 
 INSTALL = @INSTALL@
@@ -71,7 +71,7 @@ INSTOBJEXT = @INSTOBJEXT@
 	$(MSGFMT) -o $@ $<
 
 .po.gmo:
-	file=./`echo $* | sed 's,.*/,,'`.gmo \
+	file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
 	  && rm -f $$file && $(GMSGFMT) -o $$file $<
 
 .po.cat:
@@ -87,8 +87,10 @@ all-no:
 $(srcdir)/$(PACKAGE).pot: $(POTFILES)
 	$(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
 	  --add-comments --keyword=_ --keyword=N_ \
-	  --files-from=$(srcdir)/POTFILES.in
-	sh -c "case '.$(XGETTEXT)' in *:);; *) rm -f $(srcdir)/$(PACKAGE).pot; mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot;; esac"
+	  --files-from=$(srcdir)/POTFILES.in \
+	&& test ! -f $(PACKAGE).po \
+	   || ( rm -f $(srcdir)/$(PACKAGE).pot \
+		&& mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
 
 $(srcdir)/cat-id-tbl.c: stamp-cat-id; @:
 $(srcdir)/stamp-cat-id: $(PACKAGE).pot
@@ -110,10 +112,10 @@ install-exec:
 install-data: install-data-@USE_NLS@
 install-data-no: all
 install-data-yes: all
-	if test -r $(MKINSTALLDIRS); then \
+	if test -r "$(MKINSTALLDIRS)"; then \
 	  $(MKINSTALLDIRS) $(datadir); \
 	else \
-	  $(top_srcdir)/mkdirs.sh $(datadir); \
+	  $(SHELL) $(top_srcdir)/mkdirs.sh $(datadir); \
 	fi
 	@catalogs='$(CATALOGS)'; \
 	for cat in $$catalogs; do \
@@ -124,10 +126,10 @@ install-data-yes: all
 	  esac; \
 	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
 	  dir=$$destdir/$$lang/LC_MESSAGES; \
-	  if test -r $(MKINSTALLDIRS); then \
+	  if test -r "$(MKINSTALLDIRS)"; then \
 	    $(MKINSTALLDIRS) $$dir; \
 	  else \
-	    $(top_srcdir)/mkdirs.sh $$dir; \
+	    $(SHELL) $(top_srcdir)/mkdirs.sh $$dir; \
 	  fi; \
 	  if test -r $$cat; then \
 	    $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
@@ -152,10 +154,10 @@ install-data-yes: all
 	  fi; \
 	done
 	if test "$(PACKAGE)" = "gettext"; then \
-	  if test -r $(MKINSTALLDIRS); then \
+	  if test -r "$(MKINSTALLDIRS)"; then \
 	    $(MKINSTALLDIRS) $(gettextsrcdir); \
 	  else \
-	    $(top_srcdir)/mkdirs.sh $(gettextsrcdir); \
+	    $(SHELL) $(top_srcdir)/mkdirs.sh $(gettextsrcdir); \
 	  fi; \
 	  $(INSTALL_DATA) $(srcdir)/makefile.inn \
 			  $(gettextsrcdir)/makefile.inn; \
diff --git a/samples/mild-colors.lss b/samples/mild-colors.lss
index 163242ea..db9fb048 100644
--- a/samples/mild-colors.lss
+++ b/samples/mild-colors.lss
@@ -14,18 +14,18 @@ var:bold:cyan
 samp:bold:cyan
 b:bold:cyan
 i:bold:cyan
-alink:reverse:brightgreen:black
+alink:reverse:brightgreen:default
 a:bold:green
-img:dim:cyan:black
-status:reverse:cyan:black
+img:dim:cyan:default
+status:reverse:cyan:default
 fig:normal:gray
 caption:reverse:cyan
 hr:normal:gray
-blockquote:normal:cyan:black
+blockquote:normal:cyan:default
 address:normal:cyan
 title:normal:cyan:default
-tt:normal:white:black
-h1:bold:cyan:black
+tt:normal:white:default
+h1:bold:cyan:default
 label:normal:cyan
 value:normal:cyan
 high:bold:cyan
diff --git a/src/GridText.c b/src/GridText.c
index 3c148609..5786b5cb 100644
--- a/src/GridText.c
+++ b/src/GridText.c
@@ -4432,7 +4432,7 @@ PUBLIC void _internal_HTC ARGS3(HText *,text, int,style, int,dir)
 	if (line->numstyles > 0 && dir == 0 &&
 	    line->styles[line->numstyles].direction &&
 	    line->styles[line->numstyles].style == style &&
-	    line->styles[line->numstyles].horizpos
+	    (int) line->styles[line->numstyles].horizpos
 	    == (int)line->size - ctrl_chars_on_this_line) {
 	    /*
 	     *  If this is an OFF change directly preceded by an
diff --git a/src/HTFWriter.c b/src/HTFWriter.c
index 6ea0dea1..653c2a9f 100644
--- a/src/HTFWriter.c
+++ b/src/HTFWriter.c
@@ -740,7 +740,7 @@ PUBLIC HTStream* HTSaveToFile ARGS3(
 	    return(NULL);
 	}
 
-	if (((cp=strchr(pres->rep->name, ';')) != NULL) &&
+	if (((cp = strchr(pres->rep->name, ';')) != NULL) &&
 	    strstr((cp+1), "charset") != NULL) {
 	    _user_message(MSG_DOWNLOAD_OR_CANCEL, pres->rep->name);
 	} else if (*(pres->rep->name) != '\0')	{
@@ -749,7 +749,7 @@ PUBLIC HTStream* HTSaveToFile ARGS3(
 	    _statusline(CANNOT_DISPLAY_FILE_D_OR_C);
 	}
 
-	while(c != 'D') {
+	while (c != 'D' && c != 'C') {
 	    c = LYgetch_single();
 #ifdef VMS
 	    /*
diff --git a/src/HTML.c b/src/HTML.c
index c0fcf621..f346f2de 100644
--- a/src/HTML.c
+++ b/src/HTML.c
@@ -3204,7 +3204,7 @@ PRIVATE int HTML_start_element ARGS6(
 #else
 	/*Close an HREF-less NAMED-ed now if force_empty_hrefless_a was
 	    requested - VH*/
-	if (href == NULL && force_empty_hrefless_a) { 
+	if (href == NULL && force_empty_hrefless_a) {
 	    SET_SKIP_STACK(HTML_A);
 	    HTML_end_element(me, HTML_A, include);
 	}
@@ -5181,7 +5181,11 @@ PRIVATE int HTML_start_element ARGS6(
 	    /* text+file don't go in here */
 	    if ((UseALTasVALUE == TRUE) ||
 		(present && present[HTML_INPUT_VALUE] &&
-		 value[HTML_INPUT_VALUE] && *value[HTML_INPUT_VALUE])) {
+		 value[HTML_INPUT_VALUE] &&
+		(*value[HTML_INPUT_VALUE] ||
+		 (I.type && (!strcasecomp(I.type, "checkbox") ||
+			     !strcasecomp(I.type, "radio")))))) {
+
 		/*
 		 *  Convert any HTML entities or decimal escaping. - FM
 		 */
@@ -6731,11 +6735,11 @@ PRIVATE int HTML_end_element ARGS3(
 	 */
 	me->inA = FALSE;
 #ifdef MARK_HIDDEN_LINKS
-	if (hidden_link_marker && *hidden_link_marker && 
-		HText_isAnchorBlank(me->text, me->CurrentANum) ) {	    
-	    HText_appendText(me->text,hidden_link_marker);	
+	if (hidden_link_marker && *hidden_link_marker &&
+		HText_isAnchorBlank(me->text, me->CurrentANum) ) {
+	    HText_appendText(me->text,hidden_link_marker);
 	}
-#endif	
+#endif
 	UPDATE_STYLE;
 	if (me->inBoldA == TRUE && me->inBoldH == FALSE)
 	    HText_appendCharacter(me->text, LY_BOLD_END_CHAR);
diff --git a/src/LYCurses.c b/src/LYCurses.c
index d25d10c3..6991981d 100644
--- a/src/LYCurses.c
+++ b/src/LYCurses.c
@@ -198,48 +198,44 @@ PRIVATE void sl_suspend ARGS1(
 #endif /* SIGSTOP */
     return;
 }
+#endif /* USE_SLANG */
 
-#else  /* Not slang: */
-
-#ifdef VMS
 /*
-**  This function boxes windows with graphic characters for
-**  VMS curses.  Pass it the window, it's height, and it's
-**  width. - FM
+**  This function boxes windows for (n)curses.
 */
-PUBLIC void VMSbox ARGS3(
+PUBLIC void LYbox ARGS2(
 	WINDOW *,	win,
-	int,		height,
-	int,		width)
+	BOOLEAN,	formfield GCC_UNUSED)
 {
+#ifdef USE_SLANG
+    SLsmg_draw_box(win->top_y, win->left_x, win->height, win->width + 4);
+#else
+#ifdef VMS
+    /*
+     * This should work for VAX-C and DEC-C, since they both have the same
+     * win._max_y and win._max_x members -TD
+     *
+     * (originally VMSbox by FM)
+     */
     int i;
 
     wmove(win, 0, 0);
     waddstr(win, "\033)0\016l");
-    for (i = 1; i < width; i++)
+    for (i = 1; i < win->_max_x; i++)
 	waddch(win, 'q');
     waddch(win, 'k');
-    for (i = 1; i < height-1; i++) {
+    for (i = 1; i < win->_max_y-1; i++) {
 	wmove(win, i, 0);
 	waddch(win, 'x');
-	wmove(win, i, width-1);
+	wmove(win, i, win->_max_x-1);
 	waddch(win, 'x');
     }
     wmove(win, i, 0);
     waddch(win, 'm');
-    for (i = 1; i < width; i++)
+    for (i = 1; i < win->_max_x; i++)
 	waddch(win, 'q');
     waddstr(win, "j\017");
-}
-#else
-/*
-**  This function boxes windows for non-VMS (n)curses.
-**  Pass it the window. - FM
-*/
-PUBLIC void LYbox ARGS2(
-	WINDOW *,	win,
-	BOOLEAN,	formfield GCC_UNUSED)
-{
+#else /* !VMS */
     /*
      *	If the terminal is in UTF-8 mode, it probably cannot understand
      *	box drawing characters as (n)curses handles them.  (This may also
@@ -276,9 +272,10 @@ PUBLIC void LYbox ARGS2(
     if (formfield)
 	wcurses_css(win, "frame", ABS_OFF);
 #endif
-}
 #endif /* VMS */
+    wrefresh(win);
 #endif /* USE_SLANG */
+}
 
 #if defined(USE_COLOR_STYLE)
 /* Ok, explanation of the USE_COLOR_STYLE styles.  The basic styles (ie non
@@ -336,109 +333,108 @@ PUBLIC void curses_w_style ARGS3(
 {
 #if OMIT_SCN_KEEPING
 # define SPECIAL_STYLE /*(CSHASHSIZE+1) */ 88888
-  /* if TRACEs are not compiled in, this macro is redundant - we neend't valid
-    'ds' to stack off. */
+/* if TRACEs are not compiled in, this macro is redundant - we needn't valid
+'ds' to stack off. */
 #endif
 
-	int YP,XP;
+    int YP,XP;
 #if !OMIT_SCN_KEEPING
-	bucket* ds= (style == NOSTYLE ? &nostyle_bucket : &hashStyles[style]);
+    bucket* ds= (style == NOSTYLE ? &nostyle_bucket : &hashStyles[style]);
 #else
-	bucket* ds= (style == NOSTYLE ?	     &nostyle_bucket :
-		(style== SPECIAL_STYLE ? &special_bucket :&hashStyles[style]) );
+    bucket* ds= (style == NOSTYLE ?	     &nostyle_bucket :
+	    (style== SPECIAL_STYLE ? &special_bucket :&hashStyles[style]) );
 #endif
 
 
-	if (!ds->name)
-	{
-		CTRACE((tfp, "CSS.CS:Style %d not configured\n",style));
+    if (!ds->name) {
+	CTRACE((tfp, "CSS.CS:Style %d not configured\n",style));
 #if !OMIT_SCN_KEEPING
-		return;
+	return;
 #endif
-	}
+    }
 
-	CTRACE((tfp, "CSS.CS:<%s%s> (%d)\n",(dir?"":"/"),ds->name,ds->code));
+    CTRACE((tfp, "CSS.CS:<%s%s> (%d)\n",(dir?"":"/"),ds->name,ds->code));
 
-	getyx (win, YP, XP);
+    getyx (win, YP, XP);
 
-	if (style == s_normal && dir)
-	{
-		wattrset(win,A_NORMAL);
-		if (win==stdscr) cached_styles[YP][XP]=s_normal;
-		return;
-	}
+    if (style == s_normal && dir) {
+	wattrset(win,A_NORMAL);
+	if (win==stdscr) cached_styles[YP][XP]=s_normal;
+	return;
+    }
 
-	switch (dir)
-	{
-		/* ABS_OFF is the same as STACK_OFF for the moment */
-	case STACK_OFF:
-		if (last_colorattr_ptr) {
-		    int last_attr = last_styles[--last_colorattr_ptr];
-		    LYAttrset(win,last_attr,last_attr);
-		}
-		else
-			LYAttrset(win,A_NORMAL,-1);
-		return;
-
-	case STACK_ON: /* remember the current attributes */
-		if (last_colorattr_ptr > 127) {
-		    CTRACE((tfp,"........... %s (0x%x) %s\r\n",
-				"attribute cache FULL, dropping last",
-				last_styles[last_colorattr_ptr],
-				"in LynxChangeStyle(curses_w_style)"));
-		    last_colorattr_ptr--;
-		}
-		last_styles[last_colorattr_ptr++] = getattrs(stdscr);
-		/* don't cache style changes for active links */
+    switch (dir)
+    {
+	/* ABS_OFF is the same as STACK_OFF for the moment */
+    case STACK_OFF:
+	if (last_colorattr_ptr) {
+	    int last_attr = last_styles[--last_colorattr_ptr];
+	    LYAttrset(win,last_attr,last_attr);
+	}
+	else
+	    LYAttrset(win,A_NORMAL,-1);
+	break;
+
+    case STACK_ON: /* remember the current attributes */
+	if (last_colorattr_ptr > 127) {
+	    CTRACE((tfp,"........... %s (0x%x) %s\r\n",
+			"attribute cache FULL, dropping last",
+			last_styles[last_colorattr_ptr],
+			"in LynxChangeStyle(curses_w_style)"));
+	    last_colorattr_ptr--;
+	}
+	last_styles[last_colorattr_ptr++] = getattrs(stdscr);
+	/* don't cache style changes for active links */
 #if OMIT_SCN_KEEPING
-		/* since we don't compute the hcode to stack off in HTML.c, we
-		 * don't know whether this style is configured.  So, we
-		 * shouldn't simply return on stacking on on unconfigured
-		 * styles, we should push curr attrs on stack.  -HV
-		 */
-		if (!ds->name) return;
+	/* since we don't compute the hcode to stack off in HTML.c, we
+	 * don't know whether this style is configured.  So, we
+	 * shouldn't simply return on stacking on unconfigured
+	 * styles, we should push curr attrs on stack.  -HV
+	 */
+	if (!ds->name) break;
 #endif
-		if (style != s_alink)
-		{
-			CTRACE((tfp, "CACHED: <%s> @(%d,%d)\n", ds->name, YP, XP));
-			if (win==stdscr) cached_styles[YP][XP]=style;
-		}
-		LYAttrset(win, ds->color, ds->mono);
-		return;
-
-	case ABS_ON: /* change without remembering the previous style */
-		/* don't cache style changes for active links */
-		if (style != s_alink)
-		{
-			CTRACE((tfp, "CACHED: <%s> @(%d,%d)\n", ds->name, YP, XP));
-			if (win==stdscr) cached_styles[YP][XP]=style;
-		}
-		LYAttrset(win, ds->color, ds->mono);
-		return;
+	if (style != s_alink) {
+	    CTRACE((tfp, "CACHED: <%s> @(%d,%d)\n", ds->name, YP, XP));
+	    if (win == stdscr) cached_styles[YP][XP] = style;
 	}
+	LYAttrset(win, ds->color, ds->mono);
+	break;
+
+    case ABS_ON: /* change without remembering the previous style */
+	    /* don't cache style changes for active links */
+	if (style != s_alink) {
+	    CTRACE((tfp, "CACHED: <%s> @(%d,%d)\n", ds->name, YP, XP));
+	    if (win == stdscr) cached_styles[YP][XP] = style;
+	}
+	LYAttrset(win, ds->color, ds->mono);
+	break;
+    }
 }
 
 /*
  * wrapper function to set on-screen styles - RP
  */
-PUBLIC void wcurses_css ARGS3(WINDOW *,win,char*,name,int,dir)
-{
-	int try_again=1;
-	while (try_again)
-	{
-		int tmpHash=hash_code(name);
-		CTRACE((tfp, "CSSTRIM:trying to set [%s] style - ", name));
-		if (tmpHash==NOSTYLE) {
-			char *class=strrchr(name, '.');
-			CTRACE((tfp, "undefined, trimming at %p\n", class));
-			if (class)	*class='\0';
-			else		try_again=0;
-		} else {
-			CTRACE((tfp, "ok (%d)\n", hash_code(name)));
-			curses_w_style(win, hash_code(name), dir);
-			try_again=0;
-		}
+PUBLIC void wcurses_css ARGS3(
+    WINDOW *,	win,
+    char*,	name,
+    int,	dir)
+{
+    int try_again = 1;
+
+    while (try_again) {
+	int tmpHash = hash_code(name);
+	CTRACE((tfp, "CSSTRIM:trying to set [%s] style - ", name));
+	if (tmpHash == NOSTYLE) {
+	    char *class = strrchr(name, '.');
+	    CTRACE((tfp, "undefined, trimming at %p\n", class));
+	    if (class)	*class = '\0';
+	    else	try_again = 0;
+	} else {
+	    CTRACE((tfp, "ok (%d)\n", hash_code(name)));
+	    curses_w_style(win, hash_code(name), dir);
+	    try_again = 0;
 	}
+    }
 }
 
 PUBLIC void curses_css ARGS2(char *,name,int,dir)
@@ -1322,6 +1318,52 @@ PUBLIC void LYsubAttr ARGS1(
 #endif /* FANCY_CURSES */
 #endif /* VMS */
 
+/* Use this rather than the 'wprintw()' function to write a blank-padded
+ * string to the given window, since someone's asserted that printw doesn't
+ * handle 8-bit characters unlike addstr (though more info would be useful).
+ *
+ * We're blank-filling so that with SVr4 curses, it'll show the background
+ * color to a uniform width in the popup-menu.
+ */
+#ifndef USE_SLANG
+PUBLIC void LYpaddstr ARGS3(
+	WINDOW *,	the_window,
+	int,		width,
+	CONST char *,	the_string)
+{
+    width -= strlen(the_string);
+    waddstr(the_window, the_string);
+    while (width-- > 0)
+	waddstr(the_window, " ");
+}
+#endif
+
+PUBLIC WINDOW *LYstartPopup ARGS4(
+    int,	top_y,
+    int,	left_x,
+    int,	height,
+    int,	width)
+{
+    WINDOW *form_window = 0;
+#ifdef USE_SLANG
+    static WINDOW fake_window;
+    SLsmg_fill_region(top_y, left_x - 1, height, width + 4, ' ');
+    form_window = &fake_window;
+    form_window->top_y  = top_y;
+    form_window->left_x = left_x;
+    form_window->height = height;
+    form_window->width  = width;
+#else
+    if (!(form_window = newwin(height, width + 4, top_y, left_x - 1)) &&
+	!(form_window = newwin(height, 0, top_y, 0))) {
+	HTAlert(POPUP_FAILED);
+    } else {
+	LYsubwindow(form_window);
+    }
+#endif /* USE_SLANG */
+    return form_window;
+}
+
 PUBLIC void LYstartTargetEmphasis NOARGS
 {
 #ifdef USE_COLOR_STYLE
@@ -2040,3 +2082,32 @@ PUBLIC void lynx_stop_all_colors NOARGS
    stop_reverse ();
    stop_bold ();
 }
+
+/*
+ * If LYShowCursor is ON, move the cursor to the left of the current option, so
+ * that blind users, who are most likely to have LYShowCursor ON, will have
+ * it's string spoken or passed to the braille interface as each option is made
+ * current.  Otherwise, move it to the bottom, right column of the screen, to
+ * "hide" the cursor as for the main document, and let sighted users rely on
+ * the current option's highlighting or color without the distraction of a
+ * blinking cursor in the window.  - FM
+ */
+PUBLIC void LYstowCursor ARGS3(
+    WINDOW *,	win,
+    int,	row,
+    int,	col)
+{
+#ifdef USE_SLANG
+    if (LYShowCursor)
+	SLsmg_gotorc(win->top_y + row, win->left_x + col);
+    else
+	LYHideCursor();
+    SLsmg_refresh();
+#else
+    if (LYShowCursor)
+	wmove(win, row, col);
+    else
+	LYHideCursor();
+    wrefresh(win);
+#endif /* USE_SLANG  */
+}
diff --git a/src/LYCurses.h b/src/LYCurses.h
index 21934a56..f7be0924 100644
--- a/src/LYCurses.h
+++ b/src/LYCurses.h
@@ -47,7 +47,15 @@
 
 #ifdef USE_SLANG
 #include <slang.h>
-#define WINDOW void
+
+#undef WINDOW
+typedef struct {
+    int	top_y;
+    int left_x;
+    int height;
+    int width;
+} WINDOW;
+
 #define waddstr(w,s) addstr(s)
 
 #ifndef ACS_UARROW  
@@ -158,10 +166,6 @@
 # endif /* VMS && __GNUC__ */
 #endif /* HAVE_CONFIG_H */
 
-#if defined(NCURSES) || defined(PDCURSES)
-extern void LYsubwindow PARAMS((WINDOW * param));
-#endif /* NCURSES */
-
 /*
  * PDCurses' mouse code does nothing in the DJGPP configuration.
  */
@@ -176,12 +180,17 @@ extern void LYsubwindow PARAMS((WINDOW * param));
 #define USE_MOUSE 1
 #endif
 
-#ifdef VMS
-extern void VMSbox PARAMS((WINDOW *win, int height, int width));
+#endif /* USE_SLANG */
+
+#ifdef USE_SLANG
+#define LYstopPopup() /* nothing */
 #else
+extern void LYsubwindow PARAMS((WINDOW * param));
+#define LYstopPopup() LYsubwindow(0)
+#endif /* NCURSES */
+
 extern void LYbox PARAMS((WINDOW *win, BOOLEAN formfield));
-#endif /* VMS */
-#endif /* USE_SLANG */
+extern WINDOW *LYstartPopup PARAMS((int top_y, int left_x, int height, int width));
 
 /*
  * Useful macros not in PDCurses or very old ncurses headers.
@@ -247,6 +256,7 @@ extern void LYstartTargetEmphasis NOPARAMS;
 extern void LYstopTargetEmphasis NOPARAMS;
 extern void LYtouchline PARAMS((int row));
 extern void LYwaddnstr PARAMS((WINDOW *w, CONST char *s, size_t len));
+extern void LYpaddstr PARAMS((WINDOW *w, int width, CONST char *s));
 
 #define LYaddstr(s)      LYwaddnstr(stdscr, s, strlen(s))
 #define LYaddnstr(s,len) LYwaddnstr(stdscr, s, len)
@@ -310,9 +320,6 @@ extern unsigned int Lynx_Color_Flags;
 /*
  *  Map some curses functions to slang functions.
  */
-#ifndef WINDOW
-#define WINDOW void
-#endif
 #define stdscr NULL
 #ifdef SLANG_MBCS_HACK
 extern int PHYSICAL_SLtt_Screen_Cols;
@@ -552,4 +559,6 @@ extern void lynx_stop_all_colors NOPARAMS;
 #define LYHideCursor() move((LYlines - 1), (LYcols - 2))
 #endif
 
+extern void LYstowCursor PARAMS((WINDOW * win, int row, int col));
+
 #endif /* LYCURSES_H */
diff --git a/src/LYExtern.c b/src/LYExtern.c
index 338cc42b..8cecb422 100644
--- a/src/LYExtern.c
+++ b/src/LYExtern.c
@@ -191,8 +191,8 @@ BOOL run_external ARGS2(
 
 #ifdef WIN_EX			/* 1998/01/26 (Mon) 09:16:13 */
     if (c == NULL) {
-	HTInfoMsg("Not external command exists");
-	return;
+	HTInfoMsg("External command is null");
+	return 0;
     }
 #endif
 
diff --git a/src/LYForms.c b/src/LYForms.c
index 11eb5125..f4b57b78 100644
--- a/src/LYForms.c
+++ b/src/LYForms.c
@@ -92,11 +92,11 @@ PUBLIC int change_form_link_ex ARGS8(
 		dummy = popup_options(form->num_value, form->select_list,
 				form_link->ly, form_link->lx, form->size,
 				form->size_l, form->disabled);
-#if defined(FANCY_CURSES) || defined(USE_SLANG)
+#if CTRL_W_HACK != DO_NOTHING
 		if (!enable_scrollback)
 		    c = CTRL_W_HACK;  /* CTRL-W refresh without clearok */
 		else
-#endif /* FANCY_CURSES || USE_SLANG */
+#endif
 		    c = 12;  /* CTRL-L for repaint */
 		break;
 	    }
@@ -123,11 +123,11 @@ PUBLIC int change_form_link_ex ARGS8(
 		  */
 		form->value_cs = opt_ptr->value_cs;
 	    }
-#if defined(FANCY_CURSES) || defined(USE_SLANG)
+#if CTRL_W_HACK != DO_NOTHING
 	    if (!enable_scrollback)
 		c = CTRL_W_HACK;	 /* CTRL-W refresh without clearok */
 	    else
-#endif /* FANCY_CURSES || USE_SLANG */
+#endif
 		c = 12;	 /* CTRL-L for repaint */
 	    break;
 
@@ -445,14 +445,13 @@ again:
 
 	ch = LYgetch_input();
 #ifdef SUPPORT_MULTIBYTE_EDIT
-#ifdef WIN_EX
-	if (!refresh_mb && (EditBinding(ch) != LYE_CHAR))
-	    goto again;
-#else
-	if (!refresh_mb &&
-	    (EditBinding(ch) != LYE_CHAR) && (EditBinding(ch) != LYE_AIX))
-	    goto again;
+	if (!refresh_mb
+	 && (EditBinding(ch) != LYE_CHAR)
+#ifndef WIN_EX
+	 && (EditBinding(ch) != LYE_AIX)
 #endif
+	    )
+	    goto again;
 #endif /* SUPPORT_MULTIBYTE_EDIT */
 #ifdef VMS
 	if (HadVMSInterrupt) {
@@ -854,26 +853,29 @@ PRIVATE int get_popup_option_number ARGS2(
     return num;
 }
 
-/* Use this rather than the 'wprintw()' function to write a blank-padded
- * string to the given window, since someone's asserted that printw doesn't
- * handle 8-bit characters unlike addstr (though more info would be useful).
- *
- * We're blank-filling so that with SVr4 curses, it'll show the background
- * color to a uniform width in the popup-menu.
- */
-#ifndef USE_SLANG
-PRIVATE void paddstr ARGS3(
-	WINDOW *,	the_window,
+PRIVATE void draw_option ARGS5(
+	WINDOW *,	win,
+	int,		entry,
 	int,		width,
-	char *,		the_string)
+	BOOL,		reversed,
+	OptionType *,	opt_ptr)
 {
-    width -= strlen(the_string);
-    waddstr(the_window, the_string);
-    while (width-- > 0)
-	waddstr(the_window, " ");
+#ifdef USE_SLANG
+    if (reversed)
+	SLsmg_gotorc((win->top_y + entry), win->left_x + 2);
+    SLsmg_gotorc(win->top_y + entry, win->left_x + 2);
+    SLsmg_write_nstring(opt_ptr->name, win->width);
+    if (reversed)
+	SLsmg_set_color(0);
+#else
+    wmove(win, entry, 2);
+    if (reversed)
+	wstart_reverse(win);
+    LYpaddstr(win, width, opt_ptr->name);
+    if (reversed)
+	wstop_reverse(win);
+#endif /* USE_SLANG */
 }
-#endif
-
 
 PRIVATE int popup_options ARGS7(
 	int,		cur_selection,
@@ -891,9 +893,7 @@ PRIVATE int popup_options ARGS7(
      */
     int c = 0, cmd = 0, i = 0, j = 0, rel = 0;
     int orig_selection = cur_selection;
-#ifndef USE_SLANG
     WINDOW * form_window;
-#endif /* !USE_SLANG */
     int num_options = 0, top, bottom, length = -1;
     OptionType * opt_ptr = list;
     int window_offset = 0;
@@ -1017,30 +1017,12 @@ PRIVATE int popup_options ARGS7(
      *  Set up the overall window, including the boxing characters ('*'),
      *  if it all fits.  Otherwise, set up the widest window possible. - FM
      */
-#ifdef USE_SLANG
-    if (width + 4 > SLtt_Screen_Cols) {
+    if (width + 4 > LYcols) {
 	lx = 1;
 	width = LYcols - 5; /* avoids a crash? - kw */
     }
-    SLsmg_fill_region(top, lx - 1, bottom - top, width + 4, ' ');
-#else
-    if (!(form_window = newwin(bottom - top, width + 4, top, lx - 1)) &&
-	!(form_window = newwin(bottom - top, 0, top, 0))) {
-	HTAlert(POPUP_FAILED);
+    if ((form_window = LYstartPopup(top, lx, bottom - top, width)) == 0)
 	return(orig_selection);
-    }
-    scrollok(form_window, TRUE);
-#ifdef PDCURSES
-    keypad(form_window, TRUE);
-#endif /* PDCURSES */
-#if defined(NCURSES) || defined(PDCURSES)
-    LYsubwindow(form_window);
-#endif
-#if defined(HAVE_GETBKGD) /* not defined in ncurses 1.8.7 */
-    wbkgd(form_window, getbkgd(stdscr));
-    wbkgdset(form_window, getbkgd(stdscr));
-#endif
-#endif /* USE_SLANG */
 
     /*
      *  Set up the window_offset for options.
@@ -1071,107 +1053,40 @@ redraw:
      */
     for (i = 0; i <= num_options; i++, opt_ptr = opt_ptr->next) {
 	if (i >= window_offset && i - window_offset < length) {
-#ifdef USE_SLANG
-	    SLsmg_gotorc(top + ((i + 1) - window_offset), (lx - 1 + 2));
-	    SLsmg_write_nstring(opt_ptr->name, width);
-#else
-	    wmove(form_window, ((i + 1) - window_offset), 2);
-	    paddstr(form_window, width, opt_ptr->name);
-#endif /* USE_SLANG */
+	    draw_option(form_window, ((i + 1) - window_offset), width, FALSE, opt_ptr);
 	}
     }
-#ifdef USE_SLANG
-    SLsmg_draw_box(top, (lx - 1), (bottom - top), (width + 4));
-#else
-#ifdef VMS
-    VMSbox(form_window, (bottom - top), (width + 4));
-#else
     LYbox(form_window, TRUE);
-#endif /* VMS */
-    wrefresh(form_window);
-#endif /* USE_SLANG */
     opt_ptr = NULL;
 
     /*
      *  Loop on user input.
      */
     while (cmd != LYK_ACTIVATE) {
+	int row = ((i + 1) - window_offset);
 
 	/*
 	 *  Unreverse cur selection.
 	 */
 	if (opt_ptr != NULL) {
-#ifdef USE_SLANG
-	    SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 2));
-	    SLsmg_write_nstring(opt_ptr->name, width);
-#else
-	    wmove(form_window, ((i + 1) - window_offset), 2);
-	    paddstr(form_window, width, opt_ptr->name);
-#endif /* USE_SLANG */
+	    draw_option(form_window, row, width, FALSE, opt_ptr);
 	}
 
 	opt_ptr = list;
 
 	for (i = 0; i < cur_selection; i++, opt_ptr = opt_ptr->next)
 	    ; /* null body */
+	row = ((i + 1) - window_offset);
 
-#ifdef USE_SLANG
-	SLsmg_set_color(2);
-	SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 2));
-	SLsmg_write_nstring(opt_ptr->name, width);
-	SLsmg_set_color(0);
-	/*
-	 *  If LYShowCursor is ON, move the cursor to the left
-	 *  of the current option, so that blind users, who are
-	 *  most likely to have LYShowCursor ON, will have it's
-	 *  string spoken or passed to the braille interface as
-	 *  each option is made current.  Otherwise, move it to
-	 *  the bottom, right column of the screen, to "hide"
-	 *  the cursor as for the main document, and let sighted
-	 *  users rely on the current option's highlighting or
-	 *  color without the distraction of a blinking cursor
-	 *  in the window. - FM
-	 */
-	if (LYShowCursor)
-	    SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 1));
-	else
-	    SLsmg_gotorc((LYlines - 1), (LYcols - 1));
-	SLsmg_refresh();
-#else
-	wmove(form_window, ((i + 1) - window_offset), 2);
-#if defined(WIN_EX)	/* FIX */
-	wattron(form_window, A_REVERSE);
-#else
-	wstart_reverse(form_window);
-#endif
-	paddstr(form_window, width, opt_ptr->name);
-#if defined(WIN_EX)	/* FIX */
-	wattroff(form_window, A_REVERSE);
-#else
-	wstop_reverse(form_window);
-#endif
-	/*
-	 *  If LYShowCursor is ON, move the cursor to the left
-	 *  of the current option, so that blind users, who are
-	 *  most likely to have LYShowCursor ON, will have it's
-	 *  string spoken or passed to the braille interface as
-	 *  each option is made current.  Otherwise, leave it to
-	 *  the right of the current option, since we can't move
-	 *  it out of the window, and let sighted users rely on
-	 *  the highlighting of the current option without the
-	 *  distraction of a blinking cursor preceding it. - FM
-	 */
-	if (LYShowCursor)
-	    wmove(form_window, ((i + 1) - window_offset), 1);
-	wrefresh(form_window);
-#endif /* USE_SLANG  */
+	draw_option(form_window, row, width, TRUE, opt_ptr);
+	LYstowCursor(form_window, row, 1);
 
 	c = LYgetch_choice();
 	if (c == 7) {		/* Control-C or Control-G */
 	    cmd = LYK_QUIT;
 #ifndef USE_SLANG
 	} else if (c == MOUSE_KEY) {
-	    if ((cmd = fancy_mouse(form_window, i + 1 - window_offset, &cur_selection)) < 0)
+	    if ((cmd = fancy_mouse(form_window, row, &cur_selection)) < 0)
 		goto redraw;
 	    if  (cmd == LYK_ACTIVATE)
 		break;
@@ -1852,12 +1767,7 @@ restore_popup_statusline:
 		break;
 	}
     }
-#ifndef USE_SLANG
-    delwin(form_window);
-#if defined(NCURSES) || defined(PDCURSES)
-    LYsubwindow(0);
-#endif
-#endif /* !USE_SLANG */
+    LYstopPopup();
 
     return(disabled ? orig_selection : cur_selection);
 }
diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h
index faa41a86..3def0c78 100644
--- a/src/LYGlobalDefs.h
+++ b/src/LYGlobalDefs.h
@@ -215,7 +215,7 @@ extern int display_lines;	/* number of lines in the display */
 extern int dump_output_width;
 extern int keypad_mode;		/* NUMBERS_AS_ARROWS or LINKS_ARE_NUMBERED */
 extern int lynx_temp_subspace;
-extern int more;		/* is there more document to display? */
+extern BOOLEAN more;		/* is there more document to display? */
 extern int user_mode;		/* novice or advanced */
 extern int www_search_result;
 
@@ -405,7 +405,7 @@ extern BOOLEAN no_externals; 		/* don't allow the use of externals */
 extern BOOLEAN LYNoISMAPifUSEMAP;	/* Omit ISMAP link if MAP present? */
 extern int LYHiddenLinks;
 
-extern BOOL Old_DTD;
+extern BOOLEAN Old_DTD;
 
 #define MBM_V_MAXFILES  25		/* Max number of sub-bookmark files */
 /*
diff --git a/src/LYHash.h b/src/LYHash.h
index 383261f1..8fc83b8f 100644
--- a/src/LYHash.h
+++ b/src/LYHash.h
@@ -31,14 +31,13 @@ extern int hash_code PARAMS((char* string));
 extern bucket special_bucket;/*it's used when OMIT_SCN_KEEPING is 1 in HTML.c
     and LYCurses.c. */
 extern bucket nostyle_bucket;/*initialized properly - to be used in CTRACE when
-            NOSTYLE is passed as 'style' to curses_w_style */    
+            NOSTYLE is passed as 'style' to curses_w_style */
 
 extern int hash_code_lowercase_on_fly PARAMS((char* string));
 extern int hash_code_aggregate_char PARAMS((char c,int hash));
 extern int hash_code_aggregate_lower_str  PARAMS((char* c,int hash_was));
 
 extern int	s_alink, s_a, s_status,
-		s_label, s_value, s_high,
 		s_normal, s_alert, s_title,
 #ifdef USE_SCROLLBAR
 		s_sb_bar, s_sb_bg, s_sb_aa, s_sb_naa,
diff --git a/src/LYKeymap.c b/src/LYKeymap.c
index 11c6156e..a94749b2 100644
--- a/src/LYKeymap.c
+++ b/src/LYKeymap.c
@@ -114,7 +114,7 @@ LYK_F_LINK_NUM,      LYK_1,          LYK_2,         LYK_3,
 LYK_4,               LYK_5,          LYK_6,         LYK_7,
 /* 4 */              /* 5 */         /* 6 */        /* 7 */
 
-LYK_8,               LYK_9,             0,          LYK_TRACE_LOG,
+LYK_8,               LYK_9,         LYK_COMMAND,    LYK_TRACE_LOG,
 /* 8 */              /* 9 */         /* : */        /* ; */
 
 LYK_UP_LINK,         LYK_INFO,     LYK_DOWN_LINK,   LYK_HELP,
@@ -625,129 +625,335 @@ LYK_TAG_LINK,      LYK_UPLOAD,         0,             0,
 };
 #endif /* DIRED_SUPPORT && OK_OVERRIDE */
 
-struct rmap {
-	CONST char *name;
-	CONST char *doc;
-};
-
+#define DATA(code, name, doc) { code, name, doc }
 /* The order of this array must match the LYKeymapCode enum in LYKeymap.h */
-PRIVATE struct rmap revmap[] = {
-{ "UNMAPPED",		NULL },
-{ "1",			NULL },
-{ "2",			NULL },
-{ "3",			NULL },
-{ "4",			NULL },
-{ "5",			NULL },
-{ "6",			NULL },
-{ "7",			NULL },
-{ "8",			NULL },
-{ "9",			NULL },
-{ "SOURCE",		"toggle source/presentation for current document" },
-{ "RELOAD",		"reload the current document" },
-{ "PIPE",		"pipe the current document to an external command" },
-{ "QUIT",		"quit the browser" },
-{ "ABORT",		"quit the browser unconditionally" },
-{ "NEXT_PAGE",		"view the next page of the document" },
-{ "PREV_PAGE",		"view the previous page of the document" },
-{ "UP_TWO",		"go back two lines in the document" },
-{ "DOWN_TWO",		"go forward two lines in the document" },
-{ "UP_HALF",		"go back half a page in the document" },
-{ "DOWN_HALF",		"go forward half a page in the document" },
-{ "REFRESH",		"refresh the screen to clear garbled text" },
-{ "HOME",		"go to the beginning of the current document" },
-{ "END",		"go to the end of the current document" },
-{ "FIRST_LINK",		"make the first link on the line current" },
-{ "LAST_LINK",		"make the last link on the line current" },
-{ "PREV_LINK",		"make the previous link current" },
-{ "NEXT_LINK",		"make the next link current" },
-{ "LPOS_PREV_LINK",	"make previous link current, same column for input" },
-{ "LPOS_NEXT_LINK",	"make next link current, same column for input" },
-{ "FASTBACKW_LINK",	"previous link or text area, only stops on links" },
-{ "FASTFORW_LINK",	"next link or text area, only stops on links" },
-{ "UP_LINK",		"move up the page to a previous link" },
-{ "DOWN_LINK",		"move down the page to another link" },
-{ "RIGHT_LINK",		"move right to another link" },
-{ "LEFT_LINK",		"move left to a previous link" },
-{ "HISTORY",		"display stack of currently-suspended documents" },
-{ "PREV_DOC",		"go back to the previous document" },
-{ "ACTIVATE",		"go to the document given by the current link" },
-{ "MOUSE_SUBMIT",	"follow current link, submit" }, /* not mapped */
-{ "GOTO",		"go to a document given as a URL" },
-{ "ECGOTO",		"edit the current document's URL and go to it" },
-{ "HELP",		"display help on using the browser" },
-{ "DWIMHELP",		"display help page that may depend on context" },
-{ "INDEX",		"display an index of potentially useful documents" },
-{ "NOCACHE",		"force submission of form or link with no-cache" },
-{ "INTERRUPT",		"interrupt network connection or transmission" },
-{ "MAIN_MENU",		"return to the first screen (home page)" },
-{ "OPTIONS",		"display and change option settings" },
-{ "INDEX_SEARCH",	"allow searching of an index" },
-{ "WHEREIS",		"search within the current document" },
-{ "NEXT",		"search for the next occurence" },
-{ "COMMENT",		"send a comment to the author of the current document" },
-{ "EDIT",		"edit the current document or a form's textarea" },
-{ "INFO",		"display information on the current document and link" },
-{ "PRINT",		"display choices for printing the current document" },
-{ "ADD_BOOKMARK",	"add to your personal bookmark list" },
-{ "DEL_BOOKMARK",	"delete from your personal bookmark list" },
-{ "VIEW_BOOKMARK",	"view your personal bookmark list" },
-{ "VLINKS",		"list links visited during the current Lynx session" },
-{ "SHELL",		"escape from the browser to the system" },
-{ "DOWNLOAD",		"download the current link to your computer" },
-{ "TRACE_TOGGLE",	"toggle tracing of browser operations" },
-{ "TRACE_LOG",		"view trace log if started in the current session" },
-{ "IMAGE_TOGGLE",	"toggle handling of all images as links" },
-{ "INLINE_TOGGLE",	"toggle pseudo-ALTs for inlines with no ALT string" },
-{ "HEAD",		"send a HEAD request for the current document or link" },
-{ "DO_NOTHING",		NULL },
-{ "TOGGLE_HELP",	"show other commands in the novice help menu" },
-{ "JUMP",		"go directly to a target document or action" },
-{ "KEYMAP",		"display the current key map" },
-{ "LIST",		"list the references (links) in the current document" },
-{ "TOOLBAR",		"go to Toolbar or Banner in the current document" },
-{ "HISTORICAL",		"toggle historical vs. valid/minimal comment parsing" },
-{ "MINIMAL",		"toggle minimal vs. valid comment parsing" },
-{ "SOFT_DQUOTES",	"toggle valid vs. soft double-quote parsing" },
-{ "RAW_TOGGLE",		"toggle raw 8-bit translations or CJK mode ON or OFF" },
-{ "COOKIE_JAR",		"examine the Cookie Jar" },
-{ "F_LINK_NUM",		"invoke the 'Follow link (or page) number:' prompt" },
-{ "CLEAR_AUTH",		"clear all authorization info for this session" },
-{ "SWITCH_DTD",		"switch between two ways of parsing HTML" },
-{ "ELGOTO",		"edit the current link's URL or ACTION and go to it" },
-{ "CHANGE_LINK",	"force reset of the current link on the page" },
-{ "DWIMEDIT",		"use external editor for context-dependent purpose" },
-{ "EDITTEXTAREA",	"use an external editor to edit a form's textarea" },
-{ "GROWTEXTAREA",	"add 5 new blank lines to the bottom of a textarea" },
-{ "INSERTFILE",		"insert file into a textarea (just above cursorline)" },
+PRIVATE Kcmd revmap[] = {
+    DATA(
+	LYK_UNKNOWN, "UNMAPPED",
+	NULL ),
+    DATA(
+	LYK_COMMAND, "COMMAND",
+	"prompt for, execute a command" ),
+    DATA(
+	LYK_1, "1",
+	NULL ),
+    DATA(
+	LYK_2, "2",
+	NULL ),
+    DATA(
+	LYK_3, "3",
+	NULL ),
+    DATA(
+	LYK_4, "4",
+	NULL ),
+    DATA(
+	LYK_5, "5",
+	NULL ),
+    DATA(
+	LYK_6, "6",
+	NULL ),
+    DATA(
+	LYK_7, "7",
+	NULL ),
+    DATA(
+	LYK_8, "8",
+	NULL ),
+    DATA(
+	LYK_9, "9",
+	NULL ),
+    DATA(
+	LYK_SOURCE, "SOURCE",
+	"toggle source/presentation for current document" ),
+    DATA(
+	LYK_RELOAD, "RELOAD",
+	"reload the current document" ),
+    DATA(
+	LYK_PIPE, "PIPE",
+	"pipe the current document to an external command" ),
+    DATA(
+	LYK_QUIT, "QUIT",
+	"quit the browser" ),
+    DATA(
+	LYK_ABORT, "ABORT",
+	"quit the browser unconditionally" ),
+    DATA(
+	LYK_NEXT_PAGE, "NEXT_PAGE",
+	"view the next page of the document" ),
+    DATA(
+	LYK_PREV_PAGE, "PREV_PAGE",
+	"view the previous page of the document" ),
+    DATA(
+	LYK_UP_TWO, "UP_TWO",
+	"go back two lines in the document" ),
+    DATA(
+	LYK_DOWN_TWO, "DOWN_TWO",
+	"go forward two lines in the document" ),
+    DATA(
+	LYK_UP_HALF, "UP_HALF",
+	"go back half a page in the document" ),
+    DATA(
+	LYK_DOWN_HALF, "DOWN_HALF",
+	"go forward half a page in the document" ),
+    DATA(
+	LYK_REFRESH, "REFRESH",
+	"refresh the screen to clear garbled text" ),
+    DATA(
+	LYK_HOME, "HOME",
+	"go to the beginning of the current document" ),
+    DATA(
+	LYK_END, "END",
+	"go to the end of the current document" ),
+    DATA(
+	LYK_FIRST_LINK, "FIRST_LINK",
+	"make the first link on the line current" ),
+    DATA(
+	LYK_LAST_LINK, "LAST_LINK",
+	"make the last link on the line current" ),
+    DATA(
+	LYK_PREV_LINK, "PREV_LINK",
+	"make the previous link current" ),
+    DATA(
+	LYK_NEXT_LINK, "NEXT_LINK",
+	"make the next link current" ),
+    DATA(
+	LYK_LPOS_PREV_LINK, "LPOS_PREV_LINK",
+	"make previous link current, same column for input" ),
+    DATA(
+	LYK_LPOS_NEXT_LINK, "LPOS_NEXT_LINK",
+	"make next link current, same column for input" ),
+    DATA(
+	LYK_FASTBACKW_LINK, "FASTBACKW_LINK",
+	"previous link or text area, only stops on links" ),
+    DATA(
+	LYK_FASTFORW_LINK, "FASTFORW_LINK",
+	"next link or text area, only stops on links" ),
+    DATA(
+	LYK_UP_LINK, "UP_LINK",
+	"move up the page to a previous link" ),
+    DATA(
+	LYK_DOWN_LINK, "DOWN_LINK",
+	"move down the page to another link" ),
+    DATA(
+	LYK_RIGHT_LINK, "RIGHT_LINK",
+	"move right to another link" ),
+    DATA(
+	LYK_LEFT_LINK, "LEFT_LINK",
+	"move left to a previous link" ),
+    DATA(
+	LYK_HISTORY, "HISTORY",
+	"display stack of currently-suspended documents" ),
+    DATA(
+	LYK_PREV_DOC, "PREV_DOC",
+	"go back to the previous document" ),
+    DATA(
+	LYK_ACTIVATE, "ACTIVATE",
+	"go to the document given by the current link" ),
+    DATA(
+	LYK_SUBMIT, "MOUSE_SUBMIT",
+	"DO NOT MAP:  follow current link, submit" ),
+    DATA(
+	LYK_GOTO, "GOTO",
+	"go to a document given as a URL" ),
+    DATA(
+	LYK_ECGOTO, "ECGOTO",
+	"edit the current document's URL and go to it" ),
+    DATA(
+	LYK_HELP, "HELP",
+	"display help on using the browser" ),
+    DATA(
+	LYK_DWIMHELP, "DWIMHELP",
+	"display help page that may depend on context" ),
+    DATA(
+	LYK_INDEX, "INDEX",
+	"display an index of potentially useful documents" ),
+    DATA(
+	LYK_NOCACHE, "NOCACHE",
+	"force submission of form or link with no-cache" ),
+    DATA(
+	LYK_INTERRUPT, "INTERRUPT",
+	"interrupt network connection or transmission" ),
+    DATA(
+	LYK_MAIN_MENU, "MAIN_MENU",
+	"return to the first screen (home page)" ),
+    DATA(
+	LYK_OPTIONS, "OPTIONS",
+	"display and change option settings" ),
+    DATA(
+	LYK_INDEX_SEARCH, "INDEX_SEARCH",
+	"allow searching of an index" ),
+    DATA(
+	LYK_WHEREIS, "WHEREIS",
+	"search within the current document" ),
+    DATA(
+	LYK_NEXT, "NEXT",
+	"search for the next occurence" ),
+    DATA(
+	LYK_COMMENT, "COMMENT",
+	"send a comment to the author of the current document" ),
+    DATA(
+	LYK_EDIT, "EDIT",
+	"edit the current document or a form's textarea" ),
+    DATA(
+	LYK_INFO, "INFO",
+	"display information on the current document and link" ),
+    DATA(
+	LYK_PRINT, "PRINT",
+	"display choices for printing the current document" ),
+    DATA(
+	LYK_ADD_BOOKMARK, "ADD_BOOKMARK",
+	"add to your personal bookmark list" ),
+    DATA(
+	LYK_DEL_BOOKMARK, "DEL_BOOKMARK",
+	"delete from your personal bookmark list" ),
+    DATA(
+	LYK_VIEW_BOOKMARK, "VIEW_BOOKMARK",
+	"view your personal bookmark list" ),
+    DATA(
+	LYK_VLINKS, "VLINKS",
+	"list links visited during the current Lynx session" ),
+    DATA(
+	LYK_SHELL, "SHELL",
+	"escape from the browser to the system" ),
+    DATA(
+	LYK_DOWNLOAD, "DOWNLOAD",
+	"download the current link to your computer" ),
+    DATA(
+	LYK_TRACE_TOGGLE, "TRACE_TOGGLE",
+	"toggle tracing of browser operations" ),
+    DATA(
+	LYK_TRACE_LOG, "TRACE_LOG",
+	"view trace log if started in the current session" ),
+    DATA(
+	LYK_IMAGE_TOGGLE, "IMAGE_TOGGLE",
+	"toggle handling of all images as links" ),
+    DATA(
+	LYK_INLINE_TOGGLE, "INLINE_TOGGLE",
+	"toggle pseudo-ALTs for inlines with no ALT string" ),
+    DATA(
+	LYK_HEAD, "HEAD",
+	"send a HEAD request for the current document or link" ),
+    DATA(
+	LYK_DO_NOTHING, "DO_NOTHING",
+	NULL ),
+    DATA(
+	LYK_TOGGLE_HELP, "TOGGLE_HELP",
+	"show other commands in the novice help menu" ),
+    DATA(
+	LYK_JUMP, "JUMP",
+	"go directly to a target document or action" ),
+    DATA(
+	LYK_KEYMAP, "KEYMAP",
+	"display the current key map" ),
+    DATA(
+	LYK_LIST, "LIST",
+	"list the references (links) in the current document" ),
+    DATA(
+	LYK_TOOLBAR, "TOOLBAR",
+	"go to Toolbar or Banner in the current document" ),
+    DATA(
+	LYK_HISTORICAL, "HISTORICAL",
+	"toggle historical vs.  valid/minimal comment parsing" ),
+    DATA(
+	LYK_MINIMAL, "MINIMAL",
+	"toggle minimal vs.  valid comment parsing" ),
+    DATA(
+	LYK_SOFT_DQUOTES, "SOFT_DQUOTES",
+	"toggle valid vs.  soft double-quote parsing" ),
+    DATA(
+	LYK_RAW_TOGGLE, "RAW_TOGGLE",
+	"toggle raw 8-bit translations or CJK mode ON or OFF" ),
+    DATA(
+	LYK_COOKIE_JAR, "COOKIE_JAR",
+	"examine the Cookie Jar" ),
+    DATA(
+	LYK_F_LINK_NUM, "F_LINK_NUM",
+	"invoke the 'Follow link (or page) number:' prompt" ),
+    DATA(
+	LYK_CLEAR_AUTH, "CLEAR_AUTH",
+	"clear all authorization info for this session" ),
+    DATA(
+	LYK_SWITCH_DTD, "SWITCH_DTD",
+	"switch between two ways of parsing HTML" ),
+    DATA(
+	LYK_ELGOTO, "ELGOTO",
+	"edit the current link's URL or ACTION and go to it" ),
+    DATA(
+	LYK_CHANGE_LINK, "CHANGE_LINK",
+	"force reset of the current link on the page" ),
+    DATA(
+	LYK_DWIMEDIT, "DWIMEDIT",
+	"use external editor for context-dependent purpose" ),
+    DATA(
+	LYK_EDIT_TEXTAREA, "EDITTEXTAREA",
+	"use an external editor to edit a form's textarea" ),
+    DATA(
+	LYK_GROW_TEXTAREA, "GROWTEXTAREA",
+	"add 5 new blank lines to the bottom of a textarea" ),
+    DATA(
+	LYK_INSERT_FILE, "INSERTFILE",
+	"insert file into a textarea (just above cursorline)" ),
 #ifdef EXP_ADDRLIST_PAGE
-{ "ADDRLIST",		"like LIST command, but always shows the links' URLs" },
+    DATA(
+	LYK_ADDRLIST, "ADDRLIST",
+	"like LIST command, but always shows the links' URLs" ),
 #endif
 #ifdef USE_EXTERNALS
-{ "EXTERN",		"run external program with url" },
+    DATA(
+	LYK_EXTERN, "EXTERN",
+	"run external program with url" ),
 #endif
 #ifdef VMS
-{ "DIRED_MENU",		"invoke File/Directory Manager, if available" },
+    DATA(
+	LYK_DIRED_MENU, "DIRED_MENU",
+	"invoke File/Directory Manager, if available" ),
 #else
 #ifdef DIRED_SUPPORT
-{ "DIRED_MENU",		"display a full menu of file operations" },
-{ "CREATE",		"create a new file or directory" },
-{ "REMOVE",		"remove a file or directory" },
-{ "MODIFY",		"modify the name or location of a file or directory" },
-{ "TAG_LINK",		"tag a file or directory for later action" },
-{ "UPLOAD",		"upload from your computer to the current directory" },
-{ "INSTALL",		"install file or tagged files into a system area" },
+    DATA(
+	LYK_DIRED_MENU, "DIRED_MENU",
+	"display a full menu of file operations" ),
+    DATA(
+	LYK_CREATE, "CREATE",
+	"create a new file or directory" ),
+    DATA(
+	LYK_REMOVE, "REMOVE",
+	"remove a file or directory" ),
+    DATA(
+	LYK_MODIFY, "MODIFY",
+	"modify the name or location of a file or directory" ),
+    DATA(
+	LYK_TAG_LINK, "TAG_LINK",
+	"tag a file or directory for later action" ),
+    DATA(
+	LYK_UPLOAD, "UPLOAD",
+	"upload from your computer to the current directory" ),
+    DATA(
+	LYK_INSTALL, "INSTALL",
+	"install file or tagged files into a system area" ),
 #endif /* DIRED_SUPPORT */
-#ifdef SH_EX		/* 1999/01/01 (Fri) 01:18:12 */
-{ "CHANGE_CENTER",	"toggle center alignment in HTML TABLE" },
-{ "TO_CLIPBOARD",	"link's URL to Clip Board" },
-{ "CHANGE_KCODE",	"Change Kanji code" },
+#ifdef SH_EX /* 1999/01/01 (Fri) 01:18:12 */
+    DATA(
+	LYK_CHG_CENTER, "CHANGE_CENTER",
+	"toggle center alignment in HTML TABLE" ),
+    DATA(
+	LYK_TO_CLIPBOARD, "TO_CLIPBOARD",
+	"link's URL to Clip Board" ),
+#endif
+#ifdef KANJI_CODE_OVERRIDE
+    DATA(
+	LYK_CHG_KCODE, "CHANGE_KCODE",
+	"Change Kanji code" ),
 #endif
 #endif /* VMS */
 #ifdef SUPPORT_CHDIR
- { "CHDIR",		"change current directory" },
+    DATA(
+	LYK_CHDIR, "CHDIR",
+	"change current directory" ),
 #endif
-{ NULL,			"" }
+    DATA(
+	LYK_UNKNOWN, NULL,
+	"" )
 };
+#undef DATA
 
 PRIVATE CONST struct {
     int key;
@@ -837,6 +1043,78 @@ PRIVATE struct emap ekmap[] = {
 #endif
 };
 
+/*
+ * Build a list of Lynx's commands, for use in the tab-completion in LYgetstr.
+ */
+PUBLIC HTList *LYcommandList NOARGS
+{
+    static HTList *myList = NULL;
+
+    if (myList == NULL) {
+	unsigned j;
+	myList = HTList_new();
+	for (j = 0; revmap[j].name != 0; j++) {
+	    if (revmap[j].doc != 0)
+		HTList_addObject(myList, revmap[j].name);
+	}
+    }
+    return myList;
+}
+
+/*
+ * Find the given keycode.
+ */
+PUBLIC Kcmd * LYKeycodeToKcmd ARGS1(
+	LYKeymapCode,	code)
+{
+    unsigned j;
+    Kcmd *result = 0;
+
+    if (code > LYK_UNKNOWN) {
+	for (j = 0; revmap[j].name != 0; j++) {
+	    if (revmap[j].code == code) {
+		result = revmap + j;
+		break;
+	    }
+	}
+    }
+    return result;
+}
+
+/*
+ * Find the given command-name, accepting an abbreviation if it is unique.
+ */
+PUBLIC Kcmd * LYStringToKcmd ARGS1(
+	CONST char *,	name)
+{
+    unsigned need = strlen(name);
+    unsigned j;
+    BOOL exact = FALSE;
+    Kcmd *result = 0;
+    Kcmd *maybe = 0;
+
+    if (name != 0 && *name != 0) {
+	for (j = 0; revmap[j].name != 0; j++) {
+	    if (!strcasecomp(revmap[j].name, name)) {
+		result = revmap + j;
+		break;
+	    } else if (!exact
+		&& !strncasecomp(revmap[j].name, name, need)) {
+		if (maybe == 0) {
+		    maybe = revmap + j;
+		} else {
+		    if (revmap[j].name[need] != 0
+		     && maybe->name[need] != 0) {
+			maybe = 0;
+			exact = TRUE;
+		    }
+		}
+	    }
+	}
+    }
+    return (result != 0) ? result : maybe;
+}
+
 PUBLIC char *LYKeycodeToString ARGS2 (
 	int,		c,
 	BOOLEAN,	upper8)
@@ -952,19 +1230,19 @@ PRIVATE char * format_binding ARGS2(
 	LYKeymap_t *,	table,
 	int,		i)
 {
-    unsigned the_key = table[i];
+    LYKeymap_t the_key = table[i];
     char *buf = 0;
     char *formatted;
+    Kcmd *rmap = LYKeycodeToKcmd(the_key);
 
-    if (the_key != 0
-     && the_key < TABLESIZE(revmap)
-     && revmap[the_key].name != 0
-     && revmap[the_key].doc != 0
+    if (rmap != 0
+     && rmap->name != 0
+     && rmap->doc != 0
      && (formatted = pretty_html(i-1)) != 0) {
 	HTSprintf0(&buf, "%-*s %-13s %s\n",
 		   PRETTY_LEN, formatted,
-		   revmap[the_key].name,
-		   revmap[the_key].doc);
+		   rmap->name,
+		   rmap->doc);
 	return buf;
     }
     return 0;
@@ -1016,23 +1294,14 @@ PRIVATE void print_binding ARGS3(
 
 /*
  *  Return lynxactioncode whose name is the string func.
- *  func must be present in the revmap table.
  *  returns -1 if not found. - kw
  */
 PUBLIC int lacname_to_lac ARGS1(
 	CONST char *,	func)
 {
-       int i;
-       struct rmap *mp;
+       Kcmd *mp = LYStringToKcmd(func);
 
-       if (func == NULL || *func == '\0')
-	       return (-1);
-       for (i = 0, mp = revmap; (*mp).name != NULL; mp++, i++) {
-               if (strcmp((*mp).name, func) == 0) {
-                       return i;
-               }
-       }
-       return (-1);
+       return (mp != 0) ? mp->code : -1;
 }
 
 /*
@@ -1136,8 +1405,8 @@ PRIVATE int LYLoadKeymap ARGS4 (
 	 *  Don't show CHANGE_LINK if mouse not enabled.
 	 */
 	if ((i >= 0200 || i <= ' ' || !isalpha(i-1)) &&
-	    strcmp(revmap[keymap[i]].name, "PIPE") &&
-	    (LYUseMouse || strcmp(revmap[keymap[i]].name, "CHANGE_LINK"))) {
+	    (keymap[i] != LYK_PIPE) &&
+	    (LYUseMouse || (keymap[i] != LYK_CHANGE_LINK))) {
 	    print_binding(target, i, FALSE);
 	}
     }
@@ -1163,7 +1432,6 @@ GLOBALDEF PUBLIC HTProtocol LYLynxKeymap = {"LYNXKEYMAP", LYLoadKeymap, 0};
  * for Dired mode, otherwise in the general keymap[] table.
  * If DIRED_SUPPORT or OK_OVERRIDE is not defined, don't do anything
  * when for_dired is requested.
- * func must be present in the revmap table.
  * returns lynxkeycode value != 0 if the mapping was made, 0 if not.
  */
 PUBLIC int remap ARGS3(
@@ -1171,8 +1439,7 @@ PUBLIC int remap ARGS3(
 	char *,		func,
 	BOOLEAN,	for_dired)
 {
-    int i;
-    struct rmap *mp;
+    Kcmd *mp;
     int c;
 
 #if !defined(DIRED_SUPPORT) || !defined(OK_OVERRIDE)
@@ -1197,16 +1464,14 @@ PUBLIC int remap ARGS3(
     }
     if (c + 1 >= KEYMAP_SIZE)
 	return 0;
-    for (i = 0, mp = revmap; (*mp).name != NULL; mp++, i++) {
-	if (strcmp((*mp).name, func) == 0) {
+    if ((mp = LYStringToKcmd(func)) != 0) {
 #if defined(DIRED_SUPPORT) && defined(OK_OVERRIDE)
-	    if (for_dired)
-		key_override[c+1] = (char) i;
-	    else
+	if (for_dired)
+	    key_override[c+1] = mp->code;
+	else
 #endif
-		keymap[c+1] = (char) i;
-	    return (c ? c : LAC_TO_LKC0(i)); /* don't return 0, successful */
-	}
+	    keymap[c+1] = mp->code;
+	return (c ? c : LAC_TO_LKC0(mp->code)); /* don't return 0, successful */
     }
     return 0;
 }
diff --git a/src/LYKeymap.h b/src/LYKeymap.h
index c4f47672..b53e657f 100644
--- a/src/LYKeymap.h
+++ b/src/LYKeymap.h
@@ -1,11 +1,11 @@
 #ifndef LYKEYMAP_H
 #define LYKEYMAP_H
 
-#ifndef HTUTILS_H
 #include <HTUtils.h>
-#endif
+#include <HTList.h>
 
 extern BOOLEAN LYisNonAlnumKeyname PARAMS((int ch, int KeyName));
+extern HTList *LYcommandList NOPARAMS;
 extern char *LYKeycodeToString PARAMS((int c, BOOLEAN upper8));
 extern char *fmt_keys PARAMS((int lkc_first, int lkc_second));
 extern char *key_for_func PARAMS((int func));
@@ -111,10 +111,13 @@ extern LYKeymap_t key_override[];
 /*  Variables for holding and passing around lynxactioncodes are
  *  generally of type int, the types LYKeymap_t and LYKeymapCodes
  *  are currently only used for the definitions.  That could change. - kw
+ *
+ *  The values in this enum are indexed against the command names in the
+ *  'revmap[]' array in LYKeymap.c
  */
-/* The order of this enum must match the 'revmap[]' array in LYKeymap.c */
 typedef enum {
     LYK_UNKNOWN=0
+  , LYK_COMMAND
   , LYK_1
   , LYK_2
   , LYK_3
@@ -243,5 +246,16 @@ typedef enum {
 #endif
 } LYKeymapCode;
 
+/*
+ * Symbol table for internal commands.
+ */
+typedef struct {
+	LYKeymapCode code;
+	CONST char *name;
+	CONST char *doc;
+} Kcmd;
+
+extern Kcmd * LYKeycodeToKcmd PARAMS((LYKeymapCode code));
+extern Kcmd * LYStringToKcmd PARAMS((CONST char * name));
 
 #endif /* LYKEYMAP_H */
diff --git a/src/LYMail.c b/src/LYMail.c
index 7dd55aef..4a8d7d63 100644
--- a/src/LYMail.c
+++ b/src/LYMail.c
@@ -54,16 +54,15 @@ PRIVATE char *blat_cmd(
 
 #ifdef USE_ALT_BLAT_MAILER
 
-    HTSprintf0(&b_cmd, "%s %s -t %s -s \"%s\" %s %s %s %s %s",
+    HTSprintf0(&b_cmd, "%s %s -t \"%s\" -s \"%s\" %s%s%s%s",
 		mail_cmd,
 		filename,
 		address,
 		subject,
 		system_mail_flags,
-		ccaddr? "-c" : "",
+		ccaddr? " -c \"" : "",
 		ccaddr? ccaddr : "",
-		mail_addr? (mail_addr[0]? "-f" : "") : "",
-		mail_addr? (mail_addr[0]? mail_addr : "") : "");
+		ccaddr? "\"" : "");
 
 #else /* !USE_ALT_BLAT_MAILER */
 
@@ -1682,7 +1681,7 @@ PUBLIC void reply_by_mail ARGS4(
 	    if (HTConfirm(is_preparsed
 	    	? INC_PREPARSED_MSG_PROMPT
 		: INC_ORIG_MSG_PROMPT) == YES) {
-		print_wwwfile_to_fd(fd, !is_preparsed);
+		print_wwwfile_to_fd(fd, (BOOLEAN)!is_preparsed);
 	    }
 	}
 	LYCloseTempFP(fd);	/* Close the tmpfile. */
diff --git a/src/LYMain.c b/src/LYMain.c
index 31179bf2..0f082263 100644
--- a/src/LYMain.c
+++ b/src/LYMain.c
@@ -38,6 +38,8 @@
 #ifdef __DJGPP__
 #include <dos.h>
 #include <dpmi.h>
+#include <io.h>
+#include <sys/stat.h>
 #endif /* __DJGPP__ */
 
 #ifdef __EMX__
@@ -382,7 +384,7 @@ PUBLIC linkstruct links[MAXLINKS];
 PUBLIC histstruct history[MAXHIST];
 PUBLIC int nlinks = 0;		/* number of links in memory */
 PUBLIC int nhist = 0;		/* number of history entries */
-PUBLIC int more = FALSE;	/* is there more text to display? */
+PUBLIC BOOLEAN more = FALSE;	/* is there more text to display? */
 PUBLIC int InfoSecs;	/* Seconds to sleep() for Information messages */
 PUBLIC int MessageSecs; /* Seconds to sleep() for important Messages   */
 PUBLIC int AlertSecs;	/* Seconds to sleep() for HTAlert() messages   */
@@ -420,9 +422,9 @@ PUBLIC char *LYCookieSStrictCheckDomains = NULL; /* check strictly  */
 PUBLIC char *LYCookieSLooseCheckDomains = NULL;  /* check loosely   */
 PUBLIC char *LYCookieSQueryCheckDomains = NULL;  /* check w/a query */
 #ifdef EXP_PERSISTENT_COOKIES
-BOOLEAN persistent_cookies = FALSE; 	/* disabled by default! */
-PUBLIC char *LYCookieFile = NULL;	   /* cookie read file */
-PUBLIC char *LYCookieSaveFile = NULL;	   /* cookie save file */
+BOOLEAN persistent_cookies = FALSE;	/* disabled by default! */
+PUBLIC char *LYCookieFile = NULL;	/* cookie read file */
+PUBLIC char *LYCookieSaveFile = NULL;	/* cookie save file */
 #endif /* EXP_PERSISTENT_COOKIES */
 PUBLIC char *XLoadImageCommand = NULL;	/* Default image viewer for X */
 PUBLIC BOOLEAN LYNoISMAPifUSEMAP = FALSE; /* Omit ISMAP link if MAP present? */
@@ -438,7 +440,7 @@ PUBLIC BOOLEAN LYSeekFragAREAinCur = TRUE;
 PUBLIC BOOLEAN LYStripDotDotURLs = TRUE;	/* Try to fix ../ in some URLs? */
 PUBLIC BOOLEAN LYForceSSLCookiesSecure = FALSE;
 PUBLIC BOOLEAN LYNoCc = FALSE;
-PUBLIC BOOLEAN LYPreparsedSource = FALSE;	/* Show source as preparsed?	 */
+PUBLIC BOOLEAN LYPreparsedSource = FALSE;	/* Show source as preparsed? */
 PUBLIC BOOLEAN LYPrependBaseToSource = TRUE;
 PUBLIC BOOLEAN LYPrependCharsetToSource = TRUE;
 PUBLIC BOOLEAN LYQuitDefaultYes = QUIT_DEFAULT_YES;
@@ -662,6 +664,7 @@ PRIVATE void free_lynx_globals NOARGS
 	FREE(links[i].lname);
     }
     nlinks = 0;
+    HTList_delete(LYcommandList());
 
     return;
 }
@@ -1492,7 +1495,7 @@ PUBLIC int main ARGS2(
 #ifdef USE_PRETTYSRC
     if ( (!Old_DTD) != TRUE ) /* skip if they are already initialized -HV */
 #endif
-    HTSwitchDTD(!Old_DTD);
+    HTSwitchDTD((BOOLEAN)!Old_DTD);
 
     /*
      * Set up the proper character set with the desired
@@ -1657,20 +1660,14 @@ PUBLIC int main ARGS2(
      *	Check the -popup command line toggle. - FM
      */
     if (LYUseDefSelPop == FALSE) {
-	if (LYSelectPopups == TRUE)
-	    LYSelectPopups = FALSE;
-	else
-	    LYSelectPopups = TRUE;
+	LYSelectPopups = !LYSelectPopups;
     }
 
     /*
      *	Check the -show_cursor command line toggle. - FM
      */
     if (LYUseDefShoCur == FALSE) {
-	if (LYShowCursor == TRUE)
-	    LYShowCursor = FALSE;
-	else
-	    LYShowCursor = TRUE;
+	LYShowCursor = !LYShowCursor;
     }
 
     /*
@@ -1715,16 +1712,19 @@ PUBLIC int main ARGS2(
 
 #if defined (__DJGPP__)
     if (watt_debug)
-      dbug_init();
+	dbug_init();
     sock_init();
 
     __system_flags =
-	__system_emulate_chdir	      |	/* handle `cd' internally */
-	__system_handle_null_commands |	/* ignore cmds with no effect */
-	__system_allow_long_cmds      |	/* handle commands > 126 chars	 */
-	__system_use_shell	      |	/* use $SHELL if set */
-	__system_allow_multiple_cmds  |	/* allow `cmd1; cmd2; ...' */
+	__system_emulate_chdir	      | /* handle `cd' internally */
+	__system_handle_null_commands | /* ignore cmds with no effect */
+	__system_allow_long_cmds      | /* handle commands > 126 chars	 */
+	__system_use_shell	      | /* use $SHELL if set */
+	__system_allow_multiple_cmds  | /* allow `cmd1; cmd2; ...' */
 	__system_redirect;		/* redirect internally */
+
+    /* This speeds up stat() tremendously */
+    _djstat_flags |= _STAT_INODE | _STAT_EXEC_MAGIC |_STAT_DIRSIZE;
 #endif  /* __DJGPP__ */
 
     /* trap interrupts */
diff --git a/src/LYMainLoop.c b/src/LYMainLoop.c
index b7eaf53a..916d649a 100644
--- a/src/LYMainLoop.c
+++ b/src/LYMainLoop.c
@@ -1151,7 +1151,7 @@ gettext("Enctype multipart/form-data not yet supported!  Cannot submit."));
 				 links[curdoc.link].form->name,
 				 links[curdoc.link].form->value,
 				 FALSE,
-				 (real_cmd==LYK_SUBMIT ||
+				 (BOOLEAN)(real_cmd==LYK_SUBMIT ||
 				  real_cmd==LYK_NOCACHE ||
 				  real_cmd==LYK_DOWNLOAD ||
 				  real_cmd==LYK_HEAD));
@@ -1660,6 +1660,30 @@ PRIVATE void handle_LYK_CLEAR_AUTH ARGS2(
     }
 }
 
+PRIVATE int handle_LYK_COMMAND ARGS1(
+    char *,	user_input_buffer)
+{
+    int ch;
+    Kcmd *mp;
+    char *src, *tmp;
+
+    *user_input_buffer = 0;
+    _statusline(": ");
+    if (LYgetstr(user_input_buffer, VISIBLE, MAX_LINE, RECALL_CMD) >= 0) {
+	src = LYSkipBlanks(user_input_buffer);
+	tmp = LYSkipNonBlanks(src);
+	*tmp = 0;
+	ch = ((mp = LYStringToKcmd(src)) != 0) ? mp->code : 0;
+	CTRACE((tfp, "LYK_COMMAND(%s.%s) = %d\n", src, tmp, ch));
+	if (ch == 0) {
+	    return *src ? -1 : 0;
+	}
+	/* FIXME: reuse the rest of the buffer for parameters */
+	return ch;
+    }
+    return 0;
+}
+
 PRIVATE void handle_LYK_COMMENT ARGS4(
     BOOLEAN *,	refresh_screen,
     char **,	owner_address_p,
@@ -4422,7 +4446,7 @@ PRIVATE void handle_LYK_SWITCH_DTD NOARGS
     } /* end if no bypass */
 #endif
     Old_DTD = !Old_DTD;
-    HTSwitchDTD(!Old_DTD);
+    HTSwitchDTD((BOOLEAN) !Old_DTD);
     HTUserMsg(Old_DTD ? USING_DTD_0 : USING_DTD_1);
 #ifdef SOURCE_CACHE
     if (canreparse) {
@@ -5094,18 +5118,10 @@ PUBLIC void handle_LYK_CHDIR NOARGS
 	if (!no_dired_support
 	 && (lynx_edit_mode || (LYIsUIPage(curdoc.address, UIP_DIRED_MENU)))) {
 	    char buf2[LY_MAXPATH];
-	    char* tmp;
 	    char* addr = NULL;
 
-	    strcpy(buf2, p);
 	    Current_Dir(buf2);
-	    tmp = wwwName(buf2);
-
-	    StrAllocCopy(addr, "file://localhost");
-	    StrAllocCat(addr, tmp);
-	    if (tmp != buf2)
-	    /*since wwwName is nop on unix and allocates something on VMS and DOS*/
-		FREE(tmp);
+	    LYLocalFileToURL(&addr, buf2);
 
 	    newdoc.address = addr;
 	    newdoc.isHEAD = FALSE;
@@ -6748,6 +6764,9 @@ new_cmd:  /*
 	    follow_col = -1;
 
 	switch(cmd) {
+	case -1:
+	    HTUserMsg(COMMAND_UNKNOWN);
+	    break;
 	case 0: /* unmapped character */
 	default:
 	    if (curdoc.link >= 0 && curdoc.link < nlinks &&
@@ -6763,10 +6782,11 @@ new_cmd:  /*
 		} else
 #endif
 		    show_main_statusline(links[curdoc.link], FOR_INPUT);
-	    } else if (more)
+	    } else if (more) {
 		HTInfoMsg(MOREHELP);
-	    else
+	    } else {
 		HTInfoMsg(HELP);
+	    }
 	    show_help = TRUE;
 
 	    if (TRACE) {
@@ -6776,6 +6796,10 @@ new_cmd:  /*
 	    }
 	    break;
 
+	case LYK_COMMAND:
+	    cmd = handle_LYK_COMMAND(user_input_buffer);
+	    goto new_cmd;
+
 	case LYK_INTERRUPT:
 	    /*
 	     *	No network transmission to interrupt - 'til we multithread.
@@ -7543,14 +7567,6 @@ PRIVATE void show_main_statusline ARGS2(
 	_statusline(HELP);
     }
 
-#if 0	/* messages now produced in show_formlink_statusline - kw */
-#ifdef INACTIVE_INPUT_STYLE_VH
-    if (textinput_redrawn) {
-	_statusline(gettext("Inactive text input, activate to edit (e.g., press ENTER)"));
-    }
-#endif
-#endif
-
     /* turn off cursor since now it's probably on statusline -HV */
     /* But not if LYShowCursor is on.  -show_cursor may be used as a
      * workaround to avoid putting the cursor in the last position, for
diff --git a/src/LYOptions.c b/src/LYOptions.c
index b126cd0f..9beb653f 100644
--- a/src/LYOptions.c
+++ b/src/LYOptions.c
@@ -2164,6 +2164,37 @@ PRIVATE int get_popup_choice_number ARGS1(
 						   " " : ""), \
 			   (choice + 1), value)
 
+PRIVATE void draw_option ARGS7(
+    WINDOW *,		win,
+    int,		entry,
+    int,		width,
+    BOOLEAN,		reverse,
+    int,		num_choices,
+    int,		number,
+    CONST char *,	value)
+{
+    char Cnum[64];
+
+    FormatChoiceNum(Cnum, number, "");
+#ifdef USE_SLANG
+    SLsmg_gotorc(win->top_y + entry, (win->left_x + 2));
+    addstr(Cnum);
+    if (reverse)
+	SLsmg_set_color(2);
+    LYaddnstr(value, width);
+    if (reverse)
+	SLsmg_set_color(0);
+#else
+    wmove(win, entry, 2);
+    waddstr(win, Cnum);
+    if (reverse)
+	wstart_reverse(win);
+    LYpaddstr(win, width, value);
+    if (reverse)
+	wstop_reverse(win);
+#endif /* USE_SLANG */
+}
+
 /*
  *  This function offers the choices for values of an
  *  option via a popup window which functions like
@@ -2185,9 +2216,7 @@ PUBLIC int popup_choice ARGS7(
     int lx = (column >= 0 ? column : (COL_OPTION_VALUES - 1));
     int c = 0, cmd = 0, i = 0, j = 0;
     int orig_choice = cur_choice;
-#ifndef USE_SLANG
     WINDOW * form_window;
-#endif /* !USE_SLANG */
     int num_choices = 0, top, bottom, length = -1;
     unsigned width = 0;
     CONST char ** Cptr = choices;
@@ -2329,27 +2358,8 @@ PUBLIC int popup_choice ARGS7(
      *	Set up the overall window, including the boxing characters ('*'),
      *	if it all fits.  Otherwise, set up the widest window possible. - FM
      */
-#ifdef USE_SLANG
-    SLsmg_fill_region(top, lx - 1, bottom - top, (Lnum + width + 4), ' ');
-#else
-    if (!(form_window = newwin(bottom - top, (Lnum + width + 4),
-			       top, (lx - 1))) &&
-	!(form_window = newwin(bottom - top, 0, top, 0))) {
-	HTAlert(POPUP_FAILED);
+    if ((form_window = LYstartPopup(top, lx, bottom - top, Lnum + width)) == 0)
 	return(orig_choice);
-    }
-    scrollok(form_window, TRUE);
-#ifdef PDCURSES
-    keypad(form_window, TRUE);
-#endif /* PDCURSES */
-#if defined(NCURSES) || defined(PDCURSES)
-    LYsubwindow(form_window);
-#endif
-#if defined(HAVE_GETBKGD)/* not defined in ncurses 1.8.7 */
-    wbkgd(form_window, getbkgd(stdscr));
-    wbkgdset(form_window, getbkgd(stdscr));
-#endif
-#endif /* USE_SLANG */
 
     /*
      *	Clear the command line and write
@@ -2395,105 +2405,32 @@ redraw:
      */
     for (i = 0; i <= num_choices; i++) {
 	if (i >= window_offset && i - window_offset < length) {
-	    FormatChoiceNum(Cnum, i, "");
-#ifdef USE_SLANG
-	    SLsmg_gotorc(top + ((i + 1) - window_offset), (lx - 1 + 2));
-	    addstr(Cnum);
-	    LYaddnstr(Cptr[i], width);
-#else
-	    wmove(form_window, ((i + 1) - window_offset), 2);
-	    wclrtoeol(form_window);
-	    waddstr(form_window, Cnum);
-	    LYwaddstr(form_window, Cptr[i]);
-#endif /* USE_SLANG */
+	    draw_option (form_window, ((i + 1) - window_offset), width, FALSE,
+			 num_choices, i, Cptr[i]);
 	}
     }
-#ifdef USE_SLANG
-    SLsmg_draw_box(top, (lx - 1), (bottom - top), (Lnum + width + 4));
-#else
-#ifdef VMS
-    VMSbox(form_window, (bottom - top), (Lnum + width + 4));
-#else
     LYbox(form_window, FALSE);
-#endif /* VMS */
-    wrefresh(form_window);
-#endif /* USE_SLANG */
     Cptr = NULL;
 
     /*
      *	Loop on user input.
      */
     while (cmd != LYK_ACTIVATE) {
+	int row = ((i + 1) - window_offset);
+
 	/*
 	 *  Unreverse cur choice.
 	 */
 	if (Cptr != NULL) {
-	    FormatChoiceNum(Cnum, i, "");
-#ifdef USE_SLANG
-	    SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 2));
-	    addstr(Cnum);
-	    LYaddnstr(Cptr[i], width);
-#else
-	    wmove(form_window, ((i + 1) - window_offset), 2);
-	    waddstr(form_window, Cnum);
-	    LYwaddstr(form_window, Cptr[i]);
-#endif /* USE_SLANG */
+	    draw_option (form_window, row, width, FALSE,
+			 num_choices, i, Cptr[i]);
 	}
 	Cptr = choices;
 	i = cur_choice;
-	FormatChoiceNum(Cnum, i, "");
-#ifdef USE_SLANG
-	SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 2));
-	addstr(Cnum);
-	SLsmg_set_color(2);
-	LYaddnstr(Cptr[i], width);
-	SLsmg_set_color(0);
-	/*
-	 *  If LYShowCursor is ON, move the cursor to the left
-	 *  of the current choice, so that blind users, who are
-	 *  most likely to have LYShowCursor ON, will have it's
-	 *  string spoken or passed to the braille interface as
-	 *  each choice is made current.  Otherwise, move it to
-	 *  the bottom, right column of the screen, to "hide"
-	 *  the cursor as for the main document, and let sighted
-	 *  users rely on the current choice's highlighting or
-	 *  color without the distraction of a blinking cursor
-	 *  in the window. - FM
-	 */
-	if (LYShowCursor)
-	    SLsmg_gotorc((top + ((i + 1) - window_offset)), (lx - 1 + 1));
-	else
-	    SLsmg_gotorc((LYlines - 1), (LYcols - 1));
-	SLsmg_refresh();
-#else
-	wmove(form_window, ((i + 1) - window_offset), 2);
-	waddstr(form_window, Cnum);
-#if defined(WIN_EX)	/* 1997/10/18 (Sat) 00:10:51 */
-	wattron(form_window, A_REVERSE);
-#else
-	wstart_reverse(form_window);
-#endif
-	LYwaddstr(form_window, Cptr[i]);
-#if defined(WIN_EX)	/* 1997/10/18 (Sat) 00:10:58 */
-	wattroff(form_window, A_REVERSE);
-#else
-	wstop_reverse(form_window);
-#endif
-	/*
-	 *  If LYShowCursor is ON, move the cursor to the left
-	 *  of the current choice, so that blind users, who are
-	 *  most likely to have LYShowCursor ON, will have it's
-	 *  string spoken or passed to the braille interface as
-	 *  each choice is made current.  Otherwise, leave it to
-	 *  the right of the current choice, since we can't move
-	 *  it out of the window, and let sighted users rely on
-	 *  the highlighting of the current choice without the
-	 *  distraction of a blinking cursor preceding it. - FM
-	 */
-	if (LYShowCursor)
-	    wmove(form_window, ((i + 1) - window_offset), 1);
-	wrefresh(form_window);
-#endif /* USE_SLANG  */
+	row = ((i + 1) - window_offset);
+	draw_option (form_window, row, width, TRUE,
+		     num_choices, i, Cptr[i]);
+	LYstowCursor(form_window, row, 1);
 
 	term_options = FALSE;
 	c = LYgetch_choice();
@@ -2501,7 +2438,7 @@ redraw:
 	    cmd = LYK_QUIT;
 #ifndef USE_SLANG
 	} else if (c == MOUSE_KEY) {
-	    if ((cmd = fancy_mouse(form_window, i + 1 - window_offset, &cur_choice)) < 0)
+	    if ((cmd = fancy_mouse(form_window, row, &cur_choice)) < 0)
 		goto redraw;
 	    if  (cmd == LYK_ACTIVATE)
 		break;
@@ -3122,13 +3059,7 @@ restore_popup_statusline:
 	}
     }
     FREE(popup_status_msg);
-#ifndef USE_SLANG
-    touchwin(stdscr);
-    delwin(form_window);
-#if defined(NCURSES) || defined(PDCURSES)
-    LYsubwindow(0);
-#endif
-#endif /* !USE_SLANG */
+    LYstopPopup();
 
     if (disabled || term_options) {
 	_statusline("");
diff --git a/src/LYStrings.c b/src/LYStrings.c
index 723345d7..b8ed9f48 100644
--- a/src/LYStrings.c
+++ b/src/LYStrings.c
@@ -14,6 +14,7 @@
 #include <HTAlert.h>
 #include <HTString.h>
 #include <LYCharUtils.h>
+#include <HTList.h>
 #include <HTParse.h>
 #ifdef USE_MOUSE
 #include <LYMainLoop.h>
@@ -46,13 +47,7 @@ extern BOOL HTPassHighCtrlRaw;
 /*Allowing the user to press tab when entering URL to get the closest
   match in the closet*/
 #define LYClosetSize 100
-static char* LYCloset[LYClosetSize]; /* Closet with LYClosetSize shelves */
-static int LYClosetTop = 0;		/*Points to the next empty shelf */
-
-PRIVATE char *LYFindInCloset PARAMS((
-	char*		base));
-PRIVATE void LYAddToCloset PARAMS((
-	char*		str));
+static HTList *URL_edit_history;
 
 /* If you want to add mouse support for some new platform, it's fairly
 ** simple to do.  Once you've determined the X and Y coordinates of
@@ -259,6 +254,60 @@ PUBLIC int fancy_mouse ARGS3(
     return cmd;
 }
 
+/*
+ * Remove the oldest item in the closet
+ */
+PRIVATE void LYRemoveFromCloset NOARGS
+{
+    char *data = HTList_removeFirstObject(URL_edit_history);
+
+    if (data != 0)
+	FREE(data);
+}
+
+PUBLIC void LYOpenCloset NOARGS
+{
+    URL_edit_history = HTList_new();
+}
+
+PUBLIC void LYCloseCloset NOARGS
+{
+    while (!HTList_isEmpty(URL_edit_history) ) {
+	LYRemoveFromCloset();
+    }
+    HTList_delete(URL_edit_history);	/* should already be empty */
+}
+
+/*
+ * Strategy:  We begin at the top and search downwards.  We return the first
+ * match, i.e., the newest since we search from the top.  This should be made
+ * more intelligent, but works for now.
+ */
+PRIVATE char * LYFindInCloset ARGS1(char*, base)
+{
+    HTList *list = URL_edit_history;
+    char *data;
+    unsigned len = strlen(base);
+
+    while (!HTList_isEmpty(list)) {
+	data = HTList_nextObject(list);
+	if (!strncmp(base, data, len))
+	    return(data);
+    }
+
+    return(0);
+}
+
+PRIVATE void LYAddToCloset ARGS1(char*, str)
+{
+    char *data = NULL;
+
+    StrAllocCopy(data, str);
+    HTList_addObject(URL_edit_history, data);
+    while (HTList_count(URL_edit_history) > LYClosetSize)
+	LYRemoveFromCloset();
+}
+
 
 PRIVATE int XYdist ARGS5(
     int,	x1,
@@ -645,7 +694,6 @@ PUBLIC int LYmbcsstrlen ARGS3(
 #endif /* HAVE_KEYPAD */
 #endif /* !defined(GetChar) */
 
-#if defined(NCURSES) || defined(PDCURSES)
 /*
  * Workaround a bug in ncurses order-of-refresh by setting a pointer to
  * the topmost window that should be displayed.
@@ -653,14 +701,24 @@ PUBLIC int LYmbcsstrlen ARGS3(
  * FIXME: the associated call on 'keypad()' is not needed for Unix, but
  * something in the OS/2 EMX port requires it.
  */
+#ifndef USE_SLANG
 PRIVATE WINDOW *my_subwindow;
 
 PUBLIC void LYsubwindow ARGS1(WINDOW *, param)
 {
-#if !defined(WIN_EX)
-    if ((my_subwindow = param) != 0)
+    if ((my_subwindow = param) != 0) {
+#if defined(NCURSES) || defined(PDCURSES)
 	keypad(param, TRUE);
+#if defined(HAVE_GETBKGD) /* not defined in ncurses 1.8.7 */
+	wbkgd(my_subwindow, getbkgd(stdscr));
+	wbkgdset(my_subwindow, getbkgd(stdscr));
+#endif
 #endif
+	scrollok(my_subwindow, TRUE);
+    } else {
+	touchwin(stdscr);
+	delwin(my_subwindow);
+    }
 }
 #endif
 
@@ -3218,20 +3276,291 @@ PUBLIC void LYRefreshEdit ARGS1(
     refresh();
 }
 
+PRIVATE void reinsertEdit ARGS2(
+    EditFieldData *,	edit,
+    char *,		result)
+{
+    if (result != 0) {
+	LYEdit1(edit, '\0', LYE_ERASE, FALSE);
+	while (*result != '\0') {
+	    LYLineEdit(edit, (int)(*result), FALSE);
+	    result++;
+	}
+    }
+}
+
+PRIVATE HTList *whichRecall ARGS1(
+    RecallType,		recall)
+{
+    switch (recall) {
+    case RECALL_CMD:
+	return LYcommandList();
+    default:
+	return URL_edit_history;
+    }
+}
+
+PRIVATE int caselessCmpList ARGS2(
+    CONST void *,	a,
+    CONST void *,	b)
+{
+    return strcasecomp(*(CONST char *CONST *)a, *(CONST char *CONST *)b);
+}
+
+PRIVATE int normalCmpList ARGS2(
+    CONST void *,	a,
+    CONST void *,	b)
+{
+    return strcmp(*(CONST char *CONST *)a, *(CONST char *CONST *)b);
+}
+
+PRIVATE char **sortedList ARGS2(
+    HTList *,	list,
+    BOOL,	ignorecase)
+{
+    unsigned count = HTList_count(list);
+    unsigned n = 0;
+    char **result = calloc(count + 1, sizeof(char *));
+
+    if (result == 0) 
+	outofmem(__FILE__, "sortedList");
+
+    while (!HTList_isEmpty(list))
+	result[n++] = HTList_nextObject(list);
+    if (count > 1) {
+	qsort((char *)result, count, sizeof(*result),
+	      ignorecase ? caselessCmpList : normalCmpList);
+    }
+
+    return result;
+}
+
+PRIVATE int lengthOfList ARGS1(
+    char **,	list)
+{
+    int result = 0;
+
+    while (*list++ != 0)
+	result++;
+    return result;
+}
+
+PRIVATE int widestInList ARGS1(
+    char **,	list)
+{
+    int result = 0;
+    int check;
+
+    while (*list != 0) {
+	check = strlen(*list++);
+	if (check > result)
+	    result = check;
+    }
+    return result;
+}
+
+PRIVATE void draw_option ARGS5(
+	WINDOW *,	win,
+	int,		entry,
+	int,		width,
+	BOOL,		reversed,
+	char *,		value)
+{
+#ifdef USE_SLANG
+    if (reversed)
+	SLsmg_gotorc((win->top_y + entry), win->left_x + 2);
+    SLsmg_gotorc(win->top_y + entry, win->left_x + 2);
+    SLsmg_write_nstring(value, win->width);
+    if (reversed)
+	SLsmg_set_color(0);
+#else
+    wmove(win, entry, 2);
+    if (reversed)
+	wstart_reverse(win);
+    LYpaddstr(win, width, value);
+    if (reversed)
+	wstop_reverse(win);
+#endif /* USE_SLANG */
+}
+
+PRIVATE int LYgetMenuKeycode ARGS3(
+    WINDOW *,	win,
+    int,	row,
+    int *,	cur_selectionp)
+{
+    int cmd;
+    int c = LYgetch_choice();
+
+    if (c == 7) {		/* Control-C or Control-G */
+	cmd = LYK_QUIT;
+#ifndef USE_SLANG
+    } else if (c == MOUSE_KEY) {
+	cmd = fancy_mouse(win, row, cur_selectionp);
+#endif
+    } else {
+	cmd = LKC_TO_LAC(keymap,c);
+    }
+#ifdef VMS
+    if (HadVMSInterrupt) {
+	HadVMSInterrupt = FALSE;
+	cmd = LYK_QUIT;
+    }
+#endif /* VMS */
+    return cmd;
+}
+
+PRIVATE void completeFromPopup ARGS2(
+    EditFieldData *,	edit,
+    char **,		data)
+{
+    WINDOW *win;
+    int top;
+    int lx = 2;
+    int width = widestInList(data);
+    int num_options = lengthOfList(data);
+    int height = num_options + 2;
+    int i, row, length;
+    int cmd = LYK_UNKNOWN;
+    int window_offset = 0;
+    int cur_selection = 0;
+    int old_selection = -1;
+    int old_y, old_x;
+
+#ifdef USE_SLANG
+    old_y = SLsmg_get_row();
+    old_x = SLsmg_get_column();
+#else
+    getyx(stdscr, old_y, old_x);
+#endif
+
+    if (height > LYlines - 2)
+    	height = LYlines - 2;
+    length = height - 2;
+    top = LYlines - height - 1;
+
+    while (cur_selection < num_options
+     && strcasecomp(data[cur_selection], edit->buffer) < 0)
+	cur_selection++;
+    if (cur_selection + 1 - window_offset >= length) {
+	window_offset = cur_selection + 1 - length;
+    }
+
+    /* construct a popup window */
+    if ((win = LYstartPopup(top, lx, height, width)) != 0) {
+	/* handle events in the popup window */
+redraw:
+	LYbox(win, FALSE);
+	for (i = 0; i < num_options; i++) {
+	    row = ((i + 1) - window_offset);
+	    if (row >= 1 && row <= length)
+		draw_option(win, row, width, FALSE, data[i]);
+	}
+	old_selection = -1;
+
+	while (cmd != LYK_ACTIVATE) {
+
+	    if (old_selection >= 0
+	     && old_selection != cur_selection) {
+		row = ((old_selection + 1) - window_offset);
+		draw_option(win, row, width, FALSE, data[old_selection]);
+	    }
+	    old_selection = cur_selection;
+
+	    row = ((cur_selection + 1) - window_offset);
+	    draw_option(win, row, width, TRUE, data[cur_selection]);
+	    LYstowCursor(win, row, 1);
+	    cmd = LYgetMenuKeycode(win, row, &cur_selection);
+
+	    /* FIXME: this whole switch statement should be integrated with
+	     * the redundant logic in LYForms.c and LYOptions.c (there's no
+	     * point in having multiple copies of code that scroll through
+	     * a popup menu).
+	     */
+	    switch (cmd) {
+	    case -1:
+		goto redraw;
+
+	    case LYK_HOME:
+		cur_selection = 0;
+		if (window_offset > 0) {
+		    window_offset = 0;
+		    goto redraw;
+		}
+		break;
+
+	    case LYK_END:
+		cur_selection = num_options - 1;
+		if (window_offset != (num_options - length)) {
+		    window_offset = (num_options - length);
+		    goto redraw;
+		}
+		break;
+
+	    case LYK_PREV_LINK:
+	    case LYK_LPOS_PREV_LINK:
+	    case LYK_FASTBACKW_LINK:
+	    case LYK_UP_LINK:
+		if (cur_selection > 0)
+		    cur_selection--;
+
+		/*
+		 *  Scroll the window up if necessary.
+		 */
+		if ((cur_selection - window_offset) < 0) {
+		    window_offset--;
+		    goto redraw;
+		}
+		break;
+
+	    case LYK_NEXT_LINK:
+	    case LYK_LPOS_NEXT_LINK:
+	    case LYK_FASTFORW_LINK:
+	    case LYK_DOWN_LINK:
+		if (cur_selection < num_options - 1)
+		    cur_selection++;
+		/*
+		 *  Scroll the window down if necessary
+		 */
+		if ((cur_selection - window_offset) >= length) {
+		    window_offset++;
+		    goto redraw;
+		}
+		break;
+
+	    case LYK_QUIT:
+	    case LYK_ABORT:
+	    case LYK_PREV_DOC:
+		cur_selection = -1;
+		cmd = LYK_ACTIVATE; /* to exit */
+		break;
+	    }
+	}
+	LYstopPopup();
+    }
+    if (cur_selection >= 0)
+	reinsertEdit(edit, data[cur_selection]);
+
+#ifdef USE_SLANG
+    SLsmg_gotorc(old_y, old_x);
+#else
+    wmove(stdscr, old_y, old_x);
+#endif
+}
+
 #define CurModif MyEdit.current_modifiers
 
 PUBLIC int LYgetstr ARGS4(
 	char *,		inputline,
 	int,		hidden,
 	size_t,		bufsize,
-	int,		recall)
+	RecallType,	recall)
 {
     int x, y, MaxStringSize;
     int ch;
-    int xlec;
+    int xlec = -2;
+    int last_xlec = -1;
     int last_xlkc = -1;
     EditFieldData MyEdit;
-    char *res;
 #ifdef SUPPORT_MULTIBYTE_EDIT
     BOOL refresh_mb = TRUE;
 #endif /* SUPPORT_MULTIBYTE_EDIT */
@@ -3278,7 +3607,7 @@ again:
 	    ch = 7;
 	}
 
-	if (recall && (ch == UPARROW || ch == DNARROW)) {
+	if (recall != NORECALL && (ch == UPARROW || ch == DNARROW)) {
 	    LYstrncpy(inputline, MyEdit.buffer, (int)bufsize);
 	    LYAddToCloset(MyEdit.buffer);
 	    return(ch);
@@ -3294,6 +3623,7 @@ again:
 	if (LKC_TO_LAC(keymap,ch) == LYK_REFRESH)
 	    goto again;
 #endif
+	last_xlec = xlec;
 	xlec = EditBinding(ch);
 	if ((xlec & LYE_DF) && !(xlec & LYE_FORM_LAC)) {
 	    last_xlkc = ch;
@@ -3315,18 +3645,15 @@ again:
 	    CurModif |= LKC_MOD2;
 	    break;
 	case LYE_TAB:
-	    ch = '\t';
-	    /* This used to fall through to the next case before
-	     tab completion was introduced */
-	    res = LYFindInCloset(MyEdit.buffer);
-	    if (res != 0) {
-		LYEdit1(&MyEdit, '\0', LYE_ERASE, FALSE);
-		while (*res != '\0') {
-		    LYLineEdit(&MyEdit, (int)(*res), FALSE);
-		    res++;
+	    if (xlec == last_xlec) {
+		HTList *list = whichRecall(recall);
+		if (!HTList_isEmpty(list)) {
+		    char **data = sortedList(list, recall == RECALL_CMD);
+		    completeFromPopup(&MyEdit, data);
+		    FREE(data);
 		}
 	    } else {
-		ch = '\0';
+		reinsertEdit(&MyEdit, LYFindInCloset(MyEdit.buffer));
 	    }
 	    break;
 
@@ -3554,58 +3881,6 @@ PUBLIC char * LYno_attr_char_case_strstr ARGS2(
     return(NULL);
 }
 
-PUBLIC void LYOpenCloset NOARGS
-{
-    /* We initialize the list-looka-like, i.e., the Closet */
-    int i = 0;
-    while(i < LYClosetSize){
-	LYCloset[i] = NULL;
-	i = i + 1;
-    }
-    LYClosetTop = 0;
-}
-
-PUBLIC void LYCloseCloset NOARGS
-{
-    int i = 0;
-
-    /* Clean up the list-looka-like, i.e., the Closet */
-    while (i < LYClosetSize){
-	FREE(LYCloset[i]);
-	i = i + 1;
-    }
-}
-
-/*
- * Strategy:  We begin at the top and search downwards.  We return the first
- * match, i.e., the newest since we search from the top.  This should be made
- * more intelligent, but works for now.
- */
-PRIVATE char * LYFindInCloset ARGS1(char*, base)
-{
-    int shelf;
-    unsigned len = strlen(base);
-
-    shelf = (LYClosetTop - 1 + LYClosetSize) % LYClosetSize;
-
-    while (LYCloset[shelf] != NULL){
-	if (!strncmp(base, LYCloset[shelf], len)) {
-	    return(LYCloset[shelf]);
-	}
-	shelf = (shelf - 1 + LYClosetSize) % LYClosetSize;
-    }
-    return(0);
-}
-
-PRIVATE void LYAddToCloset ARGS1(char*, str)
-{
-    LYCloset[LYClosetTop] = NULL;
-    StrAllocCopy(LYCloset[LYClosetTop], str);
-
-    LYClosetTop = (LYClosetTop + 1) % LYClosetSize;
-    FREE(LYCloset[LYClosetTop]);
-}
-
 /*
  *  LYno_attr_char_strstr will find the first occurrence of the
  *  string pointed to by tarptr in the string pointed to by chptr.
diff --git a/src/LYStrings.h b/src/LYStrings.h
index 32aeed8c..1d2f9131 100644
--- a/src/LYStrings.h
+++ b/src/LYStrings.h
@@ -3,6 +3,12 @@
 
 #include <LYCurses.h>
 
+typedef enum {
+    NORECALL = 0
+    , RECALL
+    , RECALL_CMD
+} RecallType;
+
 /*  UPPER8(ch1,ch2) is an extension of (TOUPPER(ch1) - TOUPPER(ch2))  */
 extern int UPPER8  PARAMS((
 	int		ch1,
@@ -26,7 +32,7 @@ extern int LYgetstr PARAMS((
 	char *		inputline,
 	int		hidden,
 	size_t		bufsize,
-	int		recall));
+	RecallType	recall));
 extern char *LYstrsep PARAMS((
 	char **		stringp,
 	CONST char *	delim));
@@ -156,8 +162,6 @@ extern void base64_encode PARAMS((char * dest, char * src, int len));
 
 #define VISIBLE  0
 #define HIDDEN   1
-#define NORECALL 0
-#define RECALL   1
 
 #ifdef EXP_ALT_BINDINGS
 /*  Enable code implementing additional, mostly emacs-like, line-editing
diff --git a/src/LYStyle.c b/src/LYStyle.c
index 517e1832..42c98a67 100644
--- a/src/LYStyle.c
+++ b/src/LYStyle.c
@@ -1,6 +1,6 @@
 /* character level styles for Lynx
  * (c) 1996 Rob Partington -- donated to the Lyncei (if they want it :-)
- * @Id: LYStyle.c 1.36 Fri, 23 Jun 2000 08:15:08 -0700 dickey @
+ * @Id: LYStyle.c 1.37 Sun, 16 Jul 2000 20:16:13 -0700 dickey @
  */
 #include <HTUtils.h>
 #include <HTML.h>
@@ -25,9 +25,11 @@
 
 #ifdef USE_COLOR_STYLE
 
+PRIVATE void style_initialiseHashTable NOPARAMS;
+
 /* stack of attributes during page rendering */
 PUBLIC int last_styles[128];
-PUBLIC int last_colorattr_ptr=0;
+PUBLIC int last_colorattr_ptr = 0;
 
 PUBLIC bucket hashStyles[CSHASHSIZE];
 PUBLIC bucket special_bucket =
@@ -63,7 +65,6 @@ static char *Mono_Strings[7] =
 
 /* Remember the hash codes for common elements */
 PUBLIC int	s_alink  = NOSTYLE, s_a     = NOSTYLE, s_status = NOSTYLE,
-		s_label  = NOSTYLE, s_value = NOSTYLE, s_high   = NOSTYLE,
 		s_normal = NOSTYLE, s_alert = NOSTYLE, s_title  = NOSTYLE,
 #ifdef USE_SCROLLBAR
 		s_sb_bar = NOSTYLE, s_sb_bg = NOSTYLE,
@@ -80,7 +81,10 @@ PRIVATE unsigned char our_pairs[2][MAX_COLOR][MAX_COLOR];
 PRIVATE void parse_attributes ARGS5(char*,mono,char*,fg,char*,bg,int,style,char*,element)
 {
     int i;
-    int mA = 0, fA = default_fg, bA = default_bg, cA = A_NORMAL;
+    int mA = 0;
+    short fA = default_fg;
+    short bA = default_bg;
+    int cA = A_NORMAL;
     int newstyle = hash_code(element);
 
     CTRACE((tfp, "CSS(PA):style d=%d / h=%d, e=%s\n", style, newstyle,element));
@@ -329,43 +333,54 @@ PRIVATE void free_colorstylestuff NOARGS
  */
 PRIVATE void initialise_default_stylesheet NOARGS
 {
+    static CONST char *table[] = {
+	"a:bold:green",
+	"alert:bold:yellow:red",
+	"alink:reverse:yellow:black",
+	"label:normal:magenta",
+	"status:reverse:yellow:blue",
+	"title:normal:magenta",
+	"whereis:reverse+underline:magenta:cyan"
+    };
+    unsigned n;
+    char temp[80];
+    for (n = 0; n < TABLESIZE(table); n++) {
+	parse_style(strcpy(temp, table[n]));
+    }
 }
 
 /* Set all the buckets in the hash table to be empty */
-PUBLIC void style_initialiseHashTable NOARGS
+PRIVATE void style_initialiseHashTable NOARGS
 {
-	int i;
-	static int firsttime = 1;
+    int i;
+    static int firsttime = 1;
 
-	for (i = 0; i <CSHASHSIZE; i++)
-	{
-	    if (firsttime)
-		hashStyles[i].name = NULL;
-	    else
-		FREE(hashStyles[i].name);
-	    hashStyles[i].color = -1;
-	    hashStyles[i].cattr = -1;
-	    hashStyles[i].mono  = -1;
-	}
-	if (firsttime) {
-	    firsttime = 0;
+    for (i = 0; i <CSHASHSIZE; i++)
+    {
+	if (firsttime)
+	    hashStyles[i].name = NULL;
+	else
+	    FREE(hashStyles[i].name);
+	hashStyles[i].color = 0;
+	hashStyles[i].cattr = 0;
+	hashStyles[i].mono  = 0;
+    }
+    if (firsttime) {
+	firsttime = 0;
 #ifdef LY_FIND_LEAKS
-	    atexit(free_colorstylestuff);
+	atexit(free_colorstylestuff);
 #endif
-	}
-	s_high   = hash_code("high");
-	s_alink  = hash_code("alink");
-	s_value  = hash_code("value");
-	s_label  = hash_code("label");
-	s_a      = hash_code("a");
-	s_status = hash_code("status");
-	s_alert  = hash_code("alert");
-	s_title  = hash_code("title");
+    }
+    s_alink  = hash_code("alink");
+    s_a      = hash_code("a");
+    s_status = hash_code("status");
+    s_alert  = hash_code("alert");
+    s_title  = hash_code("title");
 #ifdef USE_SCROLLBAR
-	s_sb_bar = hash_code("scroll.bar");
-	s_sb_bg  = hash_code("scroll.back");
-	s_sb_aa  = hash_code("scroll.arrow");
-	s_sb_naa = hash_code("scroll.noarrow");
+    s_sb_bar = hash_code("scroll.bar");
+    s_sb_bg  = hash_code("scroll.back");
+    s_sb_aa  = hash_code("scroll.arrow");
+    s_sb_naa = hash_code("scroll.noarrow");
 #endif
 }
 
@@ -377,33 +392,35 @@ HTList *lss_styles = NULL;
 
 PUBLIC void parse_userstyles NOARGS
 {
-	char *name;
-	HTList *cur = lss_styles;
-	colorPairs = 0;
-	style_initialiseHashTable();
+    char *name;
+    HTList *cur = lss_styles;
 
-	/* set our styles to be the same as vanilla-curses-lynx */
-	initialise_default_stylesheet();
+    colorPairs = 0;
+    style_initialiseHashTable();
 
-	while ((name = HTList_nextObject(cur)) != NULL)
-	{
-		CTRACE((tfp, "LSS:%s\n", name ? name : "!?! empty !?!"));
-		if (name != NULL)
-		    parse_style(name);
+    /* set our styles to be the same as vanilla-curses-lynx */
+    if (HTList_isEmpty(cur)) {
+	initialise_default_stylesheet();
+    } else {
+	while ((name = HTList_nextObject(cur)) != NULL) {
+	    CTRACE((tfp, "LSS:%s\n", name ? name : "!?! empty !?!"));
+	    if (name != NULL)
+		parse_style(name);
 	}
+    }
 }
 
 
 /* Add a STYLE: option line to our list */
-PUBLIC void HStyle_addStyle ARGS1(char*,buffer)
+PRIVATE void HStyle_addStyle ARGS1(char*,buffer)
 {
-	char *name = NULL;
-	StrAllocCopy(name, buffer);
-	if (lss_styles == NULL)
-		lss_styles = HTList_new();
-	strtolower(name);
-	CTRACE((tfp, "READCSS:%s\n", name ? name : "!?! empty !?!"));
-	HTList_addObject (lss_styles, name);
+    char *name = NULL;
+    StrAllocCopy(name, buffer);
+    if (lss_styles == NULL)
+	lss_styles = HTList_new();
+    strtolower(name);
+    CTRACE((tfp, "READCSS:%s\n", name ? name : "!?! empty !?!"));
+    HTList_addObject (lss_styles, name);
 }
 
 PUBLIC void style_deleteStyleList NOARGS
@@ -415,18 +432,6 @@ PUBLIC void style_deleteStyleList NOARGS
     lss_styles = NULL;
 }
 
-char* default_stylesheet[] = {
-	"a:bold", "em:bold", "strong:bold", "b:bold", "i:bold",
-	"alink:reverse", "status:reverse", NULL
-};
-
-PUBLIC void style_defaultStyleSheet NOARGS
-{
-	int i;
-	for (i = 0; default_stylesheet[i]; i++)
-		HStyle_addStyle(default_stylesheet[i]);
-}
-
 PRIVATE int style_readFromFileREC ARGS2(char*, file, int, toplevel)
 {
     FILE *fh;
@@ -440,13 +445,13 @@ PRIVATE int style_readFromFileREC ARGS2(char*, file, int, toplevel)
     if (!fh)
     {
 	/* this should probably be an alert or something */
-	CTRACE((tfp, "CSS:Can't open style file '%s', using defaults\n", file));
+	CTRACE((tfp, "CSS:Can't open style file %s, using defaults\n", file));
 	return -1;
     }
 
     if (toplevel) {
-      style_initialiseHashTable();
-      style_deleteStyleList();
+	style_initialiseHashTable();
+	style_deleteStyleList();
     }
 
     while (LYSafeGets(&buffer, fh) != NULL)
@@ -459,10 +464,6 @@ PRIVATE int style_readFromFileREC ARGS2(char*, file, int, toplevel)
 	else if (buffer[0] != '#' && (len = strlen(buffer)) > 0)
 	    HStyle_addStyle(buffer);
     }
-    /* the default styles are added after the user styles in order
-    ** that they come before them  <grin>  RP
-    */
-    /*	style_defaultStyleSheet(); */
 
     fclose (fh);
     if (toplevel && LYCursesON)
diff --git a/src/LYStyle.h b/src/LYStyle.h
index 6df504cf..253ec986 100644
--- a/src/LYStyle.h
+++ b/src/LYStyle.h
@@ -16,12 +16,8 @@ extern HTCharStyle displayStyles[DSTYLE_ELEMENTS];
 extern int lynx_has_color;
 
 /* Set all the buckets in the hash table to be empty */
-extern void style_initialiseHashTable NOPARAMS;
-
 extern void parse_userstyles NOPARAMS;
 
-extern void HStyle_addStyle PARAMS((char* buffer));
-
 extern void style_deleteStyleList NOPARAMS;
 
 extern void style_defaultStyleSheet NOPARAMS;
diff --git a/src/LYUtils.c b/src/LYUtils.c
index 5a298057..896ff407 100644
--- a/src/LYUtils.c
+++ b/src/LYUtils.c
@@ -4385,7 +4385,7 @@ PUBLIC void LYConvertToURL ARGS2(
 #endif /* DOSPATH */
 
     *AllocatedString = NULL;  /* so StrAllocCopy doesn't free it */
-    StrAllocCopy(*AllocatedString,"file://localhost");
+    StrAllocCopy(*AllocatedString, "file://localhost");
 
     if (*old_string != '/') {
 	char *fragment = NULL;
@@ -4551,7 +4551,7 @@ have_VMS_URL:
 	    chk = GetFullPathNameA(old_string, MAX_PATH + 1,
 			fullpath, &filepart);
 	    if (chk != 0) {
-		StrAllocCopy(temp, HTDOS_wwwName(fullpath));
+		StrAllocCopy(temp, wwwName(fullpath));
 		StrAllocCat(*AllocatedString, temp);
 		FREE(temp);
 		CTRACE((tfp, "Converted '%s' to '%s'\n",
@@ -4607,11 +4607,7 @@ have_VMS_URL:
 	     */
 #if defined (DOSPATH) || defined (__EMX__) || defined (WIN_EX)
 	    if (old_string[1] != ':' && old_string[1] != '|') {
-#ifdef DOSPATH
-		StrAllocCopy(temp, HTDOS_wwwName(curdir));
-#else
 		StrAllocCopy(temp, wwwName(curdir));
-#endif
 		LYAddHtmlSep(&temp);
 		LYstrncpy(curdir, temp, (sizeof(curdir) - 1));
 		StrAllocCat(temp, old_string);
@@ -7184,6 +7180,8 @@ PUBLIC void LYLocalFileToURL ARGS2(
     if (!LYIsHtmlSep(*leaf))
 	LYAddHtmlSep(target);
     StrAllocCat(*target, leaf);
+    if (leaf != source)
+    	FREE(leaf);
 }
 
 #ifdef NOTDEFINED
diff --git a/userdefs.h b/userdefs.h
index 72979b4a..f8384040 100644
--- a/userdefs.h
+++ b/userdefs.h
@@ -1345,11 +1345,11 @@
  * the version definition with the Project Version on checkout.  Just
  * ignore it. - kw */
 /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
-#define LYNX_VERSION "2.8.4dev.4"
+#define LYNX_VERSION "2.8.4dev.5"
 #define LYNX_WWW_HOME "http://lynx.browser.org/"
 #define LYNX_WWW_DIST "http://lynx.isc.org/current/"
 /* $Format: "#define LYNX_DATE \"$ProjectDate$\""$ */
-#define LYNX_DATE "Fri, 23 Jun 2000 08:15:08 -0700"
+#define LYNX_DATE "Sun, 16 Jul 2000 20:16:13 -0700"
 #define LYNX_DATE_OFF 5		/* truncate the automatically-generated date */
 #define LYNX_DATE_LEN 11	/* truncate the automatically-generated date */