summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>2000-05-02 04:26:48 +0000
committerSascha Schumann <sas@php.net>2000-05-02 04:26:48 +0000
commit92c87b1ba9437904ed1aecf3744e79864e90e75c (patch)
tree4c6dbefd3c9a70c5d861bb32d55534387f55d035 /ext
parentdca0d3f4544bcd2219a68c33b1376d08753e0480 (diff)
downloadphp-git-92c87b1ba9437904ed1aecf3744e79864e90e75c.tar.gz
Make readline compilable as shared module
Diffstat (limited to 'ext')
-rw-r--r--ext/readline/Makefile.in2
-rw-r--r--ext/readline/config.m456
-rw-r--r--ext/readline/readline.c4
3 files changed, 29 insertions, 33 deletions
diff --git a/ext/readline/Makefile.in b/ext/readline/Makefile.in
index da1c0c7179..6af732d792 100644
--- a/ext/readline/Makefile.in
+++ b/ext/readline/Makefile.in
@@ -1,5 +1,7 @@
LTLIBRARY_NAME = libreadline.la
LTLIBRARY_SOURCES = readline.c
+LTLIBRARY_SHARED_NAME = readline.la
+LTLIBRARY_SHARED_LIBADD = $(READLINE_SHARED_LIBADD)
include $(top_srcdir)/build/dynlib.mk
diff --git a/ext/readline/config.m4 b/ext/readline/config.m4
index 35e4ab5674..df705ea188 100644
--- a/ext/readline/config.m4
+++ b/ext/readline/config.m4
@@ -3,42 +3,32 @@ dnl config.m4 for extension readline
dnl don't forget to call PHP_EXTENSION(readline)
-AC_MSG_CHECKING(for readline support)
-AC_ARG_WITH(readline,
+PHP_ARG_WITH(readline,for readline support,
[ --with-readline[=DIR] Include readline support. DIR is the readline
- install directory.],
-[
- if test "$withval" != "no"; then
- for i in $withval /usr/local /usr; do
- if test -f $i/include/readline/readline.h; then
- READLINE_DIR=$i
- fi
- done
- if test "$READLINE_DIR" = ""; then
- AC_MSG_ERROR(Please reinstall readline - I cannot find readline.h)
- fi
- AC_ADD_INCLUDE($READLINE_DIR/include)
+ install directory.])
- AC_CHECK_LIB(ncurses, tgetent, [
- AC_ADD_LIBRARY(ncurses) ], [
- AC_CHECK_LIB(termcap, tgetent, [
- AC_ADD_LIBRARY(termcap)
- ])
- ])
+if test "$PHP_READLINE" != "no"; then
+ for i in /usr/local /usr $PHP_READLINE; do
+ if test -f $i/include/readline/readline.h; then
+ READLINE_DIR=$i
+ fi
+ done
+ if test -z "$READLINE_DIR"; then
+ AC_MSG_ERROR(Please reinstall readline - I cannot find readline.h)
+ fi
+ AC_ADD_INCLUDE($READLINE_DIR/include)
- AC_CHECK_LIB(tgetent, termcap)
- AC_CHECK_LIB(tgetent, ncurses)
- AC_ADD_LIBRARY_WITH_PATH(history, $READLINE_DIR/lib)
- AC_ADD_LIBRARY_WITH_PATH(readline, $READLINE_DIR/lib)
+ AC_CHECK_LIB(ncurses, tgetent, [
+ AC_ADD_LIBRARY_WITH_PATH(ncurses,,READLINE_SHARED_LIBADD)],[
+ AC_CHECK_LIB(termcap, tgetent, [
+ AC_ADD_LIBRARY_WITH_PATH(termcap,,READLINE_SHARED_LIBADD)])
+ ])
- AC_MSG_RESULT(yes)
+ AC_ADD_LIBRARY_WITH_PATH(history, $READLINE_DIR/lib, READLINE_SHARED_LIBADD)
+ AC_ADD_LIBRARY_WITH_PATH(readline, $READLINE_DIR/lib, READLINE_SHARED_LIBADD)
+ PHP_SUBST(READLINE_SHARED_LIBADD)
- AC_DEFINE(HAVE_LIBREADLINE, 1, [ ])
- PHP_EXTENSION(readline)
- else
- AC_MSG_RESULT(no)
- fi
-],[
- AC_MSG_RESULT(no)
-])
+ AC_DEFINE(HAVE_LIBREADLINE, 1, [ ])
+ PHP_EXTENSION(readline, $ext_shared)
+fi
diff --git a/ext/readline/readline.c b/ext/readline/readline.c
index 1d64bdc110..588f8b084c 100644
--- a/ext/readline/readline.c
+++ b/ext/readline/readline.c
@@ -69,6 +69,10 @@ zend_module_entry readline_module_entry = {
STANDARD_MODULE_PROPERTIES
};
+#ifdef COMPILE_DL_READLINE
+ZEND_GET_MODULE(readline)
+#endif
+
PHP_MINIT_FUNCTION(readline)
{
using_history();