2 # Copyright (C) Igor Sysoev
5 # MSVC 6.0 SP2, MSVC Toolkit 2003 (7.1), MSVC 2005 Express Edition SP1 (8.0)
9 # maximize speed, equivalent to -Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy
12 # enable global optimization
14 # enable intrinsic functions
17 # disable inline expansion
18 #CFLAGS="$CFLAGS -Ob0"
19 # explicit inline expansion
20 #CFLAGS="$CFLAGS -Ob1"
21 # explicit and implicit inline expansion
22 #CFLAGS="$CFLAGS -Ob2"
24 # enable frame pointer omission
26 # disable stack checking calls
29 # pools strings as read/write
31 # pools strings as read-only
37 # optimize for Pentium and Athlon
42 # optimize for Pentium Pro, Pentium II and Pentium III
47 # optimize for Pentium 4, MSVC 7
52 # __cdecl, use with OpenSSL, md5 asm, and sha1 asm
53 #CPU_OPT="$CPU_OPT -Gd"
55 #CPU_OPT="$CPU_OPT -Gz"
57 CPU_OPT="$CPU_OPT -Gr"
60 CFLAGS="$CFLAGS $CPU_OPT"
71 CFLAGS="$CFLAGS -nologo"
77 CORE_LINK="$CORE_LINK -link -verbose:lib"
79 if [ $NGX_CC_NAME = msvc7 ]; then
80 # link with libcmt.lib, multithreaded
83 # link with msvcrt.dll
87 CFLAGS="$CFLAGS $LIBC"
89 # Win32 GUI mode application
90 CORE_LIBS="$CORE_LIBS kernel32.lib user32.lib"
91 CORE_LINK="$CORE_LINK -subsystem:windows -entry:mainCRTStartup"
94 if [ $NGX_CC_NAME != msvc8 ]; then
96 CORE_LINK="$CORE_LINK -debug"
100 # precompiled headers
101 CORE_DEPS="$CORE_DEPS $NGX_OBJS/ngx_config.pch"
102 NGX_PCH="$NGX_OBJS/ngx_config.pch"
103 NGX_BUILD_PCH="-Ycngx_config.h -Fp$NGX_OBJS/ngx_config.pch"
104 NGX_USE_PCH="-Yungx_config.h -Fp$NGX_OBJS/ngx_config.pch"
108 NGX_RES="$NGX_OBJS/nginx.res"
109 NGX_RCC="rc -fo$NGX_RES \$(CORE_INCS) $NGX_WIN32_RC"
110 CORE_LINK="$NGX_RES $CORE_LINK"
118 if [ "$BMAKE" = nmake ]; then
124 ngx_long_regex_cont=' \
137 # MSVC understand / in path
138 #ngx_regex_dirsep='\\'