annotate auto/configure @ 3440:88741ec7731a stable-0.7

merge r3294, r3305: Fix a bug introduced in r2032: After a child process has read a terminate message from a channel, the process tries to read the channel again. The kernel (at least FreeBSD) may preempt the process and sends a SIGIO signal to a master process. The master process sends a new terminate message, the kernel switches again to the the child process, and the child process reads the messages instead of an EAGAIN error. And this may repeat over and over. Being that the child process can not exit the cycle and test the termination flag set by the message handler. The fix disallow the master process to send a new terminate message on SIGIO signal reception. It may send the message only on SIGALARM signal.
author Igor Sysoev <igor@sysoev.ru>
date Mon, 01 Feb 2010 15:49:36 +0000
parents f5c80c69a72e
children 0b3613117ac5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
275
b836469c37c3 nginx-0.0.2-2004-03-02-18:40:59 import
Igor Sysoev <igor@sysoev.ru>
parents: 266
diff changeset
1 #!/bin/sh
192
31824be1fc66 nginx-0.0.1-2003-11-20-10:05:50 import; auto/configure
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 440
diff changeset
3 # Copyright (C) Igor Sysoev
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 440
diff changeset
4
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 440
diff changeset
5
195
8dee38ea9117 nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents: 194
diff changeset
6 . auto/options
8dee38ea9117 nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents: 194
diff changeset
7 . auto/init
8dee38ea9117 nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents: 194
diff changeset
8 . auto/sources
194
2357fa41738a nginx-0.0.1-2003-11-21-09:30:49 import
Igor Sysoev <igor@sysoev.ru>
parents: 193
diff changeset
9
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
10 test -d $NGX_OBJS || mkdir $NGX_OBJS
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 446
diff changeset
11
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 446
diff changeset
12 echo > $NGX_AUTO_HEADERS_H
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 457
diff changeset
13 echo > $NGX_AUTOCONF_ERR
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 457
diff changeset
14
945
3a126fca07fc the -V switch
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
15 echo "#define NGX_CONFIGURE \"$NGX_CONFIGURE\"" > $NGX_AUTO_CONFIG_H
3a126fca07fc the -V switch
Igor Sysoev <igor@sysoev.ru>
parents: 611
diff changeset
16
248
e885208c518b nginx-0.0.2-2004-02-03-00:19:52 import
Igor Sysoev <igor@sysoev.ru>
parents: 210
diff changeset
17
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
18 if [ $NGX_DEBUG = YES ]; then
285
8f48e6366d09 nginx-0.0.2-2004-03-11-18:42:41 import
Igor Sysoev <igor@sysoev.ru>
parents: 275
diff changeset
19 have=NGX_DEBUG . auto/have
8f48e6366d09 nginx-0.0.2-2004-03-11-18:42:41 import
Igor Sysoev <igor@sysoev.ru>
parents: 275
diff changeset
20 fi
8f48e6366d09 nginx-0.0.2-2004-03-11-18:42:41 import
Igor Sysoev <igor@sysoev.ru>
parents: 275
diff changeset
21
8f48e6366d09 nginx-0.0.2-2004-03-11-18:42:41 import
Igor Sysoev <igor@sysoev.ru>
parents: 275
diff changeset
22
563
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
23 if test -z "$NGX_PLATFORM"; then
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
24 echo "checking for OS"
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
25
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
26 NGX_SYSTEM=`uname -s 2>/dev/null`
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
27 NGX_RELEASE=`uname -r 2>/dev/null`
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
28 NGX_MACHINE=`uname -m 2>/dev/null`
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
29
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
30 echo " + $NGX_SYSTEM $NGX_RELEASE $NGX_MACHINE"
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
31
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
32 NGX_PLATFORM="$NGX_SYSTEM:$NGX_RELEASE:$NGX_MACHINE";
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
33
2828
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
34 case "$NGX_SYSTEM" in
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
35 MINGW32_*)
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
36 NGX_PLATFORM=win32
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
37 ;;
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
38 esac
f5c80c69a72e backout -r2827 and add correct fix
Igor Sysoev <igor@sysoev.ru>
parents: 2758
diff changeset
39
563
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
40 else
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
41 echo "building for $NGX_PLATFORM"
946
756e8a5b1f78 early C compiler test
Igor Sysoev <igor@sysoev.ru>
parents: 945
diff changeset
42 NGX_SYSTEM=$NGX_PLATFORM
563
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
43 fi
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
44
946
756e8a5b1f78 early C compiler test
Igor Sysoev <igor@sysoev.ru>
parents: 945
diff changeset
45 . auto/cc/conf
563
9c2f3ed7a247 nginx-0.3.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
46
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
47 if [ "$NGX_PLATFORM" != win32 ]; then
253
b6793bc5034b nginx-0.0.2-2004-02-09-10:46:43 import
Igor Sysoev <igor@sysoev.ru>
parents: 248
diff changeset
48 . auto/headers
b6793bc5034b nginx-0.0.2-2004-02-09-10:46:43 import
Igor Sysoev <igor@sysoev.ru>
parents: 248
diff changeset
49 fi
b6793bc5034b nginx-0.0.2-2004-02-09-10:46:43 import
Igor Sysoev <igor@sysoev.ru>
parents: 248
diff changeset
50
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 515
diff changeset
51 . auto/os/conf
248
e885208c518b nginx-0.0.2-2004-02-03-00:19:52 import
Igor Sysoev <igor@sysoev.ru>
parents: 210
diff changeset
52
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
53 if [ "$NGX_PLATFORM" != win32 ]; then
515
417a087c9c4d nginx-0.1.32-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 479
diff changeset
54 . auto/os/features
266
5238e93961a1 nginx-0.0.2-2004-02-23-23:57:12 import
Igor Sysoev <igor@sysoev.ru>
parents: 256
diff changeset
55 . auto/threads
5238e93961a1 nginx-0.0.2-2004-02-23-23:57:12 import
Igor Sysoev <igor@sysoev.ru>
parents: 256
diff changeset
56 fi
5238e93961a1 nginx-0.0.2-2004-02-23-23:57:12 import
Igor Sysoev <igor@sysoev.ru>
parents: 256
diff changeset
57
457
ded1284520cc nginx-0.1.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
58 . auto/modules
ded1284520cc nginx-0.1.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
59 . auto/lib/conf
ded1284520cc nginx-0.1.3-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
60
2758
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
61 case ".$NGX_PREFIX" in
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
62 .)
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
63 NGX_PREFIX=${NGX_PREFIX:-/usr/local/nginx}
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
64 have=NGX_PREFIX value="\"$NGX_PREFIX/\"" . auto/define
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
65 ;;
194
2357fa41738a nginx-0.0.1-2003-11-21-09:30:49 import
Igor Sysoev <igor@sysoev.ru>
parents: 193
diff changeset
66
2758
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
67 .!)
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
68 NGX_PREFIX=
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
69 ;;
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
70
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
71 *)
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
72 have=NGX_PREFIX value="\"$NGX_PREFIX/\"" . auto/define
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
73 ;;
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
74 esac
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
75
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
76 if [ ".$NGX_CONF_PREFIX" != "." ]; then
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
77 have=NGX_CONF_PREFIX value="\"$NGX_CONF_PREFIX/\"" . auto/define
195
8dee38ea9117 nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents: 194
diff changeset
78 fi
210
00cafae0bdf1 nginx-0.0.1-2003-12-14-23:10:27 import
Igor Sysoev <igor@sysoev.ru>
parents: 195
diff changeset
79
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
80 have=NGX_SBIN_PATH value="\"$NGX_SBIN_PATH\"" . auto/define
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
81 have=NGX_CONF_PATH value="\"$NGX_CONF_PATH\"" . auto/define
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
82 have=NGX_PID_PATH value="\"$NGX_PID_PATH\"" . auto/define
611
3f8a2132b93d nginx-0.3.27-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 563
diff changeset
83 have=NGX_LOCK_PATH value="\"$NGX_LOCK_PATH\"" . auto/define
2743
d8316f307b6a issue start up errors and warning on both stderr and error_log
Igor Sysoev <igor@sysoev.ru>
parents: 1352
diff changeset
84 have=NGX_ERROR_LOG_PATH value="\"$NGX_ERROR_LOG_PATH\"" . auto/define
479
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
85
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 467
diff changeset
86 have=NGX_HTTP_LOG_PATH value="\"$NGX_HTTP_LOG_PATH\"" . auto/define
479
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
87 have=NGX_HTTP_CLIENT_TEMP_PATH value="\"$NGX_HTTP_CLIENT_TEMP_PATH\""
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
88 . auto/define
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
89 have=NGX_HTTP_PROXY_TEMP_PATH value="\"$NGX_HTTP_PROXY_TEMP_PATH\""
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
90 . auto/define
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
91 have=NGX_HTTP_FASTCGI_TEMP_PATH value="\"$NGX_HTTP_FASTCGI_TEMP_PATH\""
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
92 . auto/define
337
4feff829a849 nginx-0.0.3-2004-05-19-00:28:54 import
Igor Sysoev <igor@sysoev.ru>
parents: 303
diff changeset
93
2758
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
94 . auto/make
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
95 . auto/lib/make
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
96 . auto/install
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
97
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
98 if [ "$NGX_PLATFORM" != win32 ]; then
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
99 . auto/unix
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
100 fi
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
101
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
102 # STUB
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
103 . auto/stubs
77264e0157ad -p and --prefix=
Igor Sysoev <igor@sysoev.ru>
parents: 2755
diff changeset
104
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 446
diff changeset
105 have=NGX_USER value="\"$NGX_USER\"" . auto/define
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 446
diff changeset
106 have=NGX_GROUP value="\"$NGX_GROUP\"" . auto/define
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 446
diff changeset
107
210
00cafae0bdf1 nginx-0.0.1-2003-12-14-23:10:27 import
Igor Sysoev <igor@sysoev.ru>
parents: 195
diff changeset
108 . auto/summary