Mercurial > hg > nginx-vendor-1-0
comparison auto/cc/sunc @ 320:95183808f549 NGINX_0_6_4
nginx 0.6.4
*) Security: the "msie_refresh" directive allowed XSS.
Thanks to Maxim Boguk.
*) Change: the "proxy_store" and "fastcgi_store" directives were
changed.
*) Feature: the "proxy_store_access" and "fastcgi_store_access"
directives.
*) Bugfix: nginx did not work on Solaris/sparc64 if it was built by Sun
Studio.
Thanks to Andrei Nigmatulin.
*) Workaround: for Sun Studio 12.
Thanks to Jiang Hong.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 17 Jul 2007 00:00:00 +0400 |
parents | 6ae1357b7b7c |
children | d16d691432c9 |
comparison
equal
deleted
inserted
replaced
319:6ccd0af7f704 | 320:95183808f549 |
---|---|
1 | 1 |
2 # Copyright (C) Igor Sysoev | 2 # Copyright (C) Igor Sysoev |
3 | 3 |
4 | 4 |
5 # Sun C 5.7 Patch 117837-04 2005/05/11 | 5 # Sun C 5.7 Patch 117837-04 2005/05/11 Sun Studio 10 |
6 # Sun C 5.8 2005/10/13 | 6 # Sun C 5.8 2005/10/13 Sun Studio 11 |
7 # Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12 | |
8 # Sun C 5.9 SunOS_sparc 2007/05/03 | |
7 | 9 |
8 NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \ | 10 NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \ |
9 | sed -e 's/^.* Sun C \(.*\)/\1/'` | 11 | sed -e 's/^.* Sun C \(.*\)/\1/'` |
10 | 12 |
11 echo " + Sun C version: $NGX_SUNC_VER" | 13 echo " + Sun C version: $NGX_SUNC_VER" |
12 | 14 |
13 have=NGX_COMPILER value="\"Sun C $NGX_SUNC_VER\"" . auto/define | 15 have=NGX_COMPILER value="\"Sun C $NGX_SUNC_VER\"" . auto/define |
14 | 16 |
17 | |
18 cat << END > $NGX_AUTOTEST.c | |
19 | |
20 int main() { printf("%d", __SUNPRO_C); } | |
21 | |
22 END | |
23 | |
24 eval "$CC -o $NGX_AUTOTEST $NGX_AUTOTEST.c >> $NGX_ERR 2>&1" | |
25 | |
26 if [ -x $NGX_AUTOTEST ]; then | |
27 ngx_sunc_ver=`$NGX_AUTOTEST` | |
28 fi | |
29 | |
30 rm $NGX_AUTOTEST* | |
31 | |
32 # 1424 == 0x590, Sun Studio 12 | |
33 | |
34 if [ "$ngx_sunc_ver" -ge 1424 ]; then | |
35 ngx_sparc32="-m32" | |
36 ngx_sparc64="-m64" | |
37 ngx_amd64="-m64" | |
38 | |
39 else | |
40 ngx_sparc32="-xarch=v8plus" | |
41 ngx_sparc64="-xarch=v9" | |
42 ngx_amd64="-amd64" | |
43 fi | |
15 | 44 |
16 case "$NGX_MACHINE" in | 45 case "$NGX_MACHINE" in |
17 | 46 |
18 i86pc) | 47 i86pc) |
19 ngx_feature="PAUSE hardware capability bug" | 48 ngx_feature="PAUSE hardware capability bug" |
33 | 62 |
34 NGX_AUX=" src/os/unix/ngx_sunpro_x86.il" | 63 NGX_AUX=" src/os/unix/ngx_sunpro_x86.il" |
35 ;; | 64 ;; |
36 | 65 |
37 sun4u | sun4v) | 66 sun4u | sun4v) |
38 # "-xarch=v9" enables the "casa" assembler instruction | |
39 CFLAGS="$CFLAGS -xarch=v9" | |
40 CORE_LINK="$CORE_LINK -xarch=v9" | |
41 NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il" | 67 NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il" |
42 ;; | 68 ;; |
43 | 69 |
44 esac | 70 esac |
45 | 71 |
46 | 72 |
47 # optimizations | 73 # optimizations |
48 | 74 |
49 CFLAGS="$CFLAGS -fast" | 75 IPO=-xipo |
76 CFLAGS="$CFLAGS -fast $IPO" | |
50 | 77 |
51 | 78 |
52 case $CPU in | 79 case $CPU in |
53 pentium) | 80 pentium) |
54 # optimize for Pentium and Athlon | 81 # optimize for Pentium and Athlon |
79 CPU_OPT="-xchip=opteron" | 106 CPU_OPT="-xchip=opteron" |
80 #CPU_OPT="$CPU_OPT -xarch=sse2" | 107 #CPU_OPT="$CPU_OPT -xarch=sse2" |
81 CPU_OPT="$CPU_OPT -xcache=64/64/2:1024/64/16" | 108 CPU_OPT="$CPU_OPT -xcache=64/64/2:1024/64/16" |
82 ;; | 109 ;; |
83 | 110 |
111 sparc32) | |
112 # build 32-bit UltraSparc binary | |
113 CPU_OPT="$ngx_sparc32" | |
114 CORE_LINK="$CORE_LINK $ngx_sparc32" | |
115 CC_AUX_FLAGS="$CC_AUX_FLAGS $ngx_sparc32" | |
116 NGX_CPU_CACHE_LINE=64 | |
117 ;; | |
118 | |
119 sparc64) | |
120 # build 64-bit UltraSparc binary | |
121 CPU_OPT="$ngx_sparc64" | |
122 CORE_LINK="$CORE_LINK $ngx_sparc64" | |
123 CC_AUX_FLAGS="$CC_AUX_FLAGS $ngx_sparc64" | |
124 NGX_CPU_CACHE_LINE=64 | |
125 ;; | |
126 | |
84 amd64) | 127 amd64) |
85 # build 64-bit amd64 binary | 128 # build 64-bit amd64 binary |
86 CPU_OPT="-xarch=amd64" | 129 CPU_OPT="$ngx_amd64" |
87 CORE_LINK="$CORE_LINK -xarch=amd64" | 130 CORE_LINK="$CORE_LINK $ngx_amd64" |
131 CC_AUX_FLAGS="$CC_AUX_FLAGS $ngx_amd4" | |
88 NGX_AUX=" src/os/unix/ngx_sunpro_amd64.il" | 132 NGX_AUX=" src/os/unix/ngx_sunpro_amd64.il" |
133 NGX_CPU_CACHE_LINE=64 | |
89 ;; | 134 ;; |
90 | 135 |
91 esac | 136 esac |
92 | 137 |
93 | 138 |
94 CFLAGS="$CFLAGS $CPU_OPT" | 139 CFLAGS="$CFLAGS $CPU_OPT" |
95 | 140 |
96 | 141 |
97 if [ ".$PCRE_OPT" = "." ]; then | 142 if [ ".$PCRE_OPT" = "." ]; then |
98 PCRE_OPT="-fast $CPU_OPT" | 143 PCRE_OPT="-fast $IPO $CPU_OPT" |
99 fi | 144 fi |
100 | 145 |
101 if [ ".$MD5_OPT" = "." ]; then | 146 if [ ".$MD5_OPT" = "." ]; then |
102 MD5_OPT="-fast $CPU_OPT" | 147 MD5_OPT="-fast $IPO $CPU_OPT" |
103 fi | 148 fi |
104 | 149 |
105 if [ ".$ZLIB_OPT" = "." ]; then | 150 if [ ".$ZLIB_OPT" = "." ]; then |
106 ZLIB_OPT="-fast $CPU_OPT" | 151 ZLIB_OPT="-fast $IPO $CPU_OPT" |
107 fi | 152 fi |
108 | 153 |
109 | 154 |
110 # stop on warning | 155 # stop on warning |
111 CFLAGS="$CFLAGS -errwarn=%all" | 156 CFLAGS="$CFLAGS -errwarn=%all" |