blob: 346770ac9f471b663a7823e34d9db8e434e4a9ea [file] [log] [blame]
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00001
Igor Sysoevff8da912004-09-29 16:00:49 +00002# Copyright (C) Igor Sysoev
3
4
Igor Sysoevf6906042004-11-25 16:17:31 +00005mkdir -p $NGX_OBJS/src/core $NGX_OBJS/src/event $NGX_OBJS/src/event/modules \
6 $NGX_OBJS/src/os/unix $NGX_OBJS/src/os/win32 \
7 $NGX_OBJS/src/http $NGX_OBJS/src/http/modules \
Igor Sysoev9bf11aa2006-01-16 14:56:53 +00008 $NGX_OBJS/src/http/modules/perl \
Igor Sysoevf6906042004-11-25 16:17:31 +00009 $NGX_OBJS/src/imap
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000010
11
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000012ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep
13ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"`
14
15
Igor Sysoevd43bee82004-11-20 19:52:20 +000016cat << END > $NGX_MAKEFILE
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000017
18CC = $CC
19CFLAGS = $CFLAGS
20CPP = $CPP
21LINK = $LINK
22
23END
24
Igor Sysoev8a2b2fb2006-04-14 09:53:38 +000025if [ "$BMAKE" = wmake ]; then
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000026 echo MAKE = wmake >> $NGX_MAKEFILE
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000027
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000028 ngx_regex_cont=' '
Igor Sysoev09c684b2005-11-09 17:25:55 +000029 ngx_long_regex_cont=' '
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000030 ngx_cont=' '
Igor Sysoev09c684b2005-11-09 17:25:55 +000031 ngx_long_cont=' '
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000032 ngx_tab=' '
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000033
Igor Sysoevfc5a10a2004-03-09 19:47:07 +000034fi
35
Igor Sysoevfc5a10a2004-03-09 19:47:07 +000036
Igor Sysoev1ebfead2005-02-16 13:40:36 +000037# ALL_INCS, required by the addons and by OpenWatcom C precompiled headers
Igor Sysoevfc5a10a2004-03-09 19:47:07 +000038
Igor Sysoevf6906042004-11-25 16:17:31 +000039ngx_incs=`echo $CORE_INCS $NGX_OBJS $HTTP_INCS $IMAP_INCS\
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000040 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
41 -e "s/\//$ngx_regex_dirsep/g"`
42
43cat << END >> $NGX_MAKEFILE
44
45ALL_INCS = $ngx_include_opt$ngx_incs
46
47END
Igor Sysoev59cf56c2004-09-07 15:29:22 +000048
Igor Sysoevfc5a10a2004-03-09 19:47:07 +000049
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000050ngx_all_srcs="$CORE_SRCS"
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000051
52
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000053# the core dependences and include pathes
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000054
Igor Sysoevd43bee82004-11-20 19:52:20 +000055ngx_deps=`echo $CORE_DEPS $NGX_AUTO_CONFIG_H $NGX_PCH \
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000056 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
57 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000058
Igor Sysoevf6906042004-11-25 16:17:31 +000059ngx_incs=`echo $CORE_INCS $NGX_OBJS \
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000060 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
61 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000062
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000063cat << END >> $NGX_MAKEFILE
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000064
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000065CORE_DEPS = $ngx_deps
66
67
68CORE_INCS = $ngx_include_opt$ngx_incs
69
70END
71
72
73# the http dependences and include pathes
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000074
Igor Sysoev59cf56c2004-09-07 15:29:22 +000075if [ $HTTP = YES ]; then
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000076
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000077 ngx_all_srcs="$ngx_all_srcs $HTTP_SRCS"
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000078
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000079 ngx_deps=`echo $HTTP_DEPS \
80 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
81 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000082
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000083 ngx_incs=`echo $HTTP_INCS \
84 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
85 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000086
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000087 cat << END >> $NGX_MAKEFILE
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000088
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000089HTTP_DEPS = $ngx_deps
Igor Sysoev59cf56c2004-09-07 15:29:22 +000090
91
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000092HTTP_INCS = $ngx_include_opt$ngx_incs
Igor Sysoev59cf56c2004-09-07 15:29:22 +000093
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000094END
Igor Sysoev59cf56c2004-09-07 15:29:22 +000095
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000096fi
97
Igor Sysoevab9d5fd2004-03-05 08:34:24 +000098
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000099# the imap dependences and include pathes
100
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000101if [ $IMAP = YES ]; then
102
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000103 ngx_all_srcs="$ngx_all_srcs $IMAP_SRCS"
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000104
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000105 ngx_deps=`echo $IMAP_DEPS \
106 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
107 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000108
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000109 ngx_incs=`echo $IMAP_INCS \
110 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont$ngx_include_opt\1/g" \
111 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000112
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000113 cat << END >> $NGX_MAKEFILE
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000114
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000115IMAP_DEPS = $ngx_deps
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000116
117
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000118IMAP_INCS = $ngx_include_opt$ngx_incs
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000119
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000120END
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000121
122fi
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000123
124
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000125if test -n "$NGX_ADDON_SRCS"; then
126
127cat << END >> $NGX_MAKEFILE
128
Igor Sysoeve5733802005-09-08 14:36:09 +0000129ADDON_DEPS = \$(CORE_DEPS) $NGX_ADDON_DEPS
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000130
131END
132
133fi
134
135
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000136# nginx
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000137
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000138ngx_all_srcs=`echo $ngx_all_srcs | sed -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000139
140for ngx_src in $NGX_ADDON_SRCS
141do
142 ngx_obj="addon/`basename \`dirname $ngx_src\``"
143
144 test -d $NGX_OBJS/$ngx_obj || mkdir -p $NGX_OBJS/$ngx_obj
145
146 ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \
147 | sed -e "s/\//$ngx_regex_dirsep/g"`
148
149 ngx_all_srcs="$ngx_all_srcs $ngx_obj"
150done
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000151
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000152ngx_all_objs=`echo $ngx_all_srcs \
153 | sed -e "s/\([^ ]*\.\)cpp/$NGX_OBJS\/\1$ngx_objext/g" \
154 -e "s/\([^ ]*\.\)cc/$NGX_OBJS\/\1$ngx_objext/g" \
155 -e "s/\([^ ]*\.\)c/$NGX_OBJS\/\1$ngx_objext/g" \
156 -e "s/\([^ ]*\.\)S/$NGX_OBJS\/\1$ngx_objext/g"`
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000157
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000158ngx_modules_c=`echo $NGX_MODULES_C | sed -e "s/\//$ngx_regex_dirsep/g"`
159
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000160ngx_modules_obj=`echo $ngx_modules_c | sed -e "s/\(.*\.\)c/\1$ngx_objext/"`
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000161
Igor Sysoev1b735832004-11-11 14:07:14 +0000162
163if test -n "$NGX_RES"; then
164 ngx_res=$NGX_RES
165else
166 ngx_res="$NGX_RC $NGX_ICONS"
167 ngx_rcc=`echo $NGX_RCC | sed -e "s/\//$ngx_regex_dirsep/g"`
168fi
169
170ngx_deps=`echo $ngx_all_objs $ngx_modules_obj $ngx_res $LINK_DEPS \
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000171 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g" \
172 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoeva5362982004-03-04 07:04:55 +0000173
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000174ngx_objs=`echo $ngx_all_objs $ngx_modules_obj \
Igor Sysoev09c684b2005-11-09 17:25:55 +0000175 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000176 -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000177
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000178ngx_libs=${CORE_LIBS:+`echo $NGX_LD_OPT $CORE_LIBS \
Igor Sysoev09c684b2005-11-09 17:25:55 +0000179 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
Igor Sysoeva5362982004-03-04 07:04:55 +0000180
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000181ngx_link=${CORE_LINK:+`echo $CORE_LINK \
Igor Sysoev09c684b2005-11-09 17:25:55 +0000182 | sed -e "s/\//$ngx_regex_dirsep/g" -e "s/^/$ngx_long_regex_cont/"`}
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000183
Igor Sysoev1b735832004-11-11 14:07:14 +0000184
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000185cat << END >> $NGX_MAKEFILE
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000186
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000187$NGX_OBJS${ngx_dirsep}nginx${ngx_binext}: $ngx_deps$ngx_spacer
Igor Sysoev09c684b2005-11-09 17:25:55 +0000188 \$(LINK) ${ngx_long_start}${ngx_binout}$NGX_OBJS${ngx_dirsep}nginx$ngx_long_cont$ngx_objs$ngx_libs$ngx_link
Igor Sysoev1b735832004-11-11 14:07:14 +0000189 $ngx_rcc
Igor Sysoev09c684b2005-11-09 17:25:55 +0000190${ngx_long_end}
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000191END
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000192
193
194# ngx_modules.c
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000195
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000196if test -n "$NGX_PCH"; then
197 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000198else
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000199 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS)"
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000200fi
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000201
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000202cat << END >> $NGX_MAKEFILE
203
204$ngx_modules_obj: \$(CORE_DEPS)$ngx_cont$ngx_modules_c
Igor Sysoev78452232005-10-12 13:50:36 +0000205 $ngx_cc$ngx_tab$ngx_objout$ngx_modules_obj$ngx_tab$ngx_modules_c$NGX_AUX
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000206
207END
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000208
209
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000210# the core sources
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000211
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000212for ngx_src in $CORE_SRCS
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000213do
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000214 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
215 ngx_obj=`echo $ngx_src \
216 | sed -e "s/^\(.*\.\)cpp$/$ngx_objs_dir\1$ngx_objext/g" \
217 -e "s/^\(.*\.\)cc$/$ngx_objs_dir\1$ngx_objext/g" \
218 -e "s/^\(.*\.\)c$/$ngx_objs_dir\1$ngx_objext/g" \
219 -e "s/^\(.*\.\)S$/$ngx_objs_dir\1$ngx_objext/g"`
220
221 cat << END >> $NGX_MAKEFILE
222
223$ngx_obj: \$(CORE_DEPS)$ngx_cont$ngx_src
Igor Sysoev78452232005-10-12 13:50:36 +0000224 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000225
226END
227
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000228done
229
230
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000231# the http sources
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000232
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000233if [ $HTTP = YES ]; then
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000234
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000235 if test -n "$NGX_PCH"; then
236 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000237 else
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000238 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(HTTP_INCS)"
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000239 fi
240
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000241 for ngx_src in $HTTP_SRCS
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000242 do
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000243 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
244 ngx_obj=`echo $ngx_src \
245 | sed -e "s/^\(.*\.\)cpp$/$ngx_objs_dir\1$ngx_objext/g" \
246 -e "s/^\(.*\.\)cc$/$ngx_objs_dir\1$ngx_objext/g" \
247 -e "s/^\(.*\.\)c$/$ngx_objs_dir\1$ngx_objext/g" \
248 -e "s/^\(.*\.\)S$/$ngx_objs_dir\1$ngx_objext/g"`
249
250 cat << END >> $NGX_MAKEFILE
251
252$ngx_obj: \$(CORE_DEPS) \$(HTTP_DEPS)$ngx_cont$ngx_src
Igor Sysoev78452232005-10-12 13:50:36 +0000253 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000254
255END
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000256 done
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000257
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000258fi
Igor Sysoeva8fa0a62003-11-25 20:44:56 +0000259
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000260
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000261# the imap sources
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000262
263if [ $IMAP = YES ]; then
264
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000265 if test -n "$NGX_PCH"; then
266 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000267 else
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000268 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(IMAP_INCS)"
Igor Sysoevab9d5fd2004-03-05 08:34:24 +0000269 fi
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000270
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000271 for ngx_src in $IMAP_SRCS
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000272 do
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000273 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
274 ngx_obj=`echo $ngx_src \
275 | sed -e "s/^\(.*\.\)cpp$/$ngx_objs_dir\1$ngx_objext/g" \
276 -e "s/^\(.*\.\)cc$/$ngx_objs_dir\1$ngx_objext/g" \
277 -e "s/^\(.*\.\)c$/$ngx_objs_dir\1$ngx_objext/g" \
278 -e "s/^\(.*\.\)S$/$ngx_objs_dir\1$ngx_objext/g"`
279
280 cat << END >> $NGX_MAKEFILE
281
282$ngx_obj: \$(CORE_DEPS) \$(IMAP_DEPS)$ngx_cont$ngx_src
Igor Sysoev78452232005-10-12 13:50:36 +0000283 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000284
285END
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000286 done
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000287
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000288fi
289
290
291# the addons sources
292
293if test -n "$NGX_ADDON_SRCS"; then
294
295 ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
296
297 for ngx_src in $NGX_ADDON_SRCS
298 do
299 ngx_obj="addon/`basename \`dirname $ngx_src\``"
300
301 ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \
302 | sed -e "s/\//$ngx_regex_dirsep/g"`
303
304 ngx_obj=`echo $ngx_obj \
305 | sed -e "s/^\(.*\.\)cpp$/$ngx_objs_dir\1$ngx_objext/g" \
306 -e "s/^\(.*\.\)cc$/$ngx_objs_dir\1$ngx_objext/g" \
307 -e "s/^\(.*\.\)c$/$ngx_objs_dir\1$ngx_objext/g" \
308 -e "s/^\(.*\.\)S$/$ngx_objs_dir\1$ngx_objext/g"`
309
310 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
311
312 cat << END >> $NGX_MAKEFILE
313
314$ngx_obj: \$(ADDON_DEPS)$ngx_cont$ngx_src
Igor Sysoev78452232005-10-12 13:50:36 +0000315 $ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
Igor Sysoev1ebfead2005-02-16 13:40:36 +0000316
317END
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000318 done
Igor Sysoev59cf56c2004-09-07 15:29:22 +0000319
320fi
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000321
322
Igor Sysoev305a9d82005-12-26 17:07:48 +0000323# the addons config.make
324
325if test -n "$NGX_ADDONS"; then
326
327 for ngx_addon_dir in $NGX_ADDONS
328 do
329 if test -f $ngx_addon_dir/config.make; then
330 . $ngx_addon_dir/config.make
331 fi
332 done
333fi
334
335
Igor Sysoev1b735832004-11-11 14:07:14 +0000336# Win32 resource file
337
338if test -n "$NGX_RES"; then
339
340 ngx_res=`echo "$NGX_RES: $NGX_RC $NGX_ICONS" \
341 | sed -e "s/\//$ngx_regex_dirsep/g"`
342 ngx_rcc=`echo $NGX_RCC | sed -e "s/\//$ngx_regex_dirsep/g"`
343
344 cat << END >> $NGX_MAKEFILE
345
346$ngx_res
347 $ngx_rcc
348
349END
350
351fi
352
353
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000354# the precompiled headers
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000355
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000356if test -n "$NGX_PCH"; then
Igor Sysoevf6906042004-11-25 16:17:31 +0000357 echo "#include <ngx_config.h>" > $NGX_OBJS/ngx_pch.c
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000358
Igor Sysoevf6906042004-11-25 16:17:31 +0000359 ngx_pch="src/core/ngx_config.h $OS_CONFIG $NGX_OBJS/ngx_auto_config.h"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000360 ngx_pch=`echo "$NGX_PCH: $ngx_pch" | sed -e "s/\//$ngx_regex_dirsep/g"`
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000361
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000362 ngx_src="\$(CC) \$(CFLAGS) $NGX_BUILD_PCH $ngx_compile_opt \$(ALL_INCS)"
Igor Sysoevf6906042004-11-25 16:17:31 +0000363 ngx_src="$ngx_src $ngx_objout$NGX_OBJS/ngx_pch.obj $NGX_OBJS/ngx_pch.c"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000364 ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
365
366 cat << END >> $NGX_MAKEFILE
367
368$ngx_pch
369 $ngx_src
370
371END
372
Igor Sysoevfc5a10a2004-03-09 19:47:07 +0000373fi