Mercurial > hg > nginx-quic
view auto/lib/pcre/conf @ 6889:09cf90250844 stable-1.10
HTTP/2: graceful shutdown of active connections (closes #1106).
Previously, while shutting down gracefully, the HTTP/2 connections were
closed in transition to idle state after all active streams have been
processed. That might never happen if the client continued opening new
streams.
Now, nginx sends GOAWAY to all HTTP/2 connections and ignores further
attempts to open new streams. A worker process will quit as soon as
processing of already opened streams is finished.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Thu, 20 Oct 2016 16:15:03 +0300 |
parents | 78f8ac479735 |
children | 8007ea138d6a |
line wrap: on
line source
# Copyright (C) Igor Sysoev # Copyright (C) Nginx, Inc. if [ $PCRE != NONE ]; then CORE_INCS="$CORE_INCS $PCRE" case "$NGX_CC_NAME" in msvc | owc | bcc) have=NGX_PCRE . auto/have have=PCRE_STATIC . auto/have CORE_DEPS="$CORE_DEPS $PCRE/pcre.h" LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib" CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib" ;; icc) have=NGX_PCRE . auto/have CORE_DEPS="$CORE_DEPS $PCRE/pcre.h" LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a" echo $ngx_n "checking for PCRE library ...$ngx_c" if [ -f $PCRE/pcre.h ]; then ngx_pcre_ver=`grep PCRE_MAJOR $PCRE/pcre.h \ | sed -e 's/^.*PCRE_MAJOR.* \(.*\)$/\1/'` else if [ -f $PCRE/configure.in ]; then ngx_pcre_ver=`grep PCRE_MAJOR= $PCRE/configure.in \ | sed -e 's/^.*=\(.*\)$/\1/'` else ngx_pcre_ver=`grep pcre_major, $PCRE/configure.ac \ | sed -e 's/^.*pcre_major,.*\[\(.*\)\].*$/\1/'` fi fi echo " $ngx_pcre_ver major version found" # to allow -ipo optimization we link with the *.o but not library case "$ngx_pcre_ver" in 4|5) CORE_LIBS="$CORE_LIBS $PCRE/pcre.o" ;; 6) CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o" ;; *) CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o" CORE_LIBS="$CORE_LIBS $PCRE/pcre_newline.o" ;; esac ;; *) have=NGX_PCRE . auto/have if [ "$NGX_PLATFORM" = win32 ]; then have=PCRE_STATIC . auto/have fi CORE_DEPS="$CORE_DEPS $PCRE/pcre.h" LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a" CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a" ;; esac if [ $PCRE_JIT = YES ]; then have=NGX_HAVE_PCRE_JIT . auto/have PCRE_CONF_OPT="$PCRE_CONF_OPT --enable-jit" fi else if [ "$NGX_PLATFORM" != win32 ]; then PCRE=NO ngx_feature="PCRE library" ngx_feature_name="NGX_PCRE" ngx_feature_run=no ngx_feature_incs="#include <pcre.h>" ngx_feature_path= ngx_feature_libs="-lpcre" ngx_feature_test="pcre *re; re = pcre_compile(NULL, 0, NULL, 0, NULL); if (re == NULL) return 1" . auto/feature if [ $ngx_found = no ]; then # FreeBSD port ngx_feature="PCRE library in /usr/local/" ngx_feature_path="/usr/local/include" if [ $NGX_RPATH = YES ]; then ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpcre" else ngx_feature_libs="-L/usr/local/lib -lpcre" fi . auto/feature fi if [ $ngx_found = no ]; then # RedHat RPM, Solaris package ngx_feature="PCRE library in /usr/include/pcre/" ngx_feature_path="/usr/include/pcre" ngx_feature_libs="-lpcre" . auto/feature fi if [ $ngx_found = no ]; then # NetBSD port ngx_feature="PCRE library in /usr/pkg/" ngx_feature_path="/usr/pkg/include" if [ $NGX_RPATH = YES ]; then ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lpcre" else ngx_feature_libs="-L/usr/pkg/lib -lpcre" fi . auto/feature fi if [ $ngx_found = no ]; then # MacPorts ngx_feature="PCRE library in /opt/local/" ngx_feature_path="/opt/local/include" if [ $NGX_RPATH = YES ]; then ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lpcre" else ngx_feature_libs="-L/opt/local/lib -lpcre" fi . auto/feature fi if [ $ngx_found = yes ]; then CORE_INCS="$CORE_INCS $ngx_feature_path" CORE_LIBS="$CORE_LIBS $ngx_feature_libs" PCRE=YES fi if [ $PCRE = YES ]; then ngx_feature="PCRE JIT support" ngx_feature_name="NGX_HAVE_PCRE_JIT" ngx_feature_test="int jit = 0; pcre_free_study(NULL); pcre_config(PCRE_CONFIG_JIT, &jit); if (jit != 1) return 1;" . auto/feature if [ $ngx_found = yes ]; then PCRE_JIT=YES fi fi fi if [ $PCRE != YES ]; then cat << END $0: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option. END exit 1 fi fi