Mercurial > hg > nginx-quic
comparison auto/cc/sunc @ 4044:0ea785433fcf stable-1.0
Merge of r4004, r4005:
Solaris related fixes:
*) Detect POSIX semaphores in librt on Solaris (ticket #3).
Patch by Denis Ivanov.
*) Lower optimization level for Sun Studio before 12.1.
At least Sun Studio 12 has problems with bit-fields exposed by nginx code
(caught by test suite). They seems to be fixed in Sun Studio 12.1. As a
workaround use "-fast -xalias_level=any" for older versions, it resolves
the problem.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 29 Aug 2011 12:50:35 +0000 |
parents | 7e02df612521 |
children | d620f497c50f |
comparison
equal
deleted
inserted
replaced
4043:e2b11e0d49cf | 4044:0ea785433fcf |
---|---|
4 | 4 |
5 # Sun C 5.7 Patch 117837-04 2005/05/11 Sun Studio 10 | 5 # Sun C 5.7 Patch 117837-04 2005/05/11 Sun Studio 10 |
6 # Sun C 5.8 2005/10/13 Sun Studio 11 | 6 # Sun C 5.8 2005/10/13 Sun Studio 11 |
7 # Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12 | 7 # Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12 |
8 # Sun C 5.9 SunOS_sparc 2007/05/03 | 8 # Sun C 5.9 SunOS_sparc 2007/05/03 |
9 # Sun C 5.10 SunOS_i386 2009/06/03 Sun Studio 12.1 | |
10 # Sun C 5.11 SunOS_i386 2010/08/13 Sun Studio 12.2 | |
9 | 11 |
10 NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \ | 12 NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \ |
11 | sed -e 's/^.* Sun C \(.*\)/\1/'` | 13 | sed -e 's/^.* Sun C \(.*\)/\1/'` |
12 | 14 |
13 echo " + Sun C version: $NGX_SUNC_VER" | 15 echo " + Sun C version: $NGX_SUNC_VER" |
55 esac | 57 esac |
56 | 58 |
57 | 59 |
58 # optimizations | 60 # optimizations |
59 | 61 |
62 # 20736 == 0x5100, Sun Studio 12.1 | |
63 | |
64 if [ "$ngx_sunc_ver" -ge 20736 ]; then | |
65 ngx_fast="-fast" | |
66 | |
67 else | |
68 # older versions had problems with bit-fields | |
69 ngx_fast="-fast -xalias_level=any" | |
70 fi | |
71 | |
60 IPO=-xipo | 72 IPO=-xipo |
61 CFLAGS="$CFLAGS -fast $IPO" | 73 CFLAGS="$CFLAGS $ngx_fast $IPO" |
62 CORE_LINK="$CORE_LINK -fast $IPO" | 74 CORE_LINK="$CORE_LINK $ngx_fast $IPO" |
63 | 75 |
64 | 76 |
65 case $CPU in | 77 case $CPU in |
66 pentium) | 78 pentium) |
67 # optimize for Pentium and Athlon | 79 # optimize for Pentium and Athlon |
124 | 136 |
125 CFLAGS="$CFLAGS $CPU_OPT" | 137 CFLAGS="$CFLAGS $CPU_OPT" |
126 | 138 |
127 | 139 |
128 if [ ".$PCRE_OPT" = "." ]; then | 140 if [ ".$PCRE_OPT" = "." ]; then |
129 PCRE_OPT="-fast $IPO $CPU_OPT" | 141 PCRE_OPT="$ngx_fast $IPO $CPU_OPT" |
130 fi | 142 fi |
131 | 143 |
132 if [ ".$MD5_OPT" = "." ]; then | 144 if [ ".$MD5_OPT" = "." ]; then |
133 MD5_OPT="-fast $IPO $CPU_OPT" | 145 MD5_OPT="$ngx_fast $IPO $CPU_OPT" |
134 fi | 146 fi |
135 | 147 |
136 if [ ".$ZLIB_OPT" = "." ]; then | 148 if [ ".$ZLIB_OPT" = "." ]; then |
137 ZLIB_OPT="-fast $IPO $CPU_OPT" | 149 ZLIB_OPT="$ngx_fast $IPO $CPU_OPT" |
138 fi | 150 fi |
139 | 151 |
140 | 152 |
141 # stop on warning | 153 # stop on warning |
142 CFLAGS="$CFLAGS -errwarn=%all" | 154 CFLAGS="$CFLAGS -errwarn=%all" |