PHP app request processing.

This commit is contained in:
Max Romanov
2017-06-23 19:20:08 +03:00
parent fa6582d9ad
commit 5a43bd0bfd
6 changed files with 510 additions and 286 deletions

View File

@@ -11,6 +11,10 @@ if [ $NXT_PYTHON_MODULE != NO ]; then
. auto/modules/python/conf
fi
if [ $NXT_PHP_MODULE != NO ]; then
. auto/modules/php/conf
fi
NXT_MODULES_SRC=$NXT_BUILD_DIR/nxt_modules.c

43
auto/modules/php/conf Normal file
View File

@@ -0,0 +1,43 @@
# Copyright (C) Max Romanov
# Copyright (C) NGINX, Inc.
NXT_PHP_CONFIG="${NXT_PHP}-config"
NXT_PHP_VERSION="`${NXT_PHP_CONFIG} --version`"
NXT_PHP_INCLUDE="`${NXT_PHP_CONFIG} --includes`"
NXT_PHP_LIB="-lphp${NXT_PHP_VERSION%%.*}"
NXT_PHP_LIBS="`${NXT_PHP_CONFIG} --ldflags`"
nxt_feature="PHP"
nxt_feature_name=NXT_HAVE_PHP
nxt_feature_run=no
nxt_feature_incs="${NXT_PHP_INCLUDE}"
nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LIBS}"
nxt_feature_test="#include <php.h>
#include <php_main.h>
int main() {
php_request_startup();
return 0;
}"
. auto/feature
if [ $nxt_found = no ]; then
$echo
$echo $0: error: no php found.
$echo
exit 1;
fi
$echo " + php version: ${NXT_PHP_VERSION}"
NXT_PHP_MODULE_SRCS=" \
src/nxt_php_sapi.c \
"
NXT_MODULES_INIT="$NXT_MODULES_INIT nxt_php_sapi_init"
NXT_MODULES_SRCS="$NXT_MODULES_SRCS $NXT_PHP_MODULE_SRCS"
NXT_LIB_AUX_LIBS="$NXT_LIB_AUX_LIBS $NXT_PHP_LIB $NXT_PHP_LIBS"

24
auto/modules/php/make Normal file
View File

@@ -0,0 +1,24 @@
# Copyright (C) Max Romanov
# Copyright (C) NGINX, Inc.
$echo >> $NXT_MAKEFILE
$echo >> $NXT_MAKEFILE
# The php module object files.
for nxt_src in $NXT_PHP_MODULE_SRCS
do
nxt_obj=`$echo $nxt_src | sed -e "s/\.c$/\.o/"`
cat << END >> $NXT_MAKEFILE
$NXT_BUILD_DIR/$nxt_obj: $nxt_src
\$(CC) -c \$(CFLAGS) \$(NXT_INCS) $NXT_PHP_INCLUDE \\
$NXT_LIB_AUX_CFLAGS \\
-o $NXT_BUILD_DIR/$nxt_obj \\
$nxt_src
END
done