summaryrefslogtreecommitdiffhomepage
path: root/auto
diff options
context:
space:
mode:
Diffstat (limited to 'auto')
-rw-r--r--auto/help1
-rw-r--r--auto/modules/php126
-rw-r--r--auto/options6
-rw-r--r--auto/save1
-rw-r--r--auto/sources1
-rw-r--r--auto/summary1
6 files changed, 88 insertions, 48 deletions
diff --git a/auto/help b/auto/help
index fe0c7056..f5f10010 100644
--- a/auto/help
+++ b/auto/help
@@ -20,6 +20,7 @@ cat << END
--incdir=DIRECTORY set includes directory name, default: "$NXT_INCDIR"
--modules=DIRECTORY set modules directory name, default: "$NXT_MODULES"
--state=DIRECTORY set state directory name, default: "$NXT_STATE"
+ --tmp=DIRECTORY set tmp directory name, default: "$NXT_TMP"
--pid=FILE set pid filename, default: "$NXT_PID"
--log=FILE set log filename, default: "$NXT_LOG"
diff --git a/auto/modules/php b/auto/modules/php
index 97d1ac43..e2e5498a 100644
--- a/auto/modules/php
+++ b/auto/modules/php
@@ -58,6 +58,7 @@ NXT_PHP=${NXT_PHP_CONFIG%-config*}
NXT_PHP_MODULE=${NXT_PHP_MODULE=${NXT_PHP##*/}}
NXT_PHP_LIB_PATH=${NXT_PHP_LIB_PATH=}
NXT_PHP_LIB_STATIC=${NXT_PHP_LIB_STATIC=no}
+NXT_PHP_ADDITIONAL_FLAGS=
$echo "configuring PHP module"
@@ -75,6 +76,14 @@ if /bin/sh -c "${NXT_PHP_CONFIG} --version" >> $NXT_AUTOCONF_ERR 2>&1; then
NXT_PHP_VERSION="`${NXT_PHP_CONFIG} --version`"
$echo " + PHP SAPI: [`${NXT_PHP_CONFIG} --php-sapis`]"
+ NXT_PHP_MAJOR_VERSION=${NXT_PHP_VERSION%%.*}
+ NXT_PHP_MINOR_VERSION=${NXT_PHP_VERSION#??}
+ NXT_PHP_MINOR_VERSION=${NXT_PHP_MINOR_VERSION%.*}
+
+ if [ $NXT_PHP_MAJOR_VERSION = 5 -a $NXT_PHP_MINOR_VERSION -lt 4 ]; then
+ NXT_PHP_ADDITIONAL_FLAGS=-Wno-write-strings
+ fi
+
NXT_PHP_INCLUDE="`${NXT_PHP_CONFIG} --includes`"
if [ $NXT_PHP_LIB_STATIC = yes ]; then
@@ -101,77 +110,98 @@ if /bin/sh -c "${NXT_PHP_CONFIG} --version" >> $NXT_AUTOCONF_ERR 2>&1; then
fi
fi
- nxt_feature="PHP embed SAPI"
- nxt_feature_name=""
- nxt_feature_run=no
- nxt_feature_incs="${NXT_PHP_INCLUDE}"
- nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
- nxt_feature_test="
- #include <php.h>
- #include <php_main.h>
-
- int main() {
- php_module_startup(NULL, NULL, 0);
- return 0;
- }"
-
- . auto/feature
-
- if [ $nxt_found = no ]; then
- $echo
- $echo $0: error: no PHP embed SAPI found.
- $echo
- exit 1;
- fi
+else
+ $echo
+ $echo $0: error: no PHP found.
+ $echo
+ exit 1;
+fi
- # Bug #71041 (https://bugs.php.net/bug.php?id=71041).
- nxt_feature="PHP zend_signal_startup()"
- nxt_feature_name=""
- nxt_feature_run=no
- nxt_feature_incs="${NXT_PHP_INCLUDE}"
- nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
- nxt_feature_test="
- #include <php.h>
- #include <php_main.h>
+nxt_feature="PHP version"
+nxt_feature_name=""
+nxt_feature_run=value
+nxt_feature_incs="${NXT_PHP_INCLUDE}"
+nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
+nxt_feature_test="
+ #include <php.h>
- int main() {
- zend_signal_startup();
- return 0;
- }"
+ int main() {
+ printf(\"%s\", PHP_VERSION);
+ return 0;
+ }"
- . auto/feature
+. auto/feature
- if [ $nxt_found = yes ]; then
- NXT_ZEND_SIGNAL_STARTUP=1
- else
- NXT_ZEND_SIGNAL_STARTUP=0
- fi
-else
+nxt_feature="PHP embed SAPI"
+nxt_feature_name=""
+nxt_feature_run=no
+nxt_feature_incs="${NXT_PHP_INCLUDE}"
+nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
+nxt_feature_test="
+ #include <php.h>
+ #include <php_main.h>
+
+ int main() {
+ php_module_startup(NULL, NULL, 0);
+ return 0;
+ }"
+
+. auto/feature
+
+if [ $nxt_found = no ]; then
$echo
- $echo $0: error: no PHP found.
+ $echo $0: error: no PHP embed SAPI found.
$echo
exit 1;
fi
-nxt_feature="PHP version"
+nxt_feature="PHP Zend Thread Safety"
nxt_feature_name=""
-nxt_feature_run=value
+nxt_feature_run=no
nxt_feature_incs="${NXT_PHP_INCLUDE}"
nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
nxt_feature_test="
#include <php.h>
+ #include <php_main.h>
int main() {
- printf(\"%s\", PHP_VERSION);
+ #ifndef ZTS
+ #error ZTS is not defined.
+ #endif
return 0;
}"
. auto/feature
+# Bug #71041 (https://bugs.php.net/bug.php?id=71041).
+
+nxt_feature="PHP zend_signal_startup()"
+nxt_feature_name=""
+nxt_feature_run=no
+nxt_feature_incs="${NXT_PHP_INCLUDE}"
+nxt_feature_libs="${NXT_PHP_LIB} ${NXT_PHP_LDFLAGS}"
+nxt_feature_test="
+ #include <php.h>
+ #include <php_main.h>
+
+ int main() {
+ zend_signal_startup();
+ return 0;
+ }"
+
+. auto/feature
+
+if [ $nxt_found = yes ]; then
+ NXT_ZEND_SIGNAL_STARTUP=1
+else
+ NXT_ZEND_SIGNAL_STARTUP=0
+fi
+
+
if grep ^$NXT_PHP_MODULE: $NXT_MAKEFILE 2>&1 > /dev/null; then
$echo
$echo $0: error: duplicate \"$NXT_PHP_MODULE\" module configured.
@@ -204,8 +234,8 @@ for nxt_src in $NXT_PHP_MODULE_SRCS; do
cat << END >> $NXT_MAKEFILE
$NXT_BUILD_DIR/$nxt_obj: $nxt_src $NXT_VERSION_H
- \$(CC) -c \$(CFLAGS) \$(NXT_INCS) $NXT_PHP_INCLUDE \\
- -DNXT_ZEND_SIGNAL_STARTUP=$NXT_ZEND_SIGNAL_STARTUP \\
+ \$(CC) -c \$(CFLAGS) $NXT_PHP_ADDITIONAL_FLAGS \$(NXT_INCS) \\
+ $NXT_PHP_INCLUDE -DNXT_ZEND_SIGNAL_STARTUP=$NXT_ZEND_SIGNAL_STARTUP \\
$nxt_dep_flags \\
-o $NXT_BUILD_DIR/$nxt_obj $nxt_src
$nxt_dep_post
diff --git a/auto/options b/auto/options
index 0d31abad..d315b227 100644
--- a/auto/options
+++ b/auto/options
@@ -58,6 +58,7 @@ do
--incdir=*) NXT_INCDIR="$value" ;;
--modules=*) NXT_MODULES="$value" ;;
--state=*) NXT_STATE="$value" ;;
+ --tmp=*) NXT_TMP="$value" ;;
--pid=*) NXT_PID="$value" ;;
--log=*) NXT_LOG="$value" ;;
@@ -149,6 +150,11 @@ case "$NXT_STATE" in
*) NXT_STATE="$NXT_PREFIX$NXT_STATE" ;;
esac
+case "$NXT_TMP" in
+ /*) ;;
+ *) NXT_TMP="$NXT_PREFIX$NXT_TMP" ;;
+esac
+
case "$NXT_PID" in
/*) ;;
*) NXT_PID="$NXT_PREFIX$NXT_PID" ;;
diff --git a/auto/save b/auto/save
index 350c9c1f..19ef09ec 100644
--- a/auto/save
+++ b/auto/save
@@ -29,5 +29,6 @@ NXT_LIB_AUX_LIBS=
NXT_LIB_UNIT_STATIC='$NXT_LIB_UNIT_STATIC'
NXT_MODULES='$NXT_MODULES'
+NXT_TMP='$NXT_TMP'
END
diff --git a/auto/sources b/auto/sources
index 98e4a1f4..2283e543 100644
--- a/auto/sources
+++ b/auto/sources
@@ -69,6 +69,7 @@ NXT_LIB_SRCS=" \
src/nxt_job_resolve.c \
src/nxt_sockaddr.c \
src/nxt_listen_socket.c \
+ src/nxt_upstream.c \
src/nxt_upstream_round_robin.c \
src/nxt_http_parse.c \
src/nxt_app_log.c \
diff --git a/auto/summary b/auto/summary
index 59267f6c..833d20c0 100644
--- a/auto/summary
+++ b/auto/summary
@@ -13,6 +13,7 @@ Unit configuration summary:
include directory: ......... "$NXT_INCDIR"
modules directory: ......... "$NXT_MODULES"
state directory: ........... "$NXT_STATE"
+ tmp directory: ............. "$NXT_TMP"
pid file: .................. "$NXT_PID"
log file: .................. "$NXT_LOG"