Mercurial > hg > nginx-quic
annotate auto/make @ 8743:5d09596909c6 stable-1.20
Upstream: fixed timeouts with gRPC, SSL and select (ticket #2229).
With SSL it is possible that an established connection is ready for
reading after the handshake. Further, events might be already disabled
in case of level-triggered event methods. If this happens and
ngx_http_upstream_send_request() blocks waiting for some data from
the upstream, such as flow control in case of gRPC, the connection
will time out due to no read events on the upstream connection.
Fix is to explicitly check the c->read->ready flag if sending request
blocks and post a read event if it is set.
Note that while it is possible to modify ngx_ssl_handshake() to keep
read events active, this won't completely resolve the issue, since
there can be data already received during the SSL handshake
(see 573bd30e46b4).
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Fri, 20 Aug 2021 03:53:56 +0300 |
parents | 4b1299b1856a |
children | 507da0d3b070 |
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 |
2827 | 6 echo "creating $NGX_MAKEFILE" |
7 | |
469 | 8 mkdir -p $NGX_OBJS/src/core $NGX_OBJS/src/event $NGX_OBJS/src/event/modules \ |
9 $NGX_OBJS/src/os/unix $NGX_OBJS/src/os/win32 \ | |
6246
257b51c37c5a
The HTTP/2 implementation (RFC 7240, 7241).
Valentin Bartenev <vbart@nginx.com>
parents:
6164
diff
changeset
|
10 $NGX_OBJS/src/http $NGX_OBJS/src/http/v2 $NGX_OBJS/src/http/modules \ |
6065 | 11 $NGX_OBJS/src/http/modules/perl \ |
1949 | 12 $NGX_OBJS/src/mail \ |
6115 | 13 $NGX_OBJS/src/stream \ |
1949 | 14 $NGX_OBJS/src/misc |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
15 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
16 |
455 | 17 ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep |
18 ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"` | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
19 |
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
20 |
467 | 21 cat << END > $NGX_MAKEFILE |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
22 |
455 | 23 CC = $CC |
24 CFLAGS = $CFLAGS | |
25 CPP = $CPP | |
26 LINK = $LINK | |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
27 |
455 | 28 END |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
29 |
2825
bb05c0834c8c
remove BMAKE (build make): a cc compiler should use own make
Igor Sysoev <igor@sysoev.ru>
parents:
1949
diff
changeset
|
30 |
681 | 31 if test -n "$NGX_PERL_CFLAGS"; then |
32 echo NGX_PERL_CFLAGS = $NGX_PERL_CFLAGS >> $NGX_MAKEFILE | |
33 echo NGX_PM_CFLAGS = $NGX_PM_CFLAGS >> $NGX_MAKEFILE | |
6700
0d2956dfc4e6
Perl: pass additional linker options to perl module.
Konstantin Pavlov <thresh@nginx.com>
parents:
6425
diff
changeset
|
34 echo NGX_PM_LDFLAGS = $NGX_PM_LDFLAGS >> $NGX_MAKEFILE |
681 | 35 fi |
36 | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
37 |
489 | 38 # ALL_INCS, required by the addons and by OpenWatcom C precompiled headers |
455 | 39 |
6118
1bdfceda86a9
Fixed building --with-stream when precompiled headers are used.
Sergey Kandaurov <pluknet@nginx.com>
parents:
6115
diff
changeset
|
40 ngx_incs=`echo $CORE_INCS $NGX_OBJS $HTTP_INCS $MAIL_INCS $STREAM_INCS\ |
455 | 41 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \ |
42 -e "s/\//$ngx_regex_dirsep/g"` | |
43 | |
44 cat << END >> $NGX_MAKEFILE | |
45 | |
46 ALL_INCS = $ngx_include_opt$ngx_incs | |
47 | |
48 END | |
49 | |
50 | |
51 ngx_all_srcs="$CORE_SRCS" | |
52 | |
53 | |
6164
4e5dda15f18f
Fixed misspellings of the word "dependencies".
Ruslan Ermilov <ru@nginx.com>
parents:
6118
diff
changeset
|
54 # the core dependencies and include paths |
455 | 55 |
467 | 56 ngx_deps=`echo $CORE_DEPS $NGX_AUTO_CONFIG_H $NGX_PCH \ |
455 | 57 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ |
58 -e "s/\//$ngx_regex_dirsep/g"` | |
59 | |
469 | 60 ngx_incs=`echo $CORE_INCS $NGX_OBJS \ |
455 | 61 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \ |
62 -e "s/\//$ngx_regex_dirsep/g"` | |
63 | |
64 cat << END >> $NGX_MAKEFILE | |
65 | |
66 CORE_DEPS = $ngx_deps | |
67 | |
68 | |
69 CORE_INCS = $ngx_include_opt$ngx_incs | |
70 | |
71 END | |
72 | |
73 | |
6164
4e5dda15f18f
Fixed misspellings of the word "dependencies".
Ruslan Ermilov <ru@nginx.com>
parents:
6118
diff
changeset
|
74 # the http dependencies and include paths |
455 | 75 |
76 if [ $HTTP = YES ]; then | |
77 | |
78 ngx_all_srcs="$ngx_all_srcs $HTTP_SRCS" | |
79 | |
80 ngx_deps=`echo $HTTP_DEPS \ | |
81 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ | |
82 -e "s/\//$ngx_regex_dirsep/g"` | |
83 | |
84 ngx_incs=`echo $HTTP_INCS \ | |
85 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \ | |
86 -e "s/\//$ngx_regex_dirsep/g"` | |
87 | |
88 cat << END >> $NGX_MAKEFILE | |
89 | |
90 HTTP_DEPS = $ngx_deps | |
91 | |
92 | |
93 HTTP_INCS = $ngx_include_opt$ngx_incs | |
94 | |
95 END | |
96 | |
97 fi | |
98 | |
99 | |
6164
4e5dda15f18f
Fixed misspellings of the word "dependencies".
Ruslan Ermilov <ru@nginx.com>
parents:
6118
diff
changeset
|
100 # the mail dependencies and include paths |
455 | 101 |
6383 | 102 if [ $MAIL != NO ]; then |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
103 |
6383 | 104 if [ $MAIL = YES ]; then |
105 ngx_all_srcs="$ngx_all_srcs $MAIL_SRCS" | |
106 fi | |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
107 |
1136 | 108 ngx_deps=`echo $MAIL_DEPS \ |
455 | 109 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ |
110 -e "s/\//$ngx_regex_dirsep/g"` | |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
111 |
1136 | 112 ngx_incs=`echo $MAIL_INCS \ |
455 | 113 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \ |
114 -e "s/\//$ngx_regex_dirsep/g"` | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
115 |
455 | 116 cat << END >> $NGX_MAKEFILE |
117 | |
1136 | 118 MAIL_DEPS = $ngx_deps |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
119 |
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
120 |
1136 | 121 MAIL_INCS = $ngx_include_opt$ngx_incs |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
122 |
455 | 123 END |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
124 |
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
125 fi |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
126 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
127 |
6164
4e5dda15f18f
Fixed misspellings of the word "dependencies".
Ruslan Ermilov <ru@nginx.com>
parents:
6118
diff
changeset
|
128 # the stream dependencies and include paths |
6115 | 129 |
6383 | 130 if [ $STREAM != NO ]; then |
6115 | 131 |
6383 | 132 if [ $STREAM = YES ]; then |
133 ngx_all_srcs="$ngx_all_srcs $STREAM_SRCS" | |
134 fi | |
6115 | 135 |
136 ngx_deps=`echo $STREAM_DEPS \ | |
137 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ | |
138 -e "s/\//$ngx_regex_dirsep/g"` | |
139 | |
140 ngx_incs=`echo $STREAM_INCS \ | |
141 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \ | |
142 -e "s/\//$ngx_regex_dirsep/g"` | |
143 | |
144 cat << END >> $NGX_MAKEFILE | |
145 | |
146 STREAM_DEPS = $ngx_deps | |
147 | |
148 | |
149 STREAM_INCS = $ngx_include_opt$ngx_incs | |
150 | |
151 END | |
152 | |
153 fi | |
154 | |
155 | |
6382
392959224560
Dynamic modules: auto/module script.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6246
diff
changeset
|
156 ngx_all_srcs="$ngx_all_srcs $MISC_SRCS" |
1949 | 157 |
158 | |
6804
2c7a2d75938a
Configure: honor dependencies of dynamic modules.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6700
diff
changeset
|
159 if test -n "$NGX_ADDON_SRCS$DYNAMIC_MODULES"; then |
489 | 160 |
161 cat << END >> $NGX_MAKEFILE | |
162 | |
541 | 163 ADDON_DEPS = \$(CORE_DEPS) $NGX_ADDON_DEPS |
489 | 164 |
165 END | |
166 | |
167 fi | |
168 | |
169 | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
170 # nginx |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
171 |
455 | 172 ngx_all_srcs=`echo $ngx_all_srcs | sed -e "s/\//$ngx_regex_dirsep/g"` |
489 | 173 |
174 for ngx_src in $NGX_ADDON_SRCS | |
175 do | |
176 ngx_obj="addon/`basename \`dirname $ngx_src\``" | |
177 | |
178 test -d $NGX_OBJS/$ngx_obj || mkdir -p $NGX_OBJS/$ngx_obj | |
179 | |
180 ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \ | |
181 | sed -e "s/\//$ngx_regex_dirsep/g"` | |
182 | |
183 ngx_all_srcs="$ngx_all_srcs $ngx_obj" | |
184 done | |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
267
diff
changeset
|
185 |
455 | 186 ngx_all_objs=`echo $ngx_all_srcs \ |
665 | 187 | sed -e "s#\([^ ]*\.\)cpp#$NGX_OBJS\/\1$ngx_objext#g" \ |
188 -e "s#\([^ ]*\.\)cc#$NGX_OBJS\/\1$ngx_objext#g" \ | |
189 -e "s#\([^ ]*\.\)c#$NGX_OBJS\/\1$ngx_objext#g" \ | |
190 -e "s#\([^ ]*\.\)S#$NGX_OBJS\/\1$ngx_objext#g"` | |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
191 |
489 | 192 ngx_modules_c=`echo $NGX_MODULES_C | sed -e "s/\//$ngx_regex_dirsep/g"` |
193 | |
455 | 194 ngx_modules_obj=`echo $ngx_modules_c | sed -e "s/\(.*\.\)c/\1$ngx_objext/"` |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
267
diff
changeset
|
195 |
461 | 196 |
197 if test -n "$NGX_RES"; then | |
198 ngx_res=$NGX_RES | |
199 else | |
200 ngx_res="$NGX_RC $NGX_ICONS" | |
201 ngx_rcc=`echo $NGX_RCC | sed -e "s/\//$ngx_regex_dirsep/g"` | |
202 fi | |
203 | |
204 ngx_deps=`echo $ngx_all_objs $ngx_modules_obj $ngx_res $LINK_DEPS \ | |
455 | 205 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ |
206 -e "s/\//$ngx_regex_dirsep/g"` | |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
207 |
455 | 208 ngx_objs=`echo $ngx_all_objs $ngx_modules_obj \ |
573 | 209 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \ |
455 | 210 -e "s/\//$ngx_regex_dirsep/g"` |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
211 |
6383 | 212 ngx_libs= |
667 | 213 if test -n "$NGX_LD_OPT$CORE_LIBS"; then |
214 ngx_libs=`echo $NGX_LD_OPT $CORE_LIBS \ | |
215 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"` | |
216 fi | |
278
0ba4821f4460
nginx-0.0.2-2004-03-04-10:04:55 import
Igor Sysoev <igor@sysoev.ru>
parents:
267
diff
changeset
|
217 |
455 | 218 ngx_link=${CORE_LINK:+`echo $CORE_LINK \ |
573 | 219 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`} |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
220 |
6383 | 221 ngx_main_link=${MAIN_LINK:+`echo $MAIN_LINK \ |
222 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`} | |
223 | |
461 | 224 |
455 | 225 cat << END >> $NGX_MAKEFILE |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
226 |
6408
cfc3cfa434ec
Configure: added "build" target.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6383
diff
changeset
|
227 build: binary modules manpage |
cfc3cfa434ec
Configure: added "build" target.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6383
diff
changeset
|
228 |
6424 | 229 binary: $NGX_OBJS${ngx_dirsep}nginx$ngx_binext |
6408
cfc3cfa434ec
Configure: added "build" target.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6383
diff
changeset
|
230 |
6424 | 231 $NGX_OBJS${ngx_dirsep}nginx$ngx_binext: $ngx_deps$ngx_spacer |
7450
2d9ab7717e23
Configure: added explicit ngx_binext to the linker output argument.
Sergey Kandaurov <pluknet@nginx.com>
parents:
6804
diff
changeset
|
232 \$(LINK) $ngx_long_start$ngx_binout$NGX_OBJS${ngx_dirsep}nginx$ngx_binext$ngx_long_cont$ngx_objs$ngx_libs$ngx_link$ngx_main_link |
461 | 233 $ngx_rcc |
6424 | 234 $ngx_long_end |
6383 | 235 |
236 modules: | |
455 | 237 END |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
238 |
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
239 |
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
240 # ngx_modules.c |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
241 |
455 | 242 if test -n "$NGX_PCH"; then |
243 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
244 else |
455 | 245 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS)" |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
246 fi |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
247 |
455 | 248 cat << END >> $NGX_MAKEFILE |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
249 |
455 | 250 $ngx_modules_obj: \$(CORE_DEPS)$ngx_cont$ngx_modules_c |
561 | 251 $ngx_cc$ngx_tab$ngx_objout$ngx_modules_obj$ngx_tab$ngx_modules_c$NGX_AUX |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
252 |
455 | 253 END |
254 | |
255 | |
256 # the core sources | |
257 | |
258 for ngx_src in $CORE_SRCS | |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
259 do |
455 | 260 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` |
261 ngx_obj=`echo $ngx_src \ | |
665 | 262 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ |
263 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
264 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
265 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
455 | 266 |
267 cat << END >> $NGX_MAKEFILE | |
268 | |
269 $ngx_obj: \$(CORE_DEPS)$ngx_cont$ngx_src | |
561 | 270 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
455 | 271 |
272 END | |
273 | |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
274 done |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
275 |
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
276 |
455 | 277 # the http sources |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
278 |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
279 if [ $HTTP = YES ]; then |
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
280 |
455 | 281 if test -n "$NGX_PCH"; then |
282 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
283 else |
455 | 284 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(HTTP_INCS)" |
6419 | 285 ngx_perl_cc="\$(CC) $ngx_compile_opt \$(NGX_PERL_CFLAGS)" |
681 | 286 ngx_perl_cc="$ngx_perl_cc \$(CORE_INCS) \$(HTTP_INCS)" |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
287 fi |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
288 |
681 | 289 for ngx_source in $HTTP_SRCS |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
290 do |
681 | 291 ngx_src=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"` |
455 | 292 ngx_obj=`echo $ngx_src \ |
665 | 293 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ |
294 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
295 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
296 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
455 | 297 |
681 | 298 if [ $ngx_source = src/http/modules/perl/ngx_http_perl_module.c ]; then |
299 | |
300 cat << END >> $NGX_MAKEFILE | |
301 | |
302 $ngx_obj: \$(CORE_DEPS) \$(HTTP_DEPS)$ngx_cont$ngx_src | |
303 $ngx_perl_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX | |
304 | |
305 END | |
306 else | |
307 | |
308 cat << END >> $NGX_MAKEFILE | |
455 | 309 |
310 $ngx_obj: \$(CORE_DEPS) \$(HTTP_DEPS)$ngx_cont$ngx_src | |
561 | 311 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
455 | 312 |
313 END | |
681 | 314 |
315 fi | |
8223 | 316 done |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
317 |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
318 fi |
195
8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
319 |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
320 |
1136 | 321 # the mail sources |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
322 |
1136 | 323 if [ $MAIL = YES ]; then |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
324 |
455 | 325 if test -n "$NGX_PCH"; then |
326 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
327 else |
1136 | 328 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(MAIL_INCS)" |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
329 fi |
280
7c7183b3ea8b
nginx-0.0.2-2004-03-05-11:34:24 import
Igor Sysoev <igor@sysoev.ru>
parents:
279
diff
changeset
|
330 |
1136 | 331 for ngx_src in $MAIL_SRCS |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
332 do |
455 | 333 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` |
334 ngx_obj=`echo $ngx_src \ | |
665 | 335 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ |
336 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
337 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
338 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
455 | 339 |
340 cat << END >> $NGX_MAKEFILE | |
341 | |
1136 | 342 $ngx_obj: \$(CORE_DEPS) \$(MAIL_DEPS)$ngx_cont$ngx_src |
561 | 343 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
455 | 344 |
345 END | |
8223 | 346 done |
455 | 347 |
489 | 348 fi |
349 | |
350 | |
6115 | 351 # the stream sources |
352 | |
353 if [ $STREAM = YES ]; then | |
354 | |
355 if test -n "$NGX_PCH"; then | |
356 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
357 else | |
358 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(STREAM_INCS)" | |
359 fi | |
360 | |
361 for ngx_src in $STREAM_SRCS | |
362 do | |
363 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` | |
364 ngx_obj=`echo $ngx_src \ | |
365 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
366 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
367 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
368 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
369 | |
370 cat << END >> $NGX_MAKEFILE | |
371 | |
372 $ngx_obj: \$(CORE_DEPS) \$(STREAM_DEPS)$ngx_cont$ngx_src | |
373 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX | |
374 | |
375 END | |
8223 | 376 done |
6115 | 377 |
378 fi | |
379 | |
380 | |
1949 | 381 # the misc sources |
382 | |
6382
392959224560
Dynamic modules: auto/module script.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6246
diff
changeset
|
383 if test -n "$MISC_SRCS"; then |
1949 | 384 |
385 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
386 | |
6382
392959224560
Dynamic modules: auto/module script.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6246
diff
changeset
|
387 for ngx_src in $MISC_SRCS |
1949 | 388 do |
389 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` | |
390 ngx_obj=`echo $ngx_src \ | |
391 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
392 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
393 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
394 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
395 | |
396 cat << END >> $NGX_MAKEFILE | |
397 | |
398 $ngx_obj: \$(CORE_DEPS) $ngx_cont$ngx_src | |
399 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX | |
400 | |
401 END | |
8223 | 402 done |
1949 | 403 |
404 fi | |
405 | |
406 | |
489 | 407 # the addons sources |
408 | |
409 if test -n "$NGX_ADDON_SRCS"; then | |
410 | |
411 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
412 | |
413 for ngx_src in $NGX_ADDON_SRCS | |
414 do | |
415 ngx_obj="addon/`basename \`dirname $ngx_src\``" | |
416 | |
417 ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \ | |
418 | sed -e "s/\//$ngx_regex_dirsep/g"` | |
419 | |
420 ngx_obj=`echo $ngx_obj \ | |
665 | 421 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ |
422 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
423 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
424 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
489 | 425 |
426 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` | |
427 | |
428 cat << END >> $NGX_MAKEFILE | |
429 | |
430 $ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src | |
561 | 431 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
489 | 432 |
433 END | |
8223 | 434 done |
417
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
435 |
0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
Igor Sysoev <igor@sysoev.ru>
parents:
297
diff
changeset
|
436 fi |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
437 |
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
438 |
593 | 439 # the addons config.make |
440 | |
6416
35487ea55cb6
Dynamic modules: make sure to call config.make for dynamic addons.
Ruslan Ermilov <ru@nginx.com>
parents:
6408
diff
changeset
|
441 if test -n "$NGX_ADDONS$DYNAMIC_ADDONS"; then |
593 | 442 |
6416
35487ea55cb6
Dynamic modules: make sure to call config.make for dynamic addons.
Ruslan Ermilov <ru@nginx.com>
parents:
6408
diff
changeset
|
443 for ngx_addon_dir in $NGX_ADDONS $DYNAMIC_ADDONS |
593 | 444 do |
445 if test -f $ngx_addon_dir/config.make; then | |
446 . $ngx_addon_dir/config.make | |
447 fi | |
448 done | |
449 fi | |
450 | |
451 | |
461 | 452 # Win32 resource file |
453 | |
454 if test -n "$NGX_RES"; then | |
455 | |
456 ngx_res=`echo "$NGX_RES: $NGX_RC $NGX_ICONS" \ | |
457 | sed -e "s/\//$ngx_regex_dirsep/g"` | |
458 ngx_rcc=`echo $NGX_RCC | sed -e "s/\//$ngx_regex_dirsep/g"` | |
459 | |
460 cat << END >> $NGX_MAKEFILE | |
461 | |
462 $ngx_res | |
463 $ngx_rcc | |
464 | |
465 END | |
466 | |
467 fi | |
468 | |
469 | |
455 | 470 # the precompiled headers |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
471 |
455 | 472 if test -n "$NGX_PCH"; then |
469 | 473 echo "#include <ngx_config.h>" > $NGX_OBJS/ngx_pch.c |
455 | 474 |
469 | 475 ngx_pch="src/core/ngx_config.h $OS_CONFIG $NGX_OBJS/ngx_auto_config.h" |
455 | 476 ngx_pch=`echo "$NGX_PCH: $ngx_pch" | sed -e "s/\//$ngx_regex_dirsep/g"` |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
477 |
455 | 478 ngx_src="\$(CC) \$(CFLAGS) $NGX_BUILD_PCH $ngx_compile_opt \$(ALL_INCS)" |
469 | 479 ngx_src="$ngx_src $ngx_objout$NGX_OBJS/ngx_pch.obj $NGX_OBJS/ngx_pch.c" |
455 | 480 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"` |
481 | |
482 cat << END >> $NGX_MAKEFILE | |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
483 |
455 | 484 $ngx_pch |
485 $ngx_src | |
486 | |
487 END | |
488 | |
282
30310107dbc9
nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
281
diff
changeset
|
489 fi |
6383 | 490 |
491 | |
492 # dynamic modules | |
493 | |
494 if test -n "$NGX_PCH"; then | |
495 ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)" | |
496 else | |
497 ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) \$(ALL_INCS)" | |
6419 | 498 ngx_perl_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(NGX_PERL_CFLAGS)" |
499 ngx_perl_cc="$ngx_perl_cc \$(ALL_INCS)" | |
6383 | 500 fi |
501 | |
502 for ngx_module in $DYNAMIC_MODULES | |
503 do | |
504 eval ngx_module_srcs="\$${ngx_module}_SRCS" | |
8225
4b1299b1856a
Configure: shared sources for addon modules.
Maxim Dounin <mdounin@mdounin.ru>
parents:
8223
diff
changeset
|
505 eval ngx_module_shrd="\$${ngx_module}_SHRD" |
6383 | 506 eval eval ngx_module_libs="\\\"\$${ngx_module}_LIBS\\\"" |
507 | |
508 eval ngx_module_modules="\$${ngx_module}_MODULES" | |
509 eval ngx_module_order="\$${ngx_module}_ORDER" | |
510 | |
511 ngx_modules_c=$NGX_OBJS/${ngx_module}_modules.c | |
512 | |
513 cat << END > $ngx_modules_c | |
514 | |
515 #include <ngx_config.h> | |
516 #include <ngx_core.h> | |
517 | |
518 END | |
519 | |
520 for mod in $ngx_module_modules | |
521 do | |
522 echo "extern ngx_module_t $mod;" >> $ngx_modules_c | |
523 done | |
524 | |
525 echo >> $ngx_modules_c | |
526 echo 'ngx_module_t *ngx_modules[] = {' >> $ngx_modules_c | |
527 | |
528 for mod in $ngx_module_modules | |
529 do | |
530 echo " &$mod," >> $ngx_modules_c | |
531 done | |
532 | |
533 cat << END >> $ngx_modules_c | |
534 NULL | |
535 }; | |
536 | |
537 END | |
538 | |
539 echo 'char *ngx_module_names[] = {' >> $ngx_modules_c | |
540 | |
541 for mod in $ngx_module_modules | |
542 do | |
543 echo " \"$mod\"," >> $ngx_modules_c | |
544 done | |
545 | |
546 cat << END >> $ngx_modules_c | |
547 NULL | |
548 }; | |
549 | |
550 END | |
551 | |
552 echo 'char *ngx_module_order[] = {' >> $ngx_modules_c | |
553 | |
554 for mod in $ngx_module_order | |
555 do | |
556 echo " \"$mod\"," >> $ngx_modules_c | |
557 done | |
558 | |
559 cat << END >> $ngx_modules_c | |
560 NULL | |
561 }; | |
562 | |
563 END | |
564 | |
565 ngx_modules_c=`echo $ngx_modules_c | sed -e "s/\//$ngx_regex_dirsep/g"` | |
566 | |
567 ngx_modules_obj=`echo $ngx_modules_c \ | |
568 | sed -e "s/\(.*\.\)c/\1$ngx_objext/"` | |
569 | |
570 ngx_module_objs= | |
8225
4b1299b1856a
Configure: shared sources for addon modules.
Maxim Dounin <mdounin@mdounin.ru>
parents:
8223
diff
changeset
|
571 for ngx_src in $ngx_module_srcs $ngx_module_shrd |
6383 | 572 do |
573 case "$ngx_src" in | |
574 src/*) | |
575 ngx_obj=$ngx_src | |
576 ;; | |
577 *) | |
578 ngx_obj="addon/`basename \`dirname $ngx_src\``" | |
579 mkdir -p $NGX_OBJS/$ngx_obj | |
580 ngx_obj="$ngx_obj/`basename $ngx_src`" | |
581 ;; | |
582 esac | |
583 | |
584 ngx_module_objs="$ngx_module_objs $ngx_obj" | |
585 done | |
586 | |
587 ngx_module_objs=`echo $ngx_module_objs \ | |
588 | sed -e "s#\([^ ]*\.\)cpp#$NGX_OBJS\/\1$ngx_objext#g" \ | |
589 -e "s#\([^ ]*\.\)cc#$NGX_OBJS\/\1$ngx_objext#g" \ | |
590 -e "s#\([^ ]*\.\)c#$NGX_OBJS\/\1$ngx_objext#g" \ | |
591 -e "s#\([^ ]*\.\)S#$NGX_OBJS\/\1$ngx_objext#g"` | |
592 | |
593 ngx_deps=`echo $ngx_module_objs $ngx_modules_obj $LINK_DEPS \ | |
594 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \ | |
595 -e "s/\//$ngx_regex_dirsep/g"` | |
596 | |
597 ngx_objs=`echo $ngx_module_objs $ngx_modules_obj \ | |
598 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \ | |
599 -e "s/\//$ngx_regex_dirsep/g"` | |
600 | |
6424 | 601 ngx_obj=$NGX_OBJS$ngx_dirsep$ngx_module$ngx_modext |
6383 | 602 |
603 if [ "$NGX_PLATFORM" = win32 ]; then | |
604 ngx_module_libs="$CORE_LIBS $ngx_module_libs" | |
605 fi | |
606 | |
607 ngx_libs= | |
608 if test -n "$NGX_LD_OPT$ngx_module_libs"; then | |
609 ngx_libs=`echo $NGX_LD_OPT $ngx_module_libs \ | |
610 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"` | |
611 fi | |
612 | |
613 ngx_link=${CORE_LINK:+`echo $CORE_LINK \ | |
614 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`} | |
615 | |
616 ngx_module_link=${MODULE_LINK:+`echo $MODULE_LINK \ | |
617 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`} | |
618 | |
619 | |
620 cat << END >> $NGX_MAKEFILE | |
621 | |
622 modules: $ngx_obj | |
623 | |
624 $ngx_obj: $ngx_deps$ngx_spacer | |
625 \$(LINK) $ngx_long_start$ngx_binout$ngx_obj$ngx_long_cont$ngx_objs$ngx_libs$ngx_link$ngx_module_link | |
626 $ngx_long_end | |
627 | |
628 $ngx_modules_obj: \$(CORE_DEPS)$ngx_cont$ngx_modules_c | |
629 $ngx_cc$ngx_tab$ngx_objout$ngx_modules_obj$ngx_tab$ngx_modules_c$NGX_AUX | |
630 | |
631 END | |
632 | |
6419 | 633 for ngx_source in $ngx_module_srcs |
6383 | 634 do |
6419 | 635 case "$ngx_source" in |
6383 | 636 src/*) |
6419 | 637 ngx_obj=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"` |
6383 | 638 ;; |
639 *) | |
6419 | 640 ngx_obj="addon/`basename \`dirname $ngx_source\``" |
641 ngx_obj=`echo $ngx_obj/\`basename $ngx_source\` \ | |
6383 | 642 | sed -e "s/\//$ngx_regex_dirsep/g"` |
643 ;; | |
644 esac | |
645 | |
646 ngx_obj=`echo $ngx_obj \ | |
647 | sed -e "s#^\(.*\.\)cpp\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
648 -e "s#^\(.*\.\)cc\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
649 -e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \ | |
650 -e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"` | |
651 | |
6419 | 652 ngx_src=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"` |
653 | |
654 if [ $ngx_source = src/http/modules/perl/ngx_http_perl_module.c ]; then | |
655 | |
656 cat << END >> $NGX_MAKEFILE | |
6383 | 657 |
6804
2c7a2d75938a
Configure: honor dependencies of dynamic modules.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6700
diff
changeset
|
658 $ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src |
6419 | 659 $ngx_perl_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
660 | |
661 END | |
662 else | |
663 | |
664 cat << END >> $NGX_MAKEFILE | |
6383 | 665 |
6804
2c7a2d75938a
Configure: honor dependencies of dynamic modules.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6700
diff
changeset
|
666 $ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src |
6383 | 667 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX |
668 | |
669 END | |
670 | |
6419 | 671 fi |
6383 | 672 done |
673 done |