aboutsummaryrefslogtreecommitdiff
path: root/auto
diff options
context:
space:
mode:
Diffstat (limited to 'auto')
-rw-r--r--auto/cc/gcc5
-rw-r--r--auto/cc/msvc27
-rw-r--r--auto/have_headers11
-rw-r--r--auto/include9
-rw-r--r--auto/modules10
-rw-r--r--auto/options1
-rw-r--r--auto/os/conf17
-rw-r--r--auto/os/freebsd10
-rw-r--r--auto/os/linux8
-rw-r--r--auto/os/solaris8
-rw-r--r--auto/os/win329
-rw-r--r--auto/sources19
-rwxr-xr-xauto/unix2
13 files changed, 74 insertions, 62 deletions
diff --git a/auto/cc/gcc b/auto/cc/gcc
index 46b0aabb9..2e5906a75 100644
--- a/auto/cc/gcc
+++ b/auto/cc/gcc
@@ -57,6 +57,11 @@ case $CPU in
CPU_OPT="-march=pentium4"
;;
+ opteron)
+ # optimize for Opteron, gcc 3.x
+ CPU_OPT="-march=opteron"
+ ;;
+
sparc64)
# build 64-bit UltraSparc binary
CPU_OPT="-m64"
diff --git a/auto/cc/msvc b/auto/cc/msvc
index d920ed0c9..0fa5df9d7 100644
--- a/auto/cc/msvc
+++ b/auto/cc/msvc
@@ -6,18 +6,31 @@
# optimizations
-# maximize speed
+# maximize speed, equivalent to -Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy
CFLAGS="$CFLAGS -O2"
+
# enable global optimization
-CFLAGS="$CFLAGS -Og"
+#CFLAGS="$CFLAGS -Og"
# enable intrinsic functions
-CFLAGS="$CFLAGS -Oi"
-# inline expansion
-CFLAGS="$CFLAGS -Ob1"
+#CFLAGS="$CFLAGS -Oi"
+
+# disable inline expansion
+#CFLAGS="$CFLAGS -Ob0"
+# explicit inline expansion
+#CFLAGS="$CFLAGS -Ob1"
+# explicit and implicit inline expansion
+#CFLAGS="$CFLAGS -Ob2"
+
# enable frame pointer omission
-CFLAGS="$CFLAGS -Oy"
+#CFLAGS="$CFLAGS -Oy"
# disable stack checking calls
-CFLAGS="$CFLAGS -Gs"
+#CFLAGS="$CFLAGS -Gs"
+
+# pools strings as read/write
+#CFLAGS="$CFLAGS -Gf"
+# pools strings as read-only
+#CFLAGS="$CFLAGS -GF"
+
case $CPU in
pentium)
diff --git a/auto/have_headers b/auto/have_headers
new file mode 100644
index 000000000..526ac47d4
--- /dev/null
+++ b/auto/have_headers
@@ -0,0 +1,11 @@
+
+# Copyright (C) Igor Sysoev
+
+
+cat << END >> $NGX_AUTO_HEADERS_H
+
+#ifndef $have
+#define $have 1
+#endif
+
+END
diff --git a/auto/include b/auto/include
index b36916947..7ed3086fd 100644
--- a/auto/include
+++ b/auto/include
@@ -39,14 +39,7 @@ if [ -x $NGX_AUTOTEST ]; then
| tr '[a-z]' '[A-Z]'`
- cat << END >> $NGX_AUTO_HEADERS_H
-
-#ifndef NGX_HAVE_$ngx_name
-#define NGX_HAVE_$ngx_name 1
-#endif
-
-END
-
+ have=NGX_HAVE_$ngx_name . auto/have_headers
eval "NGX_INCLUDE_$ngx_name='#include <$ngx_include>'"
diff --git a/auto/modules b/auto/modules
index 4ab272ed8..b032f05cd 100644
--- a/auto/modules
+++ b/auto/modules
@@ -51,6 +51,10 @@ if [ $NGX_TEST_BUILD_SOLARIS_SENDFILEV = YES ]; then
fi
+if [ $HTTP_SSI = YES ]; then
+ HTTP_POSTPONE=YES
+fi
+
# the filter order is important
# ngx_http_write_filter
# ngx_http_header_filter
@@ -58,6 +62,7 @@ fi
# ngx_http_range_header_filter
# ngx_http_ssl_filter
# ngx_http_gzip_filter
+# ngx_http_postpone_filter
# ngx_http_charset_filter
# ngx_http_ssi_filter
# ngx_http_headers_filter
@@ -77,6 +82,11 @@ if [ $HTTP_GZIP = YES ]; then
HTTP_SRCS="$HTTP_SRCS $HTTP_GZIP_SRCS"
fi
+if [ $HTTP_POSTPONE = YES ]; then
+ HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_POSTPONE_FILTER_MODULE"
+ HTTP_SRCS="$HTTP_SRCS $HTPP_POSTPONE_FILTER_SRCS"
+fi
+
if [ $HTTP_CHARSET = YES ]; then
have=NGX_HTTP_CHARSET . auto/have
HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_CHARSET_FILTER_MODULE"
diff --git a/auto/options b/auto/options
index 2bdb5dfa3..a56bc4271 100644
--- a/auto/options
+++ b/auto/options
@@ -49,6 +49,7 @@ HTTP_CHARSET=YES
HTTP_GZIP=YES
HTTP_SSL=NO
HTTP_SSI=YES
+HTTP_POSTPONE=NO
HTTP_ACCESS=YES
HTTP_AUTH_BASIC=YES
HTTP_USERID=YES
diff --git a/auto/os/conf b/auto/os/conf
index b48b6404d..f2a49cee5 100644
--- a/auto/os/conf
+++ b/auto/os/conf
@@ -23,6 +23,15 @@ case "$NGX_PLATFORM" in
. auto/os/freebsd
;;
+ Darwin:*)
+ have=NGX_DARWIN . auto/have_headers
+ have=NGX_HAVE_INHERITED_NONBLOCK . auto/have
+ CORE_INCS="$UNIX_INCS"
+ CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
+ CORE_SRCS="$UNIX_SRCS"
+ CRYPT_LIB=
+ ;;
+
Linux:*)
. auto/os/linux
;;
@@ -47,16 +56,16 @@ esac
case "$NGX_MACHINE" in
- i386|i686|i86pc|amd64)
- have=NGX_HAVE_NONALIGNED . auto/have
- ;;
+ i386|i686|i86pc|amd64)
+ have=NGX_HAVE_NONALIGNED . auto/have
+ ;;
esac
if [ "$NGX_PLATFORM" != win32 ]; then
- NGX_USER=${NGX_USER:-nobody}
+ NGX_USER=${NGX_USER:-nobody}
if [ -z "$NGX_GROUP" -a $NGX_USER = nobody ] ; then
if grep nobody /etc/group 2>&1 >/dev/null; then
diff --git a/auto/os/freebsd b/auto/os/freebsd
index 133f5f55b..f916860d9 100644
--- a/auto/os/freebsd
+++ b/auto/os/freebsd
@@ -2,14 +2,7 @@
# Copyright (C) Igor Sysoev
-cat << END >> $NGX_AUTO_HEADERS_H
-
-#ifndef NGX_FREEBSD
-#define NGX_FREEBSD 1
-#endif
-
-END
-
+have=NGX_FREEBSD . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
@@ -39,6 +32,7 @@ then
echo " + setproctitle() in libutil"
CORE_LIBS="$CORE_LIBS -lutil"
+ NGX_SETPROCTITLE_LIB="-lutil"
fi
# sendfile
diff --git a/auto/os/linux b/auto/os/linux
index 84e4f6667..5926211a4 100644
--- a/auto/os/linux
+++ b/auto/os/linux
@@ -2,13 +2,7 @@
# Copyright (C) Igor Sysoev
-cat << END >> $NGX_AUTO_HEADERS_H
-
-#ifndef NGX_LINUX
-#define NGX_LINUX 1
-#endif
-
-END
+have=NGX_LINUX . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $LINUX_DEPS"
diff --git a/auto/os/solaris b/auto/os/solaris
index 67e0a8e6b..cf7fc6c84 100644
--- a/auto/os/solaris
+++ b/auto/os/solaris
@@ -2,13 +2,7 @@
# Copyright (C) Igor Sysoev
-cat << END >> $NGX_AUTO_HEADERS_H
-
-#ifndef NGX_SOLARIS
-#define NGX_SOLARIS 1
-#endif
-
-END
+have=NGX_SOLARIS . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $SOLARIS_DEPS"
diff --git a/auto/os/win32 b/auto/os/win32
index 5567535c2..f65f2c9a4 100644
--- a/auto/os/win32
+++ b/auto/os/win32
@@ -2,14 +2,7 @@
# Copyright (C) Igor Sysoev
-cat << END >> $NGX_AUTO_HEADERS_H
-
-#ifndef NGX_WIN32
-#define NGX_WIN32 1
-#endif
-
-END
-
+have=NGX_WIN32 . auto/have_headers
CORE_INCS="$WIN32_INCS"
CORE_DEPS="$WIN32_DEPS"
diff --git a/auto/sources b/auto/sources
index 1a2abad13..e597f9732 100644
--- a/auto/sources
+++ b/auto/sources
@@ -120,6 +120,7 @@ UNIX_DEPS="$CORE_DEPS $EVENT_DEPS \
src/os/unix/ngx_channel.h \
src/os/unix/ngx_shared.h \
src/os/unix/ngx_process.h \
+ src/os/unix/ngx_setproctitle.h \
src/os/unix/ngx_atomic.h \
src/os/unix/ngx_thread.h \
src/os/unix/ngx_socket.h \
@@ -224,9 +225,11 @@ HTTP_CACHE_MODULE=ngx_http_cache_module
HTTP_WRITE_FILTER_MODULE="ngx_http_write_filter_module"
HTTP_HEADER_FILTER_MODULE="ngx_http_header_filter_module"
+HTTP_POSTPONE_FILTER_MODULE=ngx_http_postpone_filter_module
+HTTP_COPY_FILTER_MODULE=ngx_http_copy_filter_module
+
HTTP_CHUNKED_FILTER_MODULE=ngx_http_chunked_filter_module
HTTP_HEADERS_FILTER_MODULE=ngx_http_headers_filter_module
-HTTP_COPY_FILTER_MODULE=ngx_http_copy_filter_module
HTTP_RANGE_HEADER_FILTER_MODULE=ngx_http_range_header_filter_module
HTTP_RANGE_BODY_FILTER_MODULE=ngx_http_range_body_filter_module
@@ -273,6 +276,8 @@ HTTP_SRCS="src/http/ngx_http.c \
# STUB
HTTP_SRCS="$HTTP_SRCS src/http/ngx_http_busy_lock.c"
+HTPP_POSTPONE_FILTER_SRCS=src/http/ngx_http_postpone_filter_module.c
+
HTPP_CACHE_SRCS=src/http/ngx_http_cache.c
HTPP_FILE_CACHE_SRCS=src/http/ngx_http_file_cache.c
@@ -323,17 +328,7 @@ HTTP_SSL_SRCS=src/http/modules/ngx_http_ssl_module.c
HTTP_PROXY_MODULE=ngx_http_proxy_module
-#HTTP_PROXY_SRCS=src/http/modules/ngx_http_proxy_module.c
-
-HTTP_PROXY_INCS="src/http/modules/proxy"
-HTTP_PROXY_DEPS=src/http/modules/proxy/ngx_http_proxy_handler.h
-HTTP_PROXY_SRCS="src/http/modules/proxy/ngx_http_proxy_handler.c \
- src/http/modules/proxy/ngx_http_proxy_upstream.c \
- src/http/modules/proxy/ngx_http_proxy_parse.c \
- src/http/modules/proxy/ngx_http_proxy_header.c"
-
-# STUB
-# src/http/modules/proxy/ngx_http_proxy_cache.c \
+HTTP_PROXY_SRCS=src/http/modules/ngx_http_proxy_module.c
HTTP_FASTCGI_MODULE=ngx_http_fastcgi_module
diff --git a/auto/unix b/auto/unix
index 112626d2f..e9e0c7ae0 100755
--- a/auto/unix
+++ b/auto/unix
@@ -64,7 +64,7 @@ ngx_feature="setproctitle()"
ngx_feature_name="NGX_HAVE_SETPROCTITLE"
ngx_feature_run=no
ngx_feature_incs=
-ngx_feature_libs=
+ngx_feature_libs=$NGX_SETPROCTITLE_LIB
ngx_feature_test="setproctitle(\"test\");"
. auto/feature