From c0edbcce58b03b89c70f1eb39cb44c74c4c7453a Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Thu, 21 Oct 2004 15:34:38 +0000 Subject: nginx-0.1.2-RELEASE import *) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS options in configure. *) Feature: the server_name directive supports *.domain.tld. *) Bugfix: the portability improvements. *) Bugfix: if configuration file was set in command line, the reconfiguration was impossible; the bug had appeared in 0.1.1. *) Bugfix: proxy module may get caught in an endless loop when sendfile is not used. *) Bugfix: with sendfile the response was not recoded according to the charset module directives; the bug had appeared in 0.1.1. *) Bugfix: very seldom bug in the kqueue processing. *) Bugfix: the gzip module compressed the proxied responses that was already compressed. --- auto/fmt/fmt | 66 ++++++++++++++++++++++++++++++++++++--------------------- auto/fmt/ptrfmt | 62 ++++++++++++++++++++++++++++++++--------------------- 2 files changed, 80 insertions(+), 48 deletions(-) (limited to 'auto/fmt') diff --git a/auto/fmt/fmt b/auto/fmt/fmt index 980641ffa..a316d9b17 100644 --- a/auto/fmt/fmt +++ b/auto/fmt/fmt @@ -2,14 +2,21 @@ # Copyright (C) Igor Sysoev -echo $ngx_n "checking for $ngx_type printf() format ..." $ngx_c -echo >> $NGX_ERR -echo "checking for $ngx_type printf() format" >> $NGX_ERR +echo $ngx_n "checking for $ngx_type printf() format ...$ngx_c" -ngx_fmt=no -comma= +cat << END >> $NGX_AUTOCONF_ERR -for fmt in $ngx_formats +---------------------------------------- +checking for $ngx_type printf() format + +END + + +ngx_format=no +ngx_comma= + + +for ngx_fmt in $ngx_formats do cat << END > $NGX_AUTOTEST.c @@ -18,52 +25,63 @@ do #include #include #include -$NGX_INTTYPES_H -$NGX_AUTO_CONFIG +$NGX_INCLUDE_INTTYPES_H +$NGX_INCLUDE_AUTO_CONFIG_H int main() { - printf("$fmt", ($ngx_type) $ngx_max_value); + printf("$ngx_fmt", ($ngx_type) $ngx_max_value); return 0; } END - eval "$CC_WARN $CC_TEST_FLAGS -o $NGX_AUTOTEST $NGX_AUTOTEST.c \ - >> $NGX_ERR 2>&1" + ngx_test="$CC $CC_TEST_FLAGS $CC_WARN $CC_AUX_FLAGS \ + -o $NGX_AUTOTEST $NGX_AUTOTEST.c" + eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" - max_value=`echo $ngx_max_value | sed -e "s/L*\$//"` + ngx_max_val=`echo $ngx_max_value | sed -e "s/L*\$//"` if [ -x $NGX_AUTOTEST ]; then - if [ "`$NGX_AUTOTEST`" = $max_value ]; then + + if [ "`$NGX_AUTOTEST`" = $ngx_max_val ]; then + if [ $ngx_fmt_collect = yes ]; then - echo $ngx_n "$comma \"${fmt}\" is appropriate" $ngx_c + echo $ngx_n "$ngx_comma \"${ngx_fmt}\" is appropriate$ngx_c" else - echo $ngx_n "$comma \"${fmt}\" used" $ngx_c + echo $ngx_n "$ngx_comma \"${ngx_fmt}\" used$ngx_c" fi - ngx_fmt=$fmt + + ngx_format=$ngx_fmt fi fi - rm $NGX_AUTOTEST* + rm -f $NGX_AUTOTEST - if [ $ngx_fmt != no ]; then + if [ $ngx_format != no ]; then if [ $ngx_fmt_collect = yes ]; then - eval "ngx_${ngx_size}_fmt=\"\${ngx_${ngx_size}_fmt} \$ngx_fmt\"" - comma="," + eval "ngx_${ngx_size}_fmt=\"\${ngx_${ngx_size}_fmt} \$ngx_format\"" + ngx_comma="," continue else break fi fi - echo $ngx_n "$comma \"${fmt}\" is not appropriate" $ngx_c - comma="," + echo $ngx_n "$ngx_comma \"${ngx_fmt}\" is not appropriate$ngx_c" + ngx_comma="," + + echo "----------" >> $NGX_AUTOCONF_ERR + cat $NGX_AUTOTEST.c >> $NGX_AUTOCONF_ERR + echo "----------" >> $NGX_AUTOCONF_ERR + echo $ngx_test >> $NGX_AUTOCONF_ERR + echo "----------" >> $NGX_AUTOCONF_ERR done echo -if [ $ngx_fmt = no ]; then +if [ $ngx_format = no ]; then echo "$0: error: printf() $ngx_type format not found" + exit 1 fi @@ -72,7 +90,7 @@ if [ $ngx_fmt_collect = no ]; then cat << END >> $NGX_AUTO_CONFIG_H #ifndef $ngx_fmt_name -#define $ngx_fmt_name "$ngx_fmt" +#define $ngx_fmt_name "$ngx_format" #endif END diff --git a/auto/fmt/ptrfmt b/auto/fmt/ptrfmt index 163ca59e2..32ba8a44f 100644 --- a/auto/fmt/ptrfmt +++ b/auto/fmt/ptrfmt @@ -2,71 +2,85 @@ # Copyright (C) Igor Sysoev -echo $ngx_n "checking for $ngx_type printf() format ..." $ngx_c -echo >> $NGX_ERR -echo "checking for $ngx_type printf() format" >> $NGX_ERR +echo $ngx_n "checking for $ngx_type printf() format ...$ngx_c" -ngx_fmt=no -comma= -fmtX= +cat << END >> $NGX_AUTOCONF_ERR -for fmt in $ngx_formats +---------------------------------------- +checking for $ngx_type printf() format + +END + + +ngx_format=no +ngx_comma= +ngx_fmt_x= + +for ngx_fmt in $ngx_formats do cat << END > $NGX_AUTOTEST.c int main() { - printf("$fmt", ($ngx_type) $ngx_max_value); + printf("$ngx_fmt", ($ngx_type) $ngx_max_value); return 0; } END - eval "$CC_WARN $CC_TEST_FLAGS -o $NGX_AUTOTEST $NGX_AUTOTEST.c \ - >> $NGX_ERR 2>&1" + ngx_test="$CC $CC_TEST_FLAGS $CC_WARN $CC_AUX_FLAGS \ + -o $NGX_AUTOTEST $NGX_AUTOTEST.c" + eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" - max_value=`echo $ngx_max_value | sed -e "s/L*\$//"` + ngx_max_val=`echo $ngx_max_value | sed -e "s/L*\$//"` if [ -x $NGX_AUTOTEST ]; then - if [ "`$NGX_AUTOTEST`" = $max_value ]; then - ngx_fmt=$fmt + if [ "`$NGX_AUTOTEST`" = $ngx_max_val ]; then + ngx_format=$ngx_fmt fi fi - rm $NGX_AUTOTEST* + rm $NGX_AUTOTEST - if [ $ngx_fmt != no ]; then + if [ $ngx_format != no ]; then break fi - fmtX=`echo $fmt | sed -e "s/d/X/"` + ngx_fmt_x=`echo $ngx_fmt | sed -e "s/d/X/"` + + echo $ngx_n "$ngx_comma \"${ngx_fmt_x}\" is not appropriate$ngx_c" + ngx_comma="," - echo $ngx_n "$comma \"${fmtX}\" is not appropriate" $ngx_c - comma="," + echo "----------" >> $NGX_AUTOCONF_ERR + cat $NGX_AUTOTEST.c >> $NGX_AUTOCONF_ERR + echo "----------" >> $NGX_AUTOCONF_ERR + echo $ngx_test >> $NGX_AUTOCONF_ERR + echo "----------" >> $NGX_AUTOCONF_ERR done -if [ $ngx_fmt = no ]; then +if [ $ngx_format = no ]; then echo "$0: error: printf() $ngx_type format not found" + exit 1 fi if [ $ngx_ptr_size = 4 ]; then - fmtX="%0`expr 2 \* $ngx_ptr_size`" + ngx_fmt_x="%0`expr 2 \* $ngx_ptr_size`" else - fmtX="%" + ngx_fmt_x="%" fi -ngx_fmt=`echo $ngx_fmt | sed -e "s/d/X/" -e "s/^%/$fmtX/"` +ngx_format=`echo $ngx_format | sed -e "s/d/X/" -e "s/^%/$ngx_fmt_x/"` -echo "$comma \"${ngx_fmt}\" used" +echo "$ngx_comma \"${ngx_format}\" used" cat << END >> $NGX_AUTO_CONFIG_H #ifndef $ngx_fmt_name -#define $ngx_fmt_name "$ngx_fmt" +#define $ngx_fmt_name "$ngx_format" #endif END -- cgit