annotate auto/cc/sunc @ 1308:63fa39cf8bd0

--with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
author Igor Sysoev <igor@sysoev.ru>
date Sun, 15 Jul 2007 20:09:14 +0000
parents 811fb97b9bf7
children 08c6ee7a1b11
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
3
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5 # Sun C 5.7 Patch 117837-04 2005/05/11
702
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
6 # Sun C 5.8 2005/10/13
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \
702
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
9 | sed -e 's/^.* Sun C \(.*\)/\1/'`
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11 echo " + Sun C version: $NGX_SUNC_VER"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
13 have=NGX_COMPILER value="\"Sun C $NGX_SUNC_VER\"" . auto/define
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15
744
34bb8726f454 add sun4v
Igor Sysoev <igor@sysoev.ru>
parents: 702
diff changeset
16 case "$NGX_MACHINE" in
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
17
744
34bb8726f454 add sun4v
Igor Sysoev <igor@sysoev.ru>
parents: 702
diff changeset
18 i86pc)
702
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
19 ngx_feature="PAUSE hardware capability bug"
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
20 ngx_feature_name=
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
21 ngx_feature_run=bug
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
22 ngx_feature_incs=
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 744
diff changeset
23 ngx_feature_path=
702
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
24 ngx_feature_libs=
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
25 ngx_feature_test='__asm ("pause")'
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
26
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
27 . auto/feature
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
28
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
29 if [ $ngx_found = yes ]; then
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
30 # disable [ PAUSE ] hwcap for Sun Studio 11
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
31 CORE_LINK="$CORE_LINK -Msrc/os/unix/ngx_sunpro_x86.map"
67deba330372 auto/configure [ PAUSE ] hwcap bug
Igor Sysoev <igor@sysoev.ru>
parents: 697
diff changeset
32 fi
697
36c51f8f0f4d disable [ PAUSE ] hwcap for Sun Studio 11
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
33
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
34 NGX_AUX=" src/os/unix/ngx_sunpro_x86.il"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
35 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
36
744
34bb8726f454 add sun4v
Igor Sysoev <igor@sysoev.ru>
parents: 702
diff changeset
37 sun4u | sun4v)
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
38 NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
39 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
40
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
41 esac
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
42
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
43
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
44 # optimizations
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
45
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
46 CFLAGS="$CFLAGS -fast"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
47
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
48
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
49 case $CPU in
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
50 pentium)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
51 # optimize for Pentium and Athlon
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
52 CPU_OPT="-xchip=pentium"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
53 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
54
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
55 pentiumpro)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
56 # optimize for Pentium Pro, Pentium II
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
57 CPU_OPT="-xchip=pentium_pro"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
58 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
59
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
60 pentium3)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
61 # optimize for Pentium III
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
62 CPU_OPT="-xchip=pentium3"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
63 #CPU_OPT="$CPU_OPT -xarch=sse"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
64 CPU_OPT="$CPU_OPT -xcache=16/32/4:256/32/4"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
65 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
66
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
67 pentium4)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
68 # optimize for Pentium 4
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
69 CPU_OPT="-xchip=pentium4"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
70 #CPU_OPT="$CPU_OPT -xarch=sse2"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
71 CPU_OPT="$CPU_OPT -xcache=8/64/4:256/128/8"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
72 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
73
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
74 opteron)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
75 # optimize for Opteron
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
76 CPU_OPT="-xchip=opteron"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
77 #CPU_OPT="$CPU_OPT -xarch=sse2"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
78 CPU_OPT="$CPU_OPT -xcache=64/64/2:1024/64/16"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
79 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
80
1308
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
81 sparc32)
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
82 # build 32-bit UltraSparc binary
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
83 CPU_OPT="-m32"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
84 CORE_LINK="$CORE_LINK -m32"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
85 CC_AUX_FLAGS="$CC_AUX_FLAGS -m32"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
86 NGX_CPU_CACHE_LINE=64
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
87 ;;
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
88
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
89 sparc64)
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
90 # build 64-bit UltraSparc binary
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
91 CPU_OPT="-m64"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
92 CORE_LINK="$CORE_LINK -m64"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
93 CC_AUX_FLAGS="$CC_AUX_FLAGS -m64"
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
94 NGX_CPU_CACHE_LINE=64
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
95 ;;
63fa39cf8bd0 --with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
96
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
97 amd64)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
98 # build 64-bit amd64 binary
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
99 CPU_OPT="-xarch=amd64"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
100 CORE_LINK="$CORE_LINK -xarch=amd64"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
101 NGX_AUX=" src/os/unix/ngx_sunpro_amd64.il"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
102 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
103
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
104 esac
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
105
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
106
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
107 CFLAGS="$CFLAGS $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
108
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
109
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
110 if [ ".$PCRE_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
111 PCRE_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
112 fi
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
113
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
114 if [ ".$MD5_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
115 MD5_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
116 fi
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
117
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
118 if [ ".$ZLIB_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
119 ZLIB_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
120 fi
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
121
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
122
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
123 # stop on warning
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
124 CFLAGS="$CFLAGS -errwarn=%all"