The attached patch enables PostgreSQL CVS to build cleanly under Cygwin
when built against readline 4.2. Specifically, it handles the deprecation of filename_completion_function() with preference for rl_filename_completion_function() Although, I was motivated by Cygwin support, IMO this patch is appropriate for all platforms. To quote from the readline source: #if 0 /* Backwards compatibility (compat.c). These will go away sometime. */ ... extern READLINE_EXPORT(char, *filename_completion_function) ... #endif Note that this patch is modeled after the one by Peter Eisentraut for completion_matches(): http://www.ca.postgresql.org/~petere/readline42.html I tested this patch under the following environments: Cygwin with readline 4.1 Cygwin with readline 4.2 Linux with readline 2.2.1 Linux with readline 4.2 and it behaved as expected. Jason Tishler
This commit is contained in:
parent
8af0ea9dc1
commit
92f450652c
@ -928,7 +928,7 @@ AC_TRY_LINK([#include <stdio.h>
|
||||
AC_DEFINE(HAVE_RL_COMPLETION_APPEND_CHARACTER)],
|
||||
[AC_MSG_RESULT(no)])
|
||||
|
||||
AC_CHECK_FUNCS([rl_completion_matches])
|
||||
AC_CHECK_FUNCS([rl_completion_matches rl_filename_completion_function])
|
||||
|
||||
|
||||
dnl Cannot use AC_CHECK_FUNC because finite may be a macro
|
||||
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright 2000 by PostgreSQL Global Development Group
|
||||
*
|
||||
* $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.32 2001/05/08 21:06:43 petere Exp $
|
||||
* $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.33 2001/06/11 22:12:48 momjian Exp $
|
||||
*/
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
@ -60,7 +60,9 @@
|
||||
#include "common.h"
|
||||
#include "settings.h"
|
||||
|
||||
extern char *filename_completion_function();
|
||||
#ifdef HAVE_RL_FILENAME_COMPLETION_FUNCTION
|
||||
#define filename_completion_function rl_filename_completion_function
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_RL_COMPLETION_MATCHES
|
||||
#define completion_matches(x, y) rl_completion_matches((x), ((rl_compentry_func_t *)(y)))
|
||||
|
@ -8,7 +8,7 @@
|
||||
* or in config.h afterwards. Of course, if you edit config.h, then your
|
||||
* changes will be overwritten the next time you run configure.
|
||||
*
|
||||
* $Id: config.h.in,v 1.165 2001/06/02 18:25:18 petere Exp $
|
||||
* $Id: config.h.in,v 1.166 2001/06/11 22:12:48 momjian Exp $
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_H
|
||||
@ -589,6 +589,9 @@ extern int fdatasync(int fildes);
|
||||
/* Set to 1 if you have rl_completion_matches */
|
||||
#undef HAVE_RL_COMPLETION_MATCHES
|
||||
|
||||
/* Set to 1 if you have rl_filename_completion_function */
|
||||
#undef HAVE_RL_FILENAME_COMPLETION_FUNCTION
|
||||
|
||||
/* Set to 1 if you have getopt_long() (GNU long options) */
|
||||
#undef HAVE_GETOPT_LONG
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user