From a44161c313d46a1b10fd764728a089c26037710a Mon Sep 17 00:00:00 2001
From: Elena Zannoni
Date: Fri, 7 Jul 2000 19:14:18 +0000
Subject: [PATCH] Import of readline 4.0
---
readline/Makefile.in | 48 +-
readline/acconfig.h | 28 +-
readline/config.h.in | 99 +-
readline/configure | 432 +--
readline/configure.in | 40 +-
readline/display.c | 21 -
readline/doc/history.dvi | Bin 0 -> 48188 bytes
readline/doc/history.html | 1161 ++++++++
readline/doc/history.info | 788 ++++++
readline/doc/history.ps | 2265 +++++++++++++++
readline/doc/hsuser.texinfo | 4 +-
readline/doc/readline.dvi | Bin 0 -> 199980 bytes
readline/doc/readline.html | 4230 ++++++++++++++++++++++++++++
readline/doc/readline.info | 3039 ++++++++++++++++++++
readline/doc/readline.ps | 5225 +++++++++++++++++++++++++++++++++++
readline/doc/texinfo.tex | 4692 +++++++++++++++++++++++++++++++
readline/rltty.c | 4 -
readline/shell.c | 1 -
readline/terminal.c | 10 -
19 files changed, 21620 insertions(+), 467 deletions(-)
create mode 100644 readline/doc/history.dvi
create mode 100644 readline/doc/history.html
create mode 100644 readline/doc/history.info
create mode 100644 readline/doc/history.ps
create mode 100644 readline/doc/readline.dvi
create mode 100644 readline/doc/readline.html
create mode 100644 readline/doc/readline.info
create mode 100644 readline/doc/readline.ps
create mode 100644 readline/doc/texinfo.tex
diff --git a/readline/Makefile.in b/readline/Makefile.in
index 5c667ed69f5..746c83c14a3 100644
--- a/readline/Makefile.in
+++ b/readline/Makefile.in
@@ -1,6 +1,6 @@
## -*- text -*- ##
# Master Makefile for the GNU readline library.
-# Copyright (C) 1994, 1998 Free Software Foundation, Inc.
+# Copyright (C) 1994 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
@@ -19,7 +19,7 @@ RL_LIBRARY_VERSION = @LIBVERSION@
RL_LIBRARY_NAME = readline
srcdir = @srcdir@
-VPATH = @srcdir@
+VPATH = .:@srcdir@
top_srcdir = @top_srcdir@
BUILD_DIR = @BUILD_DIR@
@@ -147,9 +147,9 @@ stamp-h: config.status $(srcdir)/config.h.in
CONFIG_FILES= CONFIG_HEADERS=config.h ./config.status
echo > $@
-# CYGNUS LOCAL: Never run autoconf.
-#$(srcdir)/configure: $(srcdir)/configure.in Comment-me-out in distribution
-# cd $(srcdir) && autoconf Comment-me-out in distribution
+$(srcdir)/configure: $(srcdir)/configure.in ## Comment-me-out in distribution
+ cd $(srcdir) && autoconf ## Comment-me-out in distribution
+
shared: force
-test -d shlib || mkdir shlib
@@ -165,30 +165,20 @@ examples: force
force:
-## CYGNUS LOCAL
-## Don't mess with people's installed readline's.
-## This tries to install this version of readline over whatever
-## version is already installed on the system (which could be a
-## newer version). There is no real reason for us to install
-## readline along with GDB. GDB links statically against readline,
-## so it doesn't depend on us installing it on the system.
-
-install:
-
-#install: installdirs $(STATIC_LIBS)
-# for f in ${INSTALLED_HEADERS}; do \
-# $(INSTALL_DATA) $(srcdir)/$$f $(includedir)/readline ; \
-# done
-# -( if test -f $(libdir)/libreadline.a ; then $(MV) $(libdir)/libreadline.a $(libdir)/libreadline.old; fi )
-# $(INSTALL_DATA) libreadline.a $(libdir)/libreadline.a
-# -test -n "$(RANLIB)" && $(RANLIB) -t $(libdir)/libreadline.a
-# -( if test -f $(libdir)/libhistory.a; then $(MV) $(libdir)/libhistory.a $(libdir)/libhistory.old; fi )
-# $(INSTALL_DATA) libhistory.a $(libdir)/libhistory.a
-# -test -n "$(RANLIB)" && $(RANLIB) -t $(libdir)/libhistory.a
-# -( if test -d doc ; then \
-# cd doc && \
-# ${MAKE} ${MFLAGS} infodir=$(infodir) $@; \
-# fi )
+install: installdirs $(STATIC_LIBS)
+ for f in ${INSTALLED_HEADERS}; do \
+ $(INSTALL_DATA) $(srcdir)/$$f $(includedir)/readline ; \
+ done
+ -$(MV) $(libdir)/libreadline.a $(libdir)/libreadline.old
+ $(INSTALL_DATA) libreadline.a $(libdir)/libreadline.a
+ -test -n "$(RANLIB)" && $(RANLIB) -t $(libdir)/libreadline.a
+ -$(MV) $(libdir)/libhistory.a $(libdir)/libhistory.old
+ $(INSTALL_DATA) libhistory.a $(libdir)/libhistory.a
+ -test -n "$(RANLIB)" && $(RANLIB) -t $(libdir)/libhistory.a
+ -( if test -d doc ; then \
+ cd doc && \
+ ${MAKE} ${MFLAGS} infodir=$(infodir) $@; \
+ fi )
installdirs: $(srcdir)/support/mkdirs
-$(SHELL) $(srcdir)/support/mkdirs $(includedir) \
diff --git a/readline/acconfig.h b/readline/acconfig.h
index 577cf9c7d49..4f4223886c2 100644
--- a/readline/acconfig.h
+++ b/readline/acconfig.h
@@ -17,38 +17,12 @@
/* Definitions pulled in from aclocal.m4. */
#undef VOID_SIGHANDLER
-#undef GWINSZ_IN_SYS_IOCTL
+#undef TIOCGWINSZ_IN_SYS_IOCTL
#undef TIOCSTAT_IN_SYS_IOCTL
#undef HAVE_GETPW_DECLS
-#undef FIONREAD_IN_SYS_IOCTL
-
-#undef HAVE_BSD_SIGNALS
-
-#undef HAVE_LSTAT
-
-#undef HAVE_POSIX_SIGNALS
-
-#undef HAVE_POSIX_SIGSETJMP
-
-#undef HAVE_USG_SIGHOLD
-
-#undef MUST_REINSTALL_SIGHANDLERS
-
-#undef SPEED_T_IN_SYS_TYPES
-
-#undef STRCOLL_BROKEN
-
-#undef STRUCT_DIRENT_HAS_D_FILENO
-
-#undef STRUCT_DIRENT_HAS_D_INO
-
-#undef STRUCT_WINSIZE_IN_SYS_IOCTL
-
-#undef STRUCT_WINSIZE_IN_TERMIOS
-
/* Leave that blank line there!! Autoheader needs it.
If you're adding to this file, keep in mind:
diff --git a/readline/config.h.in b/readline/config.h.in
index 87f807fa6eb..65927a8440d 100644
--- a/readline/config.h.in
+++ b/readline/config.h.in
@@ -1,60 +1,17 @@
/* config.h.in. Generated automatically from configure.in by autoheader. */
-/* Define if you have the strcoll function and it is properly defined. */
-#undef HAVE_STRCOLL
-
/* Define if on MINIX. */
#undef _MINIX
-/* Define if the system does not provide POSIX.1 features except
- with this defined. */
-#undef _POSIX_1_SOURCE
-
-/* Define if you need to in order for stat and other things to work. */
-#undef _POSIX_SOURCE
-
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE
/* Define if the `S_IS*' macros in do not work properly. */
#undef STAT_MACROS_BROKEN
-/* Definitions pulled in from aclocal.m4. */
#undef VOID_SIGHANDLER
-#undef GWINSZ_IN_SYS_IOCTL
-
-#undef TIOCSTAT_IN_SYS_IOCTL
-
-#undef HAVE_GETPW_DECLS
-
-#undef FIONREAD_IN_SYS_IOCTL
-
-#undef HAVE_BSD_SIGNALS
-
-#undef HAVE_LSTAT
-
-#undef HAVE_POSIX_SIGNALS
-
-#undef HAVE_POSIX_SIGSETJMP
-
-#undef HAVE_USG_SIGHOLD
-
-#undef MUST_REINSTALL_SIGHANDLERS
-
-#undef SPEED_T_IN_SYS_TYPES
-
-#undef STRCOLL_BROKEN
-
-#undef STRUCT_DIRENT_HAS_D_FILENO
-
-#undef STRUCT_DIRENT_HAS_D_INO
-
-#undef STRUCT_WINSIZE_IN_SYS_IOCTL
-
-#undef STRUCT_WINSIZE_IN_TERMIOS
-
-/* Define if you have the lstat function. */
+/* Define if you have the lstat function. */
#undef HAVE_LSTAT
/* Define if you have the putenv function. */
@@ -66,27 +23,26 @@
/* Define if you have the setenv function. */
#undef HAVE_SETENV
-/* Define if you have the setlocale function. */
-#undef HAVE_SETLOCALE
-
/* Define if you have the strcasecmp function. */
#undef HAVE_STRCASECMP
+/* Define if you have the setlocale function. */
+#undef HAVE_SETLOCALE
+
/* Define if you have the tcgetattr function. */
#undef HAVE_TCGETATTR
+/* Define if you have the strcoll function. */
+#undef HAVE_STRCOLL
+
+#undef STRCOLL_BROKEN
+
/* Define if you have the header file. */
#undef HAVE_DIRENT_H
-/* Define if you have the header file. */
-#undef HAVE_LOCALE_H
-
/* Define if you have the header file. */
#undef HAVE_NDIR_H
-/* Define if you have the header file. */
-#undef HAVE_STDARG_H
-
/* Define if you have the header file. */
#undef HAVE_STDLIB_H
@@ -128,6 +84,43 @@
/* Define if you have the header file. */
#undef HAVE_VARARGS_H
+
+/* Define if you have the header file. */
+#undef HAVE_STDARG_H
+
+#undef HAVE_LOCALE_H
+
+/* Definitions pulled in from aclocal.m4. */
+#undef VOID_SIGHANDLER
+
+#undef GWINSZ_IN_SYS_IOCTL
+
+#undef STRUCT_WINSIZE_IN_SYS_IOCTL
+
+#undef STRUCT_WINSIZE_IN_TERMIOS
+
+#undef TIOCSTAT_IN_SYS_IOCTL
+
+#undef FIONREAD_IN_SYS_IOCTL
+
+#undef SPEED_T_IN_SYS_TYPES
+
+#undef HAVE_GETPW_DECLS
+
+#undef STRUCT_DIRENT_HAS_D_INO
+
+#undef STRUCT_DIRENT_HAS_D_FILENO
+
+#undef HAVE_BSD_SIGNALS
+
+#undef HAVE_POSIX_SIGNALS
+
+#undef HAVE_USG_SIGHOLD
+
+#undef MUST_REINSTALL_SIGHANDLERS
+
+#undef HAVE_POSIX_SIGSETJMP
+
/* config.h.bot */
/* modify settings or make new ones based on what autoconf tells us. */
diff --git a/readline/configure b/readline/configure
index cdcdf88bae4..454a177e35d 100755
--- a/readline/configure
+++ b/readline/configure
@@ -1,6 +1,6 @@
#! /bin/sh
-# From configure.in for Readline 4.0, version 2.14, from autoconf version 2.13
+# From configure.in for Readline 4.0, version 2.14, from autoconf version 2.12
LIBVERSION=4.0
@@ -92,7 +92,7 @@ LIBVERSION=4.0
# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
+# Generated automatically using autoconf version 2.12
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
# This configure script is free software; the Free Software Foundation
@@ -121,7 +121,6 @@ program_suffix=NONE
program_transform_name=s,x,x,
silent=
site=
-sitefile=
srcdir=
target=NONE
verbose=
@@ -143,7 +142,6 @@ mandir='${prefix}/man'
# Initialize some other variables.
subdirs=
MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
ac_max_here_lines=12
@@ -236,7 +234,6 @@ Configuration:
--help print this message
--no-create do not create output files
--quiet, --silent do not print \`checking...' messages
- --site-file=FILE use FILE as the site file
--version print the version of autoconf that created configure
Directory and file names:
--prefix=PREFIX install architecture-independent files in PREFIX
@@ -407,11 +404,6 @@ EOF
-site=* | --site=* | --sit=*)
site="$ac_optarg" ;;
- -site-file | --site-file | --site-fil | --site-fi | --site-f)
- ac_prev=sitefile ;;
- -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*)
- sitefile="$ac_optarg" ;;
-
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
ac_prev=srcdir ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
@@ -433,7 +425,7 @@ EOF
verbose=yes ;;
-version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
+ echo "configure generated by autoconf version 2.12"
exit 0 ;;
-with-* | --with-*)
@@ -577,16 +569,12 @@ fi
srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
# Prefer explicitly selected file to automatically selected ones.
-if test -z "$sitefile"; then
- if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
+if test -z "$CONFIG_SITE"; then
+ if test "x$prefix" != xNONE; then
+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+ else
+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
fi
-else
- CONFIG_SITE="$sitefile"
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
@@ -607,11 +595,9 @@ ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
-ac_exeext=
-ac_objext=o
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
@@ -629,9 +615,8 @@ fi
-
ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+for ac_dir in ./support $srcdir/./support; do
if test -f $ac_dir/install-sh; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
@@ -643,34 +628,35 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
fi
done
if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
+ { echo "configure: error: can not find install-sh or install.sh in ./support $srcdir/./support" 1>&2; exit 1; }
fi
ac_config_guess=$ac_aux_dir/config.guess
ac_config_sub=$ac_aux_dir/config.sub
ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
+
# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
+if $ac_config_sub sun4 >/dev/null 2>&1; then :
else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:660: checking host system type" >&5
+echo "configure:646: checking host system type" >&5
host_alias=$host
case "$host_alias" in
NONE)
case $nonopt in
NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
+ if host_alias=`$ac_config_guess`; then :
else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
fi ;;
*) host_alias=$nonopt ;;
esac ;;
esac
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
+host=`$ac_config_sub $host_alias`
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
@@ -697,16 +683,15 @@ test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
# 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:701: checking for $ac_word" >&5
+echo "configure:687: 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
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+ for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_prog_CC="gcc"
@@ -727,17 +712,16 @@ 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:731: checking for $ac_word" >&5
+echo "configure:716: 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
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
+ for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
@@ -772,61 +756,25 @@ else
echo "$ac_t""no" 1>&6
fi
- if test -z "$CC"; then
- case "`uname -s`" in
- *win32* | *WIN32*)
- # 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:782: 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
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="cl"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
- ;;
- esac
- fi
test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:764: 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.
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
-cat > conftest.$ac_ext << EOF
-
-#line 825 "configure"
+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:778: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; 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
@@ -840,24 +788,18 @@ else
ac_cv_prog_cc_works=no
fi
rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
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:856: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:798: 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:861: checking whether we are using GNU C" >&5
+echo "configure:803: 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
@@ -866,7 +808,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:870: \"$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:812: \"$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
@@ -877,15 +819,11 @@ echo "$ac_t""$ac_cv_prog_gcc" 1>&6
if test $ac_cv_prog_gcc = yes; then
GCC=yes
-else
- GCC=
-fi
-
-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:889: checking whether ${CC-cc} accepts -g" >&5
+ 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:827: 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
@@ -900,24 +838,20 @@ rm -f conftest*
fi
echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
+ if test "$ac_test_CFLAGS" = set; then
+ CFLAGS="$ac_save_CFLAGS"
+ elif test $ac_cv_prog_cc_g = yes; then
CFLAGS="-g -O2"
else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
CFLAGS="-O2"
- else
- CFLAGS=
fi
+else
+ GCC=
+ test "${CFLAGS+set}" = set || CFLAGS="-g"
fi
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:921: checking how to run the C preprocessor" >&5
+echo "configure:855: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -932,14 +866,14 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:942: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+{ (eval echo configure:876: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
else
@@ -949,31 +883,14 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:959: \"$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
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP="${CC-cc} -nologo -E"
- cat > conftest.$ac_ext <
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:976: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+{ (eval echo configure:893: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
else
@@ -985,8 +902,6 @@ else
fi
rm -f conftest*
fi
-rm -f conftest*
-fi
rm -f conftest*
ac_cv_prog_CPP="$CPP"
fi
@@ -998,18 +913,18 @@ echo "$ac_t""$CPP" 1>&6
ac_safe=`echo "minix/config.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for minix/config.h""... $ac_c" 1>&6
-echo "configure:1002: checking for minix/config.h" >&5
+echo "configure:917: checking for minix/config.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
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1012: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+{ (eval echo configure:927: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
eval "ac_cv_header_$ac_safe=yes"
@@ -1046,52 +961,18 @@ EOF
fi
-
-if test "x$cross_compiling" = "xyes"; then
- case "${host}" in
- *-cygwin*)
- cross_cache=${srcdir}/cross-build/cygwin.cache
- if test -r "${cross_cache}"; then
- echo "loading cross-build cache file ${cross_cache}"
- . ${cross_cache}
- fi
- LOCAL_CFLAGS="$LOCAL_CFLAGS -I${srcdir}/../libtermcap"
- unset cross_cache
- ;;
- *) echo "configure: cross-compiling for a non-cygwin target is not supported" >&2
- ;;
- esac
-fi
-
-if test "x$cross_compiling" = "xyes"; then
- CROSS_COMPILING_FLAG=-DCROSS_COMPILING
-else
- CROSS_COMPILING_FLAG=
-fi
-
-
-if test -z "$CC_FOR_BUILD"; then
- if test "x$cross_compiling" = "xno"; then
- CC_FOR_BUILD='$(CC)'
- else
- CC_FOR_BUILD=gcc
- fi
-fi
-
-
-
# If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
if test $ac_cv_prog_gcc = yes; then
echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
-echo "configure:1089: checking whether ${CC-cc} needs -traditional" >&5
+echo "configure:970: checking whether ${CC-cc} needs -traditional" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_pattern="Autoconf.*'x'"
cat > conftest.$ac_ext <
Autoconf TIOCGETP
@@ -1109,7 +990,7 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <
Autoconf TCGETA
@@ -1137,30 +1018,28 @@ fi
# SunOS /usr/etc/install
# IRIX /sbin/install
# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# 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:1146: checking for a BSD compatible install" >&5
+echo "configure:1026: 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
else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
+ IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:"
for ac_dir in $PATH; do
# Account for people who put trailing slashes in PATH elements.
case "$ac_dir/" in
/|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
*)
# OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
+ for ac_prog in ginstall installbsd scoinst install; do
if test -f $ac_dir/$ac_prog; then
if test $ac_prog = install &&
grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
+ # OSF/1 installbsd also uses dspmsg, but is usable.
:
else
ac_cv_path_install="$ac_dir/$ac_prog -c"
@@ -1190,23 +1069,20 @@ echo "$ac_t""$INSTALL" 1>&6
# It thinks the first close brace ends the variable substitution.
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1201: checking for $ac_word" >&5
+echo "configure:1078: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
if test -n "$AR"; then
ac_cv_prog_AR="$AR" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+ for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_prog_AR="ar"
@@ -1227,16 +1103,15 @@ test -n "$ARFLAGS" || ARFLAGS="cr"
# 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:1231: checking for $ac_word" >&5
+echo "configure:1107: 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
if test -n "$RANLIB"; then
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+ for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_prog_RANLIB="ranlib"
@@ -1259,12 +1134,12 @@ MAKE_SHELL=/bin/sh
echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:1263: checking return type of signal handlers" >&5
+echo "configure:1138: checking return type of signal handlers" >&5
if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -1281,7 +1156,7 @@ int main() {
int i;
; return 0; }
EOF
-if { (eval echo configure:1285: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_type_signal=void
else
@@ -1301,12 +1176,12 @@ EOF
echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
-echo "configure:1305: checking whether stat file-mode macros are broken" >&5
+echo "configure:1180: checking whether stat file-mode macros are broken" >&5
if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -1361,12 +1236,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:1365: checking for $ac_hdr that defines DIR" >&5
+echo "configure:1240: 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 <
#include <$ac_hdr>
@@ -1374,7 +1249,7 @@ int main() {
DIR *dirp = 0;
; return 0; }
EOF
-if { (eval echo configure:1378: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1253: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
eval "ac_cv_header_dirent_$ac_safe=yes"
else
@@ -1399,7 +1274,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:1403: checking for opendir in -ldir" >&5
+echo "configure:1278: 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
@@ -1407,7 +1282,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-ldir $LIBS"
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1297: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -1440,7 +1315,7 @@ fi
else
echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:1444: checking for opendir in -lx" >&5
+echo "configure:1319: 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
@@ -1448,7 +1323,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lx $LIBS"
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1338: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -1485,12 +1360,12 @@ fi
for ac_func in strcasecmp select setenv putenv tcgetattr setlocale lstat
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:1489: checking for $ac_func" >&5
+echo "configure:1364: 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 <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1392: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -1539,7 +1414,7 @@ done
echo $ac_n "checking for working strcoll""... $ac_c" 1>&6
-echo "configure:1543: checking for working strcoll" >&5
+echo "configure:1418: checking for working strcoll" >&5
if eval "test \"`echo '$''{'ac_cv_func_strcoll_works'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1547,7 +1422,7 @@ else
ac_cv_func_strcoll_works=no
else
cat > conftest.$ac_ext <
main ()
@@ -1557,7 +1432,7 @@ main ()
strcoll ("123", "456") >= 0);
}
EOF
-if { (eval echo configure:1561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
ac_cv_func_strcoll_works=yes
else
@@ -1586,18 +1461,18 @@ for ac_hdr in unistd.h stdlib.h varargs.h stdarg.h string.h \
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1590: checking for $ac_hdr" >&5
+echo "configure:1465: 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
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1600: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+{ (eval echo configure:1475: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
eval "ac_cv_header_$ac_safe=yes"
@@ -1625,13 +1500,13 @@ done
echo $ac_n "checking for type of signal functions""... $ac_c" 1>&6
-echo "configure:1629: checking for type of signal functions" >&5
+echo "configure:1504: checking for type of signal functions" >&5
if eval "test \"`echo '$''{'bash_cv_signal_vintage'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
int main() {
@@ -1644,7 +1519,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1648: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1523: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=posix
else
@@ -1653,7 +1528,7 @@ else
rm -rf conftest*
cat > conftest.$ac_ext <
int main() {
@@ -1663,7 +1538,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1667: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=4.2bsd
else
@@ -1672,7 +1547,7 @@ else
rm -rf conftest*
cat > conftest.$ac_ext <
@@ -1685,7 +1560,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1689: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1564: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=svr3
else
@@ -1726,7 +1601,7 @@ fi
echo $ac_n "checking if signal handlers must be reinstalled when invoked""... $ac_c" 1>&6
-echo "configure:1730: checking if signal handlers must be reinstalled when invoked" >&5
+echo "configure:1605: checking if signal handlers must be reinstalled when invoked" >&5
if eval "test \"`echo '$''{'bash_cv_must_reinstall_sighandlers'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1611,7 @@ else
else
cat > conftest.$ac_ext <
@@ -1783,7 +1658,7 @@ main()
}
EOF
-if { (eval echo configure:1787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1662: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_must_reinstall_sighandlers=no
else
@@ -1808,7 +1683,7 @@ fi
echo $ac_n "checking for presence of POSIX-style sigsetjmp/siglongjmp""... $ac_c" 1>&6
-echo "configure:1812: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
+echo "configure:1687: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
if eval "test \"`echo '$''{'bash_cv_func_sigsetjmp'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1818,7 +1693,7 @@ else
else
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1738: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_func_sigsetjmp=present
else
@@ -1882,12 +1757,12 @@ EOF
fi
echo $ac_n "checking for lstat""... $ac_c" 1>&6
-echo "configure:1886: checking for lstat" >&5
+echo "configure:1761: checking for lstat" >&5
if eval "test \"`echo '$''{'bash_cv_func_lstat'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
@@ -1897,7 +1772,7 @@ int main() {
lstat(".",(struct stat *)0);
; return 0; }
EOF
-if { (eval echo configure:1901: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1776: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_func_lstat=yes
else
@@ -1918,12 +1793,12 @@ EOF
fi
echo $ac_n "checking whether programs are able to redeclare getpw functions""... $ac_c" 1>&6
-echo "configure:1922: checking whether programs are able to redeclare getpw functions" >&5
+echo "configure:1797: checking whether programs are able to redeclare getpw functions" >&5
if eval "test \"`echo '$''{'bash_cv_can_redecl_getpw'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -1934,7 +1809,7 @@ int main() {
struct passwd *z; z = getpwent(); z = getpwuid(0); z = getpwnam("root");
; return 0; }
EOF
-if { (eval echo configure:1938: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1813: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_can_redecl_getpw=yes
else
@@ -1956,7 +1831,7 @@ fi
echo $ac_n "checking whether or not strcoll and strcmp differ""... $ac_c" 1>&6
-echo "configure:1960: checking whether or not strcoll and strcmp differ" >&5
+echo "configure:1835: checking whether or not strcoll and strcmp differ" >&5
if eval "test \"`echo '$''{'bash_cv_func_strcoll_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1966,7 +1841,7 @@ else
else
cat > conftest.$ac_ext <
@@ -2005,7 +1880,7 @@ char *v[];
}
EOF
-if { (eval echo configure:2009: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_func_strcoll_broken=yes
else
@@ -2029,12 +1904,12 @@ fi
echo $ac_n "checking whether signal handlers are of type void""... $ac_c" 1>&6
-echo "configure:2033: checking whether signal handlers are of type void" >&5
+echo "configure:1908: checking whether signal handlers are of type void" >&5
if eval "test \"`echo '$''{'bash_cv_void_sighandler'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -2049,7 +1924,7 @@ int main() {
int i;
; return 0; }
EOF
-if { (eval echo configure:2053: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1928: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_void_sighandler=yes
else
@@ -2069,12 +1944,12 @@ EOF
fi
echo $ac_n "checking for TIOCGWINSZ in sys/ioctl.h""... $ac_c" 1>&6
-echo "configure:2073: checking for TIOCGWINSZ in sys/ioctl.h" >&5
+echo "configure:1948: checking for TIOCGWINSZ in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocgwinsz_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -2082,7 +1957,7 @@ int main() {
int x = TIOCGWINSZ;
; return 0; }
EOF
-if { (eval echo configure:2086: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1961: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocgwinsz_in_ioctl=yes
else
@@ -2103,12 +1978,12 @@ EOF
fi
echo $ac_n "checking for TIOCSTAT in sys/ioctl.h""... $ac_c" 1>&6
-echo "configure:2107: checking for TIOCSTAT in sys/ioctl.h" >&5
+echo "configure:1982: checking for TIOCSTAT in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocstat_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -2116,7 +1991,7 @@ int main() {
int x = TIOCSTAT;
; return 0; }
EOF
-if { (eval echo configure:2120: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1995: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocstat_in_ioctl=yes
else
@@ -2137,12 +2012,12 @@ EOF
fi
echo $ac_n "checking for FIONREAD in sys/ioctl.h""... $ac_c" 1>&6
-echo "configure:2141: checking for FIONREAD in sys/ioctl.h" >&5
+echo "configure:2016: checking for FIONREAD in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_fionread_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -2150,7 +2025,7 @@ int main() {
int x = FIONREAD;
; return 0; }
EOF
-if { (eval echo configure:2154: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2029: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_fionread_in_ioctl=yes
else
@@ -2171,19 +2046,19 @@ EOF
fi
echo $ac_n "checking for speed_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:2175: checking for speed_t in sys/types.h" >&5
+echo "configure:2050: checking for speed_t in sys/types.h" >&5
if eval "test \"`echo '$''{'bash_cv_speed_t_in_sys_types'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
int main() {
speed_t x;
; return 0; }
EOF
-if { (eval echo configure:2187: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2062: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_speed_t_in_sys_types=yes
else
@@ -2204,12 +2079,12 @@ EOF
fi
echo $ac_n "checking for struct winsize in sys/ioctl.h and termios.h""... $ac_c" 1>&6
-echo "configure:2208: checking for struct winsize in sys/ioctl.h and termios.h" >&5
+echo "configure:2083: checking for struct winsize in sys/ioctl.h and termios.h" >&5
if eval "test \"`echo '$''{'bash_cv_struct_winsize_header'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
#include
@@ -2217,7 +2092,7 @@ int main() {
struct winsize x;
; return 0; }
EOF
-if { (eval echo configure:2221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2096: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=ioctl_h
else
@@ -2225,7 +2100,7 @@ else
cat conftest.$ac_ext >&5
rm -rf conftest*
cat > conftest.$ac_ext <
#include
@@ -2233,7 +2108,7 @@ int main() {
struct winsize x;
; return 0; }
EOF
-if { (eval echo configure:2237: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=termios_h
else
@@ -2266,12 +2141,12 @@ fi
echo $ac_n "checking if struct dirent has a d_ino member""... $ac_c" 1>&6
-echo "configure:2270: checking if struct dirent has a d_ino member" >&5
+echo "configure:2145: checking if struct dirent has a d_ino member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_dino'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
@@ -2300,7 +2175,7 @@ struct dirent d; int z; z = d.d_ino;
; return 0; }
EOF
-if { (eval echo configure:2304: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2179: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_dino=yes
else
@@ -2322,12 +2197,12 @@ fi
echo $ac_n "checking if struct dirent has a d_fileno member""... $ac_c" 1>&6
-echo "configure:2326: checking if struct dirent has a d_fileno member" >&5
+echo "configure:2201: checking if struct dirent has a d_fileno member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_d_fileno'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
@@ -2356,7 +2231,7 @@ struct dirent d; int z; z = d.d_fileno;
; return 0; }
EOF
-if { (eval echo configure:2360: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2235: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_d_fileno=yes
else
@@ -2385,14 +2260,14 @@ if test "X$bash_cv_termcap_lib" = "X"; then
_bash_needmsg=yes
else
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
-echo "configure:2389: checking which library has the termcap functions" >&5
+echo "configure:2264: checking which library has the termcap functions" >&5
_bash_needmsg=
fi
if eval "test \"`echo '$''{'bash_cv_termcap_lib'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6
-echo "configure:2396: checking for tgetent in -ltermcap" >&5
+echo "configure:2271: checking for tgetent in -ltermcap" >&5
ac_lib_var=`echo termcap'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2400,7 +2275,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-ltermcap $LIBS"
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2290: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -2430,7 +2305,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
else
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lcurses""... $ac_c" 1>&6
-echo "configure:2434: checking for tgetent in -lcurses" >&5
+echo "configure:2309: checking for tgetent in -lcurses" >&5
ac_lib_var=`echo curses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2438,7 +2313,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lcurses $LIBS"
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -2468,7 +2343,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
else
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6
-echo "configure:2472: checking for tgetent in -lncurses" >&5
+echo "configure:2347: checking for tgetent in -lncurses" >&5
ac_lib_var=`echo ncurses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2476,7 +2351,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lncurses $LIBS"
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2366: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -2516,7 +2391,7 @@ fi
if test "X$_bash_needmsg" = "Xyes"; then
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
-echo "configure:2520: checking which library has the termcap functions" >&5
+echo "configure:2395: checking which library has the termcap functions" >&5
fi
echo "$ac_t""using $bash_cv_termcap_lib" 1>&6
if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
@@ -2553,7 +2428,7 @@ esac
#
if test -f ${srcdir}/support/shobj-conf; then
echo $ac_n "checking configuration for building shared libraries""... $ac_c" 1>&6
-echo "configure:2557: checking configuration for building shared libraries" >&5
+echo "configure:2432: checking configuration for building shared libraries" >&5
eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C ${CC} -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
@@ -2611,7 +2486,7 @@ EOF
# Ultrix sh set writes to stderr and can't be redirected directly,
# and sets the high bit in the cache file unless we assign to the vars.
(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
+ case `(ac_space=' '; set) 2>&1` in
*ac_space=\ *)
# `set' does not quote correctly, so add quotes (double-quote substitution
# turns \\\\ into \\, and sed turns \\ into \).
@@ -2678,7 +2553,7 @@ do
echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
+ echo "$CONFIG_STATUS generated by autoconf version 2.12"
exit 0 ;;
-help | --help | --hel | --he | --h)
echo "\$ac_cs_usage"; exit 0 ;;
@@ -2698,11 +2573,9 @@ sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
$ac_vpsub
$extrasub
-s%@SHELL@%$SHELL%g
s%@CFLAGS@%$CFLAGS%g
s%@CPPFLAGS@%$CPPFLAGS%g
s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
s%@DEFS@%$DEFS%g
s%@LDFLAGS@%$LDFLAGS%g
s%@LIBS@%$LIBS%g
@@ -2728,10 +2601,7 @@ s%@host_vendor@%$host_vendor%g
s%@host_os@%$host_os%g
s%@CC@%$CC%g
s%@CPP@%$CPP%g
-s%@CROSS_COMPILING_FLAG@%$CROSS_COMPILING_FLAG%g
-s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
s%@INSTALL_DATA@%$INSTALL_DATA%g
s%@AR@%$AR%g
s%@RANLIB@%$RANLIB%g
diff --git a/readline/configure.in b/readline/configure.in
index 9afdaa70fcf..240a3addc45 100644
--- a/readline/configure.in
+++ b/readline/configure.in
@@ -13,7 +13,7 @@ AC_CONFIG_HEADER(config.h)
dnl make sure we are using a recent autoconf version
AC_PREREQ(2.10)
-dnl AC_CONFIG_AUX_DIR(./support)
+AC_CONFIG_AUX_DIR(./support)
AC_CANONICAL_HOST
@@ -34,44 +34,6 @@ test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
AC_PROG_CC
AC_MINIX
-dnl BEGIN changes for CYGNUS cross-building for Cygwin
-
-dnl load up the cross-building cache file -- add more cases and cache
-dnl files as necessary
-if test "x$cross_compiling" = "xyes"; then
- case "${host}" in
- *-cygwin*)
- cross_cache=${srcdir}/cross-build/cygwin.cache
- if test -r "${cross_cache}"; then
- echo "loading cross-build cache file ${cross_cache}"
- . ${cross_cache}
- fi
- LOCAL_CFLAGS="$LOCAL_CFLAGS -I${srcdir}/../libtermcap"
- unset cross_cache
- ;;
- *) echo "configure: cross-compiling for a non-cygwin target is not supported" >&2
- ;;
- esac
-fi
-
-if test "x$cross_compiling" = "xyes"; then
- CROSS_COMPILING_FLAG=-DCROSS_COMPILING
-else
- CROSS_COMPILING_FLAG=
-fi
-AC_SUBST(CROSS_COMPILING_FLAG)
-
-if test -z "$CC_FOR_BUILD"; then
- if test "x$cross_compiling" = "xno"; then
- CC_FOR_BUILD='$(CC)'
- else
- CC_FOR_BUILD=gcc
- fi
-fi
-AC_SUBST(CC_FOR_BUILD)
-
-dnl END changes for CYGNUS cross-building for Cygwin
-
# If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
diff --git a/readline/display.c b/readline/display.c
index 3f6fe71b023..25aba64ca67 100644
--- a/readline/display.c
+++ b/readline/display.c
@@ -651,12 +651,8 @@ rl_redisplay ()
if (cursor_linenum == 0 && wrap_offset > 0 && _rl_last_c_pos > 0 &&
_rl_last_c_pos <= last_invisible && local_prompt)
{
-#if defined (__MSDOS__)
- putc ('\r', rl_outstream);
-#else
if (term_cr)
tputs (term_cr, 1, _rl_output_character_function);
-#endif
_rl_output_some_chars (local_prompt, nleft);
_rl_last_c_pos = nleft;
}
@@ -903,11 +899,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
term_cr && lendiff > visible_length && _rl_last_c_pos > 0 &&
od > lendiff && _rl_last_c_pos < last_invisible)
{
-#if defined (__MSDOS__)
- putc ('\r', rl_outstream);
-#else
tputs (term_cr, 1, _rl_output_character_function);
-#endif /* !__MSDOS__ */
_rl_output_some_chars (local_prompt, lendiff);
_rl_last_c_pos = lendiff;
}
@@ -1511,11 +1503,7 @@ cr ()
{
if (term_cr)
{
-#if defined (__MSDOS__)
- putc ('\r', rl_outstream);
-#else
tputs (term_cr, 1, _rl_output_character_function);
-#endif /* !__MSDOS__ */
_rl_last_c_pos = 0;
}
}
@@ -1530,16 +1518,8 @@ _rl_redisplay_after_sigwinch ()
the right thing happens if we have wrapped to a new screen line. */
if (term_cr)
{
-#if defined (__MSDOS__)
- putc ('\r', rl_outstream);
-#else
tputs (term_cr, 1, _rl_output_character_function);
-#endif /* !__MSDOS__ */
_rl_last_c_pos = 0;
-#if defined (__MSDOS__)
- space_to_eol (screenwidth);
- putc ('\r', rl_outstream);
-#else
if (term_clreol)
tputs (term_clreol, 1, _rl_output_character_function);
else
@@ -1547,7 +1527,6 @@ _rl_redisplay_after_sigwinch ()
space_to_eol (screenwidth);
tputs (term_cr, 1, _rl_output_character_function);
}
-#endif
if (_rl_last_v_pos > 0)
_rl_move_vert (0);
}
diff --git a/readline/doc/history.dvi b/readline/doc/history.dvi
new file mode 100644
index 0000000000000000000000000000000000000000..35dc6df2db3730b90a206f85967b4a3c95e883d0
GIT binary patch
literal 48188
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
+
+
+
+GNU History Library
+
+
+GNU History Library
+Edition 4.0, for History Library
Version 4.0.
+December 1998
+Brian Fox, Free Software Foundation
+Chet Ramey, Case Western Reserve University
+
+
+
Table of Contents
+
+
+
+
+This document describes the GNU History library, a programming tool that
+provides a consistent user interface for recalling lines of previously
+typed input.
+
+
+
+Published by the Free Software Foundation
+675 Massachusetts Avenue,
+Cambridge, MA 02139 USA
+
+
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+
+
+
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided that the entire
+resulting derived work is distributed under the terms of a permission
+notice identical to this one.
+
+
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions,
+except that this permission notice may be stated in a translation approved
+by the Free Software Foundation.
+
+
+
+Copyright (C) 1988-1999 Free Software Foundation, Inc.
+
+
+
+
+
+
+
+
+This chapter describes how to use the GNU History Library interactively,
+from a user's standpoint. It should be considered a user's guide. For
+information on using the GNU History Library in your own programs,
+see section Programming with GNU History.
+
+
+
+
+
+
+
+
+
+
+
+
+
+The History library provides a history expansion feature that is similar
+to the history expansion provided by csh
. This section
+describes the syntax used to manipulate the history information.
+
+
+
+History expansions introduce words from the history list into
+the input stream, making it easy to repeat commands, insert the
+arguments to a previous command into the current input line, or
+fix errors in previous commands quickly.
+
+
+
+History expansion takes place in two parts. The first is to determine
+which line from the history list should be used during substitution.
+The second is to select portions of that line for inclusion into the
+current one. The line selected from the history is called the
+event, and the portions of that line that are acted upon are
+called words. Various modifiers are available to manipulate
+the selected words. The line is broken into words in the same fashion
+that Bash does, so that several words
+surrounded by quotes are considered one word.
+History expansions are introduced by the appearance of the
+history expansion character, which is `!' by default.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+An event designator is a reference to a command line entry in the
+history list.
+
+
+
+
+
+!
+-
+Start a history substitution, except when followed by a space, tab,
+the end of the line, `=' or `('.
+
+
!n
+-
+Refer to command line n.
+
+
!-n
+-
+Refer to the command n lines back.
+
+
!!
+-
+Refer to the previous command. This is a synonym for `!-1'.
+
+
!string
+-
+Refer to the most recent command starting with string.
+
+
!?string[?]
+-
+Refer to the most recent command containing string. The trailing
+`?' may be omitted if the string is followed immediately by
+a newline.
+
+
^string1^string2^
+-
+Quick Substitution. Repeat the last command, replacing string1
+with string2. Equivalent to
+
!!:s/string1/string2/
.
+
+ !#
+-
+The entire command line typed so far.
+
+
+
+
+
+
+
+
+Word designators are used to select desired words from the event.
+A `:' separates the event specification from the word designator. It
+may be omitted if the word designator begins with a `^', `$',
+`*', `-', or `%'. Words are numbered from the beginning
+of the line, with the first word being denoted by 0 (zero). Words are
+inserted into the current line separated by single spaces.
+
+
+
+
+0 (zero)
+-
+The
0
th word. For many applications, this is the command word.
+
+ n
+-
+The nth word.
+
+
^
+-
+The first argument; that is, word 1.
+
+
$
+-
+The last argument.
+
+
%
+-
+The word matched by the most recent `?string?' search.
+
+
x-y
+-
+A range of words; `-y' abbreviates `0-y'.
+
+
*
+-
+All of the words, except the
0
th. This is a synonym for `1-$'.
+It is not an error to use `*' if there is just one word in the event;
+the empty string is returned in that case.
+
+ x*
+-
+Abbreviates `x-$'
+
+
x-
+-
+Abbreviates `x-$' like `x*', but omits the last word.
+
+
+
+
+If a word designator is supplied without an event specification, the
+previous command is used as the event.
+
+
+
+
+
+
+
+After the optional word designator, you can add a sequence of one or more
+of the following modifiers, each preceded by a `:'.
+
+
+
+
+h
+-
+Remove a trailing pathname component, leaving only the head.
+
+
t
+-
+Remove all leading pathname components, leaving the tail.
+
+
r
+-
+Remove a trailing suffix of the form `.suffix', leaving
+the basename.
+
+
e
+-
+Remove all but the trailing suffix.
+
+
p
+-
+Print the new command but do not execute it.
+
+
s/old/new/
+-
+Substitute new for the first occurrence of old in the
+event line. Any delimiter may be used in place of `/'.
+The delimiter may be quoted in old and new
+with a single backslash. If `&' appears in new,
+it is replaced by old. A single backslash will quote
+the `&'. The final delimiter is optional if it is the last
+character on the input line.
+
+
&
+-
+Repeat the previous substitution.
+
+
g
+-
+Cause changes to be applied over the entire event line. Used in
+conjunction with `s', as in
gs/old/new/
,
+or with `&'.
+
+
+
+
+
+
+
+
+This chapter describes how to interface programs that you write
+with the GNU History Library.
+It should be considered a technical guide.
+For information on the interactive use of GNU History, see section Using History Interactively.
+
+
+
+
+
+
+
+
+
+
+Many programs read input from the user a line at a time. The GNU History
+library is able to keep track of those lines, associate arbitrary data with
+each line, and utilize information from previous lines in composing new
+ones.
+
+
+
+The programmer using the History library has available functions
+for remembering lines on a history list, associating arbitrary data
+with a line, removing lines from the list, searching through the list
+for a line containing an arbitrary text string, and referencing any line
+in the list directly. In addition, a history expansion function
+is available which provides for a consistent user interface across
+different programs.
+
+
+
+The user using programs written with the History library has the
+benefit of a consistent user interface with a set of well-known
+commands for manipulating the text of previous lines and using that text
+in new commands. The basic history manipulation commands are similar to
+the history substitution provided by csh
.
+
+
+
+If the programmer desires, he can use the Readline library, which
+includes some history manipulation by default, and has the added
+advantage of command line editing.
+
+
+
+
+
+
+
+The history list is an array of history entries. A history entry is
+declared as follows:
+
+
+
+
+typedef struct _hist_entry {
+ char *line;
+ char *data;
+} HIST_ENTRY;
+
+
+
+The history list itself might therefore be declared as
+
+
+
+
+HIST_ENTRY **the_history_list;
+
+
+
+The state of the History library is encapsulated into a single structure:
+
+
+
+
+/* A structure used to pass the current state of the history stuff around. */
+typedef struct _hist_state {
+ HIST_ENTRY **entries; /* Pointer to the entries themselves. */
+ int offset; /* The location pointer within this array. */
+ int length; /* Number of elements within this array. */
+ int size; /* Number of slots allocated to this array. */
+ int flags;
+} HISTORY_STATE;
+
+
+
+If the flags member includes HS_STIFLED
, the history has been
+stifled.
+
+
+
+
+
+
+
+This section describes the calling sequence for the various functions
+present in GNU History.
+
+
+
+
+
+
+
+
+
+
+This section describes functions used to initialize and manage
+the state of the History library when you want to use the history
+functions in your program.
+
+
+
+
+- Function: void using_history ()
+
-
+Begin a session in which the history functions might be used. This
+initializes the interactive variables.
+
+
+
+
+
+- Function: HISTORY_STATE * history_get_history_state ()
+
-
+Return a structure describing the current state of the input history.
+
+
+
+
+
+- Function: void history_set_history_state (HISTORY_STATE *state)
+
-
+Set the state of the history list according to state.
+
+
+
+
+
+
+
+
+These functions manage individual entries on the history list, or set
+parameters managing the list itself.
+
+
+
+
+- Function: void add_history (char *string)
+
-
+Place string at the end of the history list. The associated data
+field (if any) is set to
NULL
.
+
+
+
+
+
+- Function: HIST_ENTRY * remove_history (int which)
+
-
+Remove history entry at offset which from the history. The
+removed element is returned so you can free the line, data,
+and containing structure.
+
+
+
+
+
+- Function: HIST_ENTRY * replace_history_entry (int which, char *line, char *data)
+
-
+Make the history entry at offset which have line and data.
+This returns the old entry so you can dispose of the data. In the case
+of an invalid which, a
NULL
pointer is returned.
+
+
+
+
+
+- Function: void clear_history ()
+
-
+Clear the history list by deleting all the entries.
+
+
+
+
+
+- Function: void stifle_history (int max)
+
-
+Stifle the history list, remembering only the last max entries.
+
+
+
+
+
+- Function: int unstifle_history ()
+
-
+Stop stifling the history. This returns the previous amount the
+history was stifled. The value is positive if the history was
+stifled, negative if it wasn't.
+
+
+
+
+
+- Function: int history_is_stifled ()
+
-
+Returns non-zero if the history is stifled, zero if it is not.
+
+
+
+
+
+
+
+
+These functions return information about the entire history list or
+individual list entries.
+
+
+
+
+- Function: HIST_ENTRY ** history_list ()
+
-
+Return a
NULL
terminated array of HIST_ENTRY
which is the
+current input history. Element 0 of this list is the beginning of time.
+If there is no history, return NULL
.
+
+
+
+
+
+- Function: int where_history ()
+
-
+Returns the offset of the current history element.
+
+
+
+
+
+- Function: HIST_ENTRY * current_history ()
+
-
+Return the history entry at the current position, as determined by
+
where_history ()
. If there is no entry there, return a NULL
+pointer.
+
+
+
+
+
+- Function: HIST_ENTRY * history_get (int offset)
+
-
+Return the history entry at position offset, starting from
+
history_base
. If there is no entry there, or if offset
+is greater than the history length, return a NULL
pointer.
+
+
+
+
+
+- Function: int history_total_bytes ()
+
-
+Return the number of bytes that the primary history entries are using.
+This function returns the sum of the lengths of all the lines in the
+history.
+
+
+
+
+
+
+
+
+These functions allow the current index into the history list to be
+set or changed.
+
+
+
+
+- Function: int history_set_pos (int pos)
+
-
+Set the position in the history list to pos, an absolute index
+into the list.
+
+
+
+
+
+- Function: HIST_ENTRY * previous_history ()
+
-
+Back up the current history offset to the previous history entry, and
+return a pointer to that entry. If there is no previous entry, return
+a
NULL
pointer.
+
+
+
+
+
+- Function: HIST_ENTRY * next_history ()
+
-
+Move the current history offset forward to the next history entry, and
+return the a pointer to that entry. If there is no next entry, return
+a
NULL
pointer.
+
+
+
+
+
+
+
+
+
+
+
+These functions allow searching of the history list for entries containing
+a specific string. Searching may be performed both forward and backward
+from the current history position. The search may be anchored,
+meaning that the string must match at the beginning of the history entry.
+
+
+
+
+
+- Function: int history_search (char *string, int direction)
+
-
+Search the history for string, starting at the current history
+offset. If direction < 0, then the search is through previous entries,
+else through subsequent. If string is found, then
+the current history index is set to that history entry, and the value
+returned is the offset in the line of the entry where
+string was found. Otherwise, nothing is changed, and a -1 is
+returned.
+
+
+
+
+
+- Function: int history_search_prefix (char *string, int direction)
+
-
+Search the history for string, starting at the current history
+offset. The search is anchored: matching lines must begin with
+string. If direction < 0, then the search is through previous
+entries, else through subsequent. If string is found, then the
+current history index is set to that entry, and the return value is 0.
+Otherwise, nothing is changed, and a -1 is returned.
+
+
+
+
+
+- Function: int history_search_pos (char *string, int direction, int pos)
+
-
+Search for string in the history list, starting at pos, an
+absolute index into the list. If direction is negative, the search
+proceeds backward from pos, otherwise forward. Returns the absolute
+index of the history element where string was found, or -1 otherwise.
+
+
+
+
+
+
+
+
+The History library can read the history from and write it to a file.
+This section documents the functions for managing a history file.
+
+
+
+
+- Function: int read_history (char *filename)
+
-
+Add the contents of filename to the history list, a line at a
+time. If filename is
NULL
, then read from
+`~/.history'. Returns 0 if successful, or errno if not.
+
+
+
+
+
+- Function: int read_history_range (char *filename, int from, int to)
+
-
+Read a range of lines from filename, adding them to the history list.
+Start reading at line from and end at to. If
+from is zero, start at the beginning. If to is less than
+from, then read until the end of the file. If filename is
+
NULL
, then read from `~/.history'. Returns 0 if successful,
+or errno
if not.
+
+
+
+
+
+- Function: int write_history (char *filename)
+
-
+Write the current history to filename, overwriting filename
+if necessary. If filename is
+
NULL
, then write the history list to `~/.history'. Values
+returned are as in read_history ()
.
+
+
+
+
+
+- Function: int append_history (int nelements, char *filename)
+
-
+Append the last nelements of the history list to filename.
+
+
+
+
+
+- Function: int history_truncate_file (char *filename, int nlines)
+
-
+Truncate the history file filename, leaving only the last
+nlines lines.
+
+
+
+
+
+
+
+
+These functions implement csh
-like history expansion.
+
+
+
+
+- Function: int history_expand (char *string, char **output)
+
-
+Expand string, placing the result into output, a pointer
+to a string (see section History Expansion). Returns:
+
+
+0
+-
+If no expansions took place (or, if the only change in
+the text was the de-slashifying of the history expansion
+character);
+
1
+-
+if expansions did take place;
+
-1
+-
+if there was an error in expansion;
+
2
+-
+if the returned line should only be displayed, but not executed,
+as with the
:p
modifier (see section Modifiers).
+
+
+
+If an error ocurred in expansion, then output contains a descriptive
+error message.
+
+
+
+
+
+- Function: char * history_arg_extract (int first, int last, char *string)
+
-
+Extract a string segment consisting of the first through last
+arguments present in string. Arguments are broken up as in Bash.
+
+
+
+
+
+- Function: char * get_history_event (char *string, int *cindex, int qchar)
+
-
+Returns the text of the history event beginning at string +
+*cindex. *cindex is modified to point to after the event
+specifier. At function entry, cindex points to the index into
+string where the history event specification begins. qchar
+is a character that is allowed to end the event specification in addition
+to the "normal" terminating characters.
+
+
+
+
+
+- Function: char ** history_tokenize (char *string)
+
-
+Return an array of tokens parsed out of string, much as the
+shell might. The tokens are split on white space and on the
+characters
()<>;&|$
, and shell quoting conventions are
+obeyed.
+
+
+
+
+
+
+
+
+This section describes the externally visible variables exported by
+the GNU History Library.
+
+
+
+
+- Variable: int history_base
+
-
+The logical offset of the first entry in the history list.
+
+
+
+
+
+- Variable: int history_length
+
-
+The number of entries currently stored in the history list.
+
+
+
+
+
+- Variable: int max_input_history
+
-
+The maximum number of history entries. This must be changed using
+
stifle_history ()
.
+
+
+
+
+
+- Variable: char history_expansion_char
+
-
+The character that starts a history event. The default is `!'.
+
+
+
+
+
+- Variable: char history_subst_char
+
-
+The character that invokes word substitution if found at the start of
+a line. The default is `^'.
+
+
+
+
+
+- Variable: char history_comment_char
+
-
+During tokenization, if this character is seen as the first character
+of a word, then it and all subsequent characters up to a newline are
+ignored, suppressing history expansion for the remainder of the line.
+This is disabled by default.
+
+
+
+
+
+- Variable: char * history_no_expand_chars
+
-
+The list of characters which inhibit history expansion if found immediately
+following history_expansion_char. The default is whitespace and
+`='.
+
+
+
+
+
+- Variable: char * history_search_delimiter_chars
+
-
+The list of additional characters which can delimit a history search
+string, in addition to whitespace, `:' and `?' in the case of
+a substring search. The default is empty.
+
+
+
+
+
+- Variable: int history_quotes_inhibit_expansion
+
-
+If non-zero, single-quoted words are not scanned for the history expansion
+character. The default value is 0.
+
+
+
+
+
+- Variable: Function * history_inhibit_expansion_function
+
-
+This should be set to the address of a function that takes two arguments:
+a
char *
(string) and an integer index into that string (i).
+It should return a non-zero value if the history expansion starting at
+string[i] should not be performed; zero if the expansion should
+be done.
+It is intended for use by applications like Bash that use the history
+expansion character for additional purposes.
+By default, this variable is set to NULL.
+
+
+
+
+
+
+
+
+The following program demonstrates simple use of the GNU History Library.
+
+
+
+
+main ()
+{
+ char line[1024], *t;
+ int len, done = 0;
+
+ line[0] = 0;
+
+ using_history ();
+ while (!done)
+ {
+ printf ("history$ ");
+ fflush (stdout);
+ t = fgets (line, sizeof (line) - 1, stdin);
+ if (t && *t)
+ {
+ len = strlen (t);
+ if (t[len - 1] == '\n')
+ t[len - 1] = '\0';
+ }
+
+ if (!t)
+ strcpy (line, "quit");
+
+ if (line[0])
+ {
+ char *expansion;
+ int result;
+
+ result = history_expand (line, &expansion);
+ if (result)
+ fprintf (stderr, "%s\n", expansion);
+
+ if (result < 0 || result == 2)
+ {
+ free (expansion);
+ continue;
+ }
+
+ add_history (expansion);
+ strncpy (line, expansion, sizeof (line) - 1);
+ free (expansion);
+ }
+
+ if (strcmp (line, "quit") == 0)
+ done = 1;
+ else if (strcmp (line, "save") == 0)
+ write_history ("history_file");
+ else if (strcmp (line, "read") == 0)
+ read_history ("history_file");
+ else if (strcmp (line, "list") == 0)
+ {
+ register HIST_ENTRY **the_list;
+ register int i;
+
+ the_list = history_list ();
+ if (the_list)
+ for (i = 0; the_list[i]; i++)
+ printf ("%d: %s\n", i + history_base, the_list[i]->line);
+ }
+ else if (strncmp (line, "delete", 6) == 0)
+ {
+ int which;
+ if ((sscanf (line + 6, "%d", &which)) == 1)
+ {
+ HIST_ENTRY *entry = remove_history (which);
+ if (!entry)
+ fprintf (stderr, "No such entry %d\n", which);
+ else
+ {
+ free (entry->line);
+ free (entry);
+ }
+ }
+ else
+ {
+ fprintf (stderr, "non-numeric arg given to `delete'\n");
+ }
+ }
+ }
+}
+
+
+
+
+
+
+Jump to:
+a
+-
+e
+-
+h
+
+
+
+anchored search
+
+
+
+event designators
+
+
+
+history events
+history expansion
+History Searching
+
+
+
+
+
+
+
+Jump to:
+a
+-
+c
+-
+g
+-
+h
+-
+m
+-
+n
+-
+p
+-
+r
+-
+s
+-
+u
+-
+w
+
+
+
+add_history
+append_history
+
+
+
+clear_history
+current_history
+
+
+
+get_history_event
+
+
+
+history_arg_extract
+history_base
+history_comment_char
+history_expand
+history_expansion_char
+history_get
+history_get_history_state
+history_inhibit_expansion_function
+history_is_stifled
+history_length
+history_list
+history_no_expand_chars
+history_quotes_inhibit_expansion
+history_search
+history_search_delimiter_chars
+history_search_pos
+history_search_prefix
+history_set_history_state
+history_set_pos
+history_subst_char
+history_tokenize
+history_total_bytes
+history_truncate_file
+
+
+
+max_input_history
+
+
+
+next_history
+
+
+
+previous_history
+
+
+
+read_history
+read_history_range
+remove_history
+replace_history_entry
+
+
+
+stifle_history
+
+
+
+unstifle_history
+using_history
+
+
+
+where_history
+write_history
+
+
+
+
+This document was generated on 31 December 1998 using the
+texi2html
+translator version 1.52.
+
+