Mercurial > hg > nginx-quic
annotate auto/cc/conf @ 6469:7cdf612fd58c
Win32: replaced NGX_EXDEV with more appropriate error code.
Correct error code for NGX_EXDEV on Windows is ERROR_NOT_SAME_DEVICE,
"The system cannot move the file to a different disk drive".
Previously used ERROR_WRONG_DISK is about wrong diskette in the drive and
is not appropriate.
There is no real difference though, as MoveFile() is able to copy files
between disk drives, and will fail with ERROR_ACCESS_DENIED when asked
to copy directories. The ERROR_NOT_SAME_DEVICE error is only used
by MoveFileEx() when called without the MOVEFILE_COPY_ALLOWED flag.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 29 Mar 2016 09:52:15 +0300 |
parents | ba3c2ca21aa5 |
children | 0c3e464682e2 |
rev | line source |
---|---|
455 | 1 |
2 # Copyright (C) Igor Sysoev | |
4412 | 3 # Copyright (C) Nginx, Inc. |
455 | 4 |
5 | |
487 | 6 LINK="\$(CC)" |
7 | |
6383 | 8 MAIN_LINK= |
9 MODULE_LINK="-shared" | |
10 | |
455 | 11 ngx_include_opt="-I " |
12 ngx_compile_opt="-c" | |
6383 | 13 ngx_pic_opt="-fPIC" |
455 | 14 ngx_objout="-o " |
15 ngx_binout="-o " | |
16 ngx_objext="o" | |
17 ngx_binext= | |
6383 | 18 ngx_modext=".so" |
455 | 19 |
573 | 20 ngx_long_start= |
21 ngx_long_end= | |
22 | |
455 | 23 ngx_regex_dirsep="\/" |
24 ngx_dirsep='/' | |
25 | |
26 ngx_regex_cont=' \\\ | |
27 ' | |
28 ngx_cont=' \ | |
29 ' | |
30 ngx_tab=' \ | |
31 ' | |
32 ngx_spacer= | |
33 | |
573 | 34 ngx_long_regex_cont=$ngx_regex_cont |
35 ngx_long_cont=$ngx_cont | |
36 | |
455 | 37 . auto/cc/name |
38 | |
39 if test -n "$CFLAGS"; then | |
40 | |
41 CC_TEST_FLAGS="$CFLAGS $NGX_CC_OPT" | |
42 | |
43 case $NGX_CC_NAME in | |
44 | |
45 ccc) | |
46 # Compaq C V6.5-207 | |
47 | |
48 ngx_include_opt="-I" | |
49 ;; | |
50 | |
5366
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
51 sunc) |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
52 |
6383 | 53 MAIN_LINK= |
54 MODULE_LINK="-G" | |
55 | |
5366
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
56 case "$NGX_MACHINE" in |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
57 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
58 i86pc) |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
59 NGX_AUX=" src/os/unix/ngx_sunpro_x86.il" |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
60 ;; |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
61 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
62 sun4u | sun4v) |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
63 NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il" |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
64 ;; |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
65 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
66 esac |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
67 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
68 case $CPU in |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
69 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
70 amd64) |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
71 NGX_AUX=" src/os/unix/ngx_sunpro_amd64.il" |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
72 ;; |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
73 |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
74 esac |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
75 ;; |
945aa9c7f282
Configure: fixed building with Sun C if CFLAGS set (ticket #65).
Maxim Dounin <mdounin@mdounin.ru>
parents:
4762
diff
changeset
|
76 |
455 | 77 esac |
78 | |
79 else | |
80 | |
81 case $NGX_CC_NAME in | |
82 gcc) | |
515 | 83 # gcc 2.7.2.3, 2.8.1, 2.95.4, egcs-1.1.2 |
84 # 3.0.4, 3.1.1, 3.2.3, 3.3.2, 3.3.3, 3.3.4, 3.4.0, 3.4.2 | |
561 | 85 # 4.0.0, 4.0.1, 4.1.0 |
455 | 86 |
87 . auto/cc/gcc | |
88 ;; | |
89 | |
4762
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
90 clang) |
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
91 # Clang C compiler |
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
92 |
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
93 . auto/cc/clang |
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
94 ;; |
182aee3b1bf5
Added the Clang compiler support.
Ruslan Ermilov <ru@nginx.com>
parents:
4412
diff
changeset
|
95 |
455 | 96 icc) |
515 | 97 # Intel C++ compiler 7.1, 8.0, 8.1 |
455 | 98 |
99 . auto/cc/icc | |
100 ;; | |
101 | |
561 | 102 sunc) |
103 # Sun C 5.7 Patch 117837-04 2005/05/11 | |
104 | |
105 . auto/cc/sunc | |
106 ;; | |
107 | |
467 | 108 ccc) |
515 | 109 # Compaq C V6.5-207 |
110 | |
111 . auto/cc/ccc | |
467 | 112 ;; |
455 | 113 |
515 | 114 acc) |
115 # aCC: HP ANSI C++ B3910B A.03.55.02 | |
116 | |
117 . auto/cc/acc | |
118 ;; | |
455 | 119 |
461 | 120 msvc*) |
121 # MSVC++ 6.0 SP2, MSVC++ Toolkit 2003 | |
455 | 122 |
123 . auto/cc/msvc | |
124 ;; | |
125 | |
126 owc) | |
127 # Open Watcom C 1.0, 1.2 | |
128 | |
129 . auto/cc/owc | |
130 ;; | |
131 | |
132 bcc) | |
133 # Borland C++ 5.5 | |
134 | |
135 . auto/cc/bcc | |
136 ;; | |
137 | |
138 esac | |
139 | |
515 | 140 CC_TEST_FLAGS="$CC_TEST_FLAGS $NGX_CC_OPT" |
455 | 141 |
142 fi | |
143 | |
144 CFLAGS="$CFLAGS $NGX_CC_OPT" | |
3367
568a854383f9
test invalid --with-ld-opt in right place
Igor Sysoev <igor@sysoev.ru>
parents:
3366
diff
changeset
|
145 NGX_TEST_LD_OPT="$NGX_LD_OPT" |
455 | 146 |
469 | 147 if [ "$NGX_PLATFORM" != win32 ]; then |
455 | 148 |
461 | 149 if test -n "$NGX_LD_OPT"; then |
150 ngx_feature=--with-ld-opt=\"$NGX_LD_OPT\" | |
469 | 151 ngx_feature_name= |
461 | 152 ngx_feature_run=no |
153 ngx_feature_incs= | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
573
diff
changeset
|
154 ngx_feature_path= |
461 | 155 ngx_feature_libs= |
156 ngx_feature_test= | |
157 . auto/feature | |
158 | |
159 if [ $ngx_found = no ]; then | |
160 echo $0: error: the invalid value in --with-ld-opt=\"$NGX_LD_OPT\" | |
161 echo | |
162 exit 1 | |
163 fi | |
164 fi | |
165 | |
3362
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
166 |
6383 | 167 ngx_feature="-Wl,-E switch" |
168 ngx_feature_name= | |
169 ngx_feature_run=no | |
170 ngx_feature_incs= | |
171 ngx_feature_path= | |
172 ngx_feature_libs=-Wl,-E | |
173 ngx_feature_test= | |
174 . auto/feature | |
175 | |
176 if [ $ngx_found = yes ]; then | |
177 MAIN_LINK="-Wl,-E" | |
178 fi | |
179 | |
180 | |
3362
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
181 ngx_feature="gcc builtin atomic operations" |
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
182 ngx_feature_name=NGX_HAVE_GCC_ATOMIC |
3366 | 183 ngx_feature_run=yes |
3362
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
184 ngx_feature_incs= |
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
185 ngx_feature_path= |
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
186 ngx_feature_libs= |
3366 | 187 ngx_feature_test="long n = 0; |
188 if (!__sync_bool_compare_and_swap(&n, 0, 1)) | |
189 return 1; | |
190 if (__sync_fetch_and_add(&n, 1) != 1) | |
191 return 1; | |
192 if (n != 2) | |
193 return 1; | |
194 __sync_synchronize();" | |
3362
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
195 . auto/feature |
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
196 |
b57a4a704f3c
GCC 4.1 builtin atomic operations
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
197 |
517 | 198 if [ "$NGX_CC_NAME" = "ccc" ]; then |
515 | 199 echo "checking for C99 variadic macros ... disabled" |
200 else | |
201 ngx_feature="C99 variadic macros" | |
202 ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS" | |
203 ngx_feature_run=yes | |
204 ngx_feature_incs="#include <stdio.h> | |
205 #define var(dummy, ...) sprintf(__VA_ARGS__)" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
573
diff
changeset
|
206 ngx_feature_path= |
515 | 207 ngx_feature_libs= |
208 ngx_feature_test="char buf[30]; buf[0] = '0'; | |
209 var(0, buf, \"%d\", 1); | |
210 if (buf[0] != '1') return 1" | |
211 . auto/feature | |
212 fi | |
455 | 213 |
467 | 214 |
3673
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
215 ngx_feature="gcc variadic macros" |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
216 ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS" |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
217 ngx_feature_run=yes |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
218 ngx_feature_incs="#include <stdio.h> |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
219 #define var(dummy, args...) sprintf(args)" |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
220 ngx_feature_path= |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
221 ngx_feature_libs= |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
222 ngx_feature_test="char buf[30]; buf[0] = '0'; |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
223 var(0, buf, \"%d\", 1); |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
224 if (buf[0] != '1') return 1" |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
225 . auto/feature |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
226 |
e27070fb6c6b
try to use C99 variadic macros first:
Igor Sysoev <igor@sysoev.ru>
parents:
3367
diff
changeset
|
227 |
6395
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
228 ngx_feature="gcc builtin 64 bit byteswap" |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
229 ngx_feature_name="NGX_HAVE_GCC_BSWAP64" |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
230 ngx_feature_run=no |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
231 ngx_feature_incs= |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
232 ngx_feature_path= |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
233 ngx_feature_libs= |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
234 ngx_feature_test="__builtin_bswap64(0)" |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
235 . auto/feature |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
236 |
ba3c2ca21aa5
HTTP/2: implemented HPACK Huffman encoding for response headers.
Valentin Bartenev <vbart@nginx.com>
parents:
6383
diff
changeset
|
237 |
467 | 238 # ngx_feature="inline" |
469 | 239 # ngx_feature_name= |
467 | 240 # ngx_feature_run=no |
241 # ngx_feature_incs="int inline f(void) { return 1 }" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
573
diff
changeset
|
242 # ngx_feature_path= |
467 | 243 # ngx_feature_libs= |
244 # ngx_feature_test= | |
245 # . auto/feature | |
246 # | |
247 # if [ $ngx_found = yes ]; then | |
248 # fi | |
249 | |
455 | 250 fi |