﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	uname	nginx_version
1115	Skeleton for dynamic module's config file shows invalid example	Whissi@…		"Hi,

documentation at https://www.nginx.com/resources/wiki/extending/converting/#converting-a-config-file recommends the following skeleton for module's config files to decide whether the module should be build as dynamic or static module:

{{{#!bash
if test -n ""$ngx_module_link""; then
}}}

However the [https://www.nginx.com/resources/wiki/extending/converting/#complex-example complex example] says

> When compiling a module $ngx_module_link is set to ADDON for compiling a module as a static module and DYNAMIC when compiling as a Dynamic Module. The static compilation calls auto/module twice, once for the CORE module and once for the HTTP module. Whereas the dynamic compilation happens in a single module.

So if `$ngx_module_link` really is set to ''ADDON'' or ''DYNAMIC'' the first example will never allow build a static module.


And it looks like some 3rd party addons have already adopted the change resulting in problems, see https://github.com/masterzen/nginx-upload-progress-module/issues/50"	defect	closed	major		documentation	1.11.x	invalid			Linux vm-gentoo-x64 4.8.2-gentoo #1 SMP PREEMPT Mon Oct 17 18:21:15 CEST 2016 x86_64 Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz GenuineIntel GNU/Linux	"nginx version: nginx/1.11.5
built with OpenSSL 1.0.2j  26 Sep 2016
TLS SNI support enabled
configure arguments: --prefix=/usr --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error_log --pid-path=/run/nginx.pid --lock-path=/run/lock/nginx.lock --with-cc-opt=-I/usr/include --with-ld-opt=-L/usr/lib64 --http-log-path=/var/log/nginx/access_log --http-client-body-temp-path=/var/lib/nginx/tmp/client --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --with-compat --with-http_v2_module --with-pcre --with-pcre-jit --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_degradation_module --with-http_flv_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_perl_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_stub_status_module --with-http_sub_module --with-http_xslt_module --with-http_realip_module --add-module=external_module/nginx-upload-progress-module-0.9.2 --add-module=external_module/headers-more-nginx-module-0.31 --add-module=external_module/ngx_cache_purge-2.3 --add-module=external_module/ngx_slowfs_cache-1.10 --add-module=external_module/ngx-fancyindex-0.4.1 --add-module=external_module/ngx_devel_kit-0.3.0 --add-module=external_module/lua-nginx-module-0.10.6 --add-module=external_module/ngx_http_auth_pam_module-1.5.1 --add-module=external_module/nginx_upstream_check_module-f3bdb7b85a194e2ad58e3c306c1d021ee76da2f5 --add-module=external_module/ngx_metrics-0.1.1 --add-module=external_module/naxsi-0.55.1/naxsi_src --add-module=external_module/nginx-dav-ext-module-0.0.3 --add-module=external_module/echo-nginx-module-0.60 --add-module=external_module/modsecurity-2.9.1/nginx/modsecurity --add-module=external_module/nginx-push-stream-module-0.5.2 --add-module=external_module/nginx-goodies-nginx-sticky-module-ng-08a395c66e42 --add-module=external_module/memc-nginx-module-0.17 --add-module=external_module/nginx-auth-ldap-49a8b4d28fc4a518563c82e0b52821e5f37db1fc --without-http-cache --with-http_ssl_module --with-stream_geoip_module --with-stream_ssl_preread_module --with-stream --with-stream_ssl_module --without-mail_imap_module --without-mail_pop3_module --without-mail_smtp_module --user=nginx --group=nginx
"
