- Fix build with readline 6.3 from ports

the patch was obtained from upstream (issue #20374)
- Add missing USES=readline

PR:		ports/187174
Reported by:	O. Hartmann
Reviewed by:	koobs
Obtained from:	python
This commit is contained in:
Antoine Brodin 2014-03-01 14:10:13 +00:00
parent 367cc2beb7
commit 8376e27862
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=346625
2 changed files with 56 additions and 0 deletions

View file

@ -22,6 +22,7 @@ MAKE_ENV= VPATH="${PYTHON_WRKSRC}"
INSTALL_TARGET= altinstall
USES= readline
USE_LDCONFIG= yes
USE_PYTHON= yes
USE_XZ= yes

View file

@ -0,0 +1,55 @@
# Description: fix readline.so build with readline 6.3
# Patch obtained from upstream, issue #20374
# http://bugs.python.org/issue20374
# PR: ports/187174
--- ./Modules/readline.c.orig 2013-11-10 07:36:41.000000000 +0000
+++ ./Modules/readline.c 2014-03-01 12:40:44.000000000 +0000
@@ -750,14 +750,22 @@
}
static int
+#if defined(_RL_FUNCTION_TYPEDEF)
on_startup_hook(void)
+#else
+on_startup_hook()
+#endif
{
return on_hook(startup_hook);
}
#ifdef HAVE_RL_PRE_INPUT_HOOK
static int
+#if defined(_RL_FUNCTION_TYPEDEF)
on_pre_input_hook(void)
+#else
+on_pre_input_hook()
+#endif
{
return on_hook(pre_input_hook);
}
@@ -852,7 +860,7 @@
* before calling the normal completer */
static char **
-flex_complete(char *text, int start, int end)
+flex_complete(const char *text, int start, int end)
{
#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
rl_completion_append_character ='\0';
@@ -911,12 +919,12 @@
rl_bind_key_in_map ('\t', rl_complete, emacs_meta_keymap);
rl_bind_key_in_map ('\033', rl_complete, emacs_meta_keymap);
/* Set our hook functions */
- rl_startup_hook = (Function *)on_startup_hook;
+ rl_startup_hook = on_startup_hook;
#ifdef HAVE_RL_PRE_INPUT_HOOK
- rl_pre_input_hook = (Function *)on_pre_input_hook;
+ rl_pre_input_hook = on_pre_input_hook;
#endif
/* Set our completion function */
- rl_attempted_completion_function = (CPPFunction *)flex_complete;
+ rl_attempted_completion_function = flex_complete;
/* Set Python word break characters */
completer_word_break_characters =
rl_completer_word_break_characters =