From: Sascha Schumann Date: Tue, 23 May 2000 22:26:51 +0000 (+0000) Subject: Make gettext extension compilable as shared module. X-Git-Tag: PRE_EIGHT_BYTE_ALLOC_PATCH~292 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cab5f6afb81d45cc903ae8e0bc86880ec8655ee4;p=php Make gettext extension compilable as shared module. --- diff --git a/ext/gettext/Makefile.in b/ext/gettext/Makefile.in index 88c84b687c..522c367c4d 100644 --- a/ext/gettext/Makefile.in +++ b/ext/gettext/Makefile.in @@ -1,5 +1,7 @@ LTLIBRARY_NAME = libgettext.la LTLIBRARY_SOURCES = gettext.c +LTLIBRARY_SHARED_NAME = gettext.la +LTLIBRARY_SHARED_LIBADD = $(GETTEXT_SHARED_LIBADD) include $(top_srcdir)/build/dynlib.mk diff --git a/ext/gettext/config.m4 b/ext/gettext/config.m4 index 1ba8f94639..4c8134bbc1 100644 --- a/ext/gettext/config.m4 +++ b/ext/gettext/config.m4 @@ -2,44 +2,40 @@ dnl $Id$ dnl config.m4 for extension gettext dnl don't forget to call PHP_EXTENSION(gettext) -AC_MSG_CHECKING(whether to include GNU gettext support) -AC_ARG_WITH(gettext, +PHP_ARG_WITH(gettext,whether to include GNU gettext support, [ --with-gettext[=DIR] Include GNU gettext support. DIR is the gettext - install directory, defaults to /usr/local], -[ - if test "$withval" != "no"; then - if test "$withval" = "yes"; then - GETTEXT_INCDIR=/usr/local/include - test -f /usr/local/include/libintl.h && GETTEXT_INCDIR=/usr/local/include/ - GETTEXT_LIBDIR=/usr/local/lib - else - GETTEXT_INCDIR=$withval/include - test -f $withval/include/libintl.h && GETTEXT_INCDIR=$withval/include - GETTEXT_LIBDIR=$withval/lib + install directory, defaults to /usr/local]) + +if test "$PHP_GETTEXT" != "no"; then + for i in /usr /usr/local $PHP_GETTEXT; do + if test -r $i/include/libintl.h; then + GETTEXT_DIR=$i fi - GETTEXT_INCLUDE=-I$GETTEXT_INCDIR - GETTEXT_LFLAGS=-L$GETTEXT_LIBDIR - O_CPPFLAGS="$CPPFLAGS" - O_LDFLAGS=$LDFLAGS - CPPFLAGS="$CPPFLAGS -I$GETTEXT_INCDIR" - LDFLAGS="$LDFLAGS -L$GETTEXT_LIBDIR" - GETTEXT_LIBS= - AC_MSG_RESULT(yes) - AC_CHECK_LIB(intl, bindtextdomain, GETTEXT_LIBS="-lintl",[ - AC_CHECK_LIB(c, bindtextdomain, GETTEXT_LIBS=,[ - AC_MSG_ERROR(Unable to find required gettext library) - ],) - ],) + done + + if test -z "$GETTEXT_DIR"; then + AC_MSG_ERROR(Cannot locate header file libintl.h) + fi - AC_DEFINE(HAVE_LIBINTL,1,[ ]) - PHP_EXTENSION(gettext) + GETTEXT_LIBDIR=$GETTEXT_DIR/lib + GETTEXT_INCDIR=$GETTEXT_DIR/include + + O_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -L$GETTEXT_LIBDIR" + AC_CHECK_LIB(intl, bindtextdomain, GETTEXT_LIBS="intl",[ + AC_CHECK_LIB(c, bindtextdomain, GETTEXT_LIBS= ,[ + AC_MSG_ERROR(Unable to find required gettext library) + ]) + ]) + LDFLAGS="$O_LDFLAGS" - EXTRA_LIBS="$EXTRA_LIBS $GETTEXT_LFLAGS $GETTEXT_LIBS" - INCLUDES="$INCLUDES $GETTEXT_INCLUDE" + AC_DEFINE(HAVE_LIBINTL,1,[ ]) + PHP_EXTENSION(gettext, $ext_shared) + PHP_SUBST(GETTEXT_SHARED_LIBADD) - else - AC_MSG_RESULT(no) + if test -n "$GETTEXT_LIBS"; then + AC_ADD_LIBRARY_WITH_PATH($GETTEXT_LIBS, $GETTEXT_LIBDIR, GETTEXT_SHARED_LIBADD) fi -],[ - AC_MSG_RESULT(no) -]) + + AC_ADD_INCLUDE($GETTEXT_INCDIR) +fi diff --git a/ext/gettext/gettext.c b/ext/gettext/gettext.c index 0f9d8d47aa..a57f5deab2 100644 --- a/ext/gettext/gettext.c +++ b/ext/gettext/gettext.c @@ -41,6 +41,10 @@ zend_module_entry php_gettext_module_entry = { "gettext", php_gettext_functions, NULL, NULL, NULL, NULL, PHP_MINFO(gettext), STANDARD_MODULE_PROPERTIES }; +#ifdef COMPILE_DL_GETTEXT +ZEND_GET_MODULE(php_gettext) +#endif + PHP_MINFO_FUNCTION(gettext) { php_info_print_table_start();