nginx 0.1.19
[nginx-catap.git] / auto / modules
blob1fe9ac8d1bda5908d67de7d97a056dcf140824bb
2 # Copyright (C) Igor Sysoev
5 if [ $EVENT_SELECT = NO -a $EVENT_FOUND = NO ]; then
6     EVENT_SELECT=YES
7 fi
9 if [ $EVENT_SELECT = YES ]; then
10     have=NGX_HAVE_SELECT . auto/have
11     CORE_SRCS="$CORE_SRCS $SELECT_SRCS"
12     EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE"
16 if [ $EVENT_POLL = NO -a $EVENT_FOUND = NO ]; then
17     EVENT_POLL=YES
20 if [ $EVENT_POLL = YES ]; then
21     have=NGX_HAVE_POLL . auto/have
22     CORE_SRCS="$CORE_SRCS $POLL_SRCS"
23     EVENT_MODULES="$EVENT_MODULES $POLL_MODULE"
27 if [ $NGX_TEST_BUILD_DEVPOLL = YES ]; then
28     have=NGX_HAVE_DEVPOLL . auto/have
29     have=NGX_TEST_BUILD_DEVPOLL . auto/have
30     EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE"
31     CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS"
34 if [ $NGX_TEST_BUILD_EPOLL = YES ]; then
35     have=NGX_HAVE_EPOLL . auto/have
36     have=NGX_TEST_BUILD_EPOLL . auto/have
37     EVENT_MODULES="$EVENT_MODULES $EPOLL_MODULE"
38     CORE_SRCS="$CORE_SRCS $EPOLL_SRCS"
41 if [ $NGX_TEST_BUILD_RTSIG = YES ]; then
42     have=NGX_HAVE_RTSIG . auto/have
43     have=NGX_TEST_BUILD_RTSIG . auto/have
44     EVENT_MODULES="$EVENT_MODULES $RTSIG_MODULE"
45     CORE_SRCS="$CORE_SRCS $RTSIG_SRCS"
48 if [ $NGX_TEST_BUILD_SOLARIS_SENDFILEV = YES ]; then
49     have=NGX_TEST_BUILD_SOLARIS_SENDFILEV . auto/have
50     CORE_SRCS="$CORE_SRCS $SOLARIS_SENDFILEV_SRCS"
54 # the filter order is important
55 #     ngx_http_write_filter
56 #     ngx_http_header_filter
57 #     ngx_http_chunked_filter
58 #     ngx_http_range_header_filter
59 #     ngx_http_ssl_filter
60 #     ngx_http_gzip_filter
61 #     ngx_http_charset_filter
62 #     ngx_http_ssi_filter
63 #     ngx_http_headers_filter
64 #     ngx_http_copy_filter
65 #     ngx_http_range_body_filter
66 #     ngx_http_not_modified_filter
68 HTTP_FILTER_MODULES="$HTTP_WRITE_FILTER_MODULE \
69                      $HTTP_HEADER_FILTER_MODULE \
70                      $HTTP_CHUNKED_FILTER_MODULE \
71                      $HTTP_RANGE_HEADER_FILTER_MODULE"
73 if [ $HTTP_GZIP = YES ]; then
74     have=NGX_HTTP_GZIP . auto/have
75     USE_ZLIB=YES
76     HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_GZIP_FILTER_MODULE"
77     HTTP_SRCS="$HTTP_SRCS $HTTP_GZIP_SRCS"
80 if [ $HTTP_CHARSET = YES ]; then
81     have=NGX_HTTP_CHARSET . auto/have
82     HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_CHARSET_FILTER_MODULE"
83     HTTP_SRCS="$HTTP_SRCS $HTTP_CHARSET_SRCS"
86 if [ $HTTP_SSI = YES ]; then
87     have=NGX_HTTP_SSI . auto/have
88     HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_SSI_FILTER_MODULE"
89     HTTP_SRCS="$HTTP_SRCS $HTTP_SSI_SRCS"
92 if [ $HTTP_USERID = YES ]; then
93     HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_USERID_FILTER_MODULE"
94     HTTP_SRCS="$HTTP_SRCS $HTTP_USERID_SRCS"
97 HTTP_MODULES="$HTTP_MODULES $HTTP_STATIC_MODULE"
99 if [ $HTTP_AUTOINDEX = YES ]; then
100     have=NGX_HTTP_AUTOINDEX . auto/have
101     HTTP_MODULES="$HTTP_MODULES $HTTP_AUTOINDEX_MODULE"
102     HTTP_SRCS="$HTTP_SRCS $HTTP_AUTOINDEX_SRCS"
105 HTTP_MODULES="$HTTP_MODULES $HTTP_INDEX_MODULE"
107 if [ $HTTP_ACCESS = YES ]; then
108     have=NGX_HTTP_ACCESS . auto/have
109     HTTP_MODULES="$HTTP_MODULES $HTTP_ACCESS_MODULE"
110     HTTP_SRCS="$HTTP_SRCS $HTTP_ACCESS_SRCS"
113 if [ $HTTP_STATUS = YES ]; then
114     have=NGX_HTTP_STATUS . auto/have
115     HTTP_MODULES="$HTTP_MODULES $HTTP_STATUS_MODULE"
116     HTTP_SRCS="$HTTP_SRCS $HTTP_STATUS_SRCS"
119 if [ $HTTP_GEO = YES ]; then
120     have=NGX_HTTP_GEO . auto/have
121     HTTP_MODULES="$HTTP_MODULES $HTTP_GEO_MODULE"
122     HTTP_SRCS="$HTTP_SRCS $HTTP_GEO_SRCS"
125 if [ $HTTP_REWRITE = YES -a $USE_PCRE != DISABLED ]; then
126     have=NGX_HTTP_REWRITE . auto/have
127     USE_PCRE=YES
128     HTTP_MODULES="$HTTP_MODULES $HTTP_REWRITE_MODULE"
129     HTTP_SRCS="$HTTP_SRCS $HTTP_REWRITE_SRCS"
132 if [ $HTTP_SSL = YES ]; then
133     USE_OPENSSL=YES
134     have=NGX_HTTP_SSL . auto/have
135     HTTP_MODULES="$HTTP_MODULES $HTTP_SSL_MODULE"
136     HTTP_DEPS="$HTTP_DEPS $HTTP_SSL_DEPS"
137     HTTP_SRCS="$HTTP_SRCS $HTTP_SSL_SRCS"
140 if [ $HTTP_PROXY = YES ]; then
141     have=NGX_HTTP_PROXY . auto/have
142     #USE_MD5=YES
143     HTTP_MODULES="$HTTP_MODULES $HTTP_PROXY_MODULE"
144     HTTP_INCS="$HTTP_INCS $HTTP_PROXY_INCS"
145     HTTP_DEPS="$HTTP_DEPS $HTTP_PROXY_DEPS"
146     HTTP_SRCS="$HTTP_SRCS $HTTP_PROXY_SRCS"
149 if [ $HTTP_FASTCGI = YES ]; then
150     HTTP_MODULES="$HTTP_MODULES $HTTP_FASTCGI_MODULE"
151     HTTP_SRCS="$HTTP_SRCS $HTTP_FASTCGI_SRCS"
154 # STUB
155 #USE_MD5=YES
156 #HTTP_SRCS="$HTTP_SRCS $HTPP_CACHE_SRCS"
157 #HTTP_SRCS="$HTTP_SRCS $HTPP_FILE_CACHE_SRCS"
159 if [ $HTTP_STUB_STATUS = YES ]; then
160     have=NGX_STAT_STUB . auto/have
161     HTTP_MODULES="$HTTP_MODULES ngx_http_stub_status_module"
162     HTTP_SRCS="$HTTP_SRCS src/http/modules/ngx_http_stub_status_module.c"
165 #if [ -r $NGX_OBJS/auto ]; then
166 #    . $NGX_OBJS/auto
170 if test -n "$NGX_ADDONS"; then
172     echo configuring additional modules
174     for ngx_addon_dir in $NGX_ADDONS
175     do
176         echo "adding module in $ngx_addon_dir"
178         if test -f $ngx_addon_dir/config; then
179             . $ngx_addon_dir/config
181             echo " + $ngx_addon_name was configured"
183         else
184             echo "$0: error: no $ngx_addon_dir/config was found"
185             exit 1
186         fi
187     done
191 modules="$CORE_MODULES $EVENT_MODULES"
193 if [ $HTTP = YES ]; then
194     modules="$modules $HTTP_MODULES $HTTP_FILTER_MODULES \
195              $HTTP_HEADERS_FILTER_MODULE \
196              $HTTP_COPY_FILTER_MODULE \
197              $HTTP_RANGE_BODY_FILTER_MODULE \
198              $HTTP_NOT_MODIFIED_FILTER_MODULE"
200     NGX_ADDON_DEPS="$NGX_ADDON_DEPS \$(HTTP_DEPS)"
204 IMAP_MODULES=$IMAP_MODULE
206 if [ $IMAP = YES ]; then
207     modules="$modules $IMAP_MODULES"
211 cat << END                                    > $NGX_MODULES_C
213 #include <ngx_config.h>
214 #include <ngx_core.h>
216 $NGX_PRAGMA
220 for mod in $modules
222     echo "extern ngx_module_t  $mod;"         >> $NGX_MODULES_C
223 done
225 echo                                          >> $NGX_MODULES_C
226 echo 'ngx_module_t *ngx_modules[] = {'        >> $NGX_MODULES_C
228 for mod in $modules
230     echo "    &$mod,"                         >> $NGX_MODULES_C
231 done
233 cat << END                                    >> $NGX_MODULES_C
234     NULL