Mercurial > hg > nginx-quic
annotate auto/unix @ 6778:5e95b9fb33b7
HTTP/2: graceful shutdown of active connections (closes #1106).
Previously, while shutting down gracefully, the HTTP/2 connections were
closed in transition to idle state after all active streams have been
processed. That might never happen if the client continued opening new
streams.
Now, nginx sends GOAWAY to all HTTP/2 connections and ignores further
attempts to open new streams. A worker process will quit as soon as
processing of already opened streams is finished.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Thu, 20 Oct 2016 16:15:03 +0300 |
parents | a6d116645c51 |
children | dbb0c854e308 |
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= |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
78 ngx_feature_test="(void) kqueue()" |
3933
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; |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
95 kev.fflags = NOTE_LOWAT; |
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
96 (void) kev" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
97 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
100 ngx_feature="kqueue's EVFILT_TIMER" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
101 ngx_feature_name="NGX_HAVE_TIMER_EVENT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
102 ngx_feature_run=yes |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
103 ngx_feature_incs="#include <sys/event.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
104 #include <sys/time.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
105 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
106 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
107 ngx_feature_test="int kq; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
108 struct kevent kev; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
109 struct timespec ts; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
110 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
111 if ((kq = kqueue()) == -1) return 1; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
112 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
113 kev.ident = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
114 kev.filter = EVFILT_TIMER; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
115 kev.flags = EV_ADD|EV_ENABLE; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
116 kev.fflags = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
117 kev.data = 1000; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
118 kev.udata = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
119 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
120 ts.tv_sec = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
121 ts.tv_nsec = 0; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
122 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
123 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
|
124 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
125 if (kev.flags & EV_ERROR) return 1;" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
126 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
127 . auto/feature |
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 fi |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
132 if [ "$NGX_SYSTEM" = "NetBSD" ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
133 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
134 # 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
|
135 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
136 cat << END >> $NGX_AUTO_CONFIG_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
137 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
138 #define NGX_KQUEUE_UDATA_T |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
139 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
140 END |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
141 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
142 else |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
143 cat << END >> $NGX_AUTO_CONFIG_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
144 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
145 #define NGX_KQUEUE_UDATA_T (void *) |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
146 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
147 END |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
148 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
149 fi |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
152 ngx_feature="crypt()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
153 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
154 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
155 ngx_feature_incs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
156 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
157 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
158 ngx_feature_test="crypt(\"test\", \"salt\");" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
159 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
162 if [ $ngx_found = no ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
163 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
164 ngx_feature="crypt() in libcrypt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
165 ngx_feature_name= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
166 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
167 ngx_feature_incs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
168 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
169 ngx_feature_libs=-lcrypt |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
170 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
171 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
172 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
173 CRYPT_LIB="-lcrypt" |
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 fi |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
178 ngx_feature="F_READAHEAD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
179 ngx_feature_name="NGX_HAVE_F_READAHEAD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
180 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
181 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
182 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
183 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
184 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
|
185 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
188 ngx_feature="posix_fadvise()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
189 ngx_feature_name="NGX_HAVE_POSIX_FADVISE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
190 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
191 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
192 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
193 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
194 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
|
195 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
198 ngx_feature="O_DIRECT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
199 ngx_feature_name="NGX_HAVE_O_DIRECT" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
200 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
201 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
202 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
203 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
204 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
|
205 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
208 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
|
209 have=NGX_HAVE_ALIGNED_DIRECTIO . auto/have |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
210 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
211 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
212 ngx_feature="F_NOCACHE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
213 ngx_feature_name="NGX_HAVE_F_NOCACHE" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
214 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
215 ngx_feature_incs="#include <fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
216 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
217 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
218 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
|
219 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
222 ngx_feature="directio()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
223 ngx_feature_name="NGX_HAVE_DIRECTIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
224 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
225 ngx_feature_incs="#include <sys/types.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
226 #include <sys/fcntl.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
227 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
228 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
229 ngx_feature_test="directio(0, DIRECTIO_ON);" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
230 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
233 ngx_feature="statfs()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
234 ngx_feature_name="NGX_HAVE_STATFS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
235 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
236 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
|
237 $NGX_INCLUDE_SYS_MOUNT_H |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
238 $NGX_INCLUDE_SYS_VFS_H" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
239 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
240 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
241 ngx_feature_test="struct statfs fs; |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
242 statfs(\".\", &fs);" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
243 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
246 ngx_feature="statvfs()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
247 ngx_feature_name="NGX_HAVE_STATVFS" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
248 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
249 ngx_feature_incs="#include <sys/types.h> |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
250 #include <sys/statvfs.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
251 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
252 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
253 ngx_feature_test="struct statvfs fs; |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
254 statvfs(\".\", &fs);" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
255 . auto/feature |
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 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
258 ngx_feature="dlopen()" |
6380
7142b04337d6
Dynamic modules: dlopen() support.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6301
diff
changeset
|
259 ngx_feature_name="NGX_HAVE_DLOPEN" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
260 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
261 ngx_feature_incs="#include <dlfcn.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
262 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
263 ngx_feature_libs= |
6623
0bf08d9c82c1
Configure: fix build with -Werror=nonnull.
Piotr Sikora <piotrsikora@google.com>
parents:
6622
diff
changeset
|
264 ngx_feature_test="dlopen(NULL, RTLD_NOW | RTLD_GLOBAL); dlsym(NULL, \"\")" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
265 . auto/feature |
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 |
6620 | 268 if [ $ngx_found = no ]; then |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
269 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
270 ngx_feature="dlopen() in libdl" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
271 ngx_feature_libs="-ldl" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
272 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
273 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
274 if [ $ngx_found = yes ]; then |
6380
7142b04337d6
Dynamic modules: dlopen() support.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6301
diff
changeset
|
275 CORE_LIBS="$CORE_LIBS -ldl" |
6403
e59e617f8fcb
Configure: fixed static nginx build with OpenSSL (ticket #903).
Ruslan Ermilov <ru@nginx.com>
parents:
6385
diff
changeset
|
276 NGX_LIBDL="-ldl" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
277 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
278 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
279 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
280 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
281 ngx_feature="sched_yield()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
282 ngx_feature_name="NGX_HAVE_SCHED_YIELD" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
283 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
284 ngx_feature_incs="#include <sched.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
285 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
286 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
287 ngx_feature_test="sched_yield()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
288 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
289 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
290 |
6620 | 291 if [ $ngx_found = no ]; then |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
292 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
293 ngx_feature="sched_yield() in librt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
294 ngx_feature_libs="-lrt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
295 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
296 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
297 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
298 CORE_LIBS="$CORE_LIBS -lrt" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
299 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
300 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
301 |
4016
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
302 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
303 ngx_feature="SO_SETFIB" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
304 ngx_feature_name="NGX_HAVE_SETFIB" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
305 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
306 ngx_feature_incs="#include <sys/socket.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
307 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
308 ngx_feature_libs= |
6150 | 309 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
|
310 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
311 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
312 |
6153
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
313 ngx_feature="SO_REUSEPORT" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
314 ngx_feature_name="NGX_HAVE_REUSEPORT" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
315 ngx_feature_run=no |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
316 ngx_feature_incs="#include <sys/socket.h>" |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
317 ngx_feature_path= |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
318 ngx_feature_libs= |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
319 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
|
320 . auto/feature |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
321 |
4f6efabcb09b
The "reuseport" option of the "listen" directive.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6150
diff
changeset
|
322 |
4016
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
323 ngx_feature="SO_ACCEPTFILTER" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
324 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
|
325 ngx_feature_run=no |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
326 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
|
327 ngx_feature_path= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
328 ngx_feature_libs= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
329 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
|
330 . auto/feature |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
331 |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
332 |
6530
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
333 # NetBSD bind to any address for transparent proxying |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
334 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
335 ngx_feature="SO_BINDANY" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
336 ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
337 ngx_feature_run=no |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
338 ngx_feature_incs="#include <sys/socket.h>" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
339 ngx_feature_path= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
340 ngx_feature_libs= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
341 ngx_feature_test="setsockopt(0, SOL_SOCKET, SO_BINDANY, NULL, 0)" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
342 . auto/feature |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
343 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
344 |
6592
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
345 # Linux IP_BIND_ADDRESS_NO_PORT |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
346 |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
347 ngx_feature="IP_BIND_ADDRESS_NO_PORT" |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
348 ngx_feature_name="NGX_HAVE_IP_BIND_ADDRESS_NO_PORT" |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
349 ngx_feature_run=no |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
350 ngx_feature_incs="#include <sys/socket.h> |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
351 #include <netinet/in.h>" |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
352 ngx_feature_path= |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
353 ngx_feature_libs= |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
354 ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_BIND_ADDRESS_NO_PORT, NULL, 0)" |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
355 . auto/feature |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
356 |
2c7b488a61fb
Set IP_BIND_ADDRESS_NO_PORT socket option for upstream sockets.
Andrei Belov <defan@nginx.com>
parents:
6530
diff
changeset
|
357 |
6530
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
358 # Linux transparent proxying |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
359 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
360 ngx_feature="IP_TRANSPARENT" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
361 ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
362 ngx_feature_run=no |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
363 ngx_feature_incs="#include <sys/socket.h> |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
364 #include <netinet/in.h>" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
365 ngx_feature_path= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
366 ngx_feature_libs= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
367 ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_TRANSPARENT, NULL, 0)" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
368 . auto/feature |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
369 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
370 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
371 # FreeBSD bind to any address for transparent proxying |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
372 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
373 ngx_feature="IP_BINDANY" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
374 ngx_feature_name="NGX_HAVE_TRANSPARENT_PROXY" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
375 ngx_feature_run=no |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
376 ngx_feature_incs="#include <sys/socket.h> |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
377 #include <netinet/in.h>" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
378 ngx_feature_path= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
379 ngx_feature_libs= |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
380 ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_BINDANY, NULL, 0)" |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
381 . auto/feature |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
382 |
1d0e03db9f8e
Upstream: the "transparent" parameter of proxy_bind and friends.
Roman Arutyunyan <arut@nginx.com>
parents:
6500
diff
changeset
|
383 |
6436 | 384 # BSD way to get IPv4 datagram destination address |
385 | |
386 ngx_feature="IP_RECVDSTADDR" | |
387 ngx_feature_name="NGX_HAVE_IP_RECVDSTADDR" | |
388 ngx_feature_run=no | |
389 ngx_feature_incs="#include <sys/socket.h> | |
390 #include <netinet/in.h>" | |
391 ngx_feature_path= | |
392 ngx_feature_libs= | |
393 ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_RECVDSTADDR, NULL, 0)" | |
394 . auto/feature | |
395 | |
396 | |
397 # Linux way to get IPv4 datagram destination address | |
398 | |
399 ngx_feature="IP_PKTINFO" | |
400 ngx_feature_name="NGX_HAVE_IP_PKTINFO" | |
401 ngx_feature_run=no | |
402 ngx_feature_incs="#include <sys/socket.h> | |
403 #include <netinet/in.h>" | |
404 ngx_feature_path= | |
405 ngx_feature_libs= | |
406 ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_PKTINFO, NULL, 0)" | |
407 . auto/feature | |
408 | |
409 | |
410 # RFC 3542 way to get IPv6 datagram destination address | |
411 | |
412 ngx_feature="IPV6_RECVPKTINFO" | |
413 ngx_feature_name="NGX_HAVE_IPV6_RECVPKTINFO" | |
414 ngx_feature_run=no | |
415 ngx_feature_incs="#include <sys/socket.h> | |
416 #include <netinet/in.h>" | |
417 ngx_feature_path= | |
418 ngx_feature_libs= | |
419 ngx_feature_test="setsockopt(0, IPPROTO_IPV6, IPV6_RECVPKTINFO, NULL, 0)" | |
420 . auto/feature | |
421 | |
422 | |
4016
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
423 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
|
424 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
|
425 ngx_feature_run=no |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
426 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
|
427 #include <netinet/in.h> |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
428 #include <netinet/tcp.h>" |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
429 ngx_feature_path= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
430 ngx_feature_libs= |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
431 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
|
432 . auto/feature |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
433 |
b044d6553d52
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4003
diff
changeset
|
434 |
5367
a15abc456bb5
Configure: TCP_KEEPIDLE test name simplified.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5314
diff
changeset
|
435 ngx_feature="TCP_KEEPIDLE" |
4323
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
436 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
|
437 ngx_feature_run=no |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
438 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
|
439 #include <netinet/in.h> |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
440 #include <netinet/tcp.h>" |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
441 ngx_feature_path= |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
442 ngx_feature_libs= |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
443 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
|
444 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
|
445 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
|
446 . auto/feature |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
447 |
c4513d4dd024
Added the "so_keepalive=" parameter to the "listen" directive.
Valentin Bartenev <vbart@nginx.com>
parents:
4302
diff
changeset
|
448 |
5456
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
449 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
|
450 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
|
451 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
|
452 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
|
453 #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
|
454 #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
|
455 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
|
456 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
|
457 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
|
458 . auto/feature |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
459 |
692afcea9d0d
Added support for TCP_FASTOPEN supported in Linux >= 3.7.1.
Mathew Rodley <mathew@rodley.com.au>
parents:
5367
diff
changeset
|
460 |
4545
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
461 ngx_feature="TCP_INFO" |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
462 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
|
463 ngx_feature_run=no |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
464 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
|
465 #include <netinet/in.h> |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
466 #include <netinet/tcp.h>" |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
467 ngx_feature_path= |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
468 ngx_feature_libs= |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
469 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
|
470 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
|
471 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
|
472 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
|
473 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
|
474 ti.tcpi_rcv_space = 0; |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
475 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
|
476 . auto/feature |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
477 |
ba39af7274ed
Implemented $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, and
Ruslan Ermilov <ru@nginx.com>
parents:
4543
diff
changeset
|
478 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
479 ngx_feature="accept4()" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
480 ngx_feature_name="NGX_HAVE_ACCEPT4" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
481 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
482 ngx_feature_incs="#include <sys/socket.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
483 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
484 ngx_feature_libs= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
485 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
|
486 . auto/feature |
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 if [ $NGX_FILE_AIO = YES ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
489 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
490 ngx_feature="kqueue AIO support" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
491 ngx_feature_name="NGX_HAVE_FILE_AIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
492 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
493 ngx_feature_incs="#include <aio.h>" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
494 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
495 ngx_feature_libs= |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
496 ngx_feature_test="struct aiocb iocb; |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
497 iocb.aio_sigevent.sigev_notify = SIGEV_KEVENT; |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
498 (void) aio_read(&iocb)" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
499 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
500 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
501 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
502 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
|
503 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
504 |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
505 if [ $ngx_found = no ]; then |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
506 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
507 ngx_feature="Linux AIO support" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
508 ngx_feature_name="NGX_HAVE_FILE_AIO" |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
509 ngx_feature_run=no |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
510 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
|
511 #include <sys/eventfd.h>" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
512 ngx_feature_path= |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
513 ngx_feature_libs= |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
514 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
|
515 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
|
516 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
|
517 iocb.aio_resfd = -1; |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
518 (void) iocb; |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
519 (void) eventfd(0, 0)" |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
520 . auto/feature |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
521 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
522 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
|
523 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
|
524 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
|
525 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
|
526 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
527 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
528 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
529 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
|
530 |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
531 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
|
532 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
|
533 #include <sys/syscall.h>" |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
534 ngx_feature_test="struct iocb iocb; |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
535 iocb.aio_lio_opcode = IOCB_CMD_PREAD; |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
536 iocb.aio_flags = IOCB_FLAG_RESFD; |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
537 iocb.aio_resfd = -1; |
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
538 (void) iocb; |
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
539 (void) SYS_eventfd" |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
540 . auto/feature |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
541 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
542 if [ $ngx_found = yes ]; then |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
543 have=NGX_HAVE_EVENTFD . auto/have |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
544 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
|
545 fi |
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
546 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
547 |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
548 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
|
549 cat << END |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
550 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
551 $0: no supported file AIO was found |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
552 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
|
553 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
554 END |
5707
31dd63dcb9ea
Events: use eventfd() instead of syscall(SYS_eventfd) if possible.
Ruslan Ermilov <ru@nginx.com>
parents:
5456
diff
changeset
|
555 exit 1 |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
556 fi |
6019
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
557 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
558 else |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
559 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
560 ngx_feature="eventfd()" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
561 ngx_feature_name="NGX_HAVE_EVENTFD" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
562 ngx_feature_run=no |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
563 ngx_feature_incs="#include <sys/eventfd.h>" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
564 ngx_feature_path= |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
565 ngx_feature_libs= |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
566 ngx_feature_test="(void) eventfd(0, 0)" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
567 . auto/feature |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
568 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
569 if [ $ngx_found = yes ]; then |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
570 have=NGX_HAVE_SYS_EVENTFD_H . auto/have |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
571 fi |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
572 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
573 if [ $ngx_found = no ]; then |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
574 |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
575 ngx_feature="eventfd() (SYS_eventfd)" |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
576 ngx_feature_incs="#include <sys/syscall.h>" |
6622
e393c0bf53d3
Configure: fix build with -Werror=unused-but-set-variable.
Piotr Sikora <piotrsikora@google.com>
parents:
6620
diff
changeset
|
577 ngx_feature_test="(void) SYS_eventfd" |
6019
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
578 . auto/feature |
40e244e042a7
Events: implemented epoll notification mechanism.
Valentin Bartenev <vbart@nginx.com>
parents:
6008
diff
changeset
|
579 fi |
3933
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
580 fi |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
581 |
b5c169873c6b
concatenate auto/os/features and auto/unix
Igor Sysoev <igor@sysoev.ru>
parents:
3931
diff
changeset
|
582 |
479 | 583 have=NGX_HAVE_UNIX_DOMAIN . auto/have |
584 | |
583 | 585 ngx_feature_libs= |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
586 |
493 | 587 |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
588 # C types |
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
589 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
590 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
|
591 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
592 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
|
593 |
267
83205e0b5522
nginx-0.0.2-2004-02-24-20:31:46 import
Igor Sysoev <igor@sysoev.ru>
parents:
256
diff
changeset
|
594 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
|
595 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
596 ngx_type="void *"; . auto/types/sizeof; ngx_ptr_size=$ngx_size |
493 | 597 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
|
598 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
599 |
253
b6793bc5034b
nginx-0.0.2-2004-02-09-10:46:43 import
Igor Sysoev <igor@sysoev.ru>
parents:
252
diff
changeset
|
600 # POSIX types |
196
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
601 |
6194
acba1656c474
Configure: fix tests with multi-level relative build directory.
Ruslan Ermilov <ru@nginx.com>
parents:
6153
diff
changeset
|
602 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
|
603 |
6500
8426275a13fd
Compatibility with FreeBSD 2.2.9.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6436
diff
changeset
|
604 ngx_type="uint32_t"; ngx_types="u_int32_t"; . auto/types/typedef |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
605 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
|
606 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
607 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
|
608 . auto/types/sizeof |
477 | 609 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
|
610 |
515 | 611 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
|
612 |
6500
8426275a13fd
Compatibility with FreeBSD 2.2.9.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6436
diff
changeset
|
613 ngx_type="in_addr_t"; ngx_types="uint32_t u_int32_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
|
614 |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
370
diff
changeset
|
615 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
|
616 |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
617 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
|
618 |
11fbd0fc041d
nginx-0.0.1-2003-11-26-18:42:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
195
diff
changeset
|
619 . 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
|
620 |
4681
bb37a9cc08fb
Fixed spelling of "endianness", and called it "byte ordering" in the
Ruslan Ermilov <ru@nginx.com>
parents:
4563
diff
changeset
|
621 . auto/endianness |
370
54f76b0b8dca
nginx-0.0.7-2004-06-27-22:01:57 import
Igor Sysoev <igor@sysoev.ru>
parents:
361
diff
changeset
|
622 |
473 | 623 ngx_type="size_t"; . auto/types/sizeof |
477 | 624 ngx_param=NGX_MAX_SIZE_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value |
625 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
|
626 |
473 | 627 ngx_type="off_t"; . auto/types/sizeof |
477 | 628 ngx_param=NGX_MAX_OFF_T_VALUE; ngx_value=$ngx_max_value; . auto/types/value |
629 ngx_param=NGX_OFF_T_LEN; ngx_value=$ngx_max_len; . auto/types/value | |
473 | 630 |
631 ngx_type="time_t"; . auto/types/sizeof | |
477 | 632 ngx_param=NGX_TIME_T_SIZE; ngx_value=$ngx_size; . auto/types/value |
633 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
|
634 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
|
635 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
636 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
637 # 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
|
638 |
455 | 639 |
6724
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
640 ngx_feature="AF_INET6" |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
641 ngx_feature_name="NGX_HAVE_INET6" |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
642 ngx_feature_run=no |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
643 ngx_feature_incs="#include <sys/socket.h> |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
644 #include <netinet/in.h> |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
645 #include <arpa/inet.h>" |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
646 ngx_feature_path= |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
647 ngx_feature_libs= |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
648 ngx_feature_test="struct sockaddr_in6 sin6; |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
649 sin6.sin6_family = AF_INET6; |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
650 (void) sin6" |
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6623
diff
changeset
|
651 . auto/feature |
2512
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
652 |
2e91aecb9e57
a prelimiary IPv6 support, HTTP listen
Igor Sysoev <igor@sysoev.ru>
parents:
2234
diff
changeset
|
653 |
467 | 654 ngx_feature="setproctitle()" |
469 | 655 ngx_feature_name="NGX_HAVE_SETPROCTITLE" |
467 | 656 ngx_feature_run=no |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
657 ngx_feature_incs="#include <stdlib.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
658 ngx_feature_path= |
509 | 659 ngx_feature_libs=$NGX_SETPROCTITLE_LIB |
467 | 660 ngx_feature_test="setproctitle(\"test\");" |
661 . auto/feature | |
662 | |
663 | |
455 | 664 ngx_feature="pread()" |
469 | 665 ngx_feature_name="NGX_HAVE_PREAD" |
455 | 666 ngx_feature_run=no |
667 ngx_feature_incs= | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
668 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
|
669 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
670 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
|
671 if (n == -1) return 1" |
455 | 672 . auto/feature |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
673 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
674 |
455 | 675 ngx_feature="pwrite()" |
469 | 676 ngx_feature_name="NGX_HAVE_PWRITE" |
455 | 677 ngx_feature_run=no |
678 ngx_feature_incs= | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
679 ngx_feature_path= |
455 | 680 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
681 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
|
682 if (n == -1) return 1" |
455 | 683 . auto/feature |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
684 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
685 |
6301
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
686 # pwritev() was introduced in FreeBSD 6 and Linux 2.6.30, glibc 2.10 |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
687 |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
688 ngx_feature="pwritev()" |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
689 ngx_feature_name="NGX_HAVE_PWRITEV" |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
690 ngx_feature_run=no |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
691 ngx_feature_incs='#include <sys/uio.h>' |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
692 ngx_feature_path= |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
693 ngx_feature_libs= |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
694 ngx_feature_test="char buf[1]; struct iovec vec[1]; ssize_t n; |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
695 vec[0].iov_base = buf; |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
696 vec[0].iov_len = 1; |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
697 n = pwritev(1, vec, 1, 0); |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
698 if (n == -1) return 1" |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
699 . auto/feature |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
700 |
b5a87b51be24
Used the pwritev() syscall for writing files where possible.
Valentin Bartenev <vbart@nginx.com>
parents:
6194
diff
changeset
|
701 |
3787
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
702 ngx_feature="sys_nerr" |
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
703 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
|
704 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
|
705 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
|
706 #include <stdio.h>' |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
707 ngx_feature_path= |
455 | 708 ngx_feature_libs= |
3787
e294f37401c0
use copied strerror() messages and autoconfigured sys_nerr value
Igor Sysoev <igor@sysoev.ru>
parents:
3472
diff
changeset
|
709 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
|
710 . auto/feature |
65481698535c
use sys_errlist[] in signal handler instead
Igor Sysoev <igor@sysoev.ru>
parents:
2916
diff
changeset
|
711 |
65481698535c
use sys_errlist[] in signal handler instead
Igor Sysoev <igor@sysoev.ru>
parents:
2916
diff
changeset
|
712 |
3819
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
713 if [ $ngx_found = no ]; then |
3820 | 714 |
3819
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
715 # 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
|
716 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
|
717 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
|
718 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
|
719 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
|
720 #include <stdio.h>' |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
721 ngx_feature_path= |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
722 ngx_feature_libs= |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
723 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
|
724 . auto/feature |
5e1e406f10ff
test for _sys_nerr only if sys_nerr was not found
Igor Sysoev <igor@sysoev.ru>
parents:
3811
diff
changeset
|
725 fi |
3811
4af1c7f53711
fix building by Cygwin: Cygwin defines _sys_nerr instead of sys_nerr,
Igor Sysoev <igor@sysoev.ru>
parents:
3787
diff
changeset
|
726 |
4af1c7f53711
fix building by Cygwin: Cygwin defines _sys_nerr instead of sys_nerr,
Igor Sysoev <igor@sysoev.ru>
parents:
3787
diff
changeset
|
727 |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
728 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
|
729 |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
730 # 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
|
731 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
|
732 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
|
733 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
|
734 ngx_feature_incs='#include <errno.h> |
3908 | 735 #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
|
736 #include <stdio.h>' |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
737 ngx_feature_path= |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
738 ngx_feature_libs= |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
739 ngx_feature_test='int n; |
3901 | 740 char *p; |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
741 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
|
742 errno = 0; |
3901 | 743 p = strerror(n); |
744 if (errno == EINVAL | |
745 || p == NULL | |
746 || strncmp(p, "Unknown error", 13) == 0) | |
747 { | |
4302
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
748 break; |
3821
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
749 } |
4302
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
750 } |
52c881519427
o AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
Maxim Konovalov <maxim@nginx.com>
parents:
4016
diff
changeset
|
751 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
|
752 . auto/feature |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
753 fi |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
754 |
573cd56f006b
test for maximum errno value, since Solaris has no sys_nerr
Igor Sysoev <igor@sysoev.ru>
parents:
3820
diff
changeset
|
755 |
455 | 756 ngx_feature="localtime_r()" |
469 | 757 ngx_feature_name="NGX_HAVE_LOCALTIME_R" |
455 | 758 ngx_feature_run=no |
759 ngx_feature_incs="#include <time.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
760 ngx_feature_path= |
455 | 761 ngx_feature_libs= |
762 ngx_feature_test="struct tm t; time_t c=0; localtime_r(&c, &t)" | |
763 . auto/feature | |
256
8e39cab6abd5
nginx-0.0.2-2004-02-10-19:23:38 import
Igor Sysoev <igor@sysoev.ru>
parents:
253
diff
changeset
|
764 |
8e39cab6abd5
nginx-0.0.2-2004-02-10-19:23:38 import
Igor Sysoev <igor@sysoev.ru>
parents:
253
diff
changeset
|
765 |
455 | 766 ngx_feature="posix_memalign()" |
469 | 767 ngx_feature_name="NGX_HAVE_POSIX_MEMALIGN" |
455 | 768 ngx_feature_run=no |
769 ngx_feature_incs="#include <stdlib.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
770 ngx_feature_path= |
455 | 771 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
772 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
|
773 if (n != 0) return 1" |
455 | 774 . auto/feature |
346
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
775 |
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
776 |
455 | 777 ngx_feature="memalign()" |
469 | 778 ngx_feature_name="NGX_HAVE_MEMALIGN" |
455 | 779 ngx_feature_run=no |
4543
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
780 ngx_feature_incs="#include <stdlib.h> |
51744fa997c7
Fixed compilation warnings in configuration C tests.
Ruslan Ermilov <ru@nginx.com>
parents:
4475
diff
changeset
|
781 #include <malloc.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
782 ngx_feature_path= |
455 | 783 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
784 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
|
785 if (p == NULL) return 1" |
455 | 786 . auto/feature |
346
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
787 |
55e496a8ece3
nginx-0.0.3-2004-06-06-23:49:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
788 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
789 ngx_feature="mmap(MAP_ANON|MAP_SHARED)" |
469 | 790 ngx_feature_name="NGX_HAVE_MAP_ANON" |
455 | 791 ngx_feature_run=yes |
792 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
|
793 ngx_feature_path= |
455 | 794 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
|
795 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
|
796 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
|
797 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
|
798 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
|
799 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
800 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
801 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
802 ngx_feature='mmap("/dev/zero", MAP_SHARED)' |
469 | 803 ngx_feature_name="NGX_HAVE_MAP_DEVZERO" |
455 | 804 ngx_feature_run=yes |
805 ngx_feature_incs="#include <sys/mman.h> | |
2598 | 806 #include <sys/stat.h> |
807 #include <fcntl.h>" | |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
808 ngx_feature_path= |
455 | 809 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
|
810 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
|
811 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
|
812 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
|
813 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
|
814 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
815 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
816 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
817 ngx_feature="System V shared memory" |
469 | 818 ngx_feature_name="NGX_HAVE_SYSVSHM" |
455 | 819 ngx_feature_run=yes |
820 ngx_feature_incs="#include <sys/ipc.h> | |
2598 | 821 #include <sys/shm.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
822 ngx_feature_path= |
455 | 823 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
|
824 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
|
825 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
|
826 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
|
827 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
|
828 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
829 |
355
0fb6c53fb135
nginx-0.0.7-2004-06-15-21:47:16 import
Igor Sysoev <igor@sysoev.ru>
parents:
346
diff
changeset
|
830 |
3909
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
831 ngx_feature="POSIX semaphores" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
832 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
|
833 ngx_feature_run=yes |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
834 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
|
835 ngx_feature_path= |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
836 ngx_feature_libs= |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
837 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
|
838 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
|
839 sem_destroy(&sem);" |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
840 . auto/feature |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
841 |
0daede16d68b
use POSIX semaphores in shmtx instead of sched_yield()
Igor Sysoev <igor@sysoev.ru>
parents:
3908
diff
changeset
|
842 |
3931
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
843 if [ $ngx_found = no ]; then |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
844 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
845 # Linux has POSIX semaphores in libpthread |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
846 ngx_feature="POSIX semaphores in libpthread" |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
847 ngx_feature_libs=-lpthread |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
848 . auto/feature |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
849 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
850 if [ $ngx_found = yes ]; then |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
851 CORE_LIBS="$CORE_LIBS -lpthread" |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
852 fi |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
853 fi |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
854 |
c8884c8f7c74
Support POSIX semaphores on Linux.
Igor Sysoev <igor@sysoev.ru>
parents:
3909
diff
changeset
|
855 |
4003
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
856 if [ $ngx_found = no ]; then |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
857 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
858 # 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
|
859 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
|
860 ngx_feature_libs=-lrt |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
861 . auto/feature |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
862 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
863 if [ $ngx_found = yes ]; then |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
864 CORE_LIBS="$CORE_LIBS -lrt" |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
865 fi |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
866 fi |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
867 |
8cca96abbc3e
Detect POSIX semaphores in librt on Solaris (ticket #3).
Maxim Dounin <mdounin@mdounin.ru>
parents:
3933
diff
changeset
|
868 |
358
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
869 ngx_feature="struct msghdr.msg_control" |
469 | 870 ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" |
455 | 871 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
872 ngx_feature_incs="#include <sys/socket.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
873 #include <stdio.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
874 ngx_feature_path= |
455 | 875 ngx_feature_libs= |
4563
cc038cc834be
Configure: fixed msghdr.msg_control test on 64bit platforms.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4559
diff
changeset
|
876 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
|
877 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
|
878 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
879 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
880 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
881 ngx_feature="ioctl(FIONBIO)" |
469 | 882 ngx_feature_name="NGX_HAVE_FIONBIO" |
455 | 883 ngx_feature_run=no |
884 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
|
885 #include <stdio.h> |
2598 | 886 $NGX_INCLUDE_SYS_FILIO_H" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
887 ngx_feature_path= |
455 | 888 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
889 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
|
890 . auto/feature |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
891 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
892 |
0a03c921c81d
nginx-0.0.7-2004-06-17-21:18:53 import
Igor Sysoev <igor@sysoev.ru>
parents:
355
diff
changeset
|
893 ngx_feature="struct tm.tm_gmtoff" |
469 | 894 ngx_feature_name="NGX_HAVE_GMTOFF" |
455 | 895 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
896 ngx_feature_incs="#include <time.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
897 #include <stdio.h>" |
875
7af8276b1c2f
test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents:
665
diff
changeset
|
898 ngx_feature_path= |
455 | 899 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
900 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
|
901 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
|
902 . auto/feature |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
903 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
904 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
905 ngx_feature="struct dirent.d_namlen" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
906 ngx_feature_name="NGX_HAVE_D_NAMLEN" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
907 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
908 ngx_feature_incs="#include <dirent.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
909 #include <stdio.h>" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
910 ngx_feature_path= |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
911 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
912 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
|
913 printf(\"%d\", (int) dir.d_namlen)" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
914 . auto/feature |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
915 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
916 |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
917 ngx_feature="struct dirent.d_type" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
918 ngx_feature_name="NGX_HAVE_D_TYPE" |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
919 ngx_feature_run=no |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
920 ngx_feature_incs="#include <dirent.h> |
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
921 #include <stdio.h>" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
922 ngx_feature_path= |
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
923 ngx_feature_libs= |
4559
62d8db8c7157
Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4550
diff
changeset
|
924 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
|
925 printf(\"%d\", (int) dir.d_type)" |
2234
c7c319896bb4
*) autoconfigure struct dirent capabilities
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
926 . auto/feature |
4459
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
927 |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
928 |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
929 ngx_feature="sysconf(_SC_NPROCESSORS_ONLN)" |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
930 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
|
931 ngx_feature_run=no |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
932 ngx_feature_incs= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
933 ngx_feature_path= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
934 ngx_feature_libs= |
ccb2f8e3d08d
Added ngx_ncpu detection for most *nix platforms.
Valentin Bartenev <vbart@nginx.com>
parents:
4412
diff
changeset
|
935 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
|
936 . auto/feature |
4475 | 937 |
938 | |
939 ngx_feature="openat(), fstatat()" | |
940 ngx_feature_name="NGX_HAVE_OPENAT" | |
941 ngx_feature_run=no | |
942 ngx_feature_incs="#include <sys/types.h> | |
943 #include <sys/stat.h> | |
944 #include <fcntl.h>" | |
945 ngx_feature_path= | |
946 ngx_feature_libs= | |
947 ngx_feature_test="struct stat sb; | |
948 openat(AT_FDCWD, \".\", O_RDONLY|O_NOFOLLOW); | |
949 fstatat(AT_FDCWD, \".\", &sb, AT_SYMLINK_NOFOLLOW);" | |
950 . auto/feature | |
4971
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
951 |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
952 |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
953 ngx_feature="getaddrinfo()" |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
954 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
|
955 ngx_feature_run=no |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
956 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
|
957 #include <sys/socket.h> |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
958 #include <netdb.h>" |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
959 ngx_feature_path= |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
960 ngx_feature_libs= |
5314
0300d97c6084
Core: guard use of AI_ADDRCONFIG.
Ruslan Ermilov <ru@nginx.com>
parents:
5312
diff
changeset
|
961 ngx_feature_test='struct addrinfo *res; |
0300d97c6084
Core: guard use of AI_ADDRCONFIG.
Ruslan Ermilov <ru@nginx.com>
parents:
5312
diff
changeset
|
962 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
|
963 freeaddrinfo(res)' |
eaf95350d75c
Implemented IPv6 support for URLs specified using domain names.
Ruslan Ermilov <ru@nginx.com>
parents:
4681
diff
changeset
|
964 . auto/feature |