2 # Copyright (C) Igor Sysoev
5 CORE_MODULES="ngx_core_module ngx_errlog_module ngx_conf_module"
9 CORE_DEPS="src/core/nginx.h \
10 src/core/ngx_config.h \
13 src/core/ngx_palloc.h \
14 src/core/ngx_array.h \
18 src/core/ngx_queue.h \
19 src/core/ngx_string.h \
20 src/core/ngx_parse.h \
24 src/core/ngx_crc32.h \
26 src/core/ngx_lookup3.h \
28 src/core/ngx_rbtree.h \
29 src/core/ngx_rbtreehash.h \
30 src/core/ngx_flathash.h \
31 src/core/ngx_radix_tree.h \
33 src/core/ngx_times.h \
34 src/core/ngx_shmtx.h \
35 src/core/ngx_connection.h \
36 src/core/ngx_cycle.h \
37 src/core/ngx_conf_file.h \
38 src/core/ngx_resolver.h \
39 src/core/ngx_open_file_cache.h"
42 CORE_SRCS="src/core/nginx.c \
44 src/core/ngx_palloc.c \
45 src/core/ngx_array.c \
49 src/core/ngx_queue.c \
50 src/core/ngx_output_chain.c \
51 src/core/ngx_string.c \
52 src/core/ngx_parse.c \
55 src/core/ngx_crc32.c \
56 src/core/ngx_lookup3.c \
57 src/core/ngx_rbtree.c \
58 src/core/ngx_rbtreehash.c \
59 src/core/ngx_flathash.c \
60 src/core/ngx_radix_tree.c \
62 src/core/ngx_times.c \
63 src/core/ngx_shmtx.c \
64 src/core/ngx_connection.c \
65 src/core/ngx_cycle.c \
66 src/core/ngx_spinlock.c \
67 src/core/ngx_cpuinfo.c \
68 src/core/ngx_conf_file.c \
69 src/core/ngx_resolver.c \
70 src/core/ngx_open_file_cache.c"
73 REGEX_DEPS=src/core/ngx_regex.h
74 REGEX_SRCS=src/core/ngx_regex.c
77 OPENSSL_MODULE=ngx_openssl_module
78 OPENSSL_DEPS=src/event/ngx_event_openssl.h
79 OPENSSL_SRCS=src/event/ngx_event_openssl.c
82 EVENT_MODULES="ngx_events_module ngx_event_core_module"
84 EVENT_INCS="src/event src/event/modules"
86 EVENT_DEPS="src/event/ngx_event.h \
87 src/event/ngx_event_timer.h \
88 src/event/ngx_event_posted.h \
89 src/event/ngx_event_busy_lock.h \
90 src/event/ngx_event_connect.h \
91 src/event/ngx_event_pipe.h"
93 EVENT_SRCS="src/event/ngx_event.c \
94 src/event/ngx_event_timer.c \
95 src/event/ngx_event_posted.c \
96 src/event/ngx_event_busy_lock.c \
97 src/event/ngx_event_accept.c \
98 src/event/ngx_event_connect.c \
99 src/event/ngx_event_pipe.c"
102 SELECT_MODULE=ngx_select_module
103 SELECT_SRCS=src/event/modules/ngx_select_module.c
104 WIN32_SELECT_SRCS=src/event/modules/ngx_win32_select_module.c
106 POLL_MODULE=ngx_poll_module
107 POLL_SRCS=src/event/modules/ngx_poll_module.c
109 KQUEUE_MODULE=ngx_kqueue_module
110 KQUEUE_SRCS=src/event/modules/ngx_kqueue_module.c
112 DEVPOLL_MODULE=ngx_devpoll_module
113 DEVPOLL_SRCS=src/event/modules/ngx_devpoll_module.c
115 EVENTPORT_MODULE=ngx_eventport_module
116 EVENTPORT_SRCS=src/event/modules/ngx_eventport_module.c
118 EPOLL_MODULE=ngx_epoll_module
119 EPOLL_SRCS=src/event/modules/ngx_epoll_module.c
121 RTSIG_MODULE=ngx_rtsig_module
122 RTSIG_SRCS=src/event/modules/ngx_rtsig_module.c
124 IOCP_MODULE=ngx_iocp_module
125 IOCP_SRCS=src/event/modules/ngx_iocp_module.c
127 AIO_MODULE=ngx_aio_module
128 AIO_SRCS="src/event/modules/ngx_aio_module.c \
129 src/os/unix/ngx_aio_read.c \
130 src/os/unix/ngx_aio_write.c \
131 src/os/unix/ngx_aio_read_chain.c \
132 src/os/unix/ngx_aio_write_chain.c"
134 FILE_AIO_SRCS="src/os/unix/ngx_file_aio_read.c"
135 LINUX_AIO_SRCS="src/os/unix/ngx_linux_aio_read.c"
137 UNIX_INCS="$CORE_INCS $EVENT_INCS src/os/unix"
139 UNIX_DEPS="$CORE_DEPS $EVENT_DEPS \
140 src/os/unix/ngx_time.h \
141 src/os/unix/ngx_errno.h \
142 src/os/unix/ngx_alloc.h \
143 src/os/unix/ngx_files.h \
144 src/os/unix/ngx_channel.h \
145 src/os/unix/ngx_shmem.h \
146 src/os/unix/ngx_process.h \
147 src/os/unix/ngx_setproctitle.h \
148 src/os/unix/ngx_atomic.h \
149 src/os/unix/ngx_gcc_atomic_x86.h \
150 src/os/unix/ngx_thread.h \
151 src/os/unix/ngx_socket.h \
152 src/os/unix/ngx_os.h \
153 src/os/unix/ngx_user.h \
154 src/os/unix/ngx_process_cycle.h"
157 # src/os/unix/ngx_gcc_atomic_amd64.h \
158 # src/os/unix/ngx_gcc_atomic_sparc64.h \
159 # src/os/unix/ngx_gcc_atomic_ppc.h \
160 # src/os/unix/ngx_sunpro_atomic_sparc64.h \
161 # src/os/unix/ngx_sunpro_x86.il \
162 # src/os/unix/ngx_sunpro_amd64.il \
163 # src/os/unix/ngx_sunpro_sparc64.il \
166 UNIX_SRCS="$CORE_SRCS $EVENT_SRCS \
167 src/os/unix/ngx_time.c \
168 src/os/unix/ngx_errno.c \
169 src/os/unix/ngx_alloc.c \
170 src/os/unix/ngx_files.c \
171 src/os/unix/ngx_socket.c \
172 src/os/unix/ngx_recv.c \
173 src/os/unix/ngx_readv_chain.c \
174 src/os/unix/ngx_udp_recv.c \
175 src/os/unix/ngx_send.c \
176 src/os/unix/ngx_writev_chain.c \
177 src/os/unix/ngx_channel.c \
178 src/os/unix/ngx_shmem.c \
179 src/os/unix/ngx_process.c \
180 src/os/unix/ngx_daemon.c \
181 src/os/unix/ngx_setproctitle.c \
182 src/os/unix/ngx_posix_init.c \
183 src/os/unix/ngx_user.c \
184 src/os/unix/ngx_process_cycle.c"
186 POSIX_DEPS=src/os/unix/ngx_posix_config.h
188 FREEBSD_DEPS="src/os/unix/ngx_freebsd_config.h src/os/unix/ngx_freebsd.h"
189 FREEBSD_SRCS=src/os/unix/ngx_freebsd_init.c
190 FREEBSD_SENDFILE_SRCS=src/os/unix/ngx_freebsd_sendfile_chain.c
191 FREEBSD_RFORK_DEPS="src/os/unix/ngx_freebsd_rfork_thread.h"
192 FREEBSD_RFORK_SRCS="src/os/unix/ngx_freebsd_rfork_thread.c"
193 FREEBSD_RFORK_THREAD_SRCS="src/os/unix/rfork_thread.S"
195 PTHREAD_SRCS="src/os/unix/ngx_pthread_thread.c"
197 LINUX_DEPS="src/os/unix/ngx_linux_config.h src/os/unix/ngx_linux.h"
198 LINUX_SRCS=src/os/unix/ngx_linux_init.c
199 LINUX_SENDFILE_SRCS=src/os/unix/ngx_linux_sendfile_chain.c
202 SOLARIS_DEPS="src/os/unix/ngx_solaris_config.h src/os/unix/ngx_solaris.h"
203 SOLARIS_SRCS=src/os/unix/ngx_solaris_init.c
204 SOLARIS_SENDFILEV_SRCS=src/os/unix/ngx_solaris_sendfilev_chain.c
207 DARWIN_DEPS="src/os/unix/ngx_darwin_config.h src/os/unix/ngx_darwin.h"
208 DARWIN_SRCS=src/os/unix/ngx_darwin_init.c
209 DARWIN_SENDFILE_SRCS=src/os/unix/ngx_darwin_sendfile_chain.c
212 WIN32_INCS="$CORE_INCS $EVENT_INCS src/os/win32"
214 WIN32_DEPS="$CORE_DEPS $EVENT_DEPS \
215 src/os/win32/ngx_win32_config.h \
216 src/os/win32/ngx_time.h \
217 src/os/win32/ngx_errno.h \
218 src/os/win32/ngx_alloc.h \
219 src/os/win32/ngx_files.h \
220 src/os/win32/ngx_shmem.h \
221 src/os/win32/ngx_process.h \
222 src/os/win32/ngx_atomic.h \
223 src/os/win32/ngx_thread.h \
224 src/os/win32/ngx_socket.h \
225 src/os/win32/ngx_os.h \
226 src/os/win32/ngx_user.h \
227 src/os/win32/ngx_process_cycle.h"
229 WIN32_CONFIG=src/os/win32/ngx_win32_config.h
231 WIN32_SRCS="$CORE_SRCS $EVENT_SRCS \
232 src/os/win32/ngx_errno.c \
233 src/os/win32/ngx_alloc.c \
234 src/os/win32/ngx_files.c \
235 src/os/win32/ngx_shmem.c \
236 src/os/win32/ngx_time.c \
237 src/os/win32/ngx_process.c \
238 src/os/win32/ngx_thread.c \
239 src/os/win32/ngx_socket.c \
240 src/os/win32/ngx_wsarecv.c \
241 src/os/win32/ngx_wsarecv_chain.c \
242 src/os/win32/ngx_udp_wsarecv.c \
243 src/os/win32/ngx_wsasend.c \
244 src/os/win32/ngx_wsasend_chain.c \
245 src/os/win32/ngx_win32_init.c \
246 src/os/win32/ngx_user.c \
247 src/os/win32/ngx_event_log.c \
248 src/os/win32/ngx_process_cycle.c \
249 src/event/ngx_event_acceptex.c"
251 NGX_WIN32_ICONS="src/os/win32/nginx.ico"
252 NGX_WIN32_RC="src/os/win32/nginx.rc"
255 # the http modules that have their logging formats
256 # must be after ngx_http_log_module
258 HTTP_MODULES="ngx_http_module \
259 ngx_http_core_module \
260 ngx_http_log_module \
261 ngx_http_upstream_module"
263 HTTP_WRITE_FILTER_MODULE="ngx_http_write_filter_module"
264 HTTP_HEADER_FILTER_MODULE="ngx_http_header_filter_module"
266 HTTP_POSTPONE_FILTER_MODULE=ngx_http_postpone_filter_module
267 HTTP_COPY_FILTER_MODULE=ngx_http_copy_filter_module
269 HTTP_CHUNKED_FILTER_MODULE=ngx_http_chunked_filter_module
270 HTTP_HEADERS_FILTER_MODULE=ngx_http_headers_filter_module
272 HTTP_RANGE_HEADER_FILTER_MODULE=ngx_http_range_header_filter_module
273 HTTP_RANGE_BODY_FILTER_MODULE=ngx_http_range_body_filter_module
275 HTTP_NOT_MODIFIED_FILTER_MODULE=ngx_http_not_modified_filter_module
277 HTTP_STATIC_MODULE=ngx_http_static_module
278 HTTP_INDEX_MODULE=ngx_http_index_module
280 HTTP_INCS="src/http src/http/modules"
282 HTTP_DEPS="src/http/ngx_http.h \
283 src/http/ngx_http_request.h \
284 src/http/ngx_http_config.h \
285 src/http/ngx_http_core_module.h \
286 src/http/ngx_http_cache.h \
287 src/http/ngx_http_variables.h \
288 src/http/ngx_http_script.h \
289 src/http/ngx_http_upstream.h \
290 src/http/ngx_http_upstream_round_robin.h \
291 src/http/ngx_http_busy_lock.h"
293 HTTP_SRCS="src/http/ngx_http.c \
294 src/http/ngx_http_core_module.c \
295 src/http/ngx_http_special_response.c \
296 src/http/ngx_http_request.c \
297 src/http/ngx_http_parse.c \
298 src/http/ngx_http_header_filter_module.c \
299 src/http/ngx_http_write_filter_module.c \
300 src/http/ngx_http_copy_filter_module.c \
301 src/http/modules/ngx_http_log_module.c \
302 src/http/ngx_http_request_body.c \
303 src/http/ngx_http_variables.c \
304 src/http/ngx_http_script.c \
305 src/http/ngx_http_upstream.c \
306 src/http/ngx_http_upstream_round_robin.c \
307 src/http/ngx_http_parse_time.c \
308 src/http/modules/ngx_http_static_module.c \
309 src/http/modules/ngx_http_index_module.c \
310 src/http/modules/ngx_http_chunked_filter_module.c \
311 src/http/modules/ngx_http_range_filter_module.c \
312 src/http/modules/ngx_http_headers_filter_module.c \
313 src/http/modules/ngx_http_not_modified_filter_module.c"
316 HTTP_SRCS="$HTTP_SRCS src/http/ngx_http_busy_lock.c"
318 HTTP_POSTPONE_FILTER_SRCS=src/http/ngx_http_postpone_filter_module.c
320 HTTP_FILE_CACHE_SRCS=src/http/ngx_http_file_cache.c
323 HTTP_CHARSET_FILTER_MODULE=ngx_http_charset_filter_module
324 HTTP_CHARSET_SRCS=src/http/modules/ngx_http_charset_filter_module.c
327 HTTP_GZIP_FILTER_MODULE=ngx_http_gzip_filter_module
328 HTTP_GZIP_SRCS=src/http/modules/ngx_http_gzip_filter_module.c
331 HTTP_SSI_FILTER_MODULE=ngx_http_ssi_filter_module
332 HTTP_SSI_DEPS=src/http/modules/ngx_http_ssi_filter_module.h
333 HTTP_SSI_SRCS=src/http/modules/ngx_http_ssi_filter_module.c
336 HTTP_XSLT_FILTER_MODULE=ngx_http_xslt_filter_module
337 HTTP_XSLT_SRCS=src/http/modules/ngx_http_xslt_filter_module.c
340 HTTP_IMAGE_FILTER_MODULE=ngx_http_image_filter_module
341 HTTP_IMAGE_SRCS=src/http/modules/ngx_http_image_filter_module.c
344 HTTP_SUB_FILTER_MODULE=ngx_http_sub_filter_module
345 HTTP_SUB_SRCS=src/http/modules/ngx_http_sub_filter_module.c
348 HTTP_RND_FILTER_MODULE=ngx_http_rnd_filter_module
349 HTTP_RND_SRCS=src/http/modules/ngx_http_rnd_filter_module.c
352 HTTP_USERID_FILTER_MODULE=ngx_http_userid_filter_module
353 HTTP_USERID_SRCS=src/http/modules/ngx_http_userid_filter_module.c
356 HTTP_REALIP_MODULE=ngx_http_realip_module
357 HTTP_REALIP_SRCS=src/http/modules/ngx_http_realip_module.c
360 HTTP_ADDITION_FILTER_MODULE=ngx_http_addition_filter_module
361 HTTP_ADDITION_SRCS=src/http/modules/ngx_http_addition_filter_module.c
364 HTTP_DAV_MODULE=ngx_http_dav_module
365 HTTP_DAV_SRCS=src/http/modules/ngx_http_dav_module.c
368 HTTP_ACCESS_MODULE=ngx_http_access_module
369 HTTP_ACCESS_SRCS=src/http/modules/ngx_http_access_module.c
372 HTTP_AUTH_BASIC_MODULE=ngx_http_auth_basic_module
373 HTTP_AUTH_BASIC_SRCS=src/http/modules/ngx_http_auth_basic_module.c
376 HTTP_AUTOINDEX_MODULE=ngx_http_autoindex_module
377 HTTP_AUTOINDEX_SRCS=src/http/modules/ngx_http_autoindex_module.c
380 HTTP_RANDOM_INDEX_MODULE=ngx_http_random_index_module
381 HTTP_RANDOM_INDEX_SRCS=src/http/modules/ngx_http_random_index_module.c
384 HTTP_STATUS_MODULE=ngx_http_status_module
385 HTTP_STATUS_SRCS=src/http/modules/ngx_http_status_module.c
388 HTTP_STATUS_HEAP_MODULE=ngx_http_status_heap_module
389 HTTP_STATUS_HEAP_SRCS=src/http/modules/ngx_http_status_heap_module.c
392 HTTP_GEO_MODULE=ngx_http_geo_module
393 HTTP_GEO_SRCS=src/http/modules/ngx_http_geo_module.c
396 HTTP_GEOIP_MODULE=ngx_http_geoip_module
397 HTTP_GEOIP_SRCS=src/http/modules/ngx_http_geoip_module.c
400 HTTP_MAP_MODULE=ngx_http_map_module
401 HTTP_MAP_SRCS=src/http/modules/ngx_http_map_module.c
404 HTTP_SPLIT_CLIENTS_MODULE=ngx_http_split_clients_module
405 HTTP_SPLIT_CLIENTS_SRCS=src/http/modules/ngx_http_split_clients_module.c
408 HTTP_REFERER_MODULE=ngx_http_referer_module
409 HTTP_REFERER_SRCS=src/http/modules/ngx_http_referer_module.c
412 HTTP_REWRITE_MODULE=ngx_http_rewrite_module
413 HTTP_REWRITE_SRCS=src/http/modules/ngx_http_rewrite_module.c
416 HTTP_SSL_MODULE=ngx_http_ssl_module
417 HTTP_SSL_DEPS=src/http/modules/ngx_http_ssl_module.h
418 HTTP_SSL_SRCS=src/http/modules/ngx_http_ssl_module.c
421 HTTP_PROXY_MODULE=ngx_http_proxy_module
422 HTTP_PROXY_SRCS=src/http/modules/ngx_http_proxy_module.c
425 HTTP_FASTCGI_MODULE=ngx_http_fastcgi_module
426 HTTP_FASTCGI_SRCS=src/http/modules/ngx_http_fastcgi_module.c
429 HTTP_UWSGI_MODULE=ngx_http_uwsgi_module
430 HTTP_UWSGI_SRCS=src/http/modules/ngx_http_uwsgi_module.c
433 HTTP_PERL_MODULE=ngx_http_perl_module
434 HTTP_PERL_INCS=src/http/modules/perl
435 HTTP_PERL_DEPS=src/http/modules/perl/ngx_http_perl_module.h
436 HTTP_PERL_SRCS=src/http/modules/perl/ngx_http_perl_module.c
439 HTTP_MEMCACHED_MODULE=ngx_http_memcached_module
440 HTTP_MEMCACHED_SRCS=src/http/modules/ngx_http_memcached_module.c
443 HTTP_LIMIT_ZONE_MODULE=ngx_http_limit_zone_module
444 HTTP_LIMIT_ZONE_SRCS=src/http/modules/ngx_http_limit_zone_module.c
447 HTTP_LIMIT_VAR_MODULE=ngx_http_limit_var_module
448 HTTP_LIMIT_VAR_SRCS=src/http/modules/ngx_http_limit_var_module.c
451 HTTP_LIMIT_REQ_MODULE=ngx_http_limit_req_module
452 HTTP_LIMIT_REQ_SRCS=src/http/modules/ngx_http_limit_req_module.c
455 HTTP_EMPTY_GIF_MODULE=ngx_http_empty_gif_module
456 HTTP_EMPTY_GIF_SRCS=src/http/modules/ngx_http_empty_gif_module.c
459 HTTP_BROWSER_MODULE=ngx_http_browser_module
460 HTTP_BROWSER_SRCS=src/http/modules/ngx_http_browser_module.c
463 HTTP_SECURE_LINK_MODULE=ngx_http_secure_link_module
464 HTTP_SECURE_LINK_SRCS=src/http/modules/ngx_http_secure_link_module.c
467 HTTP_DEGRADATION_MODULE=ngx_http_degradation_module
468 HTTP_DEGRADATION_SRCS=src/http/modules/ngx_http_degradation_module.c
471 HTTP_FLV_MODULE=ngx_http_flv_module
472 HTTP_FLV_SRCS=src/http/modules/ngx_http_flv_module.c
475 HTTP_IS_BOT_MODULE=ngx_http_is_bot_module
476 HTTP_IS_BOT_SRCS=src/http/modules/ngx_http_is_bot_module.c
479 HTTP_GZIP_STATIC_MODULE=ngx_http_gzip_static_module
480 HTTP_GZIP_STATIC_SRCS=src/http/modules/ngx_http_gzip_static_module.c
483 HTTP_UPSTREAM_IP_HASH_MODULE=ngx_http_upstream_ip_hash_module
484 HTTP_UPSTREAM_IP_HASH_SRCS=src/http/modules/ngx_http_upstream_ip_hash_module.c
486 HTTP_UPSTREAM_KEEPALIVE_MODULE=ngx_http_upstream_keepalive_module
487 HTTP_UPSTREAM_KEEPALIVE_SRCS=src/http/modules/ngx_http_upstream_keepalive_module.c
490 HTTP_RESPONSE_MODULE=ngx_http_response_module
491 HTTP_RESPONSE_SRCS=src/http/modules/ngx_http_response_module.c
494 HTTP_EVAL_MODULE=ngx_http_eval_module
495 HTTP_EVAL_SRCS=src/http/modules/ngx_http_eval_module.c
500 MAIL_DEPS="src/mail/ngx_mail.h"
502 MAIL_MODULES="ngx_mail_module ngx_mail_core_module"
504 MAIL_SRCS="src/mail/ngx_mail.c \
505 src/mail/ngx_mail_core_module.c \
506 src/mail/ngx_mail_handler.c \
507 src/mail/ngx_mail_parse.c"
509 MAIL_POP3_MODULE="ngx_mail_pop3_module"
510 MAIL_POP3_DEPS="src/mail/ngx_mail_pop3_module.h"
511 MAIL_POP3_SRCS="src/mail/ngx_mail_pop3_module.c \
512 src/mail/ngx_mail_pop3_handler.c"
514 MAIL_IMAP_MODULE="ngx_mail_imap_module"
515 MAIL_IMAP_DEPS="src/mail/ngx_mail_imap_module.h"
516 MAIL_IMAP_SRCS="src/mail/ngx_mail_imap_module.c \
517 src/mail/ngx_mail_imap_handler.c"
519 MAIL_SMTP_MODULE="ngx_mail_smtp_module"
520 MAIL_SMTP_DEPS="src/mail/ngx_mail_smtp_module.h"
521 MAIL_SMTP_SRCS="src/mail/ngx_mail_smtp_module.c \
522 src/mail/ngx_mail_smtp_handler.c"
524 MAIL_SSL_MODULE="ngx_mail_ssl_module"
525 MAIL_SSL_DEPS="src/mail/ngx_mail_ssl_module.h"
526 MAIL_SSL_SRCS="src/mail/ngx_mail_ssl_module.c"
528 MAIL_AUTH_HTTP_MODULE="ngx_mail_auth_http_module"
529 MAIL_AUTH_HTTP_SRCS="src/mail/ngx_mail_auth_http_module.c"
531 MAIL_PROXY_MODULE="ngx_mail_proxy_module"
532 MAIL_PROXY_SRCS="src/mail/ngx_mail_proxy_module.c"
534 NGX_GOOGLE_PERFTOOLS_MODULE=ngx_google_perftools_module
535 NGX_GOOGLE_PERFTOOLS_SRCS=src/misc/ngx_google_perftools_module.c
537 NGX_CPP_TEST_SRCS=src/misc/ngx_cpp_test_module.cpp
539 NGX_OBSD_MALLOC_SRCS=src/os/unix/ngx_obsd_malloc.c
541 NGX_JEMALLOC_SRCS=src/os/unix/ngx_jemalloc.c
543 NGX_STATUS_MODULE=ngx_status_module
544 NGX_STATUS_SRCS=src/core/ngx_status.c
545 NGX_STATUS_DEPS=src/core/ngx_status.h
547 HTTP_STATUS_TXT_MODULE=ngx_http_status_txt_module
548 HTTP_STATUS_TXT_SRCS=src/http/modules/ngx_http_status_txt_module.c
550 HTTP_STATUS_XML_MODULE=ngx_http_status_xml_module
551 HTTP_STATUS_XML_SRCS=src/http/modules/ngx_http_status_xml_module.c