summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSascha Schumann <sas@php.net>2000-03-26 02:47:00 +0000
committerSascha Schumann <sas@php.net>2000-03-26 02:47:00 +0000
commita2d42419a5fe1c0f4d9376fcf5d62eee3b915a7f (patch)
tree4b0c367130ddbb232d0e17715aee7fe1886de79a
parenta0f70aa618ae046507ef6a861363d45dc099f1f5 (diff)
downloadphp-git-a2d42419a5fe1c0f4d9376fcf5d62eee3b915a7f.tar.gz
Revamp session's config.m4 and reenable support for mm. The shared memory
module works now successfully again under Apache and other web servers.
-rw-r--r--acinclude.m44
-rw-r--r--configure.in2
-rw-r--r--ext/session/config.m475
-rw-r--r--genif.sh6
4 files changed, 52 insertions, 35 deletions
diff --git a/acinclude.m4 b/acinclude.m4
index 7aa50266f2..0ee6b9e1d6 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -1,6 +1,10 @@
dnl $Id$
dnl
dnl This file contains local autoconf functions.
+
+AC_DEFUN(PHP_MODULE_PTR,[
+ EXTRA_MODULE_PTRS="$EXTRA_MODULE_PTRS $1,"
+])
AC_DEFUN(PHP_CONFIG_NICE,[
rm -f $1
diff --git a/configure.in b/configure.in
index ec0ad5fb17..9ae60af4e2 100644
--- a/configure.in
+++ b/configure.in
@@ -829,7 +829,7 @@ if true; then
echo "creating internal_functions.c"
extensions=\`grep '^s.@EXT_STATIC@' \$0|sed -e 's/^.*@% *//' -e 's/%.*$//'\`
mv -f internal_functions.c internal_functions.c.old 2>/dev/null
- sh $srcdir/genif.sh $srcdir/internal_functions.c.in $srcdir \$extensions > internal_functions.c
+ sh $srcdir/genif.sh $srcdir/internal_functions.c.in $srcdir $EXTRA_MODULE_PTRS \$extensions > internal_functions.c
if cmp internal_functions.c.old internal_functions.c > /dev/null 2>&1; then
echo "internal_functions.c is unchanged"
mv internal_functions.c.old internal_functions.c
diff --git a/ext/session/config.m4 b/ext/session/config.m4
index 4ce652e693..11496f4a60 100644
--- a/ext/session/config.m4
+++ b/ext/session/config.m4
@@ -1,42 +1,53 @@
dnl $Id$
-dnl config.m4 for extension session
-dnl don't forget to call PHP_EXTENSION(session)
-RESULT=no
AC_MSG_CHECKING(for mm support)
AC_ARG_WITH(mm,
-[ --with-mm[=DIR] Include mm support],
-[
- if test "$withval" != "no"; then
- for i in /usr/local /usr $withval; do
- if test -f "$i/include/mm.h"; then
- MM_DIR="$i"
- fi
- done
-
- if test -z "$MM_DIR" ; then
- AC_MSG_ERROR(cannot find mm library)
- fi
-
- AC_ADD_LIBRARY_WITH_PATH(mm, $MM_DIR/lib)
- AC_ADD_INCLUDE($MM_DIR/include)
- AC_DEFINE(HAVE_LIBMM, 1, [Whether you have libmm])
- RESULT=yes
- PHP_EXTENSION(ps_mm)
- fi
+[ --with-mm[=DIR] Include mm support for session storage],[
+ PHP_MM=$withval
+],[
+ PHP_MM=no
])
-AC_MSG_RESULT($RESULT)
+AC_MSG_RESULT($PHP_MM)
+
+AC_MSG_CHECKING(whether to enable session support)
+AC_ARG_ENABLE(session,
+[ --disable-session Disable session support],[
+ PHP_SESSION=$enableval
+],[
+ PHP_SESSION=yes
+])
+AC_MSG_RESULT($PHP_SESSION)
-RESULT=no
AC_MSG_CHECKING(whether to enable transparent session id propagation)
AC_ARG_ENABLE(trans-sid,
-[ --enable-trans-sid Enable transparent session id propagation],
-[
- if test "$enableval" = "yes" ; then
- AC_DEFINE(TRANS_SID, 1, [Whether you want transparent session id propagation])
- RESULT=yes
- fi
+[ --enable-trans-sid Enable transparent session id propagation],[
+ PHP_TRANS_SID=$enableval
+],[
+ PHP_TRANS_SID=no
])
-AC_MSG_RESULT($RESULT)
+AC_MSG_RESULT($PHP_TRANS_SID)
+
+if test "$PHP_MM" != "no"; then
+ for i in /usr/local /usr $PHP_MM; do
+ if test -f "$i/include/mm.h"; then
+ MM_DIR="$i"
+ fi
+ done
+
+ if test -z "$MM_DIR" ; then
+ AC_MSG_ERROR(cannot find mm library)
+ fi
+
+ AC_ADD_LIBRARY_WITH_PATH(mm, $MM_DIR/lib)
+ AC_ADD_INCLUDE($MM_DIR/include)
+ AC_DEFINE(HAVE_LIBMM, 1, [Whether you have libmm])
+ PHP_MODULE_PTR(phpext_ps_mm_ptr)
+fi
+
+if test "$PHP_TRANS_SID" = "yes"; then
+ AC_DEFINE(TRANS_SID, 1, [Whether you want transparent session id propagation])
+fi
-PHP_EXTENSION(session)
+if test "$PHP_SESSION" = "yes"; then
+ PHP_EXTENSION(session)
+fi
diff --git a/genif.sh b/genif.sh
index 4c182ec67e..787b9dbc96 100644
--- a/genif.sh
+++ b/genif.sh
@@ -1,19 +1,21 @@
#! /bin/sh
-# $Id: genif.sh,v 1.7 1999-09-03 17:46:39 sas Exp $
+# $Id: genif.sh,v 1.8 2000-03-26 02:46:59 sas Exp $
# replacement for genif.pl
infile="$1"
shift
srcdir="$1"
shift
+extra_module_ptrs="$1"
+shift
if test "$infile" = "" -o "$srcdir" = ""; then
echo "please supply infile and srcdir"
exit 1
fi
-module_ptrs=""
+module_ptrs="$extra_module_ptrs"
includes=""
olddir=`pwd`