diff options
author | Igor Sysoev <igor@sysoev.ru> | 2004-11-11 14:07:14 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2004-11-11 14:07:14 +0000 |
commit | 1b73583ba2c0e4b72d951218827e0c621427d389 (patch) | |
tree | 9e4d204e2cce91560d5cb8908b8a1a9f2c1d92ee /auto/cc | |
parent | d6f24959428caed68a509a19ca4fd866d978a69c (diff) | |
download | nginx-1b73583ba2c0e4b72d951218827e0c621427d389.tar.gz |
nginx-0.1.5-RELEASE importrelease-0.1.5
*) Bugfix: on Solaris and Linux there may be too many "recvmsg()
returned not enough data" alerts.
*) Bugfix: there were the "writev() failed (22: Invalid argument)"
errors on Solaris in proxy mode without sendfile. On other platforms
that do not support sendfile at all the process got caught in an
endless loop.
*) Bugfix: segmentation fault on Solaris in proxy mode and using
sendfile.
*) Bugfix: segmentation fault on Solaris.
*) Bugfix: on-line upgrade did not work on Linux.
*) Bugfix: the ngx_http_autoindex_module module did not escape the
spaces, the quotes, and the percent signs in the directory listing.
*) Change: the decrease of the copy operations.
*) Feature: the userid_p3p directive.
Diffstat (limited to 'auto/cc')
-rw-r--r-- | auto/cc/bcc | 18 | ||||
-rw-r--r-- | auto/cc/conf | 20 | ||||
-rw-r--r-- | auto/cc/gcc | 3 | ||||
-rw-r--r-- | auto/cc/icc | 3 | ||||
-rw-r--r-- | auto/cc/msvc | 48 | ||||
-rw-r--r-- | auto/cc/name | 13 | ||||
-rw-r--r-- | auto/cc/owc | 15 |
7 files changed, 89 insertions, 31 deletions
diff --git a/auto/cc/bcc b/auto/cc/bcc index 5765c4713..a76b68f70 100644 --- a/auto/cc/bcc +++ b/auto/cc/bcc @@ -32,17 +32,31 @@ CFLAGS="$CFLAGS -w!" # disable logo CFLAGS="$CFLAGS -q" + # precompiled headers CORE_DEPS="$CORE_DEPS $OBJS/ngx_config.csm" NGX_PCH="$OBJS/ngx_config.csm" NGX_BUILD_PCH="-H=$OBJS/ngx_config.csm" NGX_USE_PCH="-Hu -H=$OBJS/ngx_config.csm" -LINK="\$(CC)" + +# Win32 GUI mode application +LINK="\$(CC) -laa" + + +# the resource file +NGX_RES="$OBJS/nginx.res" +NGX_RCC="brcc32 -fo$OBJS/nginx.res \$(CORE_INCS) $NGX_WIN32_RC" +# the pragma allows to link the resource file using bcc32 and +# to avoid the direct ilink32 calling and the c0w32.obj's WinMain/main problem +NGX_PRAGMA="#pragma resource \"$OBJS/nginx.res\"" + ngx_include_opt="-I" ngx_objout="-o" ngx_binout="-e" ngx_objext="obj" ngx_binext=".exe" -ngx_dirsep='\\' + +ngx_regex_dirsep='\\' +ngx_dirsep="\\" diff --git a/auto/cc/conf b/auto/cc/conf index 77eeda79e..acb68f8a5 100644 --- a/auto/cc/conf +++ b/auto/cc/conf @@ -64,8 +64,8 @@ else # . auto/cc/acc # ;; - msvc) - # MSVC 6.0 SP2 + msvc*) + # MSVC++ 6.0 SP2, MSVC++ Toolkit 2003 . auto/cc/msvc ;; @@ -93,6 +93,22 @@ CFLAGS="$CFLAGS $NGX_CC_OPT" if [ "$PLATFORM" != win32 ]; then + if test -n "$NGX_LD_OPT"; then + ngx_feature=--with-ld-opt=\"$NGX_LD_OPT\" + ngx_feature_name=DUMMY + ngx_feature_run=no + ngx_feature_incs= + ngx_feature_libs= + ngx_feature_test= + . auto/feature + + if [ $ngx_found = no ]; then + echo $0: error: the invalid value in --with-ld-opt=\"$NGX_LD_OPT\" + echo + exit 1 + fi + fi + ngx_feature="gcc variadic macros" ngx_feature_name=HAVE_GCC_VARIADIC_MACROS ngx_feature_run=yes diff --git a/auto/cc/gcc b/auto/cc/gcc index 61f048b7b..756e3977a 100644 --- a/auto/cc/gcc +++ b/auto/cc/gcc @@ -104,6 +104,3 @@ if [ ".$CPP" = "." ]; then fi LINK="\$(CC)" - - -CC_STRONG="-Wall -Werror" diff --git a/auto/cc/icc b/auto/cc/icc index 94d5cddc5..89c6f3500 100644 --- a/auto/cc/icc +++ b/auto/cc/icc @@ -64,6 +64,3 @@ CFLAGS="$CFLAGS -Werror" CFLAGS="$CFLAGS -g" LINK="\$(CC)" - - -CC_STRONG="-w1 -Werror" diff --git a/auto/cc/msvc b/auto/cc/msvc index d47d4b2a0..8272cac9a 100644 --- a/auto/cc/msvc +++ b/auto/cc/msvc @@ -2,7 +2,7 @@ # Copyright (C) Igor Sysoev -# MSVC 6.0 SP2 +# MSVC 6.0 SP2, MSVC Toolkit 2003 (7.1) # optimizations @@ -31,8 +31,8 @@ case $CPU in ;; pentium4) - # optimize for Pentium 4 - #CPU_OPT="-G7" + # optimize for Pentium 4, MSVC 7 + CPU_OPT="-G7" ;; esac @@ -47,30 +47,48 @@ CFLAGS="$CFLAGS -W4" # stop on warning CFLAGS="$CFLAGS -WX" -# link with libcmt.lib, multithreaded -#LIBC="-MT" -# link with msvcrt.dll -LIBC="-MD" - -CFLAGS="$CFLAGS $LIBC" - # disable logo CFLAGS="$CFLAGS -nologo" + LINK="\$(CC)" -# link flags +# the link flags CORE_LINK="$CORE_LINK -link -verbose:lib" +if [ $NGX_CC_NAME = msvc7 ]; then + # link with libcmt.lib, multithreaded + LIBC="-MT" +else + # link with msvcrt.dll + LIBC="-MD" +fi + +CFLAGS="$CFLAGS $LIBC" + +# Win32 GUI mode application +CORE_LIBS="$CORE_LIBS kernel32.lib user32.lib" +CORE_LINK="$CORE_LINK -subsystem:windows -entry:mainCRTStartup" + # debug CFLAGS="$CFLAGS -Yd" CORE_LINK="$CORE_LINK -debug -debugtype:coff" + # precompiled headers -CORE_DEPS="$CORE_DEPS $OBJS/ngx_config.pch" -NGX_PCH="$OBJS/ngx_config.pch" -NGX_BUILD_PCH="-Ycngx_config.h -Fp$OBJS/ngx_config.pch" -NGX_USE_PCH="-Yungx_config.h -Fp$OBJS/ngx_config.pch" +if [ $NGX_CC_NAME != msvc7 ]; then + CORE_DEPS="$CORE_DEPS $OBJS/ngx_config.pch" + NGX_PCH="$OBJS/ngx_config.pch" + NGX_BUILD_PCH="-Ycngx_config.h -Fp$OBJS/ngx_config.pch" + NGX_USE_PCH="-Yungx_config.h -Fp$OBJS/ngx_config.pch" +fi + + +# the resource file +NGX_RES="$OBJS/nginx.res" +NGX_RCC="rc -fo$NGX_RES \$(CORE_INCS) $NGX_WIN32_RC" +CORE_LINK="$NGX_RES $CORE_LINK" + ngx_objout="-Fo" ngx_binout="-Fe" diff --git a/auto/cc/name b/auto/cc/name index b9744799c..cbed6a741 100644 --- a/auto/cc/name +++ b/auto/cc/name @@ -6,8 +6,17 @@ echo $ngx_n "checking for C compiler ...$ngx_c" if [ $CC = cl ]; then - NGX_CC_NAME=msvc - echo " using Microsoft Visual C compiler" + if `$NGX_WINE $CC -v 2>&1 \ + | grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13' \ + 2>&1 >/dev/null`; then + + NGX_CC_NAME=msvc7 + echo " using Microsoft Visual C++ 7 compiler" + + else + NGX_CC_NAME=msvc + echo " using Microsoft Visual C++ compiler" + fi else if [ $CC = wcl386 ]; then diff --git a/auto/cc/owc b/auto/cc/owc index 0c8194dbb..789ffadae 100644 --- a/auto/cc/owc +++ b/auto/cc/owc @@ -59,18 +59,25 @@ CFLAGS="$CFLAGS -d2" CFLAGS="$CFLAGS -zq" # Open Watcom C 1.2 -#have=HAVE_C99_VARIADIC_MACROS . auto/have +#have=NGX_HAVE_C99_VARIADIC_MACROS . auto/have -# precompiled headers + +# the precompiled headers CORE_DEPS="$CORE_DEPS $OBJS/ngx_config.pch" NGX_PCH="$OBJS/ngx_config.pch" NGX_BUILD_PCH="-fhq=$OBJS/ngx_config.pch" NGX_USE_PCH="-fh=$OBJS/ngx_config.pch" + LINK="\$(CC)" -# link flags -CORE_LINK="$CORE_LINK -l=nt" +# the link flags, built target is NT GUI mode application +CORE_LINK="$CORE_LINK -l=nt_win" + + +# the resource file +NGX_RCC="wrc \$(CORE_INCS) -fo=$OBJS/nginx.res $NGX_WIN32_RC $OBJS/nginx.exe" + ngx_include_opt="-i=" ngx_objout="-fo" |