diff options
Diffstat (limited to 'auto')
| -rwxr-xr-x | auto/configure | 6 | ||||
| -rw-r--r-- | auto/lib/make | 56 | ||||
| -rw-r--r-- | auto/lib/md5/conf | 17 | ||||
| -rw-r--r-- | auto/options | 5 | ||||
| -rw-r--r-- | auto/sources | 4 | ||||
| -rw-r--r-- | auto/threads | 7 |
6 files changed, 71 insertions, 24 deletions
diff --git a/auto/configure b/auto/configure index f9ad3191c..a944573a5 100755 --- a/auto/configure +++ b/auto/configure @@ -16,6 +16,10 @@ fi . auto/cc . auto/lib/conf +if [ "$PLATFORM" != win32 ]; then + . auto/threads +fi + . auto/make . auto/lib/make @@ -23,4 +27,6 @@ if [ "$PLATFORM" != win32 ]; then . auto/unix fi +#have NGX_SMP . auto/have + . auto/summary diff --git a/auto/lib/make b/auto/lib/make index d4cba34f5..fcf67a0c6 100644 --- a/auto/lib/make +++ b/auto/lib/make @@ -2,36 +2,60 @@ if [ "$PLATFORM" != "win32" ]; then if [ $PCRE != NO ]; then - echo "$PCRE/.libs/libpcre.a:" >> $MAKEFILE - echo " cd $PCRE \\" >> $MAKEFILE - echo " && ./configure --disable-shared \\" >> $MAKEFILE - echo " && \$(MAKE)" >> $MAKEFILE - echo >> $MAKEFILE + echo "$PCRE/.libs/libpcre.a:" >> $MAKEFILE + echo " cd $PCRE \\" >> $MAKEFILE + echo " && ./configure --disable-shared \\" >> $MAKEFILE + echo " && \$(MAKE)" >> $MAKEFILE + echo >> $MAKEFILE fi if [ $MD5 != NO ]; then - echo "$MD5/libmd5.a:" >> $MAKEFILE + echo "$MD5/libmd5.a:" >> $MAKEFILE case $PLATFORM in - SunOS:*) - echo " cd $MD5 && \$(MAKE) x86-solaris" >> $MAKEFILE - ;; + SunOS:*:i386) + echo " cd $MD5 && \$(MAKE) x86-solaris" >> $MAKEFILE + ;; + + *:i386) + echo " cd $MD5 && \$(MAKE) x86-elf" >> $MAKEFILE + ;; + + *) + if [ $CC = gcc ]; then + echo " cd $MD5 && \$(MAKE) gcc" >> $MAKEFILE + else + echo " cd $MD5 && \$(MAKE) cc" >> $MAKEFILE + fi + ;; - *) - echo " cd $MD5 && \$(MAKE) x86-elf" >> $MAKEFILE - ;; esac - echo >> $MAKEFILE + echo >> $MAKEFILE fi if [ $ZLIB != NO ]; then - echo "$ZLIB/libz.a:" >> $MAKEFILE - echo " cd $ZLIB && ./configure && \$(MAKE)" >> $MAKEFILE - echo >> $MAKEFILE + echo "$ZLIB/libz.a:" >> $MAKEFILE + + case $PLATFORM in + + *:i386) + echo " cd $ZLIB \\" >> $MAKEFILE + echo " && cp contrib/asm686/match.S . \\" >> $MAKEFILE + echo " && CFLAGS=\"-O3 -DASMV\" ./configure \\" >> $MAKEFILE + echo " && \$(MAKE) OBJA=match.o" >> $MAKEFILE + ;; + + *) + echo " cd $ZLIB && ./configure && \$(MAKE)" >> $MAKEFILE + ;; + + esac + + echo >> $MAKEFILE fi fi diff --git a/auto/lib/md5/conf b/auto/lib/md5/conf index 4f6a6364b..06006e456 100644 --- a/auto/lib/md5/conf +++ b/auto/lib/md5/conf @@ -27,11 +27,12 @@ ngx_lib_inc="#include <sys/types.h> MD5=NO - # Solaris 8/9 - ngx_lib="rsaref md5" - ngx_lib_test="MD5_CTX md5; MD5Init(&md5)" - ngx_libs=-lmd5 - . auto/lib/test + # Solaris 8/9 + + ngx_lib="rsaref md5" + ngx_lib_test="MD5_CTX md5; MD5Init(&md5)" + ngx_libs=-lmd5 + . auto/lib/test if [ $ngx_found = yes ]; then @@ -42,6 +43,7 @@ ngx_lib_inc="#include <sys/types.h> else # FreeBSD + ngx_lib="rsaref md" ngx_lib_test="MD5_CTX md5; MD5Init(&md5)" ngx_libs=-lmd @@ -56,8 +58,9 @@ ngx_lib_inc="#include <sys/types.h> ngx_found=no else - ngx_lib_inc="#include <sys/types.h> -#include <openssl/md5.h>" + # OpenSSL crypto library + + ngx_inc="#include <openssl/md5.h>" ngx_lib="OpenSSL md5 crypto" ngx_lib_test="MD5_CTX md5; MD5_Init(&md5)" ngx_libs=-lcrypto diff --git a/auto/options b/auto/options index c912119c6..f153e944a 100644 --- a/auto/options +++ b/auto/options @@ -15,6 +15,8 @@ EVENT_SELECT=NO EVENT_POLL=NO EVENT_AIO=NO +USE_THREADS=NO + HTTP_REWRITE=YES HTTP_GZIP=YES HTTP_SSI=YES @@ -51,6 +53,9 @@ do --without-poll_module) EVENT_POLL=NONE ;; --with-aio_module) EVENT_AIO=YES ;; + --with-threads=*) USE_THREADS="$value" ;; + --with-threads) USE_THREADS="pthreads" ;; + --without-http_rewrite_module) HTTP_REWRITE=NO ;; --without-http_ssi_module) HTTP_SSI=NO ;; --without-http_gzip_module) HTTP_GZIP=NO ;; diff --git a/auto/sources b/auto/sources index 81ba968f2..17e6a4abb 100644 --- a/auto/sources +++ b/auto/sources @@ -5,6 +5,7 @@ CORE_INCS="-I src/core" CORE_DEPS="src/core/nginx.h \ src/core/ngx_config.h \ + src/core/ngx_core.h \ src/core/ngx_atomic.h \ src/core/ngx_log.h \ src/core/ngx_alloc.h \ @@ -98,6 +99,7 @@ UNIX_DEPS="$CORE_DEPS $EVENT_DEPS \ src/os/unix/ngx_errno.h \ src/os/unix/ngx_files.h \ src/os/unix/ngx_process.h \ + src/os/unix/ngx_thread.h \ src/os/unix/ngx_socket.h \ src/os/unix/ngx_os.h" @@ -117,7 +119,7 @@ UNIX_SRCS="$CORE_SRCS $EVENT_SRCS \ FREEBSD_DEPS=src/os/unix/ngx_freebsd_config.h FREEBSD_SRCS=src/os/unix/ngx_freebsd_init.c FREEBSD_SENDFILE_SRCS=src/os/unix/ngx_freebsd_sendfile_chain.c - +FREEBSD_RFORK_SRCS="src/os/unix/ngx_freebsd_rfork_thread.c" LINUX_DEPS=src/os/unix/ngx_linux_config.h LINUX_SRCS=src/os/unix/ngx_linux_init.c diff --git a/auto/threads b/auto/threads new file mode 100644 index 000000000..71fbcb6ef --- /dev/null +++ b/auto/threads @@ -0,0 +1,7 @@ + +if [ $USE_THREADS = "rfork" ]; then + have=NGX_THREADS . auto/have + have=USE_RFORK . auto/have + CORE_DEPS="$CORE_DEPS $UNIX_THREADS_DEPS" + CORE_SRCS="$CORE_SRCS $FREEBSD_RFORK_SRCS" +fi |
