
echo
echo "Configuration summary"


if [ $USE_PCRE = DISABLED ]; then
    echo " + PCRE library is disabled"

else
    case $PCRE in
        YES)   echo "  + using system PCRE library" ;;
        NONE)  echo "  + PCRE library is not used" ;;
        NO)    echo "  + PCRE library is not found" ;;
        *)     echo "  + using PCRE library: $PCRE" ;;
    esac
fi

case $MD5 in
    YES)   echo "  + md5: using system $MD5_LIB library" ;;
    NONE)  echo "  + md5 library is not used" ;;
    NO)    echo "  + md5 library is not found" ;;
    *)     echo "  + using md5 library: $MD5" ;;
esac

case $OPENSSL in
    YES)   echo "  + using system OpenSSL library" ;;
    NONE)  echo "  + OpenSSL library is not used" ;;
    NO)    echo "  + OpenSSL library is not found" ;;
    *)     echo "  + using OpenSSL library: $OPENSSL" ;;
esac

case $ZLIB in
    YES)   echo "  + using system zlib library" ;;
    NONE)  echo "  + zlib library is not used" ;;
    NO)    echo "  + zlib library is not found" ;;
    *)     echo "  + using zlib library: $ZLIB" ;;
esac

echo


if [ $HTTP_REWRITE = YES ]; then
    if [ $PCRE = NONE -o $PCRE = NO ]; then
        echo "$0: error: HTTP rewrite module requires PCRE library."
        echo $ngx_n "You can disable the module by using" $ngx_c
        echo "--without-http_rewrite_module option"
        echo "or you have to enable PCRE support"
        echo

        exit 1
    fi
fi


if [ $HTTP_GZIP = YES ]; then
    if [ $ZLIB = NONE -o $ZLIB = NO ]; then
        echo "$0: error: HTTP gzip module requires zlib library."
        echo $ngx_n "You can disable the module by using" $ngx_c
        echo "--without-http_gzip_module option"
        echo "or you have to enable zlib support"
        echo

        exit 1
    fi
fi


echo "  nginx path prefix: $PREFIX"
echo "  nginx binary file: $SBIN_PATH"
echo "  nginx configuration file: $CONF_PATH"
echo "  nginx pid file: $PID_PATH"
echo "  nginx error log file: $ERROR_LOG_PATH"
echo "  nginx http access log file: $HTTP_LOG_PATH"
echo
