Annotation of embedaddon/nginx/auto/cc/msvc, revision 1.1.1.1
1.1 misho 1:
2: # Copyright (C) Igor Sysoev
3: # Copyright (C) Nginx, Inc.
4:
5:
6: # MSVC 6.0 SP2
7: # MSVC Toolkit 2003 (7.1)
8: # MSVC 2005 Express Edition SP1 (8.0)
9:
10: # optimizations
11:
12: # maximize speed, equivalent to -Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy
13: CFLAGS="$CFLAGS -O2"
14:
15: # enable global optimization
16: #CFLAGS="$CFLAGS -Og"
17: # enable intrinsic functions
18: #CFLAGS="$CFLAGS -Oi"
19:
20: # disable inline expansion
21: #CFLAGS="$CFLAGS -Ob0"
22: # explicit inline expansion
23: #CFLAGS="$CFLAGS -Ob1"
24: # explicit and implicit inline expansion
25: #CFLAGS="$CFLAGS -Ob2"
26:
27: # enable frame pointer omission
28: #CFLAGS="$CFLAGS -Oy"
29: # disable stack checking calls
30: #CFLAGS="$CFLAGS -Gs"
31:
32: # pools strings as read/write
33: #CFLAGS="$CFLAGS -Gf"
34: # pools strings as read-only
35: #CFLAGS="$CFLAGS -GF"
36:
37:
38: case $CPU in
39: pentium)
40: # optimize for Pentium and Athlon
41: CPU_OPT="-G5"
42: ;;
43:
44: pentiumpro)
45: # optimize for Pentium Pro, Pentium II and Pentium III
46: CPU_OPT="-G6"
47: ;;
48:
49: pentium4)
50: # optimize for Pentium 4, MSVC 7
51: CPU_OPT="-G7"
52: ;;
53: esac
54:
55: # __cdecl, default, must be used with OpenSSL, md5 asm, and sha1 asm
56: #CPU_OPT="$CPU_OPT -Gd"
57: # __stdcall
58: #CPU_OPT="$CPU_OPT -Gz"
59: # __fastcall
60: #CPU_OPT="$CPU_OPT -Gr"
61:
62:
63: CFLAGS="$CFLAGS $CPU_OPT"
64:
65:
66: # warnings
67:
68: CFLAGS="$CFLAGS -W4"
69:
70: # stop on warning
71: CFLAGS="$CFLAGS -WX"
72:
73: # disable logo
74: CFLAGS="$CFLAGS -nologo"
75:
76: # the link flags
77: CORE_LINK="$CORE_LINK -link -verbose:lib"
78:
79: # link with libcmt.lib, multithreaded
80: LIBC="-MT"
81: # link with msvcrt.dll
82: # however, MSVC Toolkit 2003 has no MSVCRT.LIB
83: #LIBC="-MD"
84:
85: CFLAGS="$CFLAGS $LIBC"
86:
87: CORE_LIBS="$CORE_LIBS kernel32.lib user32.lib"
88:
89: # Win32 GUI mode application
90: #CORE_LINK="$CORE_LINK -subsystem:windows -entry:mainCRTStartup"
91:
92: # debug
93: # msvc8 under Wine issues
94: # Program database manager mismatch; please check your installation
95: if [ $NGX_CC_NAME != msvc8 ]; then
96: CFLAGS="$CFLAGS -Zi"
97: CORE_LINK="$CORE_LINK -debug"
98: fi
99:
100:
101: # MSVC 2005 supports C99 variadic macros
102: if [ $NGX_CC_NAME = msvc8 ]; then
103: have=NGX_HAVE_C99_VARIADIC_MACROS . auto/have
104: fi
105:
106:
107: # precompiled headers
108: CORE_DEPS="$CORE_DEPS $NGX_OBJS/ngx_config.pch"
109: NGX_PCH="$NGX_OBJS/ngx_config.pch"
110: NGX_BUILD_PCH="-Ycngx_config.h -Fp$NGX_OBJS/ngx_config.pch"
111: NGX_USE_PCH="-Yungx_config.h -Fp$NGX_OBJS/ngx_config.pch"
112:
113:
114: # the resource file
115: NGX_RES="$NGX_OBJS/nginx.res"
116: NGX_RCC="rc -fo$NGX_RES \$(CORE_INCS) $NGX_WIN32_RC"
117: CORE_LINK="$NGX_RES $CORE_LINK"
118:
119:
120: ngx_objout="-Fo"
121: ngx_binout="-Fe"
122: ngx_objext="obj"
123: ngx_binext=".exe"
124:
125: ngx_long_start='@<<
126: '
127: ngx_long_end='<<'
128: ngx_long_regex_cont=' \
129: '
130: ngx_long_cont='
131: '
132:
133: # MSVC understand / in path
134: #ngx_regex_dirsep='\\'
135: #ngx_dirsep="\\"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>