summaryrefslogtreecommitdiff
path: root/ext/gettext
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>2000-05-23 22:26:51 +0000
committerSascha Schumann <sas@php.net>2000-05-23 22:26:51 +0000
commitcab5f6afb81d45cc903ae8e0bc86880ec8655ee4 (patch)
treed0f6cba9f5908a7caf12a59747c799f53a2eca6c /ext/gettext
parent9a8a9d774eb1570b9c0ec03412921b0f61a98526 (diff)
downloadphp-git-cab5f6afb81d45cc903ae8e0bc86880ec8655ee4.tar.gz
Make gettext extension compilable as shared module.
Diffstat (limited to 'ext/gettext')
-rw-r--r--ext/gettext/Makefile.in2
-rw-r--r--ext/gettext/config.m466
-rw-r--r--ext/gettext/gettext.c4
3 files changed, 37 insertions, 35 deletions
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();