Mercurial > hg > nginx
annotate auto/unix @ 6272:b6a665bf858a
HTTP/2: fix indirect reprioritization.
Previously, streams that were indirectly reprioritized (either because of
a new exclusive dependency on their parent or because of removal of their
parent from the dependency tree), didn't have their pointer to the parent
node updated.
This broke detection of circular dependencies and, as a result, nginx
worker would crash due to stack overflow whenever such dependency was
introduced.
Found with afl-fuzz.
Signed-off-by: Piotr Sikora <piotrsikora@google.com>
author | Piotr Sikora <piotrsikora@google.com> |
---|---|
date | Thu, 01 Oct 2015 20:25:55 -0700 |
parents | acba1656c474 |
children | b5a87b51be24 |
rev | line source |
---|---|
444
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
417
diff
changeset
|
1 |
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
417
diff
changeset
|
2 # Copyright (C) Igor Sysoev |
4412 | 3 # Copyright (C) Nginx, Inc. |
444
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
417
diff
changeset
|
4 |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
5 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
6 NGX_USER=${NGX_USER:-nobody} |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
7 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
8 if [ -z "$NGX_GROUP" ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
9 if [ $NGX_USER = nobody ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
10 if grep nobody /etc/group 2>&1 >/dev/null; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
11 echo "checking for nobody group ... found" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
12 NGX_GROUP=nobody |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
13 else |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
14 echo "checking for nobody group ... not found" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
15 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
16 if grep nogroup /etc/group 2>&1 >/dev/null; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
17 echo "checking for nogroup group ... found" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
18 NGX_GROUP=nogroup |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
19 else |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
20 echo "checking for nogroup group ... not found" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
21 NGX_GROUP=nobody |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
22 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
23 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
24 else |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
25 NGX_GROUP=$NGX_USER |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
26 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
27 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
28 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
29 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
30 ngx_feature="poll()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
31 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
32 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
33 ngx_feature_incs="#include <poll.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
34 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
35 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
36 ngx_feature_test="int n; struct pollfd pl; |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
37 pl.fd = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
38 pl.events = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
39 pl.revents = 0; |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
40 n = poll(&pl, 1, 0); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
41 if (n == -1) return 1" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
42 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
43 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
44 if [ $ngx_found = no ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
45 EVENT_POLL=NONE |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
46 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
47 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
48 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
49 ngx_feature="/dev/poll" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
50 ngx_feature_name="NGX_HAVE_DEVPOLL" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
51 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
52 ngx_feature_incs="#include <sys/devpoll.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
53 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
54 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
55 ngx_feature_test="int n, dp; struct dvpoll dvp; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
56 dp = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
57 dvp.dp_fds = NULL; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
58 dvp.dp_nfds = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
59 dvp.dp_timeout = 0; |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
60 n = ioctl(dp, DP_POLL, &dvp); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
61 if (n == -1) return 1" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
62 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
63 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
64 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
65 CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
66 EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
67 EVENT_FOUND=YES |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
68 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
69 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
70 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
71 if test -z "$NGX_KQUEUE_CHECKED"; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
72 ngx_feature="kqueue" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
73 ngx_feature_name="NGX_HAVE_KQUEUE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
74 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
75 ngx_feature_incs="#include <sys/event.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
76 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
77 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
78 ngx_feature_test="int kq; kq = kqueue()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
79 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
80 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
81 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
82 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
83 have=NGX_HAVE_CLEAR_EVENT . auto/have |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
84 EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
85 CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
86 EVENT_FOUND=YES |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
87 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
88 ngx_feature="kqueue's NOTE_LOWAT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
89 ngx_feature_name="NGX_HAVE_LOWAT_EVENT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
90 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
91 ngx_feature_incs="#include <sys/event.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
92 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
93 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
94 ngx_feature_test="struct kevent kev; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
95 kev.fflags = NOTE_LOWAT;" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
96 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
97 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
98 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
99 ngx_feature="kqueue's EVFILT_TIMER" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
100 ngx_feature_name="NGX_HAVE_TIMER_EVENT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
101 ngx_feature_run=yes |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
102 ngx_feature_incs="#include <sys/event.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
103 #include <sys/time.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
104 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
105 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
106 ngx_feature_test="int kq; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
107 struct kevent kev; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
108 struct timespec ts; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
109 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
110 if ((kq = kqueue()) == -1) return 1; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
111 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
112 kev.ident = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
113 kev.filter = EVFILT_TIMER; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
114 kev.flags = EV_ADD|EV_ENABLE; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
115 kev.fflags = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
116 kev.data = 1000; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
117 kev.udata = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
118 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
119 ts.tv_sec = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
120 ts.tv_nsec = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
121 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
122 if (kevent(kq, &kev, 1, &kev, 1, &ts) == -1) return 1; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
123 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
124 if (kev.flags & EV_ERROR) return 1;" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
125 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
126 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
127 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
128 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
129 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
130 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
131 if [ "$NGX_SYSTEM" = "NetBSD" ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
132 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
133 # NetBSD 2.0 incompatibly defines kevent.udata as "intptr_t" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
134 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
135 cat << END >> $NGX_AUTO_CONFIG_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
136 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
137 #define NGX_KQUEUE_UDATA_T |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
138 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
139 END |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
140 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
141 else |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
142 cat << END >> $NGX_AUTO_CONFIG_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
143 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
144 #define NGX_KQUEUE_UDATA_T (void *) |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
145 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
146 END |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
147 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
148 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
149 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
150 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
151 ngx_feature="crypt()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
152 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
153 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
154 ngx_feature_incs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
155 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
156 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
157 ngx_feature_test="crypt(\"test\", \"salt\");" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
158 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
159 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
160 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
161 if [ $ngx_found = no ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
162 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
163 ngx_feature="crypt() in libcrypt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
164 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
165 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
166 ngx_feature_incs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
167 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
168 ngx_feature_libs=-lcrypt |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
169 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
170 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
171 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
172 CRYPT_LIB="-lcrypt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
173 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
174 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
175 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
176 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
177 ngx_feature="F_READAHEAD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
178 ngx_feature_name="NGX_HAVE_F_READAHEAD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
179 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
180 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
181 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
182 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
183 ngx_feature_test="fcntl(0, F_READAHEAD, 1);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
184 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
185 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
186 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
187 ngx_feature="posix_fadvise()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
188 ngx_feature_name="NGX_HAVE_POSIX_FADVISE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
189 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
190 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
191 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
192 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
193 ngx_feature_test="posix_fadvise(0, 0, 0, POSIX_FADV_SEQUENTIAL);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
194 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
195 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
196 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
197 ngx_feature="O_DIRECT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
198 ngx_feature_name="NGX_HAVE_O_DIRECT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
199 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
200 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
201 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
202 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
203 ngx_feature_test="fcntl(0, F_SETFL, O_DIRECT);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
204 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
205 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
206 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
207 if [ $ngx_found = yes -a "$NGX_SYSTEM" = "Linux" ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
208 have=NGX_HAVE_ALIGNED_DIRECTIO . auto/have |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
209 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
210 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
211 ngx_feature="F_NOCACHE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
212 ngx_feature_name="NGX_HAVE_F_NOCACHE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
213 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
214 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
215 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
216 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
217 ngx_feature_test="fcntl(0, F_NOCACHE, 1);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
218 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
219 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
220 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
221 ngx_feature="directio()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
222 ngx_feature_name="NGX_HAVE_DIRECTIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
223 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
224 ngx_feature_incs="#include <sys/types.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
225 #include <sys/fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
226 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
227 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
228 ngx_feature_test="directio(0, DIRECTIO_ON);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
229 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
230 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
231 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
232 ngx_feature="statfs()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
233 ngx_feature_name="NGX_HAVE_STATFS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
234 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
235 ngx_feature_incs="$NGX_INCLUDE_SYS_PARAM_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
236 $NGX_INCLUDE_SYS_MOUNT_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
237 $NGX_INCLUDE_SYS_VFS_H" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
238 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
239 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
240 ngx_feature_test="struct statfs fs; |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
241 statfs(\".\", &fs);" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
242 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
243 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
244 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
245 ngx_feature="statvfs()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
246 ngx_feature_name="NGX_HAVE_STATVFS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
247 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
248 ngx_feature_incs="#include <sys/types.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
249 #include <sys/statvfs.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
250 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
251 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
252 ngx_feature_test="struct statvfs fs; |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
253 statvfs(\".\", &fs);" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
254 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
255 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
256 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
257 ngx_feature="dlopen()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
258 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
259 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
260 ngx_feature_incs="#include <dlfcn.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
261 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
262 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
263 ngx_feature_test="dlopen(NULL, 0)" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
264 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
265 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
266 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
267 if [ $ngx_found != yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
268 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
269 ngx_feature="dlopen() in libdl" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
270 ngx_feature_libs="-ldl" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
271 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
272 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
273 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
274 NGX_LIBDL="-ldl" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
275 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
276 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
277 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
278 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
279 ngx_feature="sched_yield()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
280 ngx_feature_name="NGX_HAVE_SCHED_YIELD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
281 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
282 ngx_feature_incs="#include <sched.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
283 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
284 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
285 ngx_feature_test="sched_yield()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
286 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
287 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
288 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
289 if [ $ngx_found != yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
290 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
291 ngx_feature="sched_yield() in librt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
292 ngx_feature_libs="-lrt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
293 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
294 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
295 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
296 CORE_LIBS="$CORE_LIBS -lrt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
297 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
298 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
299 |
4016
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
300 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
301 ngx_feature="SO_SETFIB" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
302 ngx_feature_name="NGX_HAVE_SETFIB" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
303 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
304 ngx_feature_incs="#include <sys/socket.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
305 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
306 ngx_feature_libs= |
6150 | 307 ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_SETFIB, NULL, 0)" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
308 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
309 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
310 |
6153
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
311 ngx_feature="SO_REUSEPORT" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
312 ngx_feature_name="NGX_HAVE_REUSEPORT" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
313 ngx_feature_run=no |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
314 ngx_feature_incs="#include <sys/socket.h>" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
315 ngx_feature_path= |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
316 ngx_feature_libs= |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
317 ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_REUSEPORT, NULL, 0)" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
318 . auto/feature |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
319 |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
320 |
4016
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
321 ngx_feature="SO_ACCEPTFILTER" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
322 ngx_feature_name="NGX_HAVE_DEFERRED_ACCEPT" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
323 ngx_feature_run=no |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
324 ngx_feature_incs="#include <sys/socket.h>" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
325 ngx_feature_path= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
326 ngx_feature_libs= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
327 ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_ACCEPTFILTER, NULL, 0)" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
328 . auto/feature |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
329 |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
330 |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
331 ngx_feature="TCP_DEFER_ACCEPT" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
332 ngx_feature_name="NGX_HAVE_DEFERRED_ACCEPT" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
333 ngx_feature_run=no |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
334 ngx_feature_incs="#include <sys/socket.h> |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
335 #include <netinet/in.h> |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
336 #include <netinet/tcp.h>" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
337 ngx_feature_path= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
338 ngx_feature_libs= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
339 ngx_feature_test="setsockopt(0, IPPROTO_TCP, TCP_DEFER_ACCEPT, NULL, 0)" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
340 . auto/feature |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
341 |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
342 |
5367
a15abc456bb5
Configure: TCP_KEEPIDLE test name simplified.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5314
diff
changeset
|
343 ngx_feature="TCP_KEEPIDLE" |
4323
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
344 ngx_feature_name="NGX_HAVE_KEEPALIVE_TUNABLE" |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
345 ngx_feature_run=no |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
346 ngx_feature_incs="#include <sys/socket.h> |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
347 #include <netinet/in.h> |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
348 #include <netinet/tcp.h>" |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
349 ngx_feature_path= |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
350 ngx_feature_libs= |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
351 ngx_feature_test="setsockopt(0, IPPROTO_TCP, TCP_KEEPIDLE, NULL, 0); |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
352 setsockopt(0, IPPROTO_TCP, TCP_KEEPINTVL, NULL, 0); |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
353 setsockopt(0, IPPROTO_TCP, TCP_KEEPCNT, NULL, 0)" |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
354 . auto/feature |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
355 |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
356 |
5456
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
357 ngx_feature="TCP_FASTOPEN" |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
358 ngx_feature_name="NGX_HAVE_TCP_FASTOPEN" |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
359 ngx_feature_run=no |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
360 ngx_feature_incs="#include <sys/socket.h> |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
361 #include <netinet/in.h> |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
362 #include <netinet/tcp.h>" |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
363 ngx_feature_path= |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
364 ngx_feature_libs= |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
365 ngx_feature_test="setsockopt(0, IPPROTO_TCP, TCP_FASTOPEN, NULL, 0)" |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
366 . auto/feature |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
367 |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
368 |
4545
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
369 ngx_feature="TCP_INFO" |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
370 ngx_feature_name="NGX_HAVE_TCP_INFO" |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
371 ngx_feature_run=no |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
372 ngx_feature_incs="#include <sys/socket.h> |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
373 #include <netinet/in.h> |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
374 #include <netinet/tcp.h>" |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
375 ngx_feature_path= |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
376 ngx_feature_libs= |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
377 ngx_feature_test="socklen_t optlen = sizeof(struct tcp_info); |
4550
d29dc0486e8e
The addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov <ru@nginx.com>
parents:
4545
diff
changeset
|
378 struct tcp_info ti; |
d29dc0486e8e
The addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov <ru@nginx.com>
parents:
4545
diff
changeset
|
379 ti.tcpi_rtt = 0; |
d29dc0486e8e
The addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov <ru@nginx.com>
parents:
4545
diff
changeset
|
380 ti.tcpi_rttvar = 0; |
d29dc0486e8e
The addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov <ru@nginx.com>
parents:
4545
diff
changeset
|
381 ti.tcpi_snd_cwnd = 0; |
d29dc0486e8e
The addition of $tcpinfo_* variables has broken the build on Linux
Ruslan Ermilov <ru@nginx.com>
parents:
4545
diff
changeset
|
382 ti.tcpi_rcv_space = 0; |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
383 getsockopt(0, IPPROTO_TCP, TCP_INFO, &ti, &optlen)" |
4545
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
384 . auto/feature |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
385 |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
386 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
387 ngx_feature="accept4()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
388 ngx_feature_name="NGX_HAVE_ACCEPT4" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
389 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
390 ngx_feature_incs="#include <sys/socket.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
391 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
392 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
393 ngx_feature_test="accept4(0, NULL, NULL, SOCK_NONBLOCK)" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
394 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
395 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
396 if [ $NGX_FILE_AIO = YES ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
397 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
398 ngx_feature="kqueue AIO support" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
399 ngx_feature_name="NGX_HAVE_FILE_AIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
400 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
401 ngx_feature_incs="#include <aio.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
402 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
403 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
404 ngx_feature_test="int n; struct aiocb iocb; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
405 iocb.aio_sigevent.sigev_notify = SIGEV_KEVENT; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
406 n = aio_read(&iocb)" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
407 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
408 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
409 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
410 CORE_SRCS="$CORE_SRCS $FILE_AIO_SRCS" |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
411 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
412 |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
413 if [ $ngx_found = no ]; then |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
414 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
415 ngx_feature="Linux AIO support" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
416 ngx_feature_name="NGX_HAVE_FILE_AIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
417 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
418 ngx_feature_incs="#include <linux/aio_abi.h> |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
419 #include <sys/eventfd.h>" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
420 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
421 ngx_feature_libs= |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
422 ngx_feature_test="struct iocb iocb; |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
423 iocb.aio_lio_opcode = IOCB_CMD_PREAD; |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
424 iocb.aio_flags = IOCB_FLAG_RESFD; |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
425 iocb.aio_resfd = -1; |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
426 (void) eventfd(0, 0)" |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
427 . auto/feature |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
428 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
429 if [ $ngx_found = yes ]; then |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
430 have=NGX_HAVE_EVENTFD . auto/have |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
431 have=NGX_HAVE_SYS_EVENTFD_H . auto/have |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
432 CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS" |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
433 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
434 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
435 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
436 if [ $ngx_found = no ]; then |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
437 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
438 ngx_feature="Linux AIO support (SYS_eventfd)" |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
439 ngx_feature_incs="#include <linux/aio_abi.h> |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
440 #include <sys/syscall.h>" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
441 ngx_feature_test="int n = SYS_eventfd; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
442 struct iocb iocb; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
443 iocb.aio_lio_opcode = IOCB_CMD_PREAD; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
444 iocb.aio_flags = IOCB_FLAG_RESFD; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
445 iocb.aio_resfd = -1;" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
446 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
447 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
448 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
449 have=NGX_HAVE_EVENTFD . auto/have |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
450 CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS" |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
451 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
452 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
453 |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
454 if [ $ngx_found = no ]; then |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
455 cat << END |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
456 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
457 $0: no supported file AIO was found |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
458 Currently file AIO is supported on FreeBSD 4.3+ and Linux 2.6.22+ only |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
459 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
460 END |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
461 exit 1 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
462 fi |
6019
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
463 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
464 else |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
465 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
466 ngx_feature="eventfd()" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
467 ngx_feature_name="NGX_HAVE_EVENTFD" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
468 ngx_feature_run=no |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
469 ngx_feature_incs="#include <sys/eventfd.h>" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
470 ngx_feature_path= |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
471 ngx_feature_libs= |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
472 ngx_feature_test="(void) eventfd(0, 0)" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
473 . auto/feature |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
474 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
475 if [ $ngx_found = yes ]; then |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
476 have=NGX_HAVE_SYS_EVENTFD_H . auto/have |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
477 fi |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
478 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
479 if [ $ngx_found = no ]; then |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
480 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
481 ngx_feature="eventfd() (SYS_eventfd)" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
482 ngx_feature_incs="#include <sys/syscall.h>" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
483 ngx_feature_test="int n = SYS_eventfd" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
484 . auto/feature |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
485 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
486 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
487 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
488 |
479 | 489 have=NGX_HAVE_UNIX_DOMAIN . auto/have |
490 | |
583 | 491 ngx_feature_libs= |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
492 |
493 | 493 |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
494 # C types |
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
495 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
496 ngx_type="int"; . auto/types/sizeof |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
497 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
498 ngx_type="long"; . auto/types/sizeof |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
499 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
500 ngx_type="long long"; . auto/types/sizeof |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
501 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
502 ngx_type="void *"; . auto/types/sizeof; ngx_ptr_size=$ngx_size |
493 | 503 ngx_param=NGX_PTR_SIZE; ngx_value=$ngx_size; . auto/types/value |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
504 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
505 |
253
b6793bc5034b
nginx-0.0.2-2004-02-09-10:46:43 import
Igor Sysoev <igor@sysoev.ru>
parents:
252
diff
changeset
|
506 # POSIX types |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
507 |
6194
acba1656c474
Configure: fix tests with multi-level relative build directory.
Ruslan Ermilov <ru@nginx.com>
parents:
6153
diff
changeset
|
508 NGX_INCLUDE_AUTO_CONFIG_H="#include \"ngx_auto_config.h\"" |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
509 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
510 ngx_type="uint64_t"; ngx_types="u_int64_t"; . auto/types/typedef |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
511 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
512 ngx_type="sig_atomic_t"; ngx_types="int"; . auto/types/typedef |
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
513 . auto/types/sizeof |
477 | 514 ngx_param=NGX_SIG_ATOMIC_T_SIZE; ngx_value=$ngx_size; . auto/types/value |
252
84b1c672ec5a
nginx-0.0.2-2004-02-05-19:58:36 import
Igor Sysoev <igor@sysoev.ru>
parents:
218
diff
changeset
|
515 |
515 | 516 ngx_type="socklen_t"; ngx_types="int"; . auto/types/typedef |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
517 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
518 ngx_type="in_addr_t"; ngx_types="uint32_t"; . auto/types/typedef |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
519 |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
370
diff
changeset
|
520 ngx_type="in_port_t"; ngx_types="u_short"; . auto/types/typedef |
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
370
diff
changeset
|
521 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
522 ngx_type="rlim_t"; ngx_types="int"; . auto/types/typedef |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
523 |
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
524 . auto/types/uintptr_t |
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
525 |
4681
bb37a9cc08fb
Fixed spelling of "endianness", and called it "byte ordering" in the
Ruslan Ermilov <ru@nginx.com>
parents:
4563
diff
changeset
|
526 . auto/endianness |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
527 |
473 | 528 ngx_type="size_t"; . auto/types/sizeof |
477 | 529 ngx_param=NGX_MAX_SIZE_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value |
530 ngx_param=NGX_SIZE_T_LEN; ngx_value=$ngx_max_len; . auto/types/value | |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
531 |
473 | 532 ngx_type="off_t"; . auto/types/sizeof |
477 | 533 ngx_param=NGX_MAX_OFF_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value |
534 ngx_param=NGX_OFF_T_LEN; ngx_value=$ngx_max_len; . auto/types/value | |
473 | 535 |
536 ngx_type="time_t"; . auto/types/sizeof | |
477 | 537 ngx_param=NGX_TIME_T_SIZE; ngx_value=$ngx_size; . auto/types/value |
538 ngx_param=NGX_TIME_T_LEN; ngx_value=$ngx_max_len; . auto/types/value | |
6008
b92d5a26d55f
Core: expose maximum values of time_t and ngx_int_t.
Ruslan Ermilov <ru@nginx.com>
parents:
5707
diff
changeset
|
539 ngx_param=NGX_MAX_TIME_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
540 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
541 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
542 # syscalls, libc calls and some features |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
543 |
455 | 544 |
2512
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
545 if [ $NGX_IPV6 = YES ]; then |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
546 ngx_feature="AF_INET6" |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
547 ngx_feature_name="NGX_HAVE_INET6" |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
548 ngx_feature_run=no |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
549 ngx_feature_incs="#include <sys/socket.h> |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
550 #include <netinet/in.h> |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
551 #include <arpa/inet.h>" |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
552 ngx_feature_path= |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
553 ngx_feature_libs= |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
554 ngx_feature_test="struct sockaddr_in6 sin6; |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
555 sin6.sin6_family = AF_INET6;" |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
556 . auto/feature |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
557 fi |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
558 |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
559 |
467 | 560 ngx_feature="setproctitle()" |
469 | 561 ngx_feature_name="NGX_HAVE_SETPROCTITLE" |
467 | 562 ngx_feature_run=no |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
563 ngx_feature_incs="#include <stdlib.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
564 ngx_feature_path= |
509 | 565 ngx_feature_libs=$NGX_SETPROCTITLE_LIB |
467 | 566 ngx_feature_test="setproctitle(\"test\");" |
567 . auto/feature | |
568 | |
569 | |
455 | 570 ngx_feature="pread()" |
469 | 571 ngx_feature_name="NGX_HAVE_PREAD" |
455 | 572 ngx_feature_run=no |
573 ngx_feature_incs= | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
574 ngx_feature_path= |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
575 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
576 ngx_feature_test="char buf[1]; ssize_t n; n = pread(0, buf, 1, 0); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
577 if (n == -1) return 1" |
455 | 578 . auto/feature |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
579 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
580 |
455 | 581 ngx_feature="pwrite()" |
469 | 582 ngx_feature_name="NGX_HAVE_PWRITE" |
455 | 583 ngx_feature_run=no |
584 ngx_feature_incs= | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
585 ngx_feature_path= |
455 | 586 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
587 ngx_feature_test="char buf[1]; ssize_t n; n = pwrite(1, buf, 1, 0); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
588 if (n == -1) return 1" |
455 | 589 . auto/feature |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
590 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
591 |
3787
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
592 ngx_feature="sys_nerr" |
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
593 ngx_feature_name="NGX_SYS_NERR" |
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
594 ngx_feature_run=value |
4302
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
595 ngx_feature_incs='#include <errno.h> |
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
596 #include <stdio.h>' |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
597 ngx_feature_path= |
455 | 598 ngx_feature_libs= |
3787
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
599 ngx_feature_test='printf("%d", sys_nerr);' |
3472
65481698535c
use sys_errlist[] in signal handler instead
Igor Sysoev <igor@sysoev.ru>
parents:
2916
diff
changeset
|
600 . auto/feature |
65481698535c
use sys_errlist[] in signal handler instead
Igor Sysoev <igor@sysoev.ru>
parents:
2916
diff
changeset
|
601 |
65481698535c
use sys_errlist[] in signal handler instead
Igor Sysoev <igor@sysoev.ru>
parents:
2916
diff
changeset
|
602 |
3819
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
603 if [ $ngx_found = no ]; then |
3820 | 604 |
3819
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
605 # Cygiwn defines _sys_nerr |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
606 ngx_feature="_sys_nerr" |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
607 ngx_feature_name="NGX_SYS_NERR" |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
608 ngx_feature_run=value |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
609 ngx_feature_incs='#include <errno.h> |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
610 #include <stdio.h>' |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
611 ngx_feature_path= |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
612 ngx_feature_libs= |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
613 ngx_feature_test='printf("%d", _sys_nerr);' |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
614 . auto/feature |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
615 fi |
3811
4af1c7f53711
fix building by Cygwin: Cygwin defines _sys_nerr instead of sys_nerr,
Igor Sysoev <igor@sysoev.ru>
parents:
3787
diff
changeset
|
616 |
4af1c7f53711
fix building by Cygwin: Cygwin defines _sys_nerr instead of sys_nerr,
Igor Sysoev <igor@sysoev.ru>
parents:
3787
diff
changeset
|
617 |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
618 if [ $ngx_found = no ]; then |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
619 |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
620 # Solaris has no sys_nerr |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
621 ngx_feature='maximum errno' |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
622 ngx_feature_name=NGX_SYS_NERR |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
623 ngx_feature_run=value |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
624 ngx_feature_incs='#include <errno.h> |
3908 | 625 #include <string.h> |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
626 #include <stdio.h>' |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
627 ngx_feature_path= |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
628 ngx_feature_libs= |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
629 ngx_feature_test='int n; |
3901 | 630 char *p; |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
631 for (n = 1; n < 1000; n++) { |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
632 errno = 0; |
3901 | 633 p = strerror(n); |
634 if (errno == EINVAL | |
635 || p == NULL | |
636 || strncmp(p, "Unknown error", 13) == 0) | |
637 { | |
4302
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
638 break; |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
639 } |
4302
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
640 } |
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
641 printf("%d", n);' |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
642 . auto/feature |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
643 fi |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
644 |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
645 |
455 | 646 ngx_feature="localtime_r()" |
469 | 647 ngx_feature_name="NGX_HAVE_LOCALTIME_R" |
455 | 648 ngx_feature_run=no |
649 ngx_feature_incs="#include <time.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
650 ngx_feature_path= |
455 | 651 ngx_feature_libs= |
652 ngx_feature_test="struct tm t; time_t c=0; localtime_r(&c, &t)" | |
653 . auto/feature | |
256
8e39cab6abd5
nginx-0.0.2-2004-02-10-19:23:38 import
Igor Sysoev <igor@sysoev.ru>
parents:
253
diff
changeset
|
654 |
8e39cab6abd5
nginx-0.0.2-2004-02-10-19:23:38 import
Igor Sysoev <igor@sysoev.ru>
parents:
253
diff
changeset
|
655 |
455 | 656 ngx_feature="posix_memalign()" |
469 | 657 ngx_feature_name="NGX_HAVE_POSIX_MEMALIGN" |
455 | 658 ngx_feature_run=no |
659 ngx_feature_incs="#include <stdlib.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
660 ngx_feature_path= |
455 | 661 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
662 ngx_feature_test="void *p; int n; n = posix_memalign(&p, 4096, 4096); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
663 if (n != 0) return 1" |
455 | 664 . auto/feature |
346
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
665 |
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
666 |
455 | 667 ngx_feature="memalign()" |
469 | 668 ngx_feature_name="NGX_HAVE_MEMALIGN" |
455 | 669 ngx_feature_run=no |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
670 ngx_feature_incs="#include <stdlib.h> |
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
671 #include <malloc.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
672 ngx_feature_path= |
455 | 673 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
674 ngx_feature_test="void *p; p = memalign(4096, 4096); |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
675 if (p == NULL) return 1" |
455 | 676 . auto/feature |
346
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
677 |
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
678 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
679 ngx_feature="mmap(MAP_ANON|MAP_SHARED)" |
469 | 680 ngx_feature_name="NGX_HAVE_MAP_ANON" |
455 | 681 ngx_feature_run=yes |
682 ngx_feature_incs="#include <sys/mman.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
683 ngx_feature_path= |
455 | 684 ngx_feature_libs= |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
685 ngx_feature_test="void *p; |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
686 p = mmap(NULL, 4096, PROT_READ|PROT_WRITE, |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
687 MAP_ANON|MAP_SHARED, -1, 0); |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
688 if (p == MAP_FAILED) return 1;" |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
689 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
690 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
691 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
692 ngx_feature='mmap("/dev/zero", MAP_SHARED)' |
469 | 693 ngx_feature_name="NGX_HAVE_MAP_DEVZERO" |
455 | 694 ngx_feature_run=yes |
695 ngx_feature_incs="#include <sys/mman.h> | |
2598 | 696 #include <sys/stat.h> |
697 #include <fcntl.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
698 ngx_feature_path= |
455 | 699 ngx_feature_libs= |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
700 ngx_feature_test='void *p; int fd; |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
701 fd = open("/dev/zero", O_RDWR); |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
702 p = mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
703 if (p == MAP_FAILED) return 1;' |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
704 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
705 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
706 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
707 ngx_feature="System V shared memory" |
469 | 708 ngx_feature_name="NGX_HAVE_SYSVSHM" |
455 | 709 ngx_feature_run=yes |
710 ngx_feature_incs="#include <sys/ipc.h> | |
2598 | 711 #include <sys/shm.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
712 ngx_feature_path= |
455 | 713 ngx_feature_libs= |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
714 ngx_feature_test="int id; |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
715 id = shmget(IPC_PRIVATE, 4096, (SHM_R|SHM_W|IPC_CREAT)); |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
716 if (id == -1) return 1; |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
717 shmctl(id, IPC_RMID, NULL);" |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
718 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
719 |
355
0fb6c53fb135
nginx-0.0.7-2004-06-15-21:47:16 import
Igor Sysoev <igor@sysoev.ru>
parents:
346
diff
changeset
|
720 |
3909
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
721 ngx_feature="POSIX semaphores" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
722 ngx_feature_name="NGX_HAVE_POSIX_SEM" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
723 ngx_feature_run=yes |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
724 ngx_feature_incs="#include <semaphore.h>" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
725 ngx_feature_path= |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
726 ngx_feature_libs= |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
727 ngx_feature_test="sem_t sem; |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
728 if (sem_init(&sem, 1, 0) == -1) return 1; |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
729 sem_destroy(&sem);" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
730 . auto/feature |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
731 |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
732 |
3931
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
733 if [ $ngx_found = no ]; then |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
734 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
735 # Linux has POSIX semaphores in libpthread |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
736 ngx_feature="POSIX semaphores in libpthread" |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
737 ngx_feature_libs=-lpthread |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
738 . auto/feature |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
739 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
740 if [ $ngx_found = yes ]; then |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
741 CORE_LIBS="$CORE_LIBS -lpthread" |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
742 fi |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
743 fi |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
744 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
745 |
4003
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
746 if [ $ngx_found = no ]; then |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
747 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
748 # Solaris has POSIX semaphores in librt |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
749 ngx_feature="POSIX semaphores in librt" |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
750 ngx_feature_libs=-lrt |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
751 . auto/feature |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
752 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
753 if [ $ngx_found = yes ]; then |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
754 CORE_LIBS="$CORE_LIBS -lrt" |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
755 fi |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
756 fi |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
757 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
758 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
759 ngx_feature="struct msghdr.msg_control" |
469 | 760 ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" |
455 | 761 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
762 ngx_feature_incs="#include <sys/socket.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
763 #include <stdio.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
764 ngx_feature_path= |
455 | 765 ngx_feature_libs= |
4563
cc038cc834be
Configure: fixed msghdr.msg_control test on 64bit platforms.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4559
diff
changeset
|
766 ngx_feature_test="struct msghdr msg; |
cc038cc834be
Configure: fixed msghdr.msg_control test on 64bit platforms.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4559
diff
changeset
|
767 printf(\"%d\", (int) sizeof(msg.msg_control))" |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
768 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
769 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
770 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
771 ngx_feature="ioctl(FIONBIO)" |
469 | 772 ngx_feature_name="NGX_HAVE_FIONBIO" |
455 | 773 ngx_feature_run=no |
774 ngx_feature_incs="#include <sys/ioctl.h> | |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
775 #include <stdio.h> |
2598 | 776 $NGX_INCLUDE_SYS_FILIO_H" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
777 ngx_feature_path= |
455 | 778 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
779 ngx_feature_test="int i = FIONBIO; printf(\"%d\", i)" |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
780 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
781 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
782 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
783 ngx_feature="struct tm.tm_gmtoff" |
469 | 784 ngx_feature_name="NGX_HAVE_GMTOFF" |
455 | 785 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
786 ngx_feature_incs="#include <time.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
787 #include <stdio.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
788 ngx_feature_path= |
455 | 789 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
790 ngx_feature_test="struct tm tm; tm.tm_gmtoff = 0; |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
791 printf(\"%d\", (int) tm.tm_gmtoff)" |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
792 . auto/feature |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
793 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
794 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
795 ngx_feature="struct dirent.d_namlen" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
796 ngx_feature_name="NGX_HAVE_D_NAMLEN" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
797 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
798 ngx_feature_incs="#include <dirent.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
799 #include <stdio.h>" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
800 ngx_feature_path= |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
801 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
802 ngx_feature_test="struct dirent dir; dir.d_namlen = 0; |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
803 printf(\"%d\", (int) dir.d_namlen)" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
804 . auto/feature |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
805 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
806 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
807 ngx_feature="struct dirent.d_type" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
808 ngx_feature_name="NGX_HAVE_D_TYPE" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
809 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
810 ngx_feature_incs="#include <dirent.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
811 #include <stdio.h>" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
812 ngx_feature_path= |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
813 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
814 ngx_feature_test="struct dirent dir; dir.d_type = DT_REG; |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
815 printf(\"%d\", (int) dir.d_type)" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
816 . auto/feature |
4459
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
817 |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
818 |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
819 ngx_feature="sysconf(_SC_NPROCESSORS_ONLN)" |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
820 ngx_feature_name="NGX_HAVE_SC_NPROCESSORS_ONLN" |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
821 ngx_feature_run=no |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
822 ngx_feature_incs= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
823 ngx_feature_path= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
824 ngx_feature_libs= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
825 ngx_feature_test="sysconf(_SC_NPROCESSORS_ONLN)" |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
826 . auto/feature |
4475 | 827 |
828 | |
829 ngx_feature="openat(), fstatat()" | |
830 ngx_feature_name="NGX_HAVE_OPENAT" | |
831 ngx_feature_run=no | |
832 ngx_feature_incs="#include <sys/types.h> | |
833 #include <sys/stat.h> | |
834 #include <fcntl.h>" | |
835 ngx_feature_path= | |
836 ngx_feature_libs= | |
837 ngx_feature_test="struct stat sb; | |
838 openat(AT_FDCWD, \".\", O_RDONLY|O_NOFOLLOW); | |
839 fstatat(AT_FDCWD, \".\", &sb, AT_SYMLINK_NOFOLLOW);" | |
840 . auto/feature | |
4971
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
841 |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
842 |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
843 ngx_feature="getaddrinfo()" |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
844 ngx_feature_name="NGX_HAVE_GETADDRINFO" |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
845 ngx_feature_run=no |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
846 ngx_feature_incs="#include <sys/types.h> |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
847 #include <sys/socket.h> |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
848 #include <netdb.h>" |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
849 ngx_feature_path= |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
850 ngx_feature_libs= |
5314
0300d97c6084
Core: guard use of AI_ADDRCONFIG.
Ruslan Ermilov <ru@nginx.com>
parents:
5312
diff
changeset
|
851 ngx_feature_test='struct addrinfo *res; |
0300d97c6084
Core: guard use of AI_ADDRCONFIG.
Ruslan Ermilov <ru@nginx.com>
parents:
5312
diff
changeset
|
852 if (getaddrinfo("localhost", NULL, NULL, &res) != 0) return 1; |
4971
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
853 freeaddrinfo(res)' |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
854 . auto/feature |