annotate auto/cc/sunc @ 1307:811fb97b9bf7

fix building PCRE by SunStudio
author Igor Sysoev <igor@sysoev.ru>
date Sun, 15 Jul 2007 19:17:46 +0000
parents 7af8276b1c2f
children 63fa39cf8bd0
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 # "-xarch=v9" enables the "casa" assembler instruction
1307
811fb97b9bf7 fix building PCRE by SunStudio
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
39 CPU_OPT="-xarch=v9"
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
40 CORE_LINK="$CORE_LINK -xarch=v9"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
41 NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il"
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 esac
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
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
47 # optimizations
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 CFLAGS="$CFLAGS -fast"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
50
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
51
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
52 case $CPU in
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
53 pentium)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
54 # optimize for Pentium and Athlon
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
55 CPU_OPT="-xchip=pentium"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
56 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
57
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
58 pentiumpro)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
59 # optimize for Pentium Pro, Pentium II
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
60 CPU_OPT="-xchip=pentium_pro"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
61 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
62
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
63 pentium3)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
64 # optimize for Pentium III
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
65 CPU_OPT="-xchip=pentium3"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
66 #CPU_OPT="$CPU_OPT -xarch=sse"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
67 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
68 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
69
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
70 pentium4)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
71 # optimize for Pentium 4
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
72 CPU_OPT="-xchip=pentium4"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
73 #CPU_OPT="$CPU_OPT -xarch=sse2"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
74 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
75 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
76
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
77 opteron)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
78 # optimize for Opteron
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
79 CPU_OPT="-xchip=opteron"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
80 #CPU_OPT="$CPU_OPT -xarch=sse2"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
81 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
82 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
83
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
84 amd64)
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
85 # build 64-bit amd64 binary
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
86 CPU_OPT="-xarch=amd64"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
87 CORE_LINK="$CORE_LINK -xarch=amd64"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
88 NGX_AUX=" src/os/unix/ngx_sunpro_amd64.il"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
89 ;;
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
90
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
91 esac
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
92
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
93
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
94 CFLAGS="$CFLAGS $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
95
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
96
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
97 if [ ".$PCRE_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
98 PCRE_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
99 fi
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
100
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
101 if [ ".$MD5_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
102 MD5_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
103 fi
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
104
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
105 if [ ".$ZLIB_OPT" = "." ]; then
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
106 ZLIB_OPT="-fast $CPU_OPT"
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
107 fi
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 # stop on warning
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
111 CFLAGS="$CFLAGS -errwarn=%all"