Mercurial > hg > nginx
comparison auto/install @ 6383:85dea406e18f
Dynamic modules.
The auto/module script is extended to understand ngx_module_link=DYNAMIC.
When set, it links the module as a shared object rather than statically
into nginx binary. The module can later be loaded using the "load_module"
directive.
New auto/module parameter ngx_module_order allows to define module loading
order in complex cases. By default the order is set based on ngx_module_type.
3rd party modules can be compiled dynamically using the --add-dynamic-module
configure option, which will preset ngx_module_link to "DYNAMIC" before
calling the module config script.
Win32 support is rudimentary, and only works when using MinGW gcc (which
is able to handle exports/imports automatically).
In collaboration with Ruslan Ermilov.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 04 Feb 2016 20:25:29 +0300 |
parents | c983c8dea44c |
children | cfc3cfa434ec |
comparison
equal
deleted
inserted
replaced
6382:392959224560 | 6383:85dea406e18f |
---|---|
22 | 22 |
23 *) | 23 *) |
24 NGX_SBIN_PATH=$NGX_PREFIX/$NGX_SBIN_PATH | 24 NGX_SBIN_PATH=$NGX_PREFIX/$NGX_SBIN_PATH |
25 ;; | 25 ;; |
26 esac | 26 esac |
27 | |
28 | |
29 case ".$NGX_MODULES_PATH" in | |
30 ./*) | |
31 ;; | |
32 | |
33 *) | |
34 NGX_MODULES_PATH=$NGX_PREFIX/$NGX_MODULES_PATH | |
35 ;; | |
36 esac | |
37 | |
38 NGX_MODULES_PATH=`dirname $NGX_MODULES_PATH/.` | |
27 | 39 |
28 | 40 |
29 case ".$NGX_CONF_PATH" in | 41 case ".$NGX_CONF_PATH" in |
30 ./*) | 42 ./*) |
31 ;; | 43 ;; |
156 END | 168 END |
157 | 169 |
158 fi | 170 fi |
159 | 171 |
160 | 172 |
173 if test -n "$NGX_MODULES"; then | |
174 cat << END >> $NGX_MAKEFILE | |
175 | |
176 test -d '\$(DESTDIR)$NGX_MODULES_PATH' \ | |
177 || mkdir -p '\$(DESTDIR)$NGX_MODULES_PATH' | |
178 cp $NGX_MODULES '\$(DESTDIR)$NGX_MODULES_PATH' | |
179 END | |
180 | |
181 fi | |
182 | |
183 | |
161 # create Makefile | 184 # create Makefile |
162 | 185 |
163 cat << END >> Makefile | 186 cat << END >> Makefile |
164 | 187 |
165 build: | 188 build: |
166 \$(MAKE) -f $NGX_MAKEFILE | 189 \$(MAKE) -f $NGX_MAKEFILE |
190 \$(MAKE) -f $NGX_MAKEFILE modules | |
167 \$(MAKE) -f $NGX_MAKEFILE manpage | 191 \$(MAKE) -f $NGX_MAKEFILE manpage |
168 | 192 |
169 install: | 193 install: |
170 \$(MAKE) -f $NGX_MAKEFILE install | 194 \$(MAKE) -f $NGX_MAKEFILE install |
171 | 195 |