Add configure flag to allow libedit to be preferred over GNU readline:
--with-libedit-preferred prefer BSD Libedit over GNU Readline
This commit is contained in:
parent
e4a9229d55
commit
10e3d224e0
@ -1,4 +1,4 @@
|
||||
# $PostgreSQL: pgsql/config/programs.m4,v 1.18 2004/12/02 20:04:19 tgl Exp $
|
||||
# $PostgreSQL: pgsql/config/programs.m4,v 1.19 2005/12/04 03:52:28 momjian Exp $
|
||||
|
||||
|
||||
# PGAC_PATH_FLEX
|
||||
@ -78,12 +78,16 @@ AC_SUBST(FLEXFLAGS)
|
||||
|
||||
AC_DEFUN([PGAC_CHECK_READLINE],
|
||||
[AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
AC_MSG_CHECKING([for readline])
|
||||
|
||||
AC_CACHE_VAL([pgac_cv_check_readline],
|
||||
[pgac_cv_check_readline=no
|
||||
pgac_save_LIBS=$LIBS
|
||||
for pgac_rllib in -lreadline -ledit ; do
|
||||
if test x"$with_libedit_preferred" != x"yes"
|
||||
then READLINE_ORDER="-lreadline -ledit"
|
||||
else READLINE_ORDER="-ledit -lreadline"
|
||||
fi
|
||||
for pgac_rllib in $READLINE_ORDER ; do
|
||||
AC_MSG_CHECKING([for ${pgac_rllib}])
|
||||
for pgac_lib in "" " -ltermcap" " -lncurses" " -lcurses" ; do
|
||||
LIBS="${pgac_rllib}${pgac_lib} $pgac_save_LIBS"
|
||||
AC_TRY_LINK_FUNC([readline], [[
|
||||
@ -98,20 +102,25 @@ for pgac_rllib in -lreadline -ledit ; do
|
||||
esac
|
||||
|
||||
pgac_cv_check_readline="${pgac_rllib}${pgac_lib}"
|
||||
break 2
|
||||
break
|
||||
]])
|
||||
done
|
||||
if test "$pgac_cv_check_readline" != no ; then
|
||||
AC_MSG_RESULT([yes ($pgac_cv_check_readline)])
|
||||
break
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
done
|
||||
LIBS=$pgac_save_LIBS
|
||||
])[]dnl AC_CACHE_VAL
|
||||
|
||||
if test "$pgac_cv_check_readline" != no ; then
|
||||
AC_DEFINE(HAVE_LIBREADLINE, 1, [Define if you have a function readline library])
|
||||
LIBS="$pgac_cv_check_readline $LIBS"
|
||||
AC_MSG_RESULT([yes ($pgac_cv_check_readline)])
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi])# PGAC_CHECK_READLINE
|
||||
AC_DEFINE(HAVE_LIBREADLINE, 1, [Define if you have a function readline library])
|
||||
fi
|
||||
|
||||
])# PGAC_CHECK_READLINE
|
||||
|
||||
|
||||
|
||||
|
63
configure
vendored
63
configure
vendored
@ -890,7 +890,8 @@ Optional Packages:
|
||||
--with-pam build with PAM support
|
||||
--with-bonjour build with Bonjour support
|
||||
--with-openssl build with OpenSSL support
|
||||
--without-readline do not use Readline
|
||||
--with-libedit-preferred prefer BSD Libedit over GNU Readline
|
||||
--without-readline do not use GNU Readline / BSD Libedit line editing
|
||||
--without-zlib do not use Zlib
|
||||
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
|
||||
|
||||
@ -3771,6 +3772,37 @@ echo "${ECHO_T}$with_openssl" >&6
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Prefer libedit
|
||||
#
|
||||
|
||||
|
||||
|
||||
# Check whether --with-libedit-preferred or --without-libedit-preferred was given.
|
||||
if test "${with_libedit_preferred+set}" = set; then
|
||||
withval="$with_libedit_preferred"
|
||||
|
||||
case $withval in
|
||||
yes)
|
||||
:
|
||||
;;
|
||||
no)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
{ { echo "$as_me:$LINENO: error: no argument expected for --with-libedit-preferred option" >&5
|
||||
echo "$as_me: error: no argument expected for --with-libedit-preferred option" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
with_libedit_preferred=no
|
||||
|
||||
fi;
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Readline
|
||||
#
|
||||
@ -6490,15 +6522,19 @@ fi
|
||||
|
||||
if test "$with_readline" = yes; then
|
||||
|
||||
echo "$as_me:$LINENO: checking for readline" >&5
|
||||
echo $ECHO_N "checking for readline... $ECHO_C" >&6
|
||||
|
||||
if test "${pgac_cv_check_readline+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
pgac_cv_check_readline=no
|
||||
pgac_save_LIBS=$LIBS
|
||||
for pgac_rllib in -lreadline -ledit ; do
|
||||
if test x"$with_libedit_preferred" != x"yes"
|
||||
then READLINE_ORDER="-lreadline -ledit"
|
||||
else READLINE_ORDER="-ledit -lreadline"
|
||||
fi
|
||||
for pgac_rllib in $READLINE_ORDER ; do
|
||||
echo "$as_me:$LINENO: checking for ${pgac_rllib}" >&5
|
||||
echo $ECHO_N "checking for ${pgac_rllib}... $ECHO_C" >&6
|
||||
for pgac_lib in "" " -ltermcap" " -lncurses" " -lcurses" ; do
|
||||
LIBS="${pgac_rllib}${pgac_lib} $pgac_save_LIBS"
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
@ -6557,7 +6593,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||
esac
|
||||
|
||||
pgac_cv_check_readline="${pgac_rllib}${pgac_lib}"
|
||||
break 2
|
||||
break
|
||||
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
@ -6567,24 +6603,29 @@ fi
|
||||
rm -f conftest.err conftest.$ac_objext \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
done
|
||||
if test "$pgac_cv_check_readline" != no ; then
|
||||
echo "$as_me:$LINENO: result: yes ($pgac_cv_check_readline)" >&5
|
||||
echo "${ECHO_T}yes ($pgac_cv_check_readline)" >&6
|
||||
break
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
done
|
||||
LIBS=$pgac_save_LIBS
|
||||
|
||||
fi
|
||||
|
||||
if test "$pgac_cv_check_readline" != no ; then
|
||||
LIBS="$pgac_cv_check_readline $LIBS"
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_LIBREADLINE 1
|
||||
_ACEOF
|
||||
|
||||
LIBS="$pgac_cv_check_readline $LIBS"
|
||||
echo "$as_me:$LINENO: result: yes ($pgac_cv_check_readline)" >&5
|
||||
echo "${ECHO_T}yes ($pgac_cv_check_readline)" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
|
||||
if test x"$pgac_cv_check_readline" = x"no"; then
|
||||
{ { echo "$as_me:$LINENO: error: readline library not found
|
||||
If you have readline already installed, see config.log for details on the
|
||||
|
11
configure.in
11
configure.in
@ -1,5 +1,5 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
dnl $PostgreSQL: pgsql/configure.in,v 1.432 2005/11/05 16:42:01 tgl Exp $
|
||||
dnl $PostgreSQL: pgsql/configure.in,v 1.433 2005/12/04 03:52:24 momjian Exp $
|
||||
dnl
|
||||
dnl Developers, please strive to achieve this order:
|
||||
dnl
|
||||
@ -467,11 +467,18 @@ AC_MSG_RESULT([$with_openssl])
|
||||
AC_SUBST(with_openssl)
|
||||
|
||||
|
||||
#
|
||||
# Prefer libedit
|
||||
#
|
||||
PGAC_ARG_BOOL(with, libedit-preferred, no,
|
||||
[ --with-libedit-preferred prefer BSD Libedit over GNU Readline])
|
||||
|
||||
|
||||
#
|
||||
# Readline
|
||||
#
|
||||
PGAC_ARG_BOOL(with, readline, yes,
|
||||
[ --without-readline do not use Readline])
|
||||
[ --without-readline do not use GNU Readline / BSD Libedit line editing])
|
||||
# readline on MinGW has problems with backslashes in psql and other bugs.
|
||||
# This is particularly a problem with non-US code pages.
|
||||
# Therefore disable its use until we understand the cause. 2004-07-20
|
||||
|
@ -1,4 +1,4 @@
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.249 2005/11/05 00:04:04 tgl Exp $ -->
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.250 2005/12/04 03:52:29 momjian Exp $ -->
|
||||
|
||||
<chapter id="installation">
|
||||
<title><![%standalone-include[<productname>PostgreSQL</>]]>
|
||||
@ -50,7 +50,7 @@ su - postgres
|
||||
<para>
|
||||
In general, a modern Unix-compatible platform should be able to run
|
||||
<productname>PostgreSQL</>.
|
||||
The platforms that had received specific testing at the
|
||||
The platforms that had received specific testing at the
|
||||
time of release are listed in <xref linkend="supported-platforms">
|
||||
below. In the <filename>doc</> subdirectory of the distribution
|
||||
there are several platform-specific <acronym>FAQ</> documents you
|
||||
@ -107,16 +107,20 @@ su - postgres
|
||||
</indexterm>
|
||||
|
||||
The <acronym>GNU</> <productname>Readline</> library (for
|
||||
comfortable line editing and command history retrieval) will be
|
||||
used by default. If you don't want to use it then you must
|
||||
specify the <option>--without-readline</option> option for
|
||||
<filename>configure</>. (On <productname>NetBSD</productname>,
|
||||
the <filename>libedit</filename> library is
|
||||
<productname>Readline</productname>-compatible and is used if
|
||||
<filename>libreadline</filename> is not found.) If you are using
|
||||
a package-based Linux distribution, be aware that you need both
|
||||
the <literal>readline</> and <literal>readline-devel</> packages,
|
||||
if those are separate in your distribution.
|
||||
simple line editing and command history retrieval) is
|
||||
used by default. If you don't want to use it then you must specify
|
||||
the <option>--without-readline</option> option for
|
||||
<filename>configure</>. As an alternative, you can often use the
|
||||
BSD-licensed <filename>libedit</filename> library, originally
|
||||
developed on <productname>NetBSD</productname>. The
|
||||
<filename>libedit</filename> library is
|
||||
GNU <productname>Readline</productname>-compatible and is used if
|
||||
<filename>libreadline</filename> is not found, or if
|
||||
<option>--with-libedit-preferred</option> is used as an
|
||||
option to <filename>configure</>. If you are using a package-based
|
||||
Linux distribution, be aware that you need both the
|
||||
<literal>readline</> and <literal>readline-devel</> packages, if
|
||||
those are separate in your distribution.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -857,6 +861,16 @@ su - postgres
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--with-libedit-preferred</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Favors the use of the BSD-licensed <application>libedit</> library
|
||||
rather than GPL-licensed <application>Readline</>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--without-readline</option></term>
|
||||
<listitem>
|
||||
|
Loading…
x
Reference in New Issue
Block a user