455
|
1
|
|
2 # Copyright (C) Igor Sysoev
|
|
3
|
|
4
|
461
|
5 # MSVC 6.0 SP2, MSVC Toolkit 2003 (7.1)
|
455
|
6
|
|
7 # optimizations
|
|
8
|
509
|
9 # maximize speed, equivalent to -Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy
|
455
|
10 CFLAGS="$CFLAGS -O2"
|
509
|
11
|
455
|
12 # enable global optimization
|
509
|
13 #CFLAGS="$CFLAGS -Og"
|
455
|
14 # enable intrinsic functions
|
509
|
15 #CFLAGS="$CFLAGS -Oi"
|
|
16
|
|
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"
|
|
23
|
455
|
24 # enable frame pointer omission
|
509
|
25 #CFLAGS="$CFLAGS -Oy"
|
455
|
26 # disable stack checking calls
|
509
|
27 #CFLAGS="$CFLAGS -Gs"
|
|
28
|
|
29 # pools strings as read/write
|
|
30 #CFLAGS="$CFLAGS -Gf"
|
|
31 # pools strings as read-only
|
|
32 #CFLAGS="$CFLAGS -GF"
|
|
33
|
455
|
34
|
|
35 case $CPU in
|
|
36 pentium)
|
|
37 # optimize for Pentium and Athlon
|
|
38 CPU_OPT="-G5"
|
|
39 ;;
|
|
40
|
|
41 pentiumpro)
|
|
42 # optimize for Pentium Pro, Pentium II and Pentium III
|
|
43 CPU_OPT="-G6"
|
|
44 ;;
|
|
45
|
|
46 pentium4)
|
461
|
47 # optimize for Pentium 4, MSVC 7
|
|
48 CPU_OPT="-G7"
|
455
|
49 ;;
|
|
50 esac
|
|
51
|
583
|
52 # __cdecl, use with OpenSSL
|
|
53 #CPU_OPT="$CPU_OPT -Gd"
|
503
|
54 # __stdcall
|
|
55 #CPU_OPT="$CPU_OPT -Gz"
|
|
56 # __fastcall
|
|
57 CPU_OPT="$CPU_OPT -Gr"
|
|
58
|
|
59
|
455
|
60 CFLAGS="$CFLAGS $CPU_OPT"
|
|
61
|
|
62
|
|
63 # warnings
|
|
64
|
|
65 #CFLAGS="$CFLAGS -W3"
|
|
66 CFLAGS="$CFLAGS -W4"
|
|
67
|
|
68 # stop on warning
|
|
69 CFLAGS="$CFLAGS -WX"
|
|
70
|
461
|
71 # disable logo
|
|
72 CFLAGS="$CFLAGS -nologo"
|
|
73
|
|
74
|
|
75 LINK="\$(CC)"
|
|
76
|
|
77 # the link flags
|
|
78 CORE_LINK="$CORE_LINK -link -verbose:lib"
|
|
79
|
|
80 if [ $NGX_CC_NAME = msvc7 ]; then
|
|
81 # link with libcmt.lib, multithreaded
|
|
82 LIBC="-MT"
|
|
83 else
|
|
84 # link with msvcrt.dll
|
|
85 LIBC="-MD"
|
|
86 fi
|
455
|
87
|
|
88 CFLAGS="$CFLAGS $LIBC"
|
|
89
|
461
|
90 # Win32 GUI mode application
|
|
91 CORE_LIBS="$CORE_LIBS kernel32.lib user32.lib"
|
|
92 CORE_LINK="$CORE_LINK -subsystem:windows -entry:mainCRTStartup"
|
455
|
93
|
|
94 # debug
|
|
95 CFLAGS="$CFLAGS -Yd"
|
|
96 CORE_LINK="$CORE_LINK -debug -debugtype:coff"
|
|
97
|
461
|
98
|
455
|
99 # precompiled headers
|
461
|
100 if [ $NGX_CC_NAME != msvc7 ]; then
|
469
|
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"
|
461
|
105 fi
|
|
106
|
|
107
|
|
108 # the resource file
|
469
|
109 NGX_RES="$NGX_OBJS/nginx.res"
|
461
|
110 NGX_RCC="rc -fo$NGX_RES \$(CORE_INCS) $NGX_WIN32_RC"
|
|
111 CORE_LINK="$NGX_RES $CORE_LINK"
|
|
112
|
455
|
113
|
|
114 ngx_objout="-Fo"
|
|
115 ngx_binout="-Fe"
|
|
116 ngx_objext="obj"
|
|
117 ngx_binext=".exe"
|
|
118
|
631
|
119 # Borland make
|
|
120 #ngx_long_start='@&&|
|
|
121 # '
|
|
122 #ngx_long_end='|'
|
|
123
|
|
124 # MS nmake
|
573
|
125 ngx_long_start='@<<
|
|
126 '
|
|
127 ngx_long_end='<<'
|
|
128 ngx_long_regex_cont=' \
|
|
129 '
|
|
130 ngx_long_cont='
|
|
131 '
|
631
|
132 # MSVC understand / in path
|
455
|
133 #ngx_regex_dirsep='\\'
|
|
134 #ngx_dirsep="\\"
|