Annotation of embedaddon/php/sapi/apache/config.m4, revision 1.1.1.3
1.1 misho 1: dnl
1.1.1.2 misho 2: dnl $Id$
1.1 misho 3: dnl
4: AC_DEFUN([PHP_APACHE_FD_CHECK], [
5: AC_CACHE_CHECK([for member fd in BUFF *],ac_cv_php_fd_in_buff,[
6: save=$CPPFLAGS
7: if test -n "$APXS_INCLUDEDIR"; then
8: CPPFLAGS="$CPPFLAGS -I$APXS_INCLUDEDIR"
9: else
10: CPPFLAGS="$CPPFLAGS $APACHE_INCLUDE"
11: fi
12: AC_TRY_COMPILE([#include <httpd.h>],[conn_rec *c; int fd = c->client->fd;],[
13: ac_cv_php_fd_in_buff=yes],[ac_cv_php_fd_in_buff=no],[ac_cv_php_fd_in_buff=no])
14: CPPFLAGS=$save
15: ])
16: if test "$ac_cv_php_fd_in_buff" = "yes"; then
17: AC_DEFINE(PHP_APACHE_HAVE_CLIENT_FD,1,[ ])
18: fi
19: ])
20:
21: dnl Apache 1.x shared module
22: PHP_ARG_WITH(apxs,,
23: [ --with-apxs[=FILE] Build shared Apache 1.x module. FILE is the optional
24: pathname to the Apache apxs tool [apxs]], no, no)
25:
26: AC_MSG_CHECKING([for Apache 1.x module support via DSO through APXS])
27:
28: if test "$PHP_APXS" != "no"; then
29: if test "$PHP_APXS" = "yes"; then
30: APXS=apxs
31: $APXS -q CFLAGS >/dev/null 2>&1
32: if test "$?" != "0" && test -x /usr/sbin/apxs; then #SUSE 6.x
33: APXS=/usr/sbin/apxs
34: fi
35: else
36: PHP_EXPAND_PATH($PHP_APXS, APXS)
37: fi
38:
39: $APXS -q CFLAGS >/dev/null 2>&1
40: if test "$?" != "0"; then
41: AC_MSG_RESULT()
42: AC_MSG_RESULT()
43: AC_MSG_RESULT([Sorry, I was not able to successfully run APXS. Possible reasons:])
44: AC_MSG_RESULT()
45: AC_MSG_RESULT([1. Perl is not installed;])
46: AC_MSG_RESULT([2. Apache was not compiled with DSO support (--enable-module=so);])
47: AC_MSG_RESULT([3. 'apxs' is not in your path. Try to use --with-apxs=/path/to/apxs])
48: AC_MSG_RESULT([The output of $APXS follows])
49: $APXS -q CFLAGS
50: AC_MSG_ERROR([Aborting])
51: fi
52:
53: APXS_LDFLAGS="@SYBASE_LFLAGS@ @SYBASE_LIBS@ @SYBASE_CT_LFLAGS@ @SYBASE_CT_LIBS@"
54: APXS_INCLUDEDIR=`$APXS -q INCLUDEDIR`
55: APXS_CFLAGS=`$APXS -q CFLAGS`
56: APXS_HTTPD=`$APXS -q SBINDIR`/`$APXS -q TARGET`
57: APACHE_INCLUDE=-I$APXS_INCLUDEDIR
58:
59: # Test that we're trying to configure with apache 1.x
60: PHP_AP_EXTRACT_VERSION($APXS_HTTPD)
61: if test "$APACHE_VERSION" -ge 2000000; then
1.1.1.3 ! misho 62: AC_MSG_ERROR([You have enabled Apache 1.3 support while your server is Apache 2. Please use the appropriate switch --with-apxs2])
1.1 misho 63: fi
64:
65: for flag in $APXS_CFLAGS; do
66: case $flag in
67: -D*) APACHE_CPPFLAGS="$APACHE_CPPFLAGS $flag";;
68: esac
69: done
70:
71: case $host_alias in
72: *aix*)
73: APXS_LIBEXECDIR=`$APXS -q LIBEXECDIR`
74: EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-brtl -Wl,-bI:$APXS_LIBEXECDIR/httpd.exp"
75: PHP_AIX_LDFLAGS="-Wl,-brtl"
76: build_type=shared
77: ;;
78: *darwin*)
79: MH_BUNDLE_FLAGS="-dynamic -twolevel_namespace -bundle -bundle_loader $APXS_HTTPD"
80: PHP_SUBST(MH_BUNDLE_FLAGS)
81: SAPI_SHARED=libs/libphp5.so
82: build_type=bundle
83: ;;
84: *)
85: build_type=shared
86: ;;
87: esac
88:
89: PHP_SELECT_SAPI(apache, $build_type, sapi_apache.c mod_php5.c php_apache.c, $APACHE_CPPFLAGS -I$APXS_INCLUDEDIR)
90:
91: # Test whether apxs support -S option
92: $APXS -q -S CFLAGS="$APXS_CFLAGS" CFLAGS >/dev/null 2>&1
93:
94: if test "$?" != "0"; then
95: APACHE_INSTALL="$APXS -i -a -n php5 $SAPI_SHARED" # Old apxs does not have -S option
96: else
97: APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
98: if test -z `$APXS -q SYSCONFDIR`; then
99: APACHE_INSTALL="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
100: $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
101: -i -n php5 $SAPI_SHARED"
102: else
103: APXS_SYSCONFDIR='$(INSTALL_ROOT)'`$APXS -q SYSCONFDIR`
104: APACHE_INSTALL="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
105: \$(mkinstalldirs) '$APXS_SYSCONFDIR' && \
106: $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
107: -S SYSCONFDIR='$APXS_SYSCONFDIR' \
108: -i -a -n php5 $SAPI_SHARED"
109: fi
110: fi
111:
112: if test -z "`$APXS -q LD_SHLIB`" || test "`$APXS -q LIBEXECDIR`" = "modules"; then
113: PHP_APXS_BROKEN=yes
114: fi
115: STRONGHOLD=
116: AC_DEFINE(HAVE_AP_CONFIG_H,1,[ ])
117: AC_DEFINE(HAVE_AP_COMPAT_H,1,[ ])
118: AC_DEFINE(HAVE_APACHE,1,[ ])
119: AC_MSG_RESULT(yes)
120: else
121: AC_MSG_RESULT(no)
122: fi
123:
124: dnl Apache 1.x static module
125: PHP_ARG_WITH(apache,,
126: [ --with-apache[=DIR] Build Apache 1.x module. DIR is the top-level Apache
127: build directory [/usr/local/apache]], no, no)
128:
129: AC_MSG_CHECKING([for Apache 1.x module support])
130:
131: if test "$PHP_SAPI" != "apache" && test "$PHP_APACHE" != "no"; then
132:
133: if test "$PHP_APACHE" = "yes"; then
134: # Apache's default directory
135: PHP_APACHE=/usr/local/apache
136: fi
137:
138: APACHE_INSTALL_FILES="\$(srcdir)/sapi/apache/mod_php5.* sapi/apache/libphp5.module"
139:
140: AC_DEFINE(HAVE_APACHE,1,[ ])
141: APACHE_MODULE=yes
142: PHP_EXPAND_PATH($PHP_APACHE, PHP_APACHE)
143: # For Apache 1.2.x
144: if test -f $PHP_APACHE/src/httpd.h; then
145: APACHE_INCLUDE=-I$PHP_APACHE/src
146: APACHE_TARGET=$PHP_APACHE/src
147: PHP_SELECT_SAPI(apache, static, sapi_apache.c mod_php5.c php_apache.c, $APACHE_INCLUDE)
148: APACHE_INSTALL="mkdir -p $APACHE_TARGET; cp $SAPI_STATIC $APACHE_INSTALL_FILES $APACHE_TARGET"
149: PHP_LIBS="-L. -lphp3"
150: AC_MSG_RESULT([yes - Apache 1.2.x])
151: STRONGHOLD=
152: if test -f $PHP_APACHE/src/ap_config.h; then
153: AC_DEFINE(HAVE_AP_CONFIG_H,1,[ ])
154: fi
155: # For Apache 2.0.x
156: elif test -f $PHP_APACHE/include/httpd.h && test -f $PHP_APACHE/srclib/apr/include/apr_general.h ; then
157: AC_MSG_ERROR([Use --with-apxs2 with Apache 2.x!])
158: # For Apache 1.3.x
159: elif test -f $PHP_APACHE/src/main/httpd.h; then
160: APACHE_HAS_REGEX=1
161: APACHE_INCLUDE="-I$PHP_APACHE/src/main -I$PHP_APACHE/src/os/unix -I$PHP_APACHE/src/ap"
162: APACHE_TARGET=$PHP_APACHE/src/modules/php5
163: if test ! -d $APACHE_TARGET; then
164: mkdir $APACHE_TARGET
165: fi
166: PHP_SELECT_SAPI(apache, static, sapi_apache.c mod_php5.c php_apache.c, $APACHE_INCLUDE)
167: APACHE_INSTALL="mkdir -p $APACHE_TARGET; cp $SAPI_STATIC $APACHE_TARGET/libmodphp5.a; cp $APACHE_INSTALL_FILES $APACHE_TARGET; cp $srcdir/sapi/apache/apMakefile.tmpl $APACHE_TARGET/Makefile.tmpl; cp $srcdir/sapi/apache/apMakefile.libdir $APACHE_TARGET/Makefile.libdir"
168: PHP_LIBS="-Lmodules/php5 -L../modules/php5 -L../../modules/php5 -lmodphp5"
169: AC_MSG_RESULT([yes - Apache 1.3.x])
170: STRONGHOLD=
171: if test -f $PHP_APACHE/src/include/ap_config.h; then
172: AC_DEFINE(HAVE_AP_CONFIG_H, 1, [ ])
173: fi
174: if test -f $PHP_APACHE/src/include/ap_compat.h; then
175: AC_DEFINE(HAVE_AP_COMPAT_H, 1, [ ])
176: if test ! -f $PHP_APACHE/src/include/ap_config_auto.h; then
177: AC_MSG_ERROR([Please run Apache\'s configure or src/Configure program once and try again])
178: fi
179: elif test -f $PHP_APACHE/src/include/compat.h; then
180: AC_DEFINE(HAVE_OLD_COMPAT_H, 1, [ ])
181: fi
182: # Also for Apache 1.3.x
183: elif test -f $PHP_APACHE/src/include/httpd.h; then
184: APACHE_HAS_REGEX=1
185: APACHE_INCLUDE="-I$PHP_APACHE/src/include -I$PHP_APACHE/src/os/unix"
186: APACHE_TARGET=$PHP_APACHE/src/modules/php5
187: if test ! -d $APACHE_TARGET; then
188: mkdir $APACHE_TARGET
189: fi
190: PHP_SELECT_SAPI(apache, static, sapi_apache.c mod_php5.c php_apache.c, $APACHE_INCLUDE)
191: PHP_LIBS="-Lmodules/php5 -L../modules/php5 -L../../modules/php5 -lmodphp5"
192: APACHE_INSTALL="mkdir -p $APACHE_TARGET; cp $SAPI_STATIC $APACHE_TARGET/libmodphp5.a; cp $APACHE_INSTALL_FILES $APACHE_TARGET; cp $srcdir/sapi/apache/apMakefile.tmpl $APACHE_TARGET/Makefile.tmpl; cp $srcdir/sapi/apache/apMakefile.libdir $APACHE_TARGET/Makefile.libdir"
193: AC_MSG_RESULT([yes - Apache 1.3.x])
194: STRONGHOLD=
195: if test -f $PHP_APACHE/src/include/ap_config.h; then
196: AC_DEFINE(HAVE_AP_CONFIG_H, 1, [ ])
197: fi
198: if test -f $PHP_APACHE/src/include/ap_compat.h; then
199: AC_DEFINE(HAVE_AP_COMPAT_H, 1, [ ])
200: if test ! -f $PHP_APACHE/src/include/ap_config_auto.h; then
201: AC_MSG_ERROR([Please run Apache\'s configure or src/Configure program once and try again])
202: fi
203: elif test -f $PHP_APACHE/src/include/compat.h; then
204: AC_DEFINE(HAVE_OLD_COMPAT_H, 1, [ ])
205: fi
206: # For StrongHold 2.2
207: elif test -f $PHP_APACHE/apache/httpd.h; then
208: APACHE_INCLUDE="-I$PHP_APACHE/apache -I$PHP_APACHE/ssl/include"
209: APACHE_TARGET=$PHP_APACHE/apache
210: PHP_SELECT_SAPI(apache, static, sapi_apache.c mod_php5.c php_apache.c, $APACHE_INCLUDE)
211: PHP_LIBS="-Lmodules/php5 -L../modules/php5 -L../../modules/php5 -lmodphp5"
212: APACHE_INSTALL="mkdir -p $APACHE_TARGET; cp $SAPI_STATIC $APACHE_TARGET/libmodphp5.a; cp $APACHE_INSTALL_FILES $APACHE_TARGET"
213: STRONGHOLD=-DSTRONGHOLD=1
214: AC_MSG_RESULT([yes - StrongHold])
215: if test -f $PHP_APACHE/apache/ap_config.h; then
216: AC_DEFINE(HAVE_AP_CONFIG_H, 1, [ ])
217: fi
218: if test -f $PHP_APACHE/src/ap_compat.h; then
219: AC_DEFINE(HAVE_AP_COMPAT_H, 1, [ ])
220: if test ! -f $PHP_APACHE/src/include/ap_config_auto.h; then
221: AC_MSG_ERROR([Please run Apache\'s configure or src/Configure program once and try again])
222: fi
223: elif test -f $PHP_APACHE/src/compat.h; then
224: AC_DEFINE(HAVE_OLD_COMPAT_H, 1, [ ])
225: fi
226: else
227: AC_MSG_RESULT(no)
228: AC_MSG_ERROR([Invalid Apache directory - unable to find httpd.h under $PHP_APACHE])
229: fi
230: else
231: AC_MSG_RESULT(no)
232: fi
233:
234: # compatibility
235: if test -z "$enable_mod_charset" && test "$with_mod_charset"; then
236: enable_mod_charset=$with_mod_charset
237: fi
238:
239: PHP_ARG_ENABLE(mod-charset, whether to enable Apache charset compatibility option,
240: [ --enable-mod-charset APACHE: Enable transfer tables for mod_charset (Rus Apache)], no, no)
241:
242: if test "$PHP_MOD_CHARSET" = "yes"; then
243: AC_DEFINE(USE_TRANSFER_TABLES, 1, [ ])
244: fi
245:
246: dnl Build as static module
247: if test "$APACHE_MODULE" = "yes"; then
248: PHP_TARGET_RDYNAMIC
249: $php_shtool mkdir -p sapi/apache
250: PHP_OUTPUT(sapi/apache/libphp5.module)
251: fi
252:
253: dnl General
254: if test -n "$APACHE_INSTALL"; then
255: if test "x$APXS" != "x" -a "`uname -sv`" = "AIX 4" -a "$GCC" != "yes"; then
256: APXS_EXP=-bE:sapi/apache/mod_php5.exp
257: fi
258:
259: PHP_APACHE_FD_CHECK
260: INSTALL_IT=$APACHE_INSTALL
261:
262: PHP_SUBST(APXS_EXP)
263: PHP_SUBST(APACHE_INCLUDE)
264: PHP_SUBST(APACHE_TARGET)
265: PHP_SUBST(APXS)
266: PHP_SUBST(APXS_LDFLAGS)
267: PHP_SUBST(APACHE_INSTALL)
268: PHP_SUBST(STRONGHOLD)
269: fi
270:
271: dnl ## Local Variables:
272: dnl ## tab-width: 4
273: dnl ## End:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>