diff --git a/NEWS b/NEWS index 9b2c40872b27e..16fc3b7b13a6d 100644 --- a/NEWS +++ b/NEWS @@ -23,6 +23,9 @@ PHP NEWS - Random: . lcg_value() is now deprecated. (timwolla) +- Readline: + . Fixed bug #51558 (Shared readline build fails). (Peter Kokot) + - Session: . INI settings session.sid_length and session.sid_bits_per_character are now deprecated. (timwolla) diff --git a/ext/readline/config.m4 b/ext/readline/config.m4 index 0ba5fd55656a2..82a3646eb848e 100644 --- a/ext/readline/config.m4 +++ b/ext/readline/config.m4 @@ -46,11 +46,6 @@ if test "$PHP_READLINE" && test "$PHP_READLINE" != "no"; then [AC_MSG_FAILURE([The readline library not found.])], [-L$READLINE_DIR/$PHP_LIBDIR $PHP_READLINE_LIBS]) - PHP_CHECK_LIBRARY([readline], [rl_pending_input], - [], - [AC_MSG_FAILURE([Invalid readline installation detected. Try --with-libedit instead.])], - [-L$READLINE_DIR/$PHP_LIBDIR $PHP_READLINE_LIBS]) - PHP_CHECK_LIBRARY([readline], [rl_callback_read_char], [AC_DEFINE([HAVE_RL_CALLBACK_READ_CHAR], [1], [ ])], [], @@ -72,9 +67,21 @@ if test "$PHP_READLINE" && test "$PHP_READLINE" != "no"; then CFLAGS="$CFLAGS $INCLUDES" LDFLAGS="$LDFLAGS -L$READLINE_DIR/$PHP_LIBDIR" LIBS="$LIBS -lreadline" + + dnl Sanity and minimum version check if readline library has variable + dnl rl_pending_input. + AC_CHECK_DECL([rl_pending_input],, [AC_MSG_FAILURE([ + Invalid readline installation detected. Try --with-libedit instead. + ])], [ + #include + #include + ]) + AC_CHECK_DECL([rl_erase_empty_line], - [AC_DEFINE([HAVE_ERASE_EMPTY_LINE], [1])],, - [#include ]) + [AC_DEFINE([HAVE_ERASE_EMPTY_LINE], [1])],, [ + #include + #include + ]) CFLAGS=$CFLAGS_SAVE LDFLAGS=$LDFLAGS_SAVE LIBS=$LIBS_SAVE