diff --git a/.hgignore b/.hgignore
new file mode 100644
index 0000000..b794689
--- /dev/null
+++ b/.hgignore
@@ -0,0 +1,4 @@
+syntax:glob
+.git/
+subinclude:contrib/.hgignore
+subinclude:contrib/tarballs/.hgignore
diff --git a/alpine/APKBUILD-base.in b/alpine/APKBUILD-base.in
index e75e74a..9dc1068 100644
--- a/alpine/APKBUILD-base.in
+++ b/alpine/APKBUILD-base.in
@@ -9,7 +9,7 @@
 pkgver=$_base_version
 pkgrel=$_base_release
 pkgdesc="High performance web server"
-url="http://nginx.org/"
+url="https://nginx.org/"
 arch="all"
 license="2-clause BSD-like license"
 provides="nginx-r$_base_version"
@@ -22,8 +22,7 @@
 pkggroups=""
 install="$pkgname.pre-install $pkgname.post-install $pkgname.pre-deinstall $pkgname.post-upgrade"
 
-# we would like to ship all docs/licenses in the base package
-#subpackages="$pkgname-doc"
+subpackages="$pkgname-dbg"
 
 replaces="nginx-common nginx-initscripts nginx-lua nginx-rtmp"
 source="nginx-$_base_version.tar.gz
diff --git a/alpine/APKBUILD-module.in b/alpine/APKBUILD-module.in
index e986377..119a1c8 100644
--- a/alpine/APKBUILD-module.in
+++ b/alpine/APKBUILD-module.in
@@ -9,7 +9,7 @@
 pkgver=%%MODULE_VERSION_PREFIX%%%%MODULE_VERSION%%
 pkgrel=%%MODULE_RELEASE%%
 pkgdesc="%%SUMMARY%%"
-url="http://nginx.org/"
+url="https://nginx.org/"
 arch="all"
 license="2-clause BSD-like license"
 depends="nginx-r$_base_version %%MODULE_DEPENDS%%"
@@ -23,8 +23,7 @@
 pkggroups=""
 install="$pkgname.post-install"
 
-# we would like to ship all docs/licenses in the base package
-#subpackages="$pkgname-doc"
+subpackages="$pkgname-dbg"
 
 source="nginx-module-%%MODULE%%-$_base_version.tar.gz
 	%%MODULE_SOURCES%%
@@ -34,12 +33,75 @@
 
 _modules_dir="usr/lib/nginx/modules"
 
+unpack() {
+	local u
+	verify || return 1
+	initdcheck || return 1
+	mkdir -p "$srcdir"
+	local gunzip=$(command -v pigz || echo gunzip)
+	[ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
+	for u in $source; do
+		local s
+		local done=1
+		if is_remote "$u"; then
+			s="$SRCDEST/$(filename_from_uri $u)"
+		else
+			s="$startdir/$u"
+		fi
+		case "$s" in
+			*.tar)
+				done=0
+				msg "Unpacking $s..."
+				tar -C "$srcdir" -xf "$s" || return 1;;
+			*.tar.gz|*.tgz)
+				done=0
+				msg "Unpacking $s..."
+				$gunzip -c "$s" | tar -C "$srcdir" -x || return 1;;
+			*.tar.bz2)
+				done=0
+				msg "Unpacking $s..."
+				tar -C "$srcdir" -jxf "$s" || return 1;;
+			*.tar.lz)
+				done=0
+				msg "Unpacking $s..."
+				tar -C "$srcdir" --lzip -xf "$s" || return 1;;
+			*.tar.lzma)
+				done=0
+				msg "Unpacking $s..."
+				unlzma -T 0 -c "$s" | tar -C "$srcdir" -x  \
+					|| return 1;;
+			*.tar.xz)
+				done=0
+				msg "Unpacking $s..."
+				local threads_opt
+				if [ $(readlink -f $(command -v unxz)) != "/bin/busybox" ]; then
+					threads_opt="--threads=0"
+				fi
+				unxz $threads_opt -c "$s" | tar -C "$srcdir" -x || return 1;;
+			*.zip)
+				done=0
+				msg "Unpacking $s..."
+				unzip -n -q "$s" -d "$srcdir" || return 1;;
+		esac
+		if [ $done -eq 0 ]; then
+			bs=`basename $s`
+			sn=`echo $bs | sed -e 's/-[0-9].*$//'`
+			if [ "$sn" = "$bs" ] ; then
+				sn=${bs%-*}
+			fi
+			( cd "$srcdir" && \
+				sndir=`find * -type d -maxdepth 1 -name "${sn}-*" | head -1` ; \
+				test -n "$sndir" && ln -s ${sndir} ${sn} ||: )
+		fi
+	done
+}
+
 prepare() {
 	local file; for file in $source; do
 		case $file in
 		*~*.patch)
 			msg $file
-			cd "$srcdir"/${file%%~*}-*
+			cd "$srcdir"/${file%%~*}
 			patch -p 1 -i "$srcdir/$file"
 			;;
 		*.patch)
@@ -68,13 +130,13 @@
 
 	cd "$builddir"
 
-	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_MODULE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT_DEBUG%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT_DEBUG%%" --with-debug
+	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT_DEBUG%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT_DEBUG%%" --with-debug
 	make $_make_opts modules
 	for so in `find objs/ -maxdepth 1 -type f -name "*.so"`; do \
 		debugso=`echo ${so} | sed -e "s|.so|-debug.so|"` ; \
 		mv ${so} ${debugso} ; \
         done
-	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_MODULE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT%%"
+	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT%%"
 	make $_make_opts modules
 }
 
diff --git a/alpine/APKBUILD-plus-module.in b/alpine/APKBUILD-plus-module.in
index e62b9db..3bbcf63 100644
--- a/alpine/APKBUILD-plus-module.in
+++ b/alpine/APKBUILD-plus-module.in
@@ -69,13 +69,13 @@
 
 	cd "$builddir"
 
-	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_MODULE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT_DEBUG%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT_DEBUG%%" --with-debug
+	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT_DEBUG%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT_DEBUG%%" --with-debug
 	make $_make_opts modules
 	for so in `find objs/ -maxdepth 1 -type f -name "*.so"`; do \
 		debugso=`echo ${so} | sed -e "s|.so|-debug.so|"` ; \
 		mv ${so} ${debugso} ; \
         done
-	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_MODULE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT%%"
+	CFLAGS= %%MODULE_ENV%% ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$CFLAGS %%MODULE_CC_OPT%%" --with-ld-opt="$LDFLAGS %%MODULE_LD_OPT%%"
 	make $_make_opts modules
 }
 
diff --git a/alpine/Makefile b/alpine/Makefile
index 0e75654..66debe9 100644
--- a/alpine/Makefile
+++ b/alpine/Makefile
@@ -10,6 +10,8 @@
 DOCS?=		../docs
 SRCPATH?=	../..
 MODSRC_PREFIX=	../
+CONTRIB?=	../contrib
+CONTRIB:=	$(abspath $(CONTRIB))
 
 MODULE_TARGET?= oss
 
@@ -33,6 +35,8 @@
 default:
 	@echo "valid targets: all base $(addprefix module-, $(MODULES)) test test-debug"
 
+BASE_MODULES=	geoip image-filter njs perl xslt
+
 MODULES=
 
 -include Makefile.module-*
@@ -79,12 +83,9 @@
 	--with-stream_ssl_module \
 	--with-stream_ssl_preread_module
 
-BASE_MODULE_CONFIGURE_ARGS=\
-	--with-compat
-
 export CR=\\n
 
-modname = $(shell echo $1 | cut -d '-' -f 3- | tr '-' '_')
+modname = $(shell echo $1 | tr '-' '_')
 
 ${HOME}/.abuild:
 	mkdir -p ${HOME}/.abuild
@@ -96,9 +97,23 @@
 ${HOME}/.abuild/abuild.conf: ${HOME}/.abuild/abuild-key.rsa | ${HOME}/.abuild
 	echo PACKAGER_PRIVKEY=\"${HOME}/.abuild/abuild-key.rsa\" > ${HOME}/.abuild/abuild.conf
 
-all:	base modules
+list-base:
+	@printf "%-20s\t%s\n" nginx $(BASE_VERSION)-$(BASE_RELEASE)
+
+list-module-%:
+	@printf "%-20s\t%s\n" $* $(MODULE_VERSION_$(call modname, $*))-$(MODULE_RELEASE_$(call modname, $*))
+
+list-all-modules: $(addprefix list-module-, $(MODULES))
+
+list-base-modules: $(addprefix list-module-, $(BASE_MODULES))
+
+list: list-base list-all-modules
+
+all:	base base-modules
 	@echo "===> all done"
 
+base-modules:	base $(addprefix module-, $(BASE_MODULES))
+
 modules:	base $(addprefix module-, $(MODULES))
 
 abuild:	abuild-base $(addprefix abuild-module-, $(MODULES))
@@ -110,7 +125,8 @@
 	touch base
 
 $(BASE_SRC):
-	wget http://nginx.org/download/$(BASE_SRC)
+	cd $(CONTRIB) && make .sum-nginx
+	ln -s $(CONTRIB)/tarballs/$(BASE_SRC) $(BASE_SRC)
 
 abuild-base: $(BASE_SRC)
 	@echo "===> Creating $@"
@@ -135,7 +151,7 @@
 	ln -s abuild-$@/pkg/$(MODULE_PACKAGE_PREFIX)-$*/usr/lib/nginx/modules $@ && \
 	touch $@
 
-abuild-module-%: $(BASE_SRC)
+abuild-module-%: $(BASE_SRC) .deps-module-%
 	@echo "===> Creating $@"
 	@{ \
 	set -e ; \
@@ -145,13 +161,16 @@
 	mkdir -p $${builddir} ; \
 	cp $(BASE_SRC) $${builddir}/nginx-module-$${module_asis}-$(BASE_VERSION).tar.gz ; \
 	sources= ; \
-	for src in $(MODULE_SOURCES_$(call modname, $@)); do \
-		cp src/$${src} $${builddir}/ ; \
+	for src in $(MODULE_SOURCES_$(call modname, $*)); do \
+		cp $(CONTRIB)/tarballs/$${src} $${builddir}/ ; \
 		sources="$${sources} $${src}" ; \
 	done ; \
-	for p in $(MODULE_PATCHES_$(call modname, $@)); do \
-		cp src/$${p} $${builddir}/ ; \
-		sources="$${sources} $${p}" ; \
+	for p in $(MODULE_PATCHES_$(call modname, $*)); do \
+		dn=`dirname $${p}` ; \
+		bdn=`basename $${dn}` ; \
+		pn="$${bdn}~`basename $${p}`" ; \
+		cp $${p} $${builddir}/$${pn} ; \
+		sources="$${sources} $${pn}" ; \
 	done ; \
 	module_copyright="nginx-module-$${module_asis}.copyright" ; \
 	cp -p $(DOCS)/$${module_copyright} $${builddir}/COPYRIGHT ; \
@@ -160,34 +179,34 @@
 	else \
 		postinstall_script=$${builddir}/nginx-plus-module-$${module_asis}.post-install ; \
 	fi ; \
-	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	addcontroltags=`echo "$$MODULE_ADD_CONTROL_TAGS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	buildenv=`echo "$$MODULE_ENV_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	post=`echo "$$MODULE_POST_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	addcontroltags=`echo "$$MODULE_ADD_CONTROL_TAGS_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	buildenv=`echo "$$MODULE_ENV_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	post=`echo "$$MODULE_POST_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
 	cat $(APKBUILD_TEMPLATE) | sed \
 		-e "s#%%MODULE%%#$${module_asis}#g" \
-		-e "s#%%SUMMARY%%#nginx $(MODULE_SUMMARY_$(call modname, $@))#g" \
-		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $@))#g" \
+		-e "s#%%SUMMARY%%#nginx $(MODULE_SUMMARY_$(call modname, $*))#g" \
+		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $*))#g" \
 		-e "s#%%BASE_VERSION%%#$(BASE_VERSION)#g" \
 		-e "s#%%BASE_RELEASE%%#$(BASE_RELEASE)#g" \
+		-e 's#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g' \
 		-e "s#%%PLUS_VERSION%%#$(PLUS_VERSION)#g" \
-		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
-		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
-		-e "s#%%MODULE_VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
-		-e 's#%%BASE_MODULE_CONFIGURE_ARGS%%#$(BASE_MODULE_CONFIGURE_ARGS)#g' \
-		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $@))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $*))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $*))#g" \
+		-e "s#%%MODULE_VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $*))#g" \
+		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $*))#g" \
 		-e "s#%%MODULE_SOURCES%%#$${sources}#g" \
-		-e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$(call modname, $@))#g" \
-		-e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$(call modname, $@))#g" \
-		-e "s#%%MODULE_PROVIDES%%#$(MODULE_PROVIDES_$(call modname, $@))#g" \
+		-e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$(call modname, $*))#g" \
+		-e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$(call modname, $*))#g" \
+		-e "s#%%MODULE_PROVIDES%%#$(MODULE_PROVIDES_$(call modname, $*))#g" \
 		-e "s#%%MODULE_PREBUILD%%#$${prebuild}#g" \
 		-e "s#%%MODULE_PREINSTALL%%#$${preinstall}#g" \
-		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $@))#g" \
+		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $*))#g" \
 		-e "s#%%ADD_CONTROL_TAGS%%#$${addcontroltags}#g" \
 		-e "s#%%MODULE_ENV%%#$${buildenv}#g" \
 		-e "s#%%MODULE_SRCDIR%%#$(MODULE_SRCDIR)#g" \
@@ -197,6 +216,9 @@
 	> $${postinstall_script} ; \
 	}
 
+.deps-module-%:
+	touch $@
+
 nginx-tests:
 	@{ \
 	if [ -d "$(SRCPATH)/nginx-tests" ]; then \
@@ -204,7 +226,7 @@
 		cp -rP $(SRCPATH)/nginx-tests nginx-tests ; \
 	else \
 		echo "===> Cloning tests" ; \
-		hg clone http://hg.nginx.org/nginx-tests ; \
+		hg clone https://hg.nginx.org/nginx-tests ; \
 	fi ; \
 	}
 
@@ -213,6 +235,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -220,12 +244,16 @@
 		globals="$$globals env PERL5LIB=$$pwd/abuild-module-perl/src/$(MODULE_SRCDIR)/objs/src/http/modules/perl:$$pwd/abuild-module-perl/src/$(MODULE_SRCDIR)/objs/src/http/modules/perl/blib/arch;" ; \
 	fi ; \
 	if [ -d $$pwd/abuild-module-modsecurity ]; then \
-		export LD_LIBRARY_PATH=$$pwd/abuild-module-modsecurity/src/modsecurity-v$(LIBMODSECURITY_VERSION)/local/lib ; \
+		export LD_LIBRARY_PATH=$$pwd/abuild-module-modsecurity/src/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
 	fi ; \
 	if [ -d $$pwd/abuild-module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$$pwd/abuild-module-opentracing/src/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ; \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove $$PROVE_ARGS . ; \
+	if [ -d $$pwd/abuild-module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/abuild-module-lua/src/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/abuild-module-lua/src/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
 	}
 
 test-debug: base nginx-tests
@@ -233,6 +261,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module-debug.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -240,16 +270,45 @@
 		globals="$$globals env PERL5LIB=$$pwd/abuild-module-perl/src/$(MODULE_SRCDIR)/objs/src/http/modules/perl:$$pwd/abuild-module-perl/src/$(MODULE_SRCDIR)/objs/src/http/modules/perl/blib/arch;" ; \
 	fi ; \
 	if [ -d $$pwd/abuild-module-modsecurity ]; then \
-		export LD_LIBRARY_PATH=$$pwd/abuild-module-modsecurity/src/modsecurity-v$(LIBMODSECURITY_VERSION)/local/lib ; \
+		export LD_LIBRARY_PATH=$$pwd/abuild-module-modsecurity/src/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
 	fi ; \
 	if [ -d $$pwd/abuild-module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$$pwd/abuild-module-opentracing/src/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ; \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" prove $$PROVE_ARGS . ; \
+	if [ -d $$pwd/abuild-module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/abuild-module-lua/src/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/abuild-module-lua/src/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
+	}
+
+test-modules: $(addprefix test-module-, $(MODULES))
+
+test-module-%: base nginx-tests module-%
+	@{ \
+	module=`echo $@ | cut -d '-' -f 3-` ; \
+	testdir="$(MODULE_TESTS_$(shell echo $@ | cut -d '-' -f 3-))" ; \
+	if [ -z "$$testdir" ]; then \
+		echo "---> Skipping, no tests defined for $$module module" ; \
+		exit 0 ; \
+	fi ; \
+	pwd=`pwd` ; \
+	globals= ; \
+	if [ "$$module" = "modsecurity" ]; then \
+		export LD_LIBRARY_PATH=$$pwd/abuild-module-modsecurity/src/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
+	fi ; \
+	for so in `find module-$${module}/ -maxdepth 1 -type f -name "*module.so"`; do \
+		globals="$$globals load_module $$pwd/$$so;" ; \
+	done ; \
+	if [ ! -d nginx-tests/module-$${module} ]; then \
+		cp -r $${pwd}/abuild-module-$${module}/src/$${testdir} nginx-tests/module-$${module} ; \
+		ln -fs ../lib nginx-tests/module-$${module}/lib ; \
+	fi ; \
+	cd nginx-tests/module-$${module} && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove $$PROVE_ARGS . ; \
 	}
 
 clean:
-	@rm -rf base abuild-base abuild-module-* module-* $(BASE_SRC) nginx-tests
+	@rm -rf base abuild-base abuild-module-* module-* $(BASE_SRC) nginx-tests .deps-module-*
 
 .PHONY:	default all modules abuild test test-debug clean
 
diff --git a/alpine/Makefile.module-brotli b/alpine/Makefile.module-brotli
new file mode 100644
index 0000000..6645b56
--- /dev/null
+++ b/alpine/Makefile.module-brotli
@@ -0,0 +1,39 @@
+MODULES+=	brotli
+
+MODULE_SUMMARY_brotli=	3rd-party brotli compression dynamic modules
+
+include $(CONTRIB)/src/ngx_brotli/version
+
+MODULE_VERSION_brotli=	$(NGX_BROTLI_VERSION)
+MODULE_RELEASE_brotli=	1
+
+MODULE_VERSION_PREFIX_brotli=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_brotli=	ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz
+
+MODULE_CONFARGS_brotli=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_brotli-$(NGX_BROTLI_VERSION)rc
+
+.deps-module-brotli:
+	cd $(CONTRIB) && make .sum-ngx_brotli
+	touch $@
+
+MODULE_BUILD_DEPENDS_brotli=brotli-dev
+
+define MODULE_POST_brotli
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_brotli) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_brotli_filter_module.so;
+    load_module modules/ngx_http_brotli_static_module.so;
+
+Please refer to the modules documentation for further details:
+https://github.com/google/ngx_brotli
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_brotli
diff --git a/alpine/Makefile.module-encrypted-session b/alpine/Makefile.module-encrypted-session
new file mode 100644
index 0000000..1ea5fae
--- /dev/null
+++ b/alpine/Makefile.module-encrypted-session
@@ -0,0 +1,54 @@
+MODULES+=	encrypted-session
+
+MODULE_SUMMARY_encrypted_session=	3rd-party encrypted session dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/encrypted-session-nginx-module/version
+
+MODULE_VERSION_encrypted_session=	$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+MODULE_RELEASE_encrypted_session=	1
+
+MODULE_VERSION_PREFIX_encrypted_session=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_encrypted_session= 	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+					encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_encrypted_session=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+					--add-dynamic-module=$(MODSRC_PREFIX)encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+
+.deps-module-encrypted-session:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-encrypted-session-nginx-module
+	touch $@
+
+prerequisites-for-module-encrypted-session: module-ndk
+
+MODULE_DEPENDS_encrypted_session=$(NDK_DEPENDENCY_TAG)
+
+define MODULE_PREINSTALL_encrypted_session
+	rm -f objs/ndk_http_module-debug.so
+	rm -f objs/ndk_http_module.so
+endef
+export MODULE_PREINSTALL_encrypted_session
+
+define MODULE_POST_encrypted_session
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_encrypted_session) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_encrypted_session_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/encrypted-session-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_encrypted_session
diff --git a/alpine/Makefile.module-geoip b/alpine/Makefile.module-geoip
index 1b421d7..1b98c00 100644
--- a/alpine/Makefile.module-geoip
+++ b/alpine/Makefile.module-geoip
@@ -10,7 +10,6 @@
 			--with-stream_geoip_module=dynamic
 
 MODULE_BUILD_DEPENDS_geoip=geoip-dev
-MODULE_DEPENDS_geoip=geoip
 
 define MODULE_ADD_CONTROL_TAGS_geoip
 replaces="nginx-mod-http-geoip"
@@ -29,8 +28,8 @@
     load_module modules/ngx_stream_geoip_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_geoip_module.html
-http://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
+https://nginx.org/en/docs/http/ngx_http_geoip_module.html
+https://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/Makefile.module-geoip2 b/alpine/Makefile.module-geoip2
new file mode 100644
index 0000000..39eebc0
--- /dev/null
+++ b/alpine/Makefile.module-geoip2
@@ -0,0 +1,42 @@
+MODULES+=	geoip2
+
+MODULE_SUMMARY_geoip2=	3rd-party GeoIP2 dynamic modules
+
+include $(CONTRIB)/src/ngx_http_geoip2_module/version
+
+MODULE_VERSION_geoip2=	$(GEOIP2_NGINX_MODULE_VERSION)
+MODULE_RELEASE_geoip2=	1
+
+MODULE_VERSION_PREFIX_geoip2=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_geoip2=	ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_geoip2=	--with-stream \
+			--add-dynamic-module=$(MODSRC_PREFIX)ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION)
+
+.deps-module-geoip2:
+	cd $(CONTRIB) && make .sum-ngx_http_geoip2_module
+	touch $@
+
+prerequisites-for-module-geoip2:
+
+MODULE_BUILD_DEPENDS_geoip2=libmaxminddb-dev
+
+define MODULE_POST_geoip2
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_geoip2) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_geoip2_module.so;
+    load_module modules/ngx_stream_geoip2_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/leev/ngx_http_geoip2_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_geoip2
diff --git a/alpine/Makefile.module-headers-more b/alpine/Makefile.module-headers-more
new file mode 100644
index 0000000..168c677
--- /dev/null
+++ b/alpine/Makefile.module-headers-more
@@ -0,0 +1,40 @@
+MODULES+=	headers-more
+
+MODULE_SUMMARY_headers_more=	3rd-party headers-more dynamic module
+
+include $(CONTRIB)/src/headers-more-nginx-module/version
+
+MODULE_VERSION_headers_more=	$(HEADERS_MORE_NGINX_MODULE_VERSION)
+MODULE_RELEASE_headers_more=	1
+
+MODULE_VERSION_PREFIX_headers_more=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_headers_more=	headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_headers_more=	--with-http_dav_module \
+				--with-http_realip_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION)
+
+.deps-module-headers-more:
+	cd $(CONTRIB) && make .sum-headers-more-nginx-module
+	touch $@
+
+prerequisites-for-module-headers-more:
+
+define MODULE_POST_headers_more
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_headers_more) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_headers_more_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/headers-more-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_headers_more
diff --git a/alpine/Makefile.module-image-filter b/alpine/Makefile.module-image-filter
index 7c874e6..f7e1dc6 100644
--- a/alpine/Makefile.module-image-filter
+++ b/alpine/Makefile.module-image-filter
@@ -7,7 +7,6 @@
 
 MODULE_CONFARGS_image_filter=	--with-http_image_filter_module=dynamic
 
-MODULE_DEPENDS_image_filter=libgd
 MODULE_BUILD_DEPENDS_image_filter=gd-dev
 
 define MODULE_ADD_CONTROL_TAGS_image_filter
@@ -26,7 +25,7 @@
     load_module modules/ngx_http_image_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_image_filter_module.html
+https://nginx.org/en/docs/http/ngx_http_image_filter_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/Makefile.module-lua b/alpine/Makefile.module-lua
new file mode 100644
index 0000000..8d66272
--- /dev/null
+++ b/alpine/Makefile.module-lua
@@ -0,0 +1,117 @@
+MODULES+=	lua
+
+MODULE_SUMMARY_lua=	3rd-party Lua dynamic modules
+
+include $(CONTRIB)/src/luajit2/version
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/lua-nginx-module/version
+include $(CONTRIB)/src/stream-lua-nginx-module/version
+include $(CONTRIB)/src/lua-resty-core/version
+include $(CONTRIB)/src/lua-resty-lrucache/version
+
+MODULE_VERSION_lua=	$(LUA_NGINX_MODULE_VERSION)
+MODULE_RELEASE_lua=	1
+
+MODULE_VERSION_PREFIX_lua=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_lua=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+			lua-nginx-module-$(LUA_NGINX_MODULE_VERSION).tar.gz \
+			stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz \
+			luajit2-$(LUAJIT2_VERSION).tar.gz \
+			lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz \
+			lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz
+
+MODULE_PATCHES_lua=	$(CONTRIB)/src/luajit2/Makefile.patch \
+			$(CONTRIB)/src/luajit2/src-luaconf.h.patch \
+			$(CONTRIB)/src/lua-nginx-module/config.patch \
+			$(CONTRIB)/src/stream-lua-nginx-module/config.patch
+
+MODULE_CONFARGS_lua=	--with-http_dav_module \
+			--with-http_realip_module \
+			--with-http_ssl_module \
+			--with-http_v2_module \
+			--with-stream \
+			--with-stream_ssl_module \
+			--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+			--add-dynamic-module=$(MODSRC_PREFIX)lua-nginx-module-$(LUA_NGINX_MODULE_VERSION) \
+			--add-dynamic-module=$(MODSRC_PREFIX)stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION)
+
+.deps-module-lua:
+	cd $(CONTRIB) && make \
+		.sum-luajit2 \
+		.sum-ngx_devel_kit \
+		.sum-lua-nginx-module \
+		.sum-stream-lua-nginx-module \
+		.sum-lua-resty-core \
+		.sum-lua-resty-lrucache
+	touch $@
+
+prerequisites-for-module-lua: module-ndk
+
+MODULE_DEPENDS_lua=$(NDK_DEPENDENCY_TAG)
+
+define MODULE_PREBUILD_lua
+	cd ../luajit2-$(LUAJIT2_VERSION) \&\& \
+	DESTDIR=`pwd` CFLAGS="-fPIC" make $$_make_opts install
+endef
+export MODULE_PREBUILD_lua
+
+define MODULE_ENV_lua
+LUAJIT_INC="../luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1" LUAJIT_LIB="../luajit2-$(LUAJIT2_VERSION)/usr/lib"
+endef
+export MODULE_ENV_lua
+
+define MODULE_PREINSTALL_lua
+	rm -f objs/ndk_http_module-debug.so
+	rm -f objs/ndk_http_module.so
+	mkdir -p "$$pkgdir"/usr/bin
+	mkdir -p "$$pkgdir"/usr/share/man/man1
+        install -m755 ../luajit2-$(LUAJIT2_VERSION)/usr/bin/luajit "$$pkgdir"/usr/bin/nginx-luajit
+        install -m644 ../luajit2-$(LUAJIT2_VERSION)/usr/share/man/man1/luajit.1 "$$pkgdir"/usr/share/man/man1/nginx-luajit.1
+	if [ -z "`echo $subpackages | grep -- -doc`" ]; then
+		gzip "$$pkgdir"/usr/share/man/man1/nginx-luajit.1
+	fi
+	mkdir -p "$$pkgdir"/usr/share/nginx-luajit-2.1/jit
+        for f in `find ../luajit2-$(LUAJIT2_VERSION)/usr/share/nginx-luajit-2.1/jit/ -type f`; do \
+                install -m644 $${f} "$$pkgdir"/usr/share/nginx-luajit-2.1/jit/ ; \
+        done
+	mkdir -p "$$pkgdir"/usr/include/nginx-luajit-2.1
+        for f in `find ../luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1/ -type f`; do \
+                install -m644 $${f} "$$pkgdir"/usr/include/nginx-luajit-2.1/ ; \
+        done
+	mkdir -p "$$pkgdir"/usr/share/nginx-luajit-2.1/resty
+	( cd ../lua-resty-core-$(LUA_RESTY_CORE_VERSION) \&\& \
+		LUA_LIB_DIR="$$pkgdir"/usr/share/nginx-luajit-2.1 make install )
+	( cd ../lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION) \&\& \
+		LUA_LIB_DIR="$$pkgdir"/usr/share/nginx-luajit-2.1 make install )
+
+endef
+export MODULE_PREINSTALL_lua
+
+define MODULE_POST_lua
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_lua) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_lua_module.so;
+    load_module modules/ngx_stream_lua_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+These modules are compiled with LuaJIT 2.1 library.
+The following binary should be used for testing and bytecode generation:
+
+    /usr/bin/nginx-luajit
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/lua-nginx-module
+https://github.com/openresty/stream-lua-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_lua
diff --git a/alpine/Makefile.module-modsecurity b/alpine/Makefile.module-modsecurity
new file mode 100644
index 0000000..3737429
--- /dev/null
+++ b/alpine/Makefile.module-modsecurity
@@ -0,0 +1,84 @@
+MODULES+=	modsecurity
+
+MODULE_SUMMARY_modsecurity=	3rd-party ModSecurity dynamic module
+
+include $(CONTRIB)/src/modsecurity/version
+include $(CONTRIB)/src/modsecurity-nginx/version
+
+MODULE_VERSION_modsecurity=	$(MODSECURITY_NGINX_VERSION)
+MODULE_RELEASE_modsecurity=	1
+LIBMODSECURITY_SOVER=		$(MODSECURITY_VERSION)
+
+MODULE_VERSION_PREFIX_modsecurity=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_modsecurity=	modsecurity-v$(MODSECURITY_VERSION).tar.gz \
+				modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz
+
+MODULE_PATCHES_modsecurity=	$(CONTRIB)/src/modsecurity/PR2348.patch \
+				$(CONTRIB)/src/modsecurity-nginx/PR165.patch
+
+MODULE_CONFARGS_modsecurity=	--add-dynamic-module=$(MODSRC_PREFIX)modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)
+
+.deps-module-modsecurity:
+	cd $(CONTRIB) && make \
+		.sum-modsecurity \
+		.sum-modsecurity-nginx
+	touch $@
+
+prerequisites-for-module-modsecurity:
+
+MODULE_BUILD_DEPENDS_modsecurity=yajl-dev libxml2-dev curl-dev patchelf
+
+define MODULE_PREBUILD_modsecurity
+	cd ../modsecurity-v$(MODSECURITY_VERSION) \&\& \
+	./configure --prefix `pwd`/local --without-lmdb --without-lua \&\& \
+	make $$_make_opts install \&\& make check-TESTS
+	rm -f /tmp/audit_test.log /tmp/audit_test_parallel.log
+	rm -rf /tmp/test
+endef
+export MODULE_PREBUILD_modsecurity
+
+define MODULE_ENV_modsecurity
+MODSECURITY_INC="../modsecurity-v$(MODSECURITY_VERSION)/local/include" \
+MODSECURITY_LIB="../modsecurity-v$(MODSECURITY_VERSION)/local/lib" \
+NGX_IGNORE_RPATH=YES
+endef
+export MODULE_ENV_modsecurity
+
+MODULE_CC_OPT_DEBUG_modsecurity=-DMODSECURITY_DDEBUG=1
+
+define MODULE_PREINSTALL_modsecurity
+	mkdir -p "$$pkgdir"/usr/bin
+	install -m755 -s ../modsecurity-v$(MODSECURITY_VERSION)/local/bin/modsec-rules-check "$$pkgdir"/usr/bin/
+	patchelf --remove-rpath "$$pkgdir"/usr/bin/modsec-rules-check
+	mkdir -p "$$pkgdir"/usr/lib
+	install -m755 ../modsecurity-v$(MODSECURITY_VERSION)/local/lib/libmodsecurity.so.$(LIBMODSECURITY_SOVER) "$$pkgdir"/usr/lib/
+	ln -fs libmodsecurity.so.$(LIBMODSECURITY_SOVER) "$$pkgdir"/usr/lib/libmodsecurity.so.3
+	ln -fs libmodsecurity.so.$(LIBMODSECURITY_SOVER) "$$pkgdir"/usr/lib/libmodsecurity.so
+	mkdir -p "$$pkgdir"/etc/nginx/modsec
+	install -m644 ../modsecurity-v$(MODSECURITY_VERSION)/modsecurity.conf-recommended "$$pkgdir"/etc/nginx/modsec/modsecurity.conf
+	install -m644 ../modsecurity-v$(MODSECURITY_VERSION)/unicode.mapping "$$pkgdir"/etc/nginx/modsec/
+endef
+export MODULE_PREINSTALL_modsecurity
+
+MODULE_TESTS_modsecurity=modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)/tests
+
+define MODULE_POST_modsecurity
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_modsecurity) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_modsecurity_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/SpiderLabs/ModSecurity-nginx
+
+----------------------------------------------------------------------
+BANNER
+
+/sbin/ldconfig
+endef
+export MODULE_POST_modsecurity
diff --git a/alpine/Makefile.module-ndk b/alpine/Makefile.module-ndk
new file mode 100644
index 0000000..6044916
--- /dev/null
+++ b/alpine/Makefile.module-ndk
@@ -0,0 +1,47 @@
+MODULES+=	ndk
+
+MODULE_SUMMARY_ndk=	3rd-party NDK dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+
+MODULE_VERSION_ndk=	$(NGX_DEVEL_KIT_VERSION)
+MODULE_RELEASE_ndk=	1
+
+MODULE_VERSION_PREFIX_ndk=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_ndk=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz
+
+MODULE_CONFARGS_ndk=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION)
+
+.deps-module-ndk:
+	cd $(CONTRIB) && make .sum-ngx_devel_kit
+	touch $@
+
+prerequisites-for-module-ndk:
+
+MODULE_CC_OPT_ndk=-DNDK_SET_VAR -DNDK_UPSTREAM_LIST
+MODULE_CC_OPT_DEBUG_ndk=$(MODULE_CC_OPT_ndk)
+
+ifeq ($(MODULE_TARGET), plus)
+NDK_DEPENDENCY_TAG=nginx-plus-module-ndk-r$(PLUS_VERSION)
+else
+NDK_DEPENDENCY_TAG=nginx-module-ndk-r$(BASE_VERSION)
+endif
+
+define MODULE_POST_ndk
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_ndk) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/simpl/ngx_devel_kit
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_ndk
diff --git a/alpine/Makefile.module-njs b/alpine/Makefile.module-njs
index b75d573..ca0112a 100644
--- a/alpine/Makefile.module-njs
+++ b/alpine/Makefile.module-njs
@@ -1,13 +1,20 @@
 MODULES+=	njs
 
-MODULE_SUMMARY_njs=		njs dynamic modules
+MODULE_SUMMARY_njs=	njs dynamic modules
 
-MODULE_VERSION_njs=		0.5.0
-MODULE_RELEASE_njs=		1
+include $(CONTRIB)/src/njs/version
 
-MODULE_SOURCES_njs=		njs-$(MODULE_VERSION_njs).tar.gz
-MODULE_CONFARGS_njs=		--with-stream \
-				--add-dynamic-module=$(MODSRC_PREFIX)njs-$(MODULE_VERSION_njs)/nginx
+MODULE_VERSION_njs=	$(NJS_VERSION)
+MODULE_RELEASE_njs=	1
+
+MODULE_SOURCES_njs=	njs-$(NJS_VERSION).tar.gz
+
+MODULE_CONFARGS_njs=	--with-stream \
+			--add-dynamic-module=$(MODSRC_PREFIX)njs-$(NJS_VERSION)/nginx
+
+.deps-module-njs:
+	cd $(CONTRIB) && make .sum-njs
+	touch $@
 
 MODULE_VERSION_PREFIX_njs=$(MODULE_TARGET_PREFIX)
 MODULE_BUILD_DEPENDS_njs=libedit-dev
@@ -18,15 +25,15 @@
 export MODULE_ADD_CONTROL_TAGS_njs
 
 define MODULE_PREBUILD_njs
-	cd ../njs-$(MODULE_VERSION_njs) \&\& ./configure \&\& make njs
+	cd ../njs-$(NJS_VERSION) \&\& ./configure \&\& make njs
 endef
 export MODULE_PREBUILD_njs
 
 define MODULE_PREINSTALL_njs
 	mkdir -p "$$pkgdir"/usr/share/doc/nginx-module-njs
-	install -m644 ../njs-$(MODULE_VERSION_njs)/CHANGES "$$pkgdir"/usr/share/doc/nginx-module-njs/
+	install -m644 ../njs-$(NJS_VERSION)/CHANGES "$$pkgdir"/usr/share/doc/nginx-module-njs/
 	mkdir -p "$$pkgdir"/usr/bin
-	install -m755 -s ../njs-$(MODULE_VERSION_njs)/build/njs "$$pkgdir"/usr/bin/
+	install -m755 -s ../njs-$(NJS_VERSION)/build/njs "$$pkgdir"/usr/bin/
 endef
 export MODULE_PREINSTALL_njs
 
@@ -42,9 +49,9 @@
     load_module modules/ngx_stream_js_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/njs/
-http://nginx.org/en/docs/http/ngx_http_js_module.html
-http://nginx.org/en/docs/stream/ngx_stream_js_module.html
+https://nginx.org/en/docs/njs/
+https://nginx.org/en/docs/http/ngx_http_js_module.html
+https://nginx.org/en/docs/stream/ngx_stream_js_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/Makefile.module-opentracing b/alpine/Makefile.module-opentracing
new file mode 100644
index 0000000..784a13c
--- /dev/null
+++ b/alpine/Makefile.module-opentracing
@@ -0,0 +1,94 @@
+MODULES+=	opentracing
+
+MODULE_SUMMARY_opentracing=	3rd-party OpenTracing dynamic module
+
+include $(CONTRIB)/src/opentracing-cpp/version
+include $(CONTRIB)/src/nginx-opentracing/version
+include $(CONTRIB)/src/jaeger-client-cpp/version
+
+MODULE_VERSION_opentracing=	$(NGINX_OPENTRACING_VERSION)
+MODULE_RELEASE_opentracing=	1
+
+MODULE_VERSION_PREFIX_opentracing=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_opentracing=	opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz \
+				nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz \
+				jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz
+
+MODULE_PATCHES_opentracing=	$(CONTRIB)/src/opentracing-cpp/CMakeLists.txt.patch \
+				$(CONTRIB)/src/jaeger-client-cpp/CMakeLists.txt.patch
+
+MODULE_CONFARGS_opentracing=	--add-dynamic-module=$(MODSRC_PREFIX)nginx-opentracing-$(NGINX_OPENTRACING_VERSION)/opentracing
+
+.deps-module-opentracing:
+	cd $(CONTRIB) && make \
+		.sum-opentracing-cpp \
+		.sum-nginx-opentracing \
+		.sum-jaeger-client-cpp
+	touch $@
+
+prerequisites-for-module-opentracing:
+
+MODULE_BUILD_DEPENDS_opentracing=cmake yaml-cpp-dev
+
+define MODULE_PREBUILD_opentracing
+	( cd ../opentracing-cpp-$(OPENTRACING_CPP_VERSION) \&\& \
+		mkdir .build \&\& \
+		cd .build \&\& \
+		cmake .. \&\& \
+		DESTDIR=`pwd`/.. make $$_make_opts install )
+	( cd ../jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION) \&\& \
+		mkdir .build \&\& \
+		cd .build \&\& \
+		OpenTracing_DIR=$$builddir/../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/.build cmake -DCMAKE_BUILD_TYPE=Release -DJAEGERTRACING_PLUGIN=ON -DHUNTER_CONFIGURATION_TYPES=Release -DBUILD_TESTING=OFF ../ -DOPENTRACING_INC=$$builddir/../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include \&\& \
+		DESTDIR=`pwd`/.. make $$_make_opts )
+endef
+export MODULE_PREBUILD_opentracing
+
+MODULE_CC_OPT_opentracing=-I../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include
+MODULE_CC_OPT_DEBUG_opentracing=$(MODULE_CC_OPT_opentracing)
+MODULE_LD_OPT_opentracing=-L../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib
+MODULE_LD_OPT_DEBUG_opentracing=$(MODULE_LD_OPT_opentracing)
+
+define MODULE_PREINSTALL_opentracing
+	mkdir -p "$$pkgdir"/usr/lib
+	install -m755 ../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing.so.$(OPENTRACING_CPP_VERSION) "$$pkgdir"/usr/lib/
+	ln -fs libopentracing.so.$(OPENTRACING_CPP_VERSION) "$$pkgdir"/usr/lib/libopentracing.so.1
+	ln -fs libopentracing.so.1 "$$pkgdir"/usr/lib/libopentracing.so
+	install -m755 ../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) "$$pkgdir"/usr/lib/
+	ln -fs libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) "$$pkgdir"/usr/lib/libopentracing_mocktracer.so.1
+	ln -fs libopentracing_mocktracer.so.1 "$$pkgdir"/usr/lib/libmodsecurity_mocktracer.so
+	mkdir -p "$$pkgdir"/usr/include
+	cp -pr ../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include/opentracing "$$pkgdir"/usr/include/
+	mkdir -p "$$pkgdir"/usr/libexec/opentracing
+	install -m755 ../jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION)/.build/libjaegertracing_plugin.so "$$pkgdir"/usr/libexec/opentracing/
+endef
+export MODULE_PREINSTALL_opentracing
+
+define MODULE_POST_opentracing
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_opentracing) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_opentracing_module.so;
+
+Note that additional tracer plugins are required in order
+to communicate with corresponding services (e.g. Zipkin, Jaeger).
+This package includes the Jaeger dynamic tracer plugin:
+
+    /usr/libexec/opentracing/libjaegertracing_plugin.so
+
+Please refer to the module documentation for further details:
+https://github.com/opentracing-contrib/nginx-opentracing
+https://github.com/opentracing-contrib/nginx-opentracing/blob/master/doc/Reference.md
+
+OpenTracing project site (general info and documentation):
+http://opentracing.io/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_opentracing
diff --git a/alpine/Makefile.module-passenger b/alpine/Makefile.module-passenger
new file mode 100644
index 0000000..69a693e
--- /dev/null
+++ b/alpine/Makefile.module-passenger
@@ -0,0 +1,44 @@
+MODULES+=	passenger
+
+MODULE_SUMMARY_passenger=	3rd-party Passenger dynamic module
+
+include $(CONTRIB)/src/passenger/version
+
+MODULE_VERSION_passenger=	$(PASSENGER_VERSION)
+MODULE_RELEASE_passenger=	1
+
+MODULE_VERSION_PREFIX_passenger=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_passenger=	passenger-$(PASSENGER_VERSION).tar.gz
+
+MODULE_PATCHES_passenger=	$(CONTRIB)/src/passenger/build-nginx.rb.patch \
+				$(CONTRIB)/src/passenger/src-nginx_module-ContentHandler.c.patch
+
+MODULE_CONFARGS_passenger=	--with-http_ssl_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)passenger-$(PASSENGER_VERSION)/src/nginx_module
+
+.deps-module-passenger:
+	cd $(CONTRIB) && make .sum-passenger
+	touch $@
+
+prerequisites-for-module-passenger:
+
+MODULE_BUILD_DEPENDS_passenger=ruby-dev ruby-rake ruby-etc
+
+define MODULE_POST_passenger
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_passenger) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_passenger_module.so;
+
+Please refer to the module documentation for further details:
+https://www.phusionpassenger.com/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_passenger
diff --git a/alpine/Makefile.module-perl b/alpine/Makefile.module-perl
index 330dd48..22a6fe2 100644
--- a/alpine/Makefile.module-perl
+++ b/alpine/Makefile.module-perl
@@ -34,7 +34,7 @@
     load_module modules/ngx_http_perl_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_perl_module.html
+https://nginx.org/en/docs/http/ngx_http_perl_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/Makefile.module-rtmp b/alpine/Makefile.module-rtmp
new file mode 100644
index 0000000..d205e94
--- /dev/null
+++ b/alpine/Makefile.module-rtmp
@@ -0,0 +1,40 @@
+MODULES+=	rtmp
+
+MODULE_SUMMARY_rtmp=	3rd-party RTMP dynamic module
+
+include $(CONTRIB)/src/nginx-rtmp-module/version
+
+MODULE_VERSION_rtmp=	$(NGINX_RTMP_MODULE_VERSION)
+MODULE_RELEASE_rtmp=	1
+
+MODULE_VERSION_PREFIX_rtmp=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_rtmp=	nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz
+
+MODULE_PATCHES_rtmp=	$(CONTRIB)/src/nginx-rtmp-module/PR1340.patch
+
+MODULE_CONFARGS_rtmp=	--add-dynamic-module=$(MODSRC_PREFIX)nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION)
+
+.deps-module-rtmp:
+	cd $(CONTRIB) && make .sum-nginx-rtmp-module
+	touch $@
+
+prerequisites-for-module-rtmp:
+
+define MODULE_POST_rtmp
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_rtmp) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_rtmp_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/arut/nginx-rtmp-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_rtmp
diff --git a/alpine/Makefile.module-set-misc b/alpine/Makefile.module-set-misc
new file mode 100644
index 0000000..ef9eae8
--- /dev/null
+++ b/alpine/Makefile.module-set-misc
@@ -0,0 +1,55 @@
+MODULES+=	set-misc
+
+MODULE_SUMMARY_set_misc=	3rd-party set-misc dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/set-misc-nginx-module/version
+
+MODULE_VERSION_set_misc=	$(SET_MISC_NGINX_MODULE_VERSION)
+MODULE_RELEASE_set_misc=	1
+
+MODULE_VERSION_PREFIX_set_misc=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_set_misc=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+				set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_set_misc=	--with-http_ssl_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+				--add-dynamic-module=$(MODSRC_PREFIX)set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION)
+
+.deps-module-set-misc:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-set-misc-nginx-module
+	touch $@
+
+prerequisites-for-module-set-misc: module-ndk
+
+MODULE_DEPENDS_set_misc=$(NDK_DEPENDENCY_TAG)
+
+define MODULE_PREINSTALL_set_misc
+	rm -f objs/ndk_http_module-debug.so
+	rm -f objs/ndk_http_module.so
+endef
+export MODULE_PREINSTALL_set_misc
+
+define MODULE_POST_set_misc
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_set_misc) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_set_misc_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/set-misc-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_set_misc
diff --git a/alpine/Makefile.module-subs-filter b/alpine/Makefile.module-subs-filter
new file mode 100644
index 0000000..6b5213a
--- /dev/null
+++ b/alpine/Makefile.module-subs-filter
@@ -0,0 +1,38 @@
+MODULES+=	subs-filter
+
+MODULE_SUMMARY_subs_filter=	3rd-party substitution dynamic module
+
+include $(CONTRIB)/src/ngx_http_substitutions_filter_module/version
+
+MODULE_VERSION_subs_filter=	$(SUBSTITUTIONS_FILTER_NGINX_MODULE_VERSION)
+MODULE_RELEASE_subs_filter=	1
+
+MODULE_VERSION_PREFIX_subs_filter=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_subs_filter=	ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz
+
+MODULE_CONFARGS_subs_filter=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH)
+
+.deps-module-subs-filter:
+	cd $(CONTRIB) && make .sum-ngx_http_substitutions_filter_module
+	touch $@
+
+prerequisites-for-module-subs-filter:
+
+define MODULE_POST_subs_filter
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_subs_filter) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_subs_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/yaoweibin/ngx_http_substitutions_filter_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_subs_filter
diff --git a/alpine/Makefile.module-xslt b/alpine/Makefile.module-xslt
index f4674a1..1329c48 100644
--- a/alpine/Makefile.module-xslt
+++ b/alpine/Makefile.module-xslt
@@ -7,7 +7,6 @@
 
 MODULE_CONFARGS_xslt=		--with-http_xslt_module=dynamic
 
-MODULE_DEPENDS_xslt=libxslt
 MODULE_BUILD_DEPENDS_xslt=libxslt-dev
 
 define MODULE_ADD_CONTROL_TAGS_xslt
@@ -26,7 +25,7 @@
     load_module modules/ngx_http_xslt_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_xslt_module.html
+https://nginx.org/en/docs/http/ngx_http_xslt_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/nginx.post-install b/alpine/nginx.post-install
index 13e7299..102c3e7 100644
--- a/alpine/nginx.post-install
+++ b/alpine/nginx.post-install
@@ -6,14 +6,14 @@
 Thanks for using nginx!
 
 Please find the official documentation for nginx here:
-* http://nginx.org/en/docs/
+* https://nginx.org/en/docs/
 
 Please subscribe to nginx-announce mailing list to get
 the most important news about nginx:
-* http://nginx.org/en/support.html
+* https://nginx.org/en/support.html
 
 Commercial subscriptions for nginx are available on:
-* http://nginx.com/products/
+* https://nginx.com/products/
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/alpine/src/njs-0.5.0.tar.gz b/alpine/src/njs-0.5.0.tar.gz
deleted file mode 100644
index 688acfe..0000000
--- a/alpine/src/njs-0.5.0.tar.gz
+++ /dev/null
Binary files differ
diff --git a/contrib/.hgignore b/contrib/.hgignore
new file mode 100644
index 0000000..55586f6
--- /dev/null
+++ b/contrib/.hgignore
@@ -0,0 +1,2 @@
+syntax:glob
+.sum-*
diff --git a/contrib/Makefile b/contrib/Makefile
new file mode 100644
index 0000000..27addce
--- /dev/null
+++ b/contrib/Makefile
@@ -0,0 +1,143 @@
+all: install
+
+TOPSRC := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
+SRC := $(TOPSRC)/src
+TARBALLS := $(TOPSRC)/tarballs
+VPATH := $(TARBALLS)
+PREFIX = $(TOPSRC)/local
+PREFIX := $(abspath $(PREFIX))
+
+PKGS_ALL := $(patsubst $(SRC)/%/Makefile,%,$(wildcard $(SRC)/*/Makefile))
+
+# Common download locations
+NGINX := https://nginx.org/download
+CONTRIB_NGINX := https://packages.nginx.org/contrib
+GITHUB := https://github.com
+
+#
+# Tools
+#
+NPROC := $(shell getconf _NPROCESSORS_ONLN)
+_SMP_MFLAGS := -j$(NPROC)
+
+ifndef GIT
+ifeq ($(shell git --version >/dev/null 2>&1 || echo FAIL),)
+GIT = git
+endif
+endif
+GIT ?= $(error git not found)
+
+ifeq ($(shell curl --version >/dev/null 2>&1 || echo FAIL),)
+download = curl -f -L -- "$(1)" > "$@"
+else ifeq ($(shell wget --version >/dev/null 2>&1 || echo FAIL),)
+download = (rm -f $@.tmp && \
+	wget --passive -c -p -O $@.tmp "$(1)" && \
+	touch $@.tmp && \
+	mv $@.tmp $@ )
+else ifeq ($(which fetch >/dev/null 2>&1 || echo FAIL),)
+download = (rm -f $@.tmp && \
+	fetch -p -o $@.tmp "$(1)" && \
+	touch $@.tmp && \
+	mv $@.tmp $@)
+else
+download = $(error Neither curl nor wget found)
+endif
+
+download_pkg = $(call download,$(CONTRIB_NGINX)/$(2)/$(lastword $(subst /, ,$(@)))) || \
+	( $(call download,$(1)) && echo "Please upload $(lastword $(subst /, ,$(@))) to $(CONTRIB_NGINX)" )
+
+ifeq ($(shell which xz >/dev/null 2>&1 || echo FAIL),)
+XZ = xz
+else
+XZ ?= $(error XZ (LZMA) compressor not found)
+endif
+
+ifeq ($(shell sha512sum --version >/dev/null 2>&1 || echo FAIL),)
+SHA512SUM = sha512sum --check
+else ifeq ($(shell shasum --version >/dev/null 2>&1 || echo FAIL),)
+SHA512SUM = shasum -a 512 --check
+else ifeq ($(shell openssl version >/dev/null 2>&1 || echo FAIL),)
+SHA512SUM = openssl dgst -sha512
+else
+SHA512SUM = $(error SHA-512 checksumming not found)
+endif
+
+#
+# Common helpers
+#
+download_git = \
+	rm -Rf -- "$(@:.tar.xz=)" && \
+	$(GIT) init --bare "$(@:.tar.xz=)" && \
+	(cd "$(@:.tar.xz=)" && \
+	$(GIT) remote add origin "$(1)" && \
+	$(GIT) fetch origin "$(2)") && \
+	(cd "$(@:.tar.xz=)" && \
+	$(GIT) archive --prefix="$(notdir $(@:.tar.xz=))/" \
+		--format=tar "$(3)") > "$(@:.xz=)" && \
+	echo "$(3) $(@)" > "$(@:.tar.xz=.githash)" && \
+	rm -Rf -- "$(@:.tar.xz=)" && \
+	$(XZ) --stdout "$(@:.xz=)" > "$@.tmp" && \
+	rm -f "$(@:.xz=)" && \
+	mv -f -- "$@.tmp" "$@"
+check_githash = \
+	h=`sed -e "s,^\([0-9a-fA-F]\{40\}\) .*/$(notdir $<),\1,g" \
+		< "$(<:.tar.xz=.githash)"` && \
+	test "$$h" = "$1"
+
+checksum = \
+	$(foreach f,$(filter $(TARBALLS)/%,$^), \
+		grep -- " $(f:$(TARBALLS)/%=%)$$" \
+			"$(SRC)/$(patsubst $(3)%,%,$@)/$(2)SUMS" &&) \
+	(cd $(TARBALLS) && $(1) /dev/stdin) < \
+		"$(SRC)/$(patsubst $(3)%,%,$@)/$(2)SUMS"
+CHECK_SHA512 = $(call checksum,$(SHA512SUM),SHA512,.sum-)
+UNPACK = $(RM) -R $@ \
+	$(foreach f,$(filter %.tar.gz %.tgz,$^), && tar xvzfo $(f)) \
+	$(foreach f,$(filter %.tar.bz2,$^), && tar xvjfo $(f)) \
+	$(foreach f,$(filter %.tar.xz,$^), && tar xvJfo $(f)) \
+	$(foreach f,$(filter %.zip,$^), && unzip $(f))
+UNPACK_DIR = $(patsubst %.tar,%,$(basename $(notdir $<)))
+APPLY = (cd $(UNPACK_DIR) && patch -fp1) <
+MOVE = mv $(UNPACK_DIR) $@ && touch $@
+
+# Per-package build rules
+include $(SRC)/*/Makefile
+
+# Targets
+PKGS_DEPS := $(sort $(foreach p,$(PKGS),$(DEPS_$(p))))
+
+fetch: $(PKGS:%=.sum-%)
+install: $(PKGS:%=.%)
+
+clean:
+	-$(RM) $(foreach p,$(PKGS),.$(p) .sum-$(p) .dep-$(p))
+	-$(RM) -R $(foreach p,$(PKGS),$(p))
+	-$(RM) -R "$(PREFIX)"
+	-$(RM) $(TARBALLS)/*.*
+
+list:
+	@echo Packages:
+	@echo '  $(PKGS)' | tr " " "\n" | sort | tr "\n" " " |fmt
+	@echo Depended-on packages:
+	@echo '  $(PKGS_DEPS)' | tr " " "\n" | sort | tr "\n" " " |fmt
+
+.PHONY: all fetch install clean list
+
+# Default pattern rules
+.sum-%: $(SRC)/%/SHA512SUMS
+	$(CHECK_SHA512)
+	touch $@
+
+.sum-%:
+	$(error Download and check target not defined for $*)
+
+# Real dependency on missing packages
+$(patsubst %,.dep-%,$(PKGS)): .dep-%: .%
+	touch -r $< $@
+
+.SECONDEXPANSION:
+
+# Dependency propagation (convert 'DEPS_foo = bar' to '.foo: .bar')
+$(foreach p,$(PKGS),.$(p)): .%: $$(foreach d,$$(DEPS_$$*),.dep-$$(d))
+
+.DELETE_ON_ERROR:
diff --git a/contrib/src/encrypted-session-nginx-module/Makefile b/contrib/src/encrypted-session-nginx-module/Makefile
new file mode 100644
index 0000000..10afec9
--- /dev/null
+++ b/contrib/src/encrypted-session-nginx-module/Makefile
@@ -0,0 +1,20 @@
+# encrypted-session-nginx-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+ENCRYPTED_SESSION_NGINX_MODULE_URL := $(GITHUB)/openresty/encrypted-session-nginx-module/archive/v$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += encrypted-session-nginx-module
+
+$(TARBALLS)/encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(ENCRYPTED_SESSION_NGINX_MODULE_URL),encrypted-session-nginx-module)
+
+.sum-encrypted-session-nginx-module: encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz
+
+encrypted-session-nginx-module: encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz .sum-encrypted-session-nginx-module
+	$(UNPACK)
+	$(MOVE)
+
+DEPS_encrypted-session-nginx-module = ngx_devel_kit $(DEPS_ngx_devel_kit)
+
+.encrypted-session-nginx-module: encrypted-session-nginx-module
+	touch $@
diff --git a/contrib/src/encrypted-session-nginx-module/SHA512SUMS b/contrib/src/encrypted-session-nginx-module/SHA512SUMS
new file mode 100644
index 0000000..a91d560
--- /dev/null
+++ b/contrib/src/encrypted-session-nginx-module/SHA512SUMS
@@ -0,0 +1 @@
+80651951edd69d202e991a66f531bbe0398b4f062e822bb7748411f5f597eb1d5827102ba477bb6cd2793274adf6f6d60dd89fde7645174b091143251197af69  encrypted-session-nginx-module-0.08.tar.gz
diff --git a/contrib/src/encrypted-session-nginx-module/version b/contrib/src/encrypted-session-nginx-module/version
new file mode 100644
index 0000000..c043551
--- /dev/null
+++ b/contrib/src/encrypted-session-nginx-module/version
@@ -0,0 +1 @@
+ENCRYPTED_SESSION_NGINX_MODULE_VERSION := 0.08
diff --git a/contrib/src/headers-more-nginx-module/Makefile b/contrib/src/headers-more-nginx-module/Makefile
new file mode 100644
index 0000000..0601976
--- /dev/null
+++ b/contrib/src/headers-more-nginx-module/Makefile
@@ -0,0 +1,18 @@
+# headers-more-nginx-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+HEADERS_MORE_NGINX_MODULE_URL := $(GITHUB)/openresty/headers-more-nginx-module/archive/v$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += headers-more-nginx-module
+
+$(TARBALLS)/headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(HEADERS_MORE_NGINX_MODULE_URL),headers-more-nginx-module)
+
+.sum-headers-more-nginx-module: headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz
+
+headers-more-nginx-module: headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz .sum-headers-more-nginx-module
+	$(UNPACK)
+	$(MOVE)
+
+.headers-more-nginx-module: headers-more-nginx-module
+	touch $@
diff --git a/contrib/src/headers-more-nginx-module/SHA512SUMS b/contrib/src/headers-more-nginx-module/SHA512SUMS
new file mode 100644
index 0000000..e2f3bde
--- /dev/null
+++ b/contrib/src/headers-more-nginx-module/SHA512SUMS
@@ -0,0 +1 @@
+13165b1b8d4be281b8bd2404fa48d456013d560bace094c81da08a35dc6a4f025a809a3ae3a42be6bbf67abbcbe41e0730aba06f905220f3baeb01e1192a7d37  headers-more-nginx-module-0.33.tar.gz
diff --git a/contrib/src/headers-more-nginx-module/version b/contrib/src/headers-more-nginx-module/version
new file mode 100644
index 0000000..53ac4c1
--- /dev/null
+++ b/contrib/src/headers-more-nginx-module/version
@@ -0,0 +1 @@
+HEADERS_MORE_NGINX_MODULE_VERSION := 0.33
diff --git a/contrib/src/jaeger-client-cpp/CMakeLists.txt.patch b/contrib/src/jaeger-client-cpp/CMakeLists.txt.patch
new file mode 100644
index 0000000..9341f09
--- /dev/null
+++ b/contrib/src/jaeger-client-cpp/CMakeLists.txt.patch
@@ -0,0 +1,44 @@
+--- a/CMakeLists.txt	2020-06-08 15:24:23.000000000 +0000
++++ b/CMakeLists.txt	2020-12-10 14:06:50.510344080 +0000
+@@ -69,18 +69,11 @@
+ list(APPEND package_deps thrift)
+ 
+ 
+-hunter_add_package(opentracing-cpp)
+-# Not `${hunter_config}` because OpenTracing provides its own
+-# OpenTracingConfig.cmake file
++# use our own prebuilt version of opentracing-cpp
++include_directories(${OPENTRACING_INC})
+ find_package(OpenTracing CONFIG REQUIRED)
+-# Under Windows, link dynamically with OpenTracing
+-if (WIN32)
+-  list(APPEND LIBS OpenTracing::opentracing)
+-  set(OPENTRACING_LIB OpenTracing::opentracing)
+-else()
+-  list(APPEND LIBS OpenTracing::opentracing-static)
+-  set(OPENTRACING_LIB OpenTracing::opentracing-static)
+-endif()
++list(APPEND LIBS OpenTracing::opentracing-static)
++set(OPENTRACING_LIB OpenTracing::opentracing-static)
+ list(APPEND package_deps OpenTracing)
+ 
+ hunter_add_package(nlohmann_json)
+@@ -97,16 +90,8 @@
+   "NOT JAEGERTRACING_BUILD_CROSSDOCK" ON)
+ 
+ if(JAEGERTRACING_WITH_YAML_CPP)
+-  hunter_add_package(yaml-cpp)
+-  # Not `${hunter_config}` because yaml-cpp provides its own
+-  # yaml-cpp-config.cmake file
+-  find_package(yaml-cpp CONFIG REQUIRED)
+-  if(HUNTER_ENABLED)
+-      list(APPEND LIBS yaml-cpp::yaml-cpp)
+-  else()
+-      list(APPEND LIBS yaml-cpp)
+-  endif()
+-  list(APPEND package_deps yaml-cpp)
++  # rely on yaml-cpp provided by OS vendor
++  list(APPEND LIBS yaml-cpp)
+ endif()
+ 
+ include(CTest)
diff --git a/contrib/src/jaeger-client-cpp/Makefile b/contrib/src/jaeger-client-cpp/Makefile
new file mode 100644
index 0000000..ecf94b8
--- /dev/null
+++ b/contrib/src/jaeger-client-cpp/Makefile
@@ -0,0 +1,28 @@
+# jaeger-client-cpp
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+JAEGER_CLIENT_CPP_URL := $(GITHUB)/jaegertracing/jaeger-client-cpp/archive/v$(JAEGER_CLIENT_CPP_VERSION).tar.gz
+
+PKGS += jaeger-client-cpp
+
+$(TARBALLS)/jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz:
+	$(call download_pkg,$(JAEGER_CLIENT_CPP_URL),jaeger-client-cpp)
+
+.sum-jaeger-client-cpp: jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz
+
+jaeger-client-cpp: jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz .sum-jaeger-client-cpp
+	$(UNPACK)
+	$(APPLY) $(SRC)/jaeger-client-cpp/CMakeLists.txt.patch
+	$(MOVE)
+
+DEPS_jaeger-client-cpp = opentracing-cpp $(DEPS_opentracing-cpp)
+
+# note the https://github.com/google/myanmar-tools/issues/42
+.jaeger-client-cpp: jaeger-client-cpp
+	cd $< && \
+		mkdir -p .build && \
+		cd .build && \
+		CXXFLAGS="-Wno-error=deprecated-copy" OpenTracing_DIR=$(TOPSRC)/opentracing-cpp/.build cmake -DCMAKE_BUILD_TYPE=Release -DJAEGERTRACING_PLUGIN=ON -DHUNTER_CONFIGURATION_TYPES=Release -DOPENTRACING_INC=$(TOPSRC)/local/usr/local/include ../ && \
+		make $(_SMP_MFLAGS)
+	cd $< && install -s .build/libjaegertracing_plugin.so $(PREFIX)/
+	touch $@
diff --git a/contrib/src/jaeger-client-cpp/SHA512SUMS b/contrib/src/jaeger-client-cpp/SHA512SUMS
new file mode 100644
index 0000000..023f8c1
--- /dev/null
+++ b/contrib/src/jaeger-client-cpp/SHA512SUMS
@@ -0,0 +1 @@
+e2cd621a51f0e4d25ff67ddbe86f17f6ef976e36b99c489aebdd330616e641fd0e428d2301a394eaa8920d35619f2d6172c436e8b828f44bdbe39e290e1849f0  jaeger-client-cpp-0.6.0.tar.gz
diff --git a/contrib/src/jaeger-client-cpp/version b/contrib/src/jaeger-client-cpp/version
new file mode 100644
index 0000000..0d212b5
--- /dev/null
+++ b/contrib/src/jaeger-client-cpp/version
@@ -0,0 +1 @@
+JAEGER_CLIENT_CPP_VERSION := 0.6.0
diff --git a/contrib/src/lua-nginx-module/Makefile b/contrib/src/lua-nginx-module/Makefile
new file mode 100644
index 0000000..164e088
--- /dev/null
+++ b/contrib/src/lua-nginx-module/Makefile
@@ -0,0 +1,21 @@
+# lua-nginx-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+LUA_NGINX_MODULE_URL := $(GITHUB)/openresty/lua-nginx-module/archive/v$(LUA_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += lua-nginx-module
+
+$(TARBALLS)/lua-nginx-module-$(LUA_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(LUA_NGINX_MODULE_URL),lua-nginx-module)
+
+.sum-lua-nginx-module: lua-nginx-module-$(LUA_NGINX_MODULE_VERSION).tar.gz
+
+lua-nginx-module: lua-nginx-module-$(LUA_NGINX_MODULE_VERSION).tar.gz .sum-lua-nginx-module
+	$(UNPACK)
+	$(APPLY) $(SRC)/lua-nginx-module/config.patch
+	$(MOVE)
+
+DEPS_lua-nginx-module = luajit2 $(DEPS_luajit2) ngx_devel_kit $(DEPS_ngx_devel_kit)
+
+.lua-nginx-module: lua-nginx-module
+	touch $@
diff --git a/contrib/src/lua-nginx-module/SHA512SUMS b/contrib/src/lua-nginx-module/SHA512SUMS
new file mode 100644
index 0000000..80c6d91
--- /dev/null
+++ b/contrib/src/lua-nginx-module/SHA512SUMS
@@ -0,0 +1 @@
+6b258bdcb45f99f9cec3df14fa6747704ab1f0005f8a2ccd4440f8ec477e3dcbf6026e1acffc9d5fecb79605248168a77bd2a26d67c98c7d5cc336f9474ef68c  lua-nginx-module-0.10.19.tar.gz
diff --git a/contrib/src/lua-nginx-module/config.patch b/contrib/src/lua-nginx-module/config.patch
new file mode 100644
index 0000000..2fc73f7
--- /dev/null
+++ b/contrib/src/lua-nginx-module/config.patch
@@ -0,0 +1,26 @@
+--- a/config	2015-12-20 05:43:48.000000000 +0000
++++ b/config	2015-12-25 08:01:04.138004474 +0000
+@@ -45,9 +45,9 @@
+         NGX_TEST_LD_OPT="$ngx_lua_opt_L $NGX_TEST_LD_OPT"
+ 
+         if [ $NGX_RPATH = YES ]; then
+-            ngx_feature_libs="-R$LUAJIT_LIB $ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++            ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a -R$LUAJIT_LIB $luajit_ld_opt"
+         else
+-            ngx_feature_libs="$ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++            ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a $ngx_lua_opt_L $luajit_ld_opt"
+         fi
+ 
+         . auto/feature
+@@ -71,9 +71,9 @@
+             NGX_TEST_LD_OPT="$ngx_lua_opt_L $NGX_TEST_LD_OPT"
+ 
+             if [ $NGX_RPATH = YES ]; then
+-                ngx_feature_libs="-R$LUAJIT_LIB $ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++                ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a -R$LUAJIT_LIB $luajit_ld_opt"
+             else
+-                ngx_feature_libs="$ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++                ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a $luajit_ld_opt"
+             fi
+ 
+             . auto/feature
diff --git a/contrib/src/lua-nginx-module/version b/contrib/src/lua-nginx-module/version
new file mode 100644
index 0000000..0b9a048
--- /dev/null
+++ b/contrib/src/lua-nginx-module/version
@@ -0,0 +1 @@
+LUA_NGINX_MODULE_VERSION := 0.10.19
diff --git a/contrib/src/lua-resty-core/Makefile b/contrib/src/lua-resty-core/Makefile
new file mode 100644
index 0000000..9fe8375
--- /dev/null
+++ b/contrib/src/lua-resty-core/Makefile
@@ -0,0 +1,18 @@
+# lua-resty-core
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+LUA_RESTY_CORE_URL := $(GITHUB)/openresty/lua-resty-core/archive/v$(LUA_RESTY_CORE_VERSION).tar.gz
+
+PKGS += lua-resty-core
+
+$(TARBALLS)/lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz:
+	$(call download_pkg,$(LUA_RESTY_CORE_URL),lua-resty-core)
+
+.sum-lua-resty-core: lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz
+
+lua-resty-core: lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz .sum-lua-resty-core
+	$(UNPACK)
+	$(MOVE)
+
+.lua-resty-core: lua-resty-core
+	touch $@
diff --git a/contrib/src/lua-resty-core/SHA512SUMS b/contrib/src/lua-resty-core/SHA512SUMS
new file mode 100644
index 0000000..67e1b69
--- /dev/null
+++ b/contrib/src/lua-resty-core/SHA512SUMS
@@ -0,0 +1 @@
+e34475fe3966493d010dd0e6e9d0073e6cd6e700ccf34048b6ac26af52206333b12500c755f29904fd5d792556d26d19f0ddfd3b61cd9f5e0dc608bef17051a5  lua-resty-core-0.1.21.tar.gz
diff --git a/contrib/src/lua-resty-core/version b/contrib/src/lua-resty-core/version
new file mode 100644
index 0000000..9878847
--- /dev/null
+++ b/contrib/src/lua-resty-core/version
@@ -0,0 +1 @@
+LUA_RESTY_CORE_VERSION := 0.1.21
diff --git a/contrib/src/lua-resty-lrucache/Makefile b/contrib/src/lua-resty-lrucache/Makefile
new file mode 100644
index 0000000..d6134ff
--- /dev/null
+++ b/contrib/src/lua-resty-lrucache/Makefile
@@ -0,0 +1,18 @@
+# lua-resty-lrucache
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+LUA_RESTY_LRUCACHE_URL := $(GITHUB)/openresty/lua-resty-lrucache/archive/v$(LUA_RESTY_LRUCACHE_VERSION).tar.gz
+
+PKGS += lua-resty-lrucache
+
+$(TARBALLS)/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz:
+	$(call download_pkg,$(LUA_RESTY_LRUCACHE_URL),lua-resty-lrucache)
+
+.sum-lua-resty-lrucache: lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz
+
+lua-resty-lrucache: lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz .sum-lua-resty-lrucache
+	$(UNPACK)
+	$(MOVE)
+
+.lua-resty-lrucache: lua-resty-lrucache
+	touch $@
diff --git a/contrib/src/lua-resty-lrucache/SHA512SUMS b/contrib/src/lua-resty-lrucache/SHA512SUMS
new file mode 100644
index 0000000..01d7e1a
--- /dev/null
+++ b/contrib/src/lua-resty-lrucache/SHA512SUMS
@@ -0,0 +1 @@
+619d52bded0c81913d285a5087e2544946f21e2cdddcf38a998230b023839ac158f329e46ec8f85b83f43076ee3237be25e0d2f872126064f45050d0dd7ec78e  lua-resty-lrucache-0.10.tar.gz
diff --git a/contrib/src/lua-resty-lrucache/version b/contrib/src/lua-resty-lrucache/version
new file mode 100644
index 0000000..0bd59ad
--- /dev/null
+++ b/contrib/src/lua-resty-lrucache/version
@@ -0,0 +1 @@
+LUA_RESTY_LRUCACHE_VERSION := 0.10
diff --git a/contrib/src/luajit2/Makefile b/contrib/src/luajit2/Makefile
new file mode 100644
index 0000000..8ca77dd
--- /dev/null
+++ b/contrib/src/luajit2/Makefile
@@ -0,0 +1,22 @@
+# LuaJIT2
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+LUAJIT2_URL := $(GITHUB)/openresty/luajit2/archive/v$(LUAJIT2_VERSION).tar.gz
+
+PKGS += luajit2
+
+$(TARBALLS)/luajit2-$(LUAJIT2_VERSION).tar.gz:
+	$(call download_pkg,$(LUAJIT2_URL),luajit2)
+
+.sum-luajit2: luajit2-$(LUAJIT2_VERSION).tar.gz
+
+luajit2: luajit2-$(LUAJIT2_VERSION).tar.gz .sum-luajit2
+	$(UNPACK)
+	$(APPLY) $(SRC)/luajit2/Makefile.patch
+	$(APPLY) $(SRC)/luajit2/src-luaconf.h.patch
+	$(MOVE)
+
+.luajit2: luajit2
+	cd $< && DESTDIR=$(PREFIX) CFLAGS="-fPIC" $(MAKE) install
+	mv $(PREFIX)/usr/bin/luajit $(PREFIX)/usr/bin/nginx-luajit
+	touch $@
diff --git a/contrib/src/luajit2/Makefile.patch b/contrib/src/luajit2/Makefile.patch
new file mode 100644
index 0000000..79c6033
--- /dev/null
+++ b/contrib/src/luajit2/Makefile.patch
@@ -0,0 +1,23 @@
+--- a/Makefile	2017-09-14 14:20:50.000000000 +0300
++++ b/Makefile	2017-09-14 14:22:39.000000000 +0300
+@@ -25,7 +25,7 @@
+ # Change the installation path as needed. This automatically adjusts
+ # the paths in src/luaconf.h, too. Note: PREFIX must be an absolute path!
+ #
+-export PREFIX= /usr/local
++export PREFIX= /usr
+ export MULTILIB= lib
+ ##############################################################################
+ 
+@@ -33,9 +33,9 @@
+ INSTALL_BIN=   $(DPREFIX)/bin
+ INSTALL_LIB=   $(DPREFIX)/$(MULTILIB)
+ INSTALL_SHARE= $(DPREFIX)/share
+-INSTALL_INC=   $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
++INSTALL_INC=   $(DPREFIX)/include/nginx-luajit-$(MAJVER).$(MINVER)
+ 
+-INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
++INSTALL_LJLIBD= $(INSTALL_SHARE)/nginx-luajit-2.1
+ INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
+ INSTALL_LMODD= $(INSTALL_SHARE)/lua
+ INSTALL_LMOD= $(INSTALL_LMODD)/$(ABIVER)
diff --git a/contrib/src/luajit2/SHA512SUMS b/contrib/src/luajit2/SHA512SUMS
new file mode 100644
index 0000000..3e1fdfa
--- /dev/null
+++ b/contrib/src/luajit2/SHA512SUMS
@@ -0,0 +1 @@
+808a2564d02a261a9e4c94af5ba8051a1ea271f4187f46ca58b9894d0f69e42040d603d6d1caa03812a1db092684010498601e4d33a95d3e7955497e29f48a06  luajit2-2.1-20201027.tar.gz
diff --git a/contrib/src/luajit2/src-luaconf.h.patch b/contrib/src/luajit2/src-luaconf.h.patch
new file mode 100644
index 0000000..02783dd
--- /dev/null
+++ b/contrib/src/luajit2/src-luaconf.h.patch
@@ -0,0 +1,11 @@
+--- a/src/luaconf.h	2017-09-14 14:24:29.000000000 +0300
++++ b/src/luaconf.h	2017-09-14 14:25:08.000000000 +0300
+@@ -37,7 +37,7 @@
+ #endif
+ #define LUA_LROOT	"/usr/local"
+ #define LUA_LUADIR	"/lua/5.1/"
+-#define LUA_LJDIR	"/luajit-2.1.0-beta3/"
++#define LUA_LJDIR	"/nginx-luajit-2.1/"
+ 
+ #ifdef LUA_ROOT
+ #define LUA_JROOT	LUA_ROOT
diff --git a/contrib/src/luajit2/version b/contrib/src/luajit2/version
new file mode 100644
index 0000000..0f46d87
--- /dev/null
+++ b/contrib/src/luajit2/version
@@ -0,0 +1 @@
+LUAJIT2_VERSION := 2.1-20201027
diff --git a/contrib/src/modsecurity-nginx/Makefile b/contrib/src/modsecurity-nginx/Makefile
new file mode 100644
index 0000000..ac768a5
--- /dev/null
+++ b/contrib/src/modsecurity-nginx/Makefile
@@ -0,0 +1,23 @@
+# ModSecurity-nginx
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+MODSECURITY_NGINX_GITURL := $(GITHUB)/SpiderLabs/ModSecurity-nginx.git
+
+PKGS += modsecurity-nginx
+
+$(TARBALLS)/modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz:
+	$(call download_git,$(MODSECURITY_NGINX_GITURL),,$(MODSECURITY_NGINX_GITHASH))
+
+.sum-modsecurity-nginx: modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz
+	$(call check_githash,$(MODSECURITY_NGINX_GITHASH))
+	touch $@
+
+modsecurity-nginx: modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz .sum-modsecurity-nginx
+	$(UNPACK)
+	$(APPLY) $(SRC)/modsecurity-nginx/PR165.patch
+	$(MOVE)
+
+DEPS_modsecurity-nginx = modsecurity $(DEPS_modsecurity)
+
+.modsecurity-nginx: modsecurity-nginx
+	touch $@
diff --git a/contrib/src/modsecurity-nginx/PR165.patch b/contrib/src/modsecurity-nginx/PR165.patch
new file mode 100644
index 0000000..d0505e7
--- /dev/null
+++ b/contrib/src/modsecurity-nginx/PR165.patch
@@ -0,0 +1,73 @@
+From d8987f6476edd2ac9d5df99778f9e12cfbe8e83e Mon Sep 17 00:00:00 2001
+From: Andrei Belov <defanator@gmail.com>
+Date: Tue, 6 Aug 2019 16:32:15 +0300
+Subject: [PATCH] Avoid processing of subrequests initiated by the error_page
+
+Closes #164, SpiderLabs/ModSecurity#2143.
+---
+ src/ngx_http_modsecurity_header_filter.c | 4 ++++
+ src/ngx_http_modsecurity_log.c           | 4 ++++
+ src/ngx_http_modsecurity_pre_access.c    | 4 ++++
+ src/ngx_http_modsecurity_rewrite.c       | 4 ++++
+ 4 files changed, 16 insertions(+)
+
+diff --git a/src/ngx_http_modsecurity_header_filter.c b/src/ngx_http_modsecurity_header_filter.c
+index 3f9f748..04ad7ac 100644
+--- a/src/ngx_http_modsecurity_header_filter.c
++++ b/src/ngx_http_modsecurity_header_filter.c
+@@ -420,6 +420,10 @@ ngx_http_modsecurity_header_filter(ngx_http_request_t *r)
+ 
+ /* XXX: if NOT_MODIFIED, do we need to process it at all?  see xslt_header_filter() */
+ 
++    if (r->error_page) {
++        return ngx_http_next_header_filter(r);
++    }
++
+     ctx = ngx_http_get_module_ctx(r, ngx_http_modsecurity_module);
+ 
+     dd("header filter, recovering ctx: %p", ctx);
+diff --git a/src/ngx_http_modsecurity_log.c b/src/ngx_http_modsecurity_log.c
+index 5546596..39cf6b7 100644
+--- a/src/ngx_http_modsecurity_log.c
++++ b/src/ngx_http_modsecurity_log.c
+@@ -41,6 +41,10 @@ ngx_http_modsecurity_log_handler(ngx_http_request_t *r)
+     ngx_http_modsecurity_ctx_t   *ctx;
+     ngx_http_modsecurity_conf_t  *mcf;
+ 
++    if (r->error_page) {
++        return NGX_OK;
++    }
++
+     dd("catching a new _log_ phase handler");
+ 
+     mcf = ngx_http_get_module_loc_conf(r, ngx_http_modsecurity_module);
+diff --git a/src/ngx_http_modsecurity_pre_access.c b/src/ngx_http_modsecurity_pre_access.c
+index 05d7140..d5389ad 100644
+--- a/src/ngx_http_modsecurity_pre_access.c
++++ b/src/ngx_http_modsecurity_pre_access.c
+@@ -48,6 +48,10 @@ ngx_http_modsecurity_pre_access_handler(ngx_http_request_t *r)
+     ngx_http_modsecurity_ctx_t   *ctx;
+     ngx_http_modsecurity_conf_t  *mcf;
+ 
++    if (r->error_page) {
++        return NGX_DECLINED;
++    }
++
+     dd("catching a new _preaccess_ phase handler");
+ 
+     mcf = ngx_http_get_module_loc_conf(r, ngx_http_modsecurity_module);
+diff --git a/src/ngx_http_modsecurity_rewrite.c b/src/ngx_http_modsecurity_rewrite.c
+index cd02438..fa178a2 100644
+--- a/src/ngx_http_modsecurity_rewrite.c
++++ b/src/ngx_http_modsecurity_rewrite.c
+@@ -27,6 +27,10 @@ ngx_http_modsecurity_rewrite_handler(ngx_http_request_t *r)
+     ngx_http_modsecurity_ctx_t   *ctx;
+     ngx_http_modsecurity_conf_t  *mcf;
+ 
++    if (r->error_page) {
++        return NGX_DECLINED;
++    }
++
+     mcf = ngx_http_get_module_loc_conf(r, ngx_http_modsecurity_module);
+     if (mcf == NULL || mcf->enable != 1) {
+         dd("ModSecurity not enabled... returning");
diff --git a/contrib/src/modsecurity-nginx/version b/contrib/src/modsecurity-nginx/version
new file mode 100644
index 0000000..7555ca6
--- /dev/null
+++ b/contrib/src/modsecurity-nginx/version
@@ -0,0 +1,2 @@
+MODSECURITY_NGINX_VERSION := 1.0.1
+MODSECURITY_NGINX_GITHASH := e50e43ee4cc87565922ed98b1b6c72751019c326
diff --git a/contrib/src/modsecurity/Makefile b/contrib/src/modsecurity/Makefile
new file mode 100644
index 0000000..0950753
--- /dev/null
+++ b/contrib/src/modsecurity/Makefile
@@ -0,0 +1,32 @@
+# ModSecurity
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+
+# The release tarball distributed from GitHub does not include
+# all the required submodules (libinjection in particular), so
+# we are building our own tarball by running build.sh + configure +
+# make dist from desired version tag.
+#
+# MODSECURITY_URL := $(GITHUB)/SpiderLabs/ModSecurity/archive/v$(MODSECURITY_VERSION).tar.gz
+MODSECURITY_URL := $(CONTRIB_NGINX)/modsecurity/modsecurity-v$(MODSECURITY_VERSION).tar.gz
+
+PKGS += modsecurity
+
+$(TARBALLS)/modsecurity-v$(MODSECURITY_VERSION).tar.gz:
+	$(call download_pkg,$(MODSECURITY_URL),modsecurity)
+
+.sum-modsecurity: modsecurity-v$(MODSECURITY_VERSION).tar.gz
+
+modsecurity: modsecurity-v$(MODSECURITY_VERSION).tar.gz .sum-modsecurity
+	$(UNPACK)
+	$(APPLY) $(SRC)/modsecurity/PR2348.patch
+	$(MOVE)
+
+.modsecurity: modsecurity
+	cd $< && \
+		./configure --prefix $(PREFIX) --without-lmdb --without-lua && \
+		make $(_SMP_MFLAGS) install && \
+		TERM=foo make check-TESTS
+	rm -f /tmp/audit_test.log /tmp/audit_test_parallel.log
+	rm -rf /tmp/test
+	touch $@
diff --git a/contrib/src/modsecurity/PR2348.patch b/contrib/src/modsecurity/PR2348.patch
new file mode 100644
index 0000000..41e7a56
--- /dev/null
+++ b/contrib/src/modsecurity/PR2348.patch
@@ -0,0 +1,280 @@
+diff --git a/src/operators/rx.cc b/src/operators/rx.cc
+index 0ba983d73..b4fc6ff4d 100644
+--- a/src/operators/rx.cc
++++ b/src/operators/rx.cc
+@@ -38,7 +38,6 @@
+ 
+ bool Rx::evaluate(Transaction *transaction, Rule *rule,
+     const std::string& input, std::shared_ptr<RuleMessage> ruleMessage) {
+-    std::list<SMatch> matches;
+     Regex *re;
+ 
+     if (m_param.empty() && !m_string->m_containsMacro) {
+@@ -52,29 +51,29 @@
+         re = m_re;
+     }
+ 
+-    matches = re->searchAll(input);
++    std::vector<Utils::SMatchCapture> captures;
++    re->searchOneMatch(input, captures);
++
+     if (rule && rule->m_containsCaptureAction && transaction) {
+-        int i = 0;
+-        matches.reverse();
+-        for (const SMatch& a : matches) {
++        for (const Utils::SMatchCapture& capture : captures) {
++            const std::string capture_substring(input.substr(capture.m_offset,capture.m_length));
+             transaction->m_collections.m_tx_collection->storeOrUpdateFirst(
+-                std::to_string(i), a.str());
++                std::to_string(capture.m_group), capture_substring);
+             ms_dbg_a(transaction, 7, "Added regex subexpression TX." +
+-                std::to_string(i) + ": " + a.str());
+-            transaction->m_matched.push_back(a.str());
+-            i++;
++                std::to_string(capture.m_group) + ": " + capture_substring);
++            transaction->m_matched.push_back(capture_substring);
+         }
+     }
+ 
+-    for (const auto & i : matches) {
+-        logOffset(ruleMessage, i.offset(), i.str().size());
++    for (const auto & capture : captures) {
++        logOffset(ruleMessage, capture.m_offset, capture.m_length);
+     }
+ 
+     if (m_string->m_containsMacro) {
+         delete re;
+     }
+ 
+-    if (matches.size() > 0) {
++    if (captures.size() > 0) {
+         return true;
+     }
+ 
+diff --git a/src/utils/regex.cc b/src/utils/regex.cc
+index be56e378a..0feb256cc 100644
+--- a/src/utils/regex.cc
++++ b/src/utils/regex.cc
+@@ -16,10 +16,6 @@
+ #include "src/utils/regex.h"
+ 
+ #include <pcre.h>
+-#include <sys/socket.h>
+-#include <sys/types.h>
+-#include <netinet/in.h>
+-#include <arpa/inet.h>
+ #include <string>
+ #include <list>
+ 
+@@ -99,6 +95,26 @@ std::list<SMatch> Regex::searchAll(const std::string& s) const {
+     return retList;
+ }
+ 
++bool Regex::searchOneMatch(const std::string& s, std::vector<SMatchCapture>& captures) const {
++    const char *subject = s.c_str();
++    int ovector[OVECCOUNT];
++
++    int rc = pcre_exec(m_pc, m_pce, subject, s.size(), 0, 0, ovector, OVECCOUNT);
++
++    for (int i = 0; i < rc; i++) {
++        size_t start = ovector[2*i];
++        size_t end = ovector[2*i+1];
++        size_t len = end - start;
++        if (end > s.size()) {
++            continue;
++        }
++        SMatchCapture capture(i, start, len);
++        captures.push_back(capture);
++    }
++
++    return (rc > 0);
++}
++
+ int Regex::search(const std::string& s, SMatch *match) const {
+     int ovector[OVECCOUNT];
+     int ret = pcre_exec(m_pc, m_pce, s.c_str(),
+diff --git a/src/utils/regex.h b/src/utils/regex.h
+index 7dcc4dbf6..46dab6b83 100644
+--- a/src/utils/regex.h
++++ b/src/utils/regex.h
+@@ -19,6 +19,7 @@
+ #include <fstream>
+ #include <string>
+ #include <list>
++#include <vector>
+ 
+ #ifndef SRC_UTILS_REGEX_H_
+ #define SRC_UTILS_REGEX_H_
+@@ -47,6 +48,16 @@
+     size_t m_offset;
+ };
+ 
++struct SMatchCapture {
++    SMatchCapture(size_t group, size_t offset, size_t length) :
++	m_group(group),
++	m_offset(offset),
++	m_length(length) { }
++
++    size_t m_group; // E.g. 0 = full match; 6 = capture group 6
++    size_t m_offset; // offset of match within the analyzed string
++    size_t m_length;
++};
+ 
+ class Regex {
+  public:
+@@ -58,6 +69,7 @@
+     Regex& operator=(const Regex&) = delete;
+ 
+     std::list<SMatch> searchAll(const std::string& s) const;
++    bool searchOneMatch(const std::string& s, std::vector<SMatchCapture>& captures) const;
+     int search(const std::string &s, SMatch *m) const;
+     int search(const std::string &s) const;
+
+diff --git a/test/test-cases/regression/variable-TX.json b/test/test-cases/regression/variable-TX.json
+index 0cd45381b..904628e9b 100644
+--- a/test/test-cases/regression/variable-TX.json
++++ b/test/test-cases/regression/variable-TX.json
+@@ -80,5 +80,143 @@
+       "SecRule REQUEST_HEADERS \"@rx ([A-z]+)\" \"id:1,log,pass,capture,id:14\"",
+       "SecRule TX:0 \"@rx ([A-z]+)\" \"id:15\""
+     ]
++  },
++  {
++    "enabled":1,
++    "version_min":300000,
++    "title":"Testing Variables :: capture group match after unused group",
++    "client":{
++      "ip":"200.249.12.31",
++      "port":123
++    },
++    "server":{
++      "ip":"200.249.12.31",
++      "port":80
++    },
++    "request":{
++      "uri":"/?key=aadd",
++      "method":"GET"
++    },
++    "response":{
++      "headers":{
++        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
++        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
++        "Content-Type":"text/html"
++      },
++      "body":[
++        "no need."
++      ]
++    },
++    "expected":{
++      "debug_log":"Added regex subexpression TX\\.3: dd[\\s\\S]*Target value: \"dd\" \\(Variable\\: TX\\:3[\\s\\S]*Rule returned 1"
++    },
++    "rules":[
++      "SecRuleEngine On",
++      "SecRule ARGS \"@rx (aa)(bb|cc)?(dd)\" \"id:1,log,pass,capture,id:16\"",
++      "SecRule TX:3 \"@streq dd\" \"id:19,phase:2,log,pass\""
++    ]
++  },
++  {
++    "enabled":1,
++    "version_min":300000,
++    "title":"Testing Variables :: empty capture group match followed by nonempty capture group",
++    "client":{
++      "ip":"200.249.12.31",
++      "port":123
++    },
++    "server":{
++      "ip":"200.249.12.31",
++      "port":80
++    },
++    "request":{
++      "uri":"/?key=aadd",
++      "method":"GET"
++    },
++    "response":{
++      "headers":{
++        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
++        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
++        "Content-Type":"text/html"
++      },
++      "body":[
++        "no need."
++      ]
++    },
++    "expected":{
++      "debug_log":"Added regex subexpression TX\\.3: dd[\\s\\S]*Target value: \"dd\" \\(Variable\\: TX\\:3[\\s\\S]*Rule returned 1"
++    },
++    "rules":[
++      "SecRuleEngine On",
++      "SecRule ARGS \"@rx (aa)(bb|cc|)(dd)\" \"id:18,phase:1,log,pass,capture\"",
++      "SecRule TX:3 \"@streq dd\" \"id:19,phase:2,log,pass\""
++    ]
++  },
++  {
++    "enabled":1,
++    "version_min":300000,
++    "title":"Testing Variables :: repeating capture group -- alternates",
++    "client":{
++      "ip":"200.249.12.31",
++      "port":123
++    },
++    "server":{
++      "ip":"200.249.12.31",
++      "port":80
++    },
++    "request":{
++      "uri":"/?key=_abc123_",
++      "method":"GET"
++    },
++    "response":{
++      "headers":{
++        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
++        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
++        "Content-Type":"text/html"
++      },
++      "body":[
++        "no need."
++      ]
++    },
++    "expected":{
++      "debug_log":"Added regex subexpression TX\\.2: abc[\\s\\S]*Added regex subexpression TX\\.3: 123"
++    },
++    "rules":[
++      "SecRuleEngine On",
++      "SecRule ARGS \"@rx _((?:(abc)|(123))+)_\" \"id:18,phase:1,log,pass,capture\""
++    ]
++  },
++  {
++    "enabled":1,
++    "version_min":300000,
++    "title":"Testing Variables :: repeating capture group -- same (nested)",
++    "client":{
++      "ip":"200.249.12.31",
++      "port":123
++    },
++    "server":{
++      "ip":"200.249.12.31",
++      "port":80
++    },
++    "request":{
++      "uri":"/?key=a:5a:8a:9",
++      "method":"GET"
++    },
++    "response":{
++      "headers":{
++        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
++        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
++        "Content-Type":"text/html"
++      },
++      "body":[
++        "no need."
++      ]
++    },
++    "expected":{
++      "debug_log":"Added regex subexpression TX\\.1: 5[\\s\\S]*Added regex subexpression TX\\.2: 8[\\s\\S]*Added regex subexpression TX\\.3: 9"
++    },
++    "rules":[
++      "SecRuleEngine On",
++      "SecRule ARGS \"@rx a:([0-9])(?:a:([0-9])(?:a:([0-9]))*)*\" \"id:18,phase:1,log,pass,capture\""
++    ]
+   }
+ ]
diff --git a/contrib/src/modsecurity/SHA512SUMS b/contrib/src/modsecurity/SHA512SUMS
new file mode 100644
index 0000000..8f9ec47
--- /dev/null
+++ b/contrib/src/modsecurity/SHA512SUMS
@@ -0,0 +1 @@
+6ba9265054acfe7e67583dd0100bb592687080eee5d8cd5371785bb7b615a7361b52d0a037f6fa4e90ecfe857ed6a714969301b0bf17a638efebba86532f3f85  modsecurity-v3.0.4.tar.gz
diff --git a/contrib/src/modsecurity/version b/contrib/src/modsecurity/version
new file mode 100644
index 0000000..de8a971
--- /dev/null
+++ b/contrib/src/modsecurity/version
@@ -0,0 +1 @@
+MODSECURITY_VERSION := 3.0.4
diff --git a/contrib/src/nginx-opentracing/Makefile b/contrib/src/nginx-opentracing/Makefile
new file mode 100644
index 0000000..8cf13a0
--- /dev/null
+++ b/contrib/src/nginx-opentracing/Makefile
@@ -0,0 +1,20 @@
+# nginx-opentracing
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NGINX_OPENTRACING_URL := $(GITHUB)/opentracing-contrib/nginx-opentracing/archive/v$(NGINX_OPENTRACING_VERSION).tar.gz
+
+PKGS += nginx-opentracing
+
+$(TARBALLS)/nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz:
+	$(call download_pkg,$(NGINX_OPENTRACING_URL),nginx-opentracing)
+
+.sum-nginx-opentracing: nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz
+
+nginx-opentracing: nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz .sum-nginx-opentracing
+	$(UNPACK)
+	$(MOVE)
+
+DEPS_nginx-opentracing = opentracing-cpp $(DEPS_opentracing-cpp)
+
+.nginx-opentracing: nginx-opentracing
+	touch $@
diff --git a/contrib/src/nginx-opentracing/SHA512SUMS b/contrib/src/nginx-opentracing/SHA512SUMS
new file mode 100644
index 0000000..0971808
--- /dev/null
+++ b/contrib/src/nginx-opentracing/SHA512SUMS
@@ -0,0 +1 @@
+1700484555892e62c1dae846cd6b736ed084cdac6ee1cfd4f903644c4119de227ec8682ff5b2590c9b53524ab4305de3267f419a68226f33f9b3ef8128028dbf  nginx-opentracing-0.10.0.tar.gz
diff --git a/contrib/src/nginx-opentracing/version b/contrib/src/nginx-opentracing/version
new file mode 100644
index 0000000..9d09f3e
--- /dev/null
+++ b/contrib/src/nginx-opentracing/version
@@ -0,0 +1 @@
+NGINX_OPENTRACING_VERSION := 0.10.0
diff --git a/contrib/src/nginx-rtmp-module/Makefile b/contrib/src/nginx-rtmp-module/Makefile
new file mode 100644
index 0000000..048f26a
--- /dev/null
+++ b/contrib/src/nginx-rtmp-module/Makefile
@@ -0,0 +1,19 @@
+# nginx-rtmp-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NGINX_RTMP_MODULE_URL := $(GITHUB)/arut/nginx-rtmp-module/archive/v$(NGINX_RTMP_MODULE_VERSION).tar.gz
+
+PKGS += nginx-rtmp-module
+
+$(TARBALLS)/nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(NGINX_RTMP_MODULE_URL),nginx-rtmp-module)
+
+.sum-nginx-rtmp-module: nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz
+
+nginx-rtmp-module: nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz .sum-nginx-rtmp-module
+	$(UNPACK)
+	$(APPLY) $(SRC)/nginx-rtmp-module/PR1340.patch
+	$(MOVE)
+
+.nginx-rtmp-module: nginx-rtmp-module
+	touch $@
diff --git a/contrib/src/nginx-rtmp-module/PR1340.patch b/contrib/src/nginx-rtmp-module/PR1340.patch
new file mode 100644
index 0000000..4315592
--- /dev/null
+++ b/contrib/src/nginx-rtmp-module/PR1340.patch
@@ -0,0 +1,21 @@
+From 28f0acce2ebcd20f236e2d804a2ebef77b0f5640 Mon Sep 17 00:00:00 2001
+From: Andrei Belov <defanator@gmail.com>
+Date: Sat, 22 Dec 2018 02:39:31 +0300
+Subject: [PATCH] Fixed building with gcc 8
+
+---
+ ngx_rtmp_eval.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ngx_rtmp_eval.c b/ngx_rtmp_eval.c
+index 1e5195a9..c658f14e 100644
+--- a/ngx_rtmp_eval.c
++++ b/ngx_rtmp_eval.c
+@@ -166,6 +166,7 @@ ngx_rtmp_eval(void *ctx, ngx_str_t *in, ngx_rtmp_eval_t **e, ngx_str_t *out,
+                         state = ESCAPE;
+                         continue;
+                 }
++                /* fall through */
+ 
+             case ESCAPE:
+                 ngx_rtmp_eval_append(&b, &c, 1, log);
diff --git a/contrib/src/nginx-rtmp-module/SHA512SUMS b/contrib/src/nginx-rtmp-module/SHA512SUMS
new file mode 100644
index 0000000..56f0f0e
--- /dev/null
+++ b/contrib/src/nginx-rtmp-module/SHA512SUMS
@@ -0,0 +1 @@
+4a0af5e9afa4deb0b53de8de7ddb2cfa6430d372e1ef9e421f01b509548bd134d427345442ac1ce667338cc2a1484dc2ab732e316e878ac7d3537dc527d5f922  nginx-rtmp-module-1.2.1.tar.gz
diff --git a/contrib/src/nginx-rtmp-module/version b/contrib/src/nginx-rtmp-module/version
new file mode 100644
index 0000000..e311d2d
--- /dev/null
+++ b/contrib/src/nginx-rtmp-module/version
@@ -0,0 +1 @@
+NGINX_RTMP_MODULE_VERSION := 1.2.1
diff --git a/contrib/src/nginx/Makefile b/contrib/src/nginx/Makefile
new file mode 100644
index 0000000..bcaf27e
--- /dev/null
+++ b/contrib/src/nginx/Makefile
@@ -0,0 +1,44 @@
+# nginx
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NGINX_URL := $(NGINX)/nginx-$(NGINX_VERSION).tar.gz
+
+PKGS += nginx
+
+$(TARBALLS)/nginx-$(NGINX_VERSION).tar.gz:
+	$(call download_pkg,$(NGINX_URL),nginx)
+
+.sum-nginx: nginx-$(NGINX_VERSION).tar.gz
+
+nginx: nginx-$(NGINX_VERSION).tar.gz .sum-nginx
+	$(UNPACK)
+	$(MOVE)
+
+.nginx: nginx
+	cd $< && ./configure \
+		--prefix=$(PREFIX) \
+		--with-compat \
+		--with-threads \
+		--with-http_addition_module \
+		--with-http_auth_request_module \
+		--with-http_dav_module \
+		--with-http_flv_module \
+		--with-http_gunzip_module \
+		--with-http_gzip_static_module \
+		--with-http_mp4_module \
+		--with-http_random_index_module \
+		--with-http_realip_module \
+		--with-http_secure_link_module \
+		--with-http_slice_module \
+		--with-http_ssl_module \
+		--with-http_stub_status_module \
+		--with-http_sub_module \
+		--with-http_v2_module \
+		--with-mail \
+		--with-mail_ssl_module \
+		--with-stream \
+		--with-stream_realip_module \
+		--with-stream_ssl_module \
+		--with-stream_ssl_preread_module
+	cd $< && $(MAKE) $(_SMP_MFLAGS) install
+	touch $@
diff --git a/contrib/src/nginx/SHA512SUMS b/contrib/src/nginx/SHA512SUMS
new file mode 100644
index 0000000..1f4efe0
--- /dev/null
+++ b/contrib/src/nginx/SHA512SUMS
@@ -0,0 +1 @@
+1249c56b124a8de71f5d722e53d599f3b0cb14dc0f95b1eb905a6a8019b2d33f8e76874de2a88d49c4c82ee4fa7aabd42e5044a0a110892c23b50f71cb632148  nginx-1.19.6.tar.gz
diff --git a/contrib/src/nginx/version b/contrib/src/nginx/version
new file mode 100644
index 0000000..3268628
--- /dev/null
+++ b/contrib/src/nginx/version
@@ -0,0 +1 @@
+NGINX_VERSION := 1.19.6
diff --git a/contrib/src/ngx_brotli/Makefile b/contrib/src/ngx_brotli/Makefile
new file mode 100644
index 0000000..f6dc1e4
--- /dev/null
+++ b/contrib/src/ngx_brotli/Makefile
@@ -0,0 +1,18 @@
+# ngx_brotli
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NGX_BROTLI_URL := $(GITHUB)/google/ngx_brotli/archive/v$(NGX_BROTLI_VERSION)rc.tar.gz
+
+PKGS += ngx_brotli
+
+$(TARBALLS)/ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz:
+	$(call download_pkg,$(NGX_BROTLI_URL),ngx_brotli)
+
+.sum-ngx_brotli: ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz
+
+ngx_brotli: ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz .sum-ngx_brotli
+	$(UNPACK)
+	$(MOVE)
+
+.ngx_brotli: ngx_brotli
+	touch $@
diff --git a/contrib/src/ngx_brotli/SHA512SUMS b/contrib/src/ngx_brotli/SHA512SUMS
new file mode 100644
index 0000000..aa01259
--- /dev/null
+++ b/contrib/src/ngx_brotli/SHA512SUMS
@@ -0,0 +1 @@
+05a880d5e48ac83be84498ed41fb4750211b827a9d7541acfd6ef494e5205a6e853d5594bfec3ab4ae668ea3f803e4f4b0ba550c76811971c8e266e42663c56d  ngx_brotli-1.0.0.tar.gz
diff --git a/contrib/src/ngx_brotli/version b/contrib/src/ngx_brotli/version
new file mode 100644
index 0000000..5bcecfc
--- /dev/null
+++ b/contrib/src/ngx_brotli/version
@@ -0,0 +1 @@
+NGX_BROTLI_VERSION := 1.0.0
diff --git a/contrib/src/ngx_devel_kit/Makefile b/contrib/src/ngx_devel_kit/Makefile
new file mode 100644
index 0000000..77bb36c
--- /dev/null
+++ b/contrib/src/ngx_devel_kit/Makefile
@@ -0,0 +1,18 @@
+# ngx_devel_kit
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NGX_DEVEL_KIT_URL := $(GITHUB)/vision5/ngx_devel_kit/archive/v$(NGX_DEVEL_KIT_VERSION).tar.gz
+
+PKGS += ngx_devel_kit
+
+$(TARBALLS)/ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz:
+	$(call download_pkg,$(NGX_DEVEL_KIT_URL),ngx_devel_kit)
+
+.sum-ngx_devel_kit: ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz
+
+ngx_devel_kit: ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz .sum-ngx_devel_kit
+	$(UNPACK)
+	$(MOVE)
+
+.ngx_devel_kit: ngx_devel_kit
+	touch $@
diff --git a/contrib/src/ngx_devel_kit/SHA512SUMS b/contrib/src/ngx_devel_kit/SHA512SUMS
new file mode 100644
index 0000000..faf80d4
--- /dev/null
+++ b/contrib/src/ngx_devel_kit/SHA512SUMS
@@ -0,0 +1 @@
+de1e3349d8dd08e5982279b2219dc8a8006739f0409b8e0f5c50d93434beff1fbafba43e9c5ac85a5fab90afc5c0a7244a340610339c36f82f2cba7233e72de9  ngx_devel_kit-0.3.1.tar.gz
diff --git a/contrib/src/ngx_devel_kit/version b/contrib/src/ngx_devel_kit/version
new file mode 100644
index 0000000..94d8e14
--- /dev/null
+++ b/contrib/src/ngx_devel_kit/version
@@ -0,0 +1 @@
+NGX_DEVEL_KIT_VERSION := 0.3.1
diff --git a/contrib/src/ngx_http_geoip2_module/Makefile b/contrib/src/ngx_http_geoip2_module/Makefile
new file mode 100644
index 0000000..2810d2e
--- /dev/null
+++ b/contrib/src/ngx_http_geoip2_module/Makefile
@@ -0,0 +1,18 @@
+# ngx_http_geoip2_module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+GEOIP2_NGINX_MODULE_URL := $(GITHUB)/leev/ngx_http_geoip2_module/archive/$(GEOIP2_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += ngx_http_geoip2_module
+
+$(TARBALLS)/ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(GEOIP2_NGINX_MODULE_URL),ngx_http_geoip2_module)
+
+.sum-ngx_http_geoip2_module: ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz
+
+ngx_http_geoip2_module: ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz .sum-ngx_http_geoip2_module
+	$(UNPACK)
+	$(MOVE)
+
+.ngx_http_geoip2_module: ngx_http_geoip2_module
+	touch $@
diff --git a/contrib/src/ngx_http_geoip2_module/SHA512SUMS b/contrib/src/ngx_http_geoip2_module/SHA512SUMS
new file mode 100644
index 0000000..ec84b01
--- /dev/null
+++ b/contrib/src/ngx_http_geoip2_module/SHA512SUMS
@@ -0,0 +1 @@
+06963b598c54e22d75ce837fb222f5aa6c9494c29e558ff46f1205d7159fc305414bfac4ed3288c836dcbf7628d92f26458e1992d34fc2f4b73275a32847bdc0  ngx_http_geoip2_module-3.3.tar.gz
diff --git a/contrib/src/ngx_http_geoip2_module/version b/contrib/src/ngx_http_geoip2_module/version
new file mode 100644
index 0000000..2be1719
--- /dev/null
+++ b/contrib/src/ngx_http_geoip2_module/version
@@ -0,0 +1 @@
+GEOIP2_NGINX_MODULE_VERSION := 3.3
diff --git a/contrib/src/ngx_http_substitutions_filter_module/Makefile b/contrib/src/ngx_http_substitutions_filter_module/Makefile
new file mode 100644
index 0000000..e6df0a0
--- /dev/null
+++ b/contrib/src/ngx_http_substitutions_filter_module/Makefile
@@ -0,0 +1,20 @@
+# ngx_http_substitutions_filter_module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+SUBSTITUTIONS_FILTER_NGINX_MODULE_GITURL := $(GITHUB)/yaoweibin/ngx_http_substitutions_filter_module.git
+
+PKGS += ngx_http_substitutions_filter_module
+
+$(TARBALLS)/ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz:
+	$(call download_git,$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITURL),,$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH))
+
+.sum-ngx_http_substitutions_filter_module: ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz
+	$(call check_githash,$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH))
+	touch $@
+
+ngx_http_substitutions_filter_module: ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz .sum-ngx_http_substitutions_filter_module
+	$(UNPACK)
+	$(MOVE)
+
+.ngx_http_substitutions_filter_module: ngx_http_substitutions_filter_module
+	touch $@
diff --git a/contrib/src/ngx_http_substitutions_filter_module/version b/contrib/src/ngx_http_substitutions_filter_module/version
new file mode 100644
index 0000000..e809e30
--- /dev/null
+++ b/contrib/src/ngx_http_substitutions_filter_module/version
@@ -0,0 +1,2 @@
+SUBSTITUTIONS_FILTER_NGINX_MODULE_VERSION := 0.6.4
+SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH := b8a71eacc7f986ba091282ab8b1bbbc6ae1807e0
diff --git a/contrib/src/njs/Makefile b/contrib/src/njs/Makefile
new file mode 100644
index 0000000..1d6675e
--- /dev/null
+++ b/contrib/src/njs/Makefile
@@ -0,0 +1,19 @@
+# njs
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+NJS_URL := https://hg.nginx.org/njs/archive/$(NJS_VERSION).tar.gz
+
+PKGS += njs
+
+$(TARBALLS)/njs-$(NJS_VERSION).tar.gz:
+	$(call download_pkg,$(NJS_URL),njs)
+
+.sum-njs: njs-$(NJS_VERSION).tar.gz
+
+njs: njs-$(NJS_VERSION).tar.gz .sum-njs
+	$(UNPACK)
+	$(MOVE)
+
+.njs: njs
+	cd $< && ./configure && $(MAKE) njs
+	touch $@
diff --git a/contrib/src/njs/SHA512SUMS b/contrib/src/njs/SHA512SUMS
new file mode 100644
index 0000000..bad4017
--- /dev/null
+++ b/contrib/src/njs/SHA512SUMS
@@ -0,0 +1 @@
+f90e894ae477bfb0fe28f24ce26f64d83749832ca45e5b3ac61d6df2c25f1a330842f13bf801cf08875c6c3006332afe3ec66d72d234dc26e5f527fb17f96370  njs-0.5.0.tar.gz
diff --git a/contrib/src/njs/version b/contrib/src/njs/version
new file mode 100644
index 0000000..a71ebd0
--- /dev/null
+++ b/contrib/src/njs/version
@@ -0,0 +1 @@
+NJS_VERSION := 0.5.0
diff --git a/contrib/src/opentracing-cpp/CMakeLists.txt.patch b/contrib/src/opentracing-cpp/CMakeLists.txt.patch
new file mode 100644
index 0000000..9a392e5
--- /dev/null
+++ b/contrib/src/opentracing-cpp/CMakeLists.txt.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt	2019-09-18 21:59:25.000000000 +0000
++++ b/CMakeLists.txt	2020-12-10 14:14:05.462435162 +0000
+@@ -180,7 +180,7 @@
+   target_link_libraries(opentracing-static ${LIBRARIES})
+   # Windows generates a lib and dll files for a shared library. using the same name will override the lib file generated by the shared target
+   if (NOT WIN32)
+-    set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing)
++    set_target_properties(opentracing-static PROPERTIES OUTPUT_NAME opentracing POSITION_INDEPENDENT_CODE ON)
+   endif()
+   target_compile_definitions(opentracing-static PUBLIC OPENTRACING_STATIC)
+   target_include_directories(opentracing-static INTERFACE "$<INSTALL_INTERFACE:include/>")
diff --git a/contrib/src/opentracing-cpp/Makefile b/contrib/src/opentracing-cpp/Makefile
new file mode 100644
index 0000000..536c4d8
--- /dev/null
+++ b/contrib/src/opentracing-cpp/Makefile
@@ -0,0 +1,24 @@
+# opentracing-cpp
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+OPENTRACING_CPP_URL := $(GITHUB)/opentracing/opentracing-cpp/archive/v$(OPENTRACING_CPP_VERSION).tar.gz
+
+PKGS += opentracing-cpp
+
+$(TARBALLS)/opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz:
+	$(call download_pkg,$(OPENTRACING_CPP_URL),opentracing-cpp)
+
+.sum-opentracing-cpp: opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz
+
+opentracing-cpp: opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz .sum-opentracing-cpp
+	$(UNPACK)
+	$(APPLY) $(SRC)/opentracing-cpp/CMakeLists.txt.patch
+	$(MOVE)
+
+.opentracing-cpp: opentracing-cpp
+	cd $< && \
+		mkdir .build && \
+		cd .build && \
+		cmake ../ && \
+		DESTDIR=$(PREFIX) make $(_SMP_MFLAGS) install
+	touch $@
diff --git a/contrib/src/opentracing-cpp/SHA512SUMS b/contrib/src/opentracing-cpp/SHA512SUMS
new file mode 100644
index 0000000..359ceba
--- /dev/null
+++ b/contrib/src/opentracing-cpp/SHA512SUMS
@@ -0,0 +1 @@
+e4efad670d5f09e7ce2e1cd4820c7efdd12d8ffbc2f9cbeb54427f640922aa547e12cf01ae0066f5b89304c7f592ab2c2612139bf3275b19773028f1d8c159b5  opentracing-cpp-1.6.0.tar.gz
diff --git a/contrib/src/opentracing-cpp/version b/contrib/src/opentracing-cpp/version
new file mode 100644
index 0000000..379967a
--- /dev/null
+++ b/contrib/src/opentracing-cpp/version
@@ -0,0 +1 @@
+OPENTRACING_CPP_VERSION := 1.6.0
diff --git a/contrib/src/passenger/Makefile b/contrib/src/passenger/Makefile
new file mode 100644
index 0000000..60f84a1
--- /dev/null
+++ b/contrib/src/passenger/Makefile
@@ -0,0 +1,20 @@
+# passenger
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+PASSENGER_URL := http://s3.amazonaws.com/phusion-passenger/releases/passenger-$(PASSENGER_VERSION).tar.gz
+
+PKGS += passenger
+
+$(TARBALLS)/passenger-$(PASSENGER_VERSION).tar.gz:
+	$(call download_pkg,$(PASSENGER_URL),passenger)
+
+.sum-passenger: passenger-$(PASSENGER_VERSION).tar.gz
+
+passenger: passenger-$(PASSENGER_VERSION).tar.gz .sum-passenger
+	$(UNPACK)
+	$(APPLY) $(SRC)/passenger/build-nginx.rb.patch
+	$(APPLY) $(SRC)/passenger/src-nginx_module-ContentHandler.c.patch
+	$(MOVE)
+
+.passenger: passenger
+	touch $@
diff --git a/contrib/src/passenger/SHA512SUMS b/contrib/src/passenger/SHA512SUMS
new file mode 100644
index 0000000..9146f76
--- /dev/null
+++ b/contrib/src/passenger/SHA512SUMS
@@ -0,0 +1 @@
+57a013dbbddab13862c2d5445d048aafdc5a56297c56d3d642a39fe7757d3bcbd7e9e21aca36ebeb0f54a03d26e0886031a947cb098026a516900cc5bff42f0c  passenger-6.0.6.tar.gz
diff --git a/contrib/src/passenger/build-nginx.rb.patch b/contrib/src/passenger/build-nginx.rb.patch
new file mode 100644
index 0000000..f120c13
--- /dev/null
+++ b/contrib/src/passenger/build-nginx.rb.patch
@@ -0,0 +1,33 @@
+--- a/build/nginx.rb	2013-10-27 04:00:00.000000000 +0400
++++ b/build/nginx.rb	2020-11-23 11:36:59.000000000 +0300
+@@ -39,13 +39,12 @@
+ desc "Build Nginx support files"
+ task :nginx => [
+   :nginx_without_native_support,
+-  NATIVE_SUPPORT_TARGET
++  LIBBOOST_OXT,
+ ].compact
+ 
+ desc "Build Nginx support files, including objects suitable for dynamic linking against Nginx"
+ task 'nginx:as_dynamic_module' => [
+   :nginx_dynamic_without_native_support,
+-  NATIVE_SUPPORT_TARGET
+ ].compact
+ 
+ # Workaround for https://github.com/jimweirich/rake/issues/274
+@@ -53,7 +52,6 @@
+ 
+ task :nginx_without_native_support => [
+   auto_generated_sources,
+-  AGENT_TARGET,
+   COMMON_LIBRARY.only(*NGINX_LIBS_SELECTOR).link_objects
+ ].flatten
+ 
+@@ -61,7 +59,6 @@
+ # it also creates a namespace:clean task to clean up the output_dir
+ task :nginx_dynamic_without_native_support => [
+   auto_generated_sources,
+-  AGENT_TARGET,
+   define_libboost_oxt_task("nginx", NGINX_DYNAMIC_OUTPUT_DIR + "libboost_oxt", "-fPIC"),
+   COMMON_LIBRARY.only(*NGINX_LIBS_SELECTOR).
+     set_namespace("nginx").set_output_dir(NGINX_DYNAMIC_OUTPUT_DIR + "module_libpassenger_common").define_tasks("-fPIC").
diff --git a/contrib/src/passenger/src-nginx_module-ContentHandler.c.patch b/contrib/src/passenger/src-nginx_module-ContentHandler.c.patch
new file mode 100644
index 0000000..b81c3ae
--- /dev/null
+++ b/contrib/src/passenger/src-nginx_module-ContentHandler.c.patch
@@ -0,0 +1,14 @@
+# see https://github.com/phusion/passenger/pull/1841
+--- a/src/nginx_module/ContentHandler.c	2013-10-27 00:00:00.000000000 +0000
++++ b/src/nginx_module/ContentHandler.c	2020-12-17 14:10:27.556476564 +0000
+@@ -656,7 +656,9 @@
+         state->content_length.len = ngx_snprintf(state->content_length.data,
+             sizeof("4294967295") - 1, "%O", r->headers_in.content_length_n)
+             - state->content_length.data;
+-    } // else: content_length not used
++    } else { // else: content_length not used
++        state->content_length.len = 0;
++    }
+
+     state->core_password.data = (u_char *) psg_watchdog_launcher_get_core_password(
+         psg_watchdog_launcher, &len);
diff --git a/contrib/src/passenger/version b/contrib/src/passenger/version
new file mode 100644
index 0000000..f7552d5
--- /dev/null
+++ b/contrib/src/passenger/version
@@ -0,0 +1 @@
+PASSENGER_VERSION := 6.0.6
diff --git a/contrib/src/set-misc-nginx-module/Makefile b/contrib/src/set-misc-nginx-module/Makefile
new file mode 100644
index 0000000..0ecfb35
--- /dev/null
+++ b/contrib/src/set-misc-nginx-module/Makefile
@@ -0,0 +1,20 @@
+# set-misc-nginx-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+SET_MISC_NGINX_MODULE_URL := $(GITHUB)/openresty/set-misc-nginx-module/archive/v$(SET_MISC_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += set-misc-nginx-module
+
+$(TARBALLS)/set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(SET_MISC_NGINX_MODULE_URL),set-misc-nginx-module)
+
+.sum-set-misc-nginx-module: set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz
+
+set-misc-nginx-module: set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz .sum-set-misc-nginx-module
+	$(UNPACK)
+	$(MOVE)
+
+DEPS_set-misc-nginx-module = ngx_devel_kit $(DEPS_ngx_devel_kit)
+
+.set-misc-nginx-module: set-misc-nginx-module
+	touch $@
diff --git a/contrib/src/set-misc-nginx-module/SHA512SUMS b/contrib/src/set-misc-nginx-module/SHA512SUMS
new file mode 100644
index 0000000..cb80f18
--- /dev/null
+++ b/contrib/src/set-misc-nginx-module/SHA512SUMS
@@ -0,0 +1 @@
+5590526f60c99630f99a49bfa9e3455baee6d58cd2a1419eab1367a838dafb87a50f5e2607aa8ac557b90dbf633dcf61069c997b3526cddc8f2fc45820a7bc3b  set-misc-nginx-module-0.32.tar.gz
diff --git a/contrib/src/set-misc-nginx-module/version b/contrib/src/set-misc-nginx-module/version
new file mode 100644
index 0000000..98ee11d
--- /dev/null
+++ b/contrib/src/set-misc-nginx-module/version
@@ -0,0 +1 @@
+SET_MISC_NGINX_MODULE_VERSION := 0.32
diff --git a/contrib/src/stream-lua-nginx-module/Makefile b/contrib/src/stream-lua-nginx-module/Makefile
new file mode 100644
index 0000000..d2222ac
--- /dev/null
+++ b/contrib/src/stream-lua-nginx-module/Makefile
@@ -0,0 +1,21 @@
+# stream-lua-nginx-module
+
+include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/version
+STREAM_LUA_NGINX_MODULE_URL := $(GITHUB)/openresty/stream-lua-nginx-module/archive/v$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz
+
+PKGS += stream-lua-nginx-module
+
+$(TARBALLS)/stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz:
+	$(call download_pkg,$(STREAM_LUA_NGINX_MODULE_URL),stream-lua-nginx-module)
+
+.sum-stream-lua-nginx-module: stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz
+
+stream-lua-nginx-module: stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz .sum-stream-lua-nginx-module
+	$(UNPACK)
+	$(APPLY) $(SRC)/stream-lua-nginx-module/config.patch
+	$(MOVE)
+
+DEPS_stream-lua-nginx-module = luajit2 $(DEPS_luajit2) ngx_devel_kit $(DEPS_ngx_devel_kit)
+
+.stream-lua-nginx-module: stream-lua-nginx-module
+	touch $@
diff --git a/contrib/src/stream-lua-nginx-module/SHA512SUMS b/contrib/src/stream-lua-nginx-module/SHA512SUMS
new file mode 100644
index 0000000..e7226f3
--- /dev/null
+++ b/contrib/src/stream-lua-nginx-module/SHA512SUMS
@@ -0,0 +1 @@
+82cd43956feaded415881a21f186edd0bdcf416cb7148d0cabe2567aee27479b0db24bbdcc7d3f5a16d7d1b6c5cf2aeb9fca25145bd2df1c900655fa967569db  stream-lua-nginx-module-0.0.9.tar.gz
diff --git a/contrib/src/stream-lua-nginx-module/config.patch b/contrib/src/stream-lua-nginx-module/config.patch
new file mode 100644
index 0000000..2fc73f7
--- /dev/null
+++ b/contrib/src/stream-lua-nginx-module/config.patch
@@ -0,0 +1,26 @@
+--- a/config	2015-12-20 05:43:48.000000000 +0000
++++ b/config	2015-12-25 08:01:04.138004474 +0000
+@@ -45,9 +45,9 @@
+         NGX_TEST_LD_OPT="$ngx_lua_opt_L $NGX_TEST_LD_OPT"
+ 
+         if [ $NGX_RPATH = YES ]; then
+-            ngx_feature_libs="-R$LUAJIT_LIB $ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++            ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a -R$LUAJIT_LIB $luajit_ld_opt"
+         else
+-            ngx_feature_libs="$ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++            ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a $ngx_lua_opt_L $luajit_ld_opt"
+         fi
+ 
+         . auto/feature
+@@ -71,9 +71,9 @@
+             NGX_TEST_LD_OPT="$ngx_lua_opt_L $NGX_TEST_LD_OPT"
+ 
+             if [ $NGX_RPATH = YES ]; then
+-                ngx_feature_libs="-R$LUAJIT_LIB $ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++                ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a -R$LUAJIT_LIB $luajit_ld_opt"
+             else
+-                ngx_feature_libs="$ngx_lua_opt_L -lluajit-5.1 $luajit_ld_opt"
++                ngx_feature_libs="$LUAJIT_LIB/libluajit-5.1.a $luajit_ld_opt"
+             fi
+ 
+             . auto/feature
diff --git a/contrib/src/stream-lua-nginx-module/version b/contrib/src/stream-lua-nginx-module/version
new file mode 100644
index 0000000..7744542
--- /dev/null
+++ b/contrib/src/stream-lua-nginx-module/version
@@ -0,0 +1 @@
+STREAM_LUA_NGINX_MODULE_VERSION := 0.0.9
diff --git a/contrib/tarballs/.hgignore b/contrib/tarballs/.hgignore
new file mode 100644
index 0000000..8d876d7
--- /dev/null
+++ b/contrib/tarballs/.hgignore
@@ -0,0 +1,3 @@
+syntax:glob
+*.tar.*
+*.githash
diff --git a/debian/Makefile b/debian/Makefile
index 7a4c58c..7d0105f 100644
--- a/debian/Makefile
+++ b/debian/Makefile
@@ -9,6 +9,8 @@
 DOCS?=		../docs
 BUILD_ENV_PATH=	${HOME}/debuild
 MODULE_TARGET?=	oss
+CONTRIB?=	../contrib
+CONTRIB:=	$(abspath $(CONTRIB))
 
 ifeq ($(MODULE_TARGET), plus)
 MODULE_CONTROL_TEMPLATE=   nginx-plus-module.control.in
@@ -26,15 +28,16 @@
 MODULE_TARGET_PREFIX=$(TARGET_VERSION)+
 
 MODULE_PACKAGE_VENDOR=	Sergey Budnevitch <sb@nginx.com>
-MODULE_PACKAGE_URL=	http://nginx.org/
+MODULE_PACKAGE_URL=	https://nginx.org/
 
 CODENAME=	$(shell lsb_release -cs)
 ARCH=		$(shell uname -m)
 NPROC=		$(shell getconf _NPROCESSORS_ONLN)
 MODSRC_PREFIX=	extra/
-MODSRC_PATH=	$(MODSRC_PREFIX)
 BUILD_DIR=	$$(BUILDDIR_nginx)
 
+BASE_MODULES=	geoip image-filter njs perl xslt
+
 MODULES=
 
 -include Makefile.module-*
@@ -82,14 +85,28 @@
 
 export CR=\\n
 
-modname = $(shell echo $1 | cut -d '-' -f 3- | tr '-' '_')
+modname = $(shell echo $1 | tr '-' '_')
 
 default:
 	@echo "valid targets: all base $(addprefix module-, $(MODULES)) test test-debug"
 
-all:	base modules
+list-base:
+	@printf "%-20s\t%s\n" nginx $(BASE_VERSION)-$(BASE_RELEASE)
+
+list-module-%:
+	@printf "%-20s\t%s\n" $* $(MODULE_VERSION_$(call modname, $*))-$(MODULE_RELEASE_$(call modname, $*))
+
+list-all-modules: $(addprefix list-module-, $(MODULES))
+
+list-base-modules: $(addprefix list-module-, $(BASE_MODULES))
+
+list: list-base list-all-modules
+
+all:	base base-modules
 	@echo "===> all done"
 
+base-modules:	$(addprefix module-, $(BASE_MODULES))
+
 modules:	$(addprefix module-, $(MODULES))
 
 rules:	rules-base $(addprefix rules-module-, $(MODULES))
@@ -101,15 +118,8 @@
 	ln -s debuild-base/$(SRCDIR)/debian/nginx/usr/sbin base
 
 $(BASE_SRC):
-	@{ \
-	if [ -f $(SRCPATH)/$(BASE_SRC) ]; then \
-		cp -P $(SRCPATH)/$(BASE_SRC) $(BASE_SRC) ; \
-	elif [ -f $(SRCPATH)/nginx_$(BASE_VERSION).orig.tar.gz ]; then \
-		cp -P $(SRCPATH)/nginx_$(BASE_VERSION).orig.tar.gz $(BASE_SRC) ; \
-	else \
-		wget http://nginx.org/download/$(BASE_SRC) ; \
-	fi ; \
-	}
+	cd $(CONTRIB) && make .sum-nginx
+	ln -s $(CONTRIB)/tarballs/$(BASE_SRC) $(BASE_SRC)
 
 nginx.deb-changelog:
 	@echo "===> Generating $@"
@@ -161,7 +171,7 @@
 	}
 
 
-rules-module-%: $(BASE_SRC) nginx-module-%.deb-changelog
+rules-module-%: $(BASE_SRC) nginx-module-%.deb-changelog .deps-module-%
 	@echo "===> Creating $@"
 	@{ \
 	set -e ; \
@@ -170,10 +180,10 @@
 	builddir=`echo debuild-module-$${module_asis}` ; \
 	mkdir -p $${builddir} ; \
 	if [ "$(MODULE_TARGET)" = "oss" ]; then \
-		module_version="$(MODULE_VERSION_PREFIX_$(call modname, $@))$(MODULE_VERSION_$(call modname, $@))" ; \
+		module_version="$(MODULE_VERSION_PREFIX_$(call modname, $*))$(MODULE_VERSION_$(call modname, $*))" ; \
 		orig_name="nginx-module-$${module_asis}_$${module_version}.orig.tar.gz" ; \
 	else \
-		module_version="$(MODULE_VERSION_PREFIX_$(call modname, $@))$(MODULE_VERSION_$(call modname, $@))" ; \
+		module_version="$(MODULE_VERSION_PREFIX_$(call modname, $*))$(MODULE_VERSION_$(call modname, $*))" ; \
 		orig_name="nginx-plus-module-$${module_asis}_$${module_version}.orig.tar.gz" ; \
 	fi ; \
 	cp $(BASE_SRC) $${builddir}/$${orig_name} ; \
@@ -182,36 +192,43 @@
 	mkdir -p $${builddir}/$(SRCDIR)/debian/source ; \
 	echo "3.0 (quilt)" > $${builddir}/$(SRCDIR)/debian/source/format ; \
 	echo "9" > $${builddir}/$(SRCDIR)/debian/compat ; \
-	for src in $(MODULE_SOURCES_$(call modname, $@)); do \
-		tar -C $${builddir}/$(SRCDIR)/debian/extra -xf extra/$${src} ; \
+	for src in $(MODULE_SOURCES_$(call modname, $*)); do \
+		tar -C $${builddir}/$(SRCDIR)/debian/extra -xvf $(CONTRIB)/tarballs/$${src} ; \
+		sn=`echo $${src} | sed -e 's/-[0-9].*$$//'` ; \
+		if [ "$${sn}" = "$${src}" ] ; then \
+			sn=$${src%-*} ; \
+		fi ; \
+		( cd $${builddir}/$(SRCDIR)/debian/extra && ln -s $${sn}-* $${sn} ) ; \
 	done ; \
-	for p in $(MODULE_PATCHES_$(call modname, $@)); do \
-		( cd $${builddir}/$(SRCDIR)/debian/extra && patch -p1 < $${curdir}/extra/$${p} ) ; \
+	for p in $(MODULE_PATCHES_$(call modname, $*)); do \
+		dn=`dirname $${p}` ; \
+		bdn=`basename $${dn}` ; \
+		( cd $${builddir}/$(SRCDIR)/debian/extra/$${bdn} && patch -p1 < $${p} ) ; \
 	done ; \
 	( cd $${builddir}/$(SRCDIR) && find debian/ -type f -exec file --mime {} \; | fgrep 'charset=binary' | cut -d ':' -f 1 > include-binaries && mv include-binaries debian/source/ ) ; \
 	module_copyright="nginx-module-$${module_asis}.copyright" ; \
 	cp -p $(DOCS)/$${module_copyright} $${builddir}/$(SRCDIR)/debian/copyright ; \
-	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	addcontroltags=`echo "$$MODULE_ADD_CONTROL_TAGS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	buildenv=`echo "$$MODULE_ENV_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	post=`echo "$$MODULE_POST_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	addcontroltags=`echo "$$MODULE_ADD_CONTROL_TAGS_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	buildenv=`echo "$$MODULE_ENV_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	post=`echo "$$MODULE_POST_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
 	cat $(MODULE_CONTROL_TEMPLATE) | sed \
 		-e "s#%%MODULE%%#$${module_asis}#g" \
 		-e "s#%%MODULE_PACKAGE_VENDOR%%#$(MODULE_PACKAGE_VENDOR)#g" \
 		-e "s#%%MODULE_PACKAGE_URL%%#$(MODULE_PACKAGE_URL)#g" \
-		-e "s#%%SUMMARY%%#$(MODULE_SUMMARY_PREFIX) $(MODULE_SUMMARY_$(call modname, $@))#g" \
-		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $@))#g" \
+		-e "s#%%SUMMARY%%#$(MODULE_SUMMARY_PREFIX) $(MODULE_SUMMARY_$(call modname, $*))#g" \
+		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $*))#g" \
 		-e "s#%%CODENAME%%#$(CODENAME)#g" \
 		-e "s#%%BASE_VERSION%%#$(BASE_VERSION)#g" \
 		-e "s#%%BASE_RELEASE%%#$(BASE_RELEASE)#g" \
 		-e "s#%%PLUS_VERSION%%#$(PLUS_VERSION)#g" \
-		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
-		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
-		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
-		-e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$(call modname, $@))#g" \
-		-e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$(call modname, $@))#g" \
+		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $*))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $*))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $*))#g" \
+		-e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$(call modname, $*))#g" \
+		-e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$(call modname, $*))#g" \
 		-e "s#%%ADD_CONTROL_TAGS%%#$${addcontroltags}#g" \
 	> $${builddir}/$(SRCDIR)/debian/control ; \
 	cat nginx-module-$*.deb-changelog | sed \
@@ -221,9 +238,9 @@
 		-e "s#%%PLUS_VERSION%%#$(PLUS_VERSION)#g" \
 		-e "s#%%MODULE%%#$${module_asis}#g" \
 		-e "s#%%CODENAME%%#$(CODENAME)#g" \
-		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
-		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
-		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
+		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $*))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $*))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $*))#g" \
 	> $${builddir}/$(SRCDIR)/debian/changelog ; \
 	cat nginx-module.rules.in | sed \
 		-e "s#%%MODULE%%#$${module_asis}#g" \
@@ -232,14 +249,14 @@
 		-e "s#%%BASE_RELEASE%%#$(BASE_RELEASE)#g" \
 		-e "s#%%TARGET_SUFFIX%%#$(TARGET_SUFFIX)#g" \
 		-e "s#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g" \
-		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $@))#g" \
+		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $*))#g" \
 		-e "s#%%MODULE_DEFINITIONS%%#$${definitions}#g" \
 		-e "s#%%MODULE_PREBUILD%%#$${prebuild}#g" \
 		-e "s#%%MODULE_ENV%%#$${buildenv}#g" \
-		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $@))#g" \
+		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $*))#g" \
 		-e "s#%%MODULE_PREINSTALL%%#$${preinstall}#g" \
 	> $${builddir}/$(SRCDIR)/debian/rules ; \
 	cat nginx-module.postinst.in | sed \
@@ -249,6 +266,9 @@
 	ln -s $${builddir}/$(SRCDIR)/debian/rules $@ ; \
 	}
 
+.deps-module-%:
+	touch $@
+
 nginx-tests:
 	@{ \
 	if [ -d "$(SRCPATH)/nginx-tests" ]; then \
@@ -256,7 +276,7 @@
 		cp -rP $(SRCPATH)/nginx-tests nginx-tests ; \
 	else \
 		echo "===> Cloning tests" ; \
-		hg clone http://hg.nginx.org/nginx-tests ; \
+		hg clone https://hg.nginx.org/nginx-tests ; \
 	fi ; \
 	}
 
@@ -265,6 +285,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -272,12 +294,16 @@
 		globals="$$globals env PERL5LIB=$$pwd/debuild-module-perl/$(SRCDIR)/debian/build-nginx/objs/src/http/modules/perl:$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl/blib/arch;" ; \
 	fi ; \
 	if [ -d $$pwd/debuild-module-modsecurity ]; then \
-		export LD_LIBRARY_PATH=$$pwd/debuild-module-modsecurity/$(SRCDIR)/debian/build-nginx/extra/modsecurity-v$(LIBMODSECURITY_VERSION)/local/lib ; \
+		export LD_LIBRARY_PATH=$$pwd/debuild-module-modsecurity/$(SRCDIR)/debian/build-nginx/extra/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
 	fi ; \
 	if [ -d $$pwd/debuild-module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$$pwd/debuild-module-opentracing/$(SRCDIR)/debian/build-nginx/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ; \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	if [ -d $$pwd/debuild-module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/debuild-module-lua/nginx-$(BASE_VERSION)/debian/extra/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/debuild-module-lua/nginx-$(BASE_VERSION)/debian/extra/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
 	}
 
 test-debug: base nginx-tests
@@ -285,6 +311,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module-debug.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -292,44 +320,47 @@
 		globals="$$globals env PERL5LIB=$$pwd/debuild-module-perl/$(SRCDIR)/debian/build-nginx-debug/objs/src/http/modules/perl:$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl/blib/arch;" ; \
 	fi ; \
 	if [ -d $$pwd/debuild-module-modsecurity ]; then \
-		export LD_LIBRARY_PATH=$$pwd/debuild-module-modsecurity/$(SRCDIR)/debian/build-nginx-debug/extra/modsecurity-v$(LIBMODSECURITY_VERSION)/local/lib ; \
+		export LD_LIBRARY_PATH=$$pwd/debuild-module-modsecurity/$(SRCDIR)/debian/build-nginx-debug/extra/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
 	fi ; \
 	if [ -d $$pwd/debuild-module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$$pwd/debuild-module-opentracing/$(SRCDIR)/debian/build-nginx-debug/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ; \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	if [ -d $$pwd/debuild-module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/debuild-module-lua/nginx-$(BASE_VERSION)/debian/extra/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/debuild-module-lua/nginx-$(BASE_VERSION)/debian/extra/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
 	}
 
-prepare-build-env: $(BASE_SRC)
+test-modules: $(addprefix test-module-, $(MODULES))
+
+test-module-%: base nginx-tests module-%
 	@{ \
-	set -e ; \
-	cwd=`pwd` ; \
-	case $$cwd in $(BUILD_ENV_PATH)*) \
-		echo "You are in $(BUILD_ENV_PATH), skipping" >&2 ; \
-		exit 1 ; \
-	esac ; \
-	if [ -e $(BUILD_ENV_PATH) ]; then \
-		echo "$(BUILD_ENV_PATH) is already exists and going to be removed." ; \
-		echo "Press Enter to continue or Ctrl+C to exit" ; \
-		read ; \
-		rm -rf $(BUILD_ENV_PATH) ; \
+	module=`echo $@ | cut -d '-' -f 3-` ; \
+	testdir="$(MODULE_TESTS_$(shell echo $@ | cut -d '-' -f 3-))" ; \
+	if [ -z "$$testdir" ]; then \
+		echo "---> Skipping, no tests defined for $$module module" ; \
+		exit 0 ; \
 	fi ; \
-	mkdir -p $(BUILD_ENV_PATH) ; \
-	tar -C $(BUILD_ENV_PATH) -xf $(BASE_SRC) ; \
-	cp -rP $${cwd} $(BUILD_ENV_PATH)/nginx-$(BASE_VERSION)/ ; \
-	cp $(BASE_SRC) $(BUILD_ENV_PATH)/nginx_$(BASE_VERSION).orig.tar.gz ; \
-	cp -pr $(DOCS) $(BUILD_ENV_PATH)/$(SRCDIR)/; \
-	echo "Build environment has been created in: $(BUILD_ENV_PATH)" ; \
-	echo ; \
-	echo "Please do the following in order to get available build targets:" ; \
-	echo "    cd $(BUILD_ENV_PATH)/nginx-$(BASE_VERSION)/debian" ; \
-	echo "    make" ; \
+	pwd=`pwd` ; \
+	globals= ; \
+	if [ "$$module" = "modsecurity" ]; then \
+		export LD_LIBRARY_PATH=$$pwd/debuild-module-modsecurity/$(SRCDIR)/debian/build-nginx/extra/modsecurity-v$(MODSECURITY_VERSION)/local/lib ; \
+	fi ; \
+	for so in `find module-$${module}/ -maxdepth 1 -type f -name "*module.so"`; do \
+		globals="$$globals load_module $$pwd/$$so;" ; \
+	done ; \
+	if [ ! -d nginx-tests/module-$${module} ]; then \
+		cp -r $${pwd}/debuild-module-$${module}/$(SRCDIR)/debian/extra/$${testdir} nginx-tests/module-$${module} ; \
+		ln -fs ../lib nginx-tests/module-$${module}/lib ; \
+	fi ; \
+	cd nginx-tests/module-$${module} && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove $$PROVE_ARGS . ; \
 	}
 
 clean:
-	@rm -rf base module-* rules-base rules-module-* debuild-base debuild-module-* nginx-tests $(BASE_SRC)
+	@rm -rf base module-* rules-base rules-module-* debuild-base debuild-module-* nginx-tests $(BASE_SRC) .deps-module-*
 	@rm -f nginx.deb-changelog nginx-module-*.deb-changelog
 
-.PHONY:	default all modules rules test test-debug clean
+.PHONY:	default list list-base list-all-modules list-base-modules all modules rules test test-debug clean
 
 .SECONDARY:
diff --git a/debian/Makefile.module-brotli b/debian/Makefile.module-brotli
new file mode 100644
index 0000000..589c8cb
--- /dev/null
+++ b/debian/Makefile.module-brotli
@@ -0,0 +1,39 @@
+MODULES+=	brotli
+
+MODULE_SUMMARY_brotli=	3rd-party brotli compression dynamic modules
+
+include $(CONTRIB)/src/ngx_brotli/version
+
+MODULE_VERSION_brotli=	$(NGX_BROTLI_VERSION)
+MODULE_RELEASE_brotli=	1
+
+MODULE_VERSION_PREFIX_brotli=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_brotli=	ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz
+
+MODULE_CONFARGS_brotli=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_brotli-$(NGX_BROTLI_VERSION)rc
+
+.deps-module-brotli:
+	cd $(CONTRIB) && make .sum-ngx_brotli
+	touch $@
+
+MODULE_BUILD_DEPENDS_brotli=,libbrotli-dev
+
+define MODULE_POST_brotli
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_brotli) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_brotli_filter_module.so;
+    load_module modules/ngx_http_brotli_static_module.so;
+
+Please refer to the modules documentation for further details:
+https://github.com/google/ngx_brotli
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_brotli
diff --git a/debian/Makefile.module-encrypted-session b/debian/Makefile.module-encrypted-session
new file mode 100644
index 0000000..34dcedd
--- /dev/null
+++ b/debian/Makefile.module-encrypted-session
@@ -0,0 +1,52 @@
+MODULES+=	encrypted-session
+
+MODULE_SUMMARY_encrypted_session=	3rd-party encrypted session dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/encrypted-session-nginx-module/version
+
+MODULE_VERSION_encrypted_session=	$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+MODULE_RELEASE_encrypted_session=	1
+
+MODULE_VERSION_PREFIX_encrypted_session=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_encrypted_session=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+					encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_encrypted_session=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+					--add-dynamic-module=$(MODSRC_PREFIX)encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+
+.deps-module-encrypted-session:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-encrypted-session-nginx-module
+	touch $@
+
+MODULE_DEPENDS_encrypted_session=,$(NDK_DEPENDENCY_TAG)
+
+define MODULE_PREINSTALL_encrypted_session
+	rm -f $$(BUILDDIR_nginx_debug)/objs/ndk_http_module-debug.so
+	rm -f $$(BUILDDIR_nginx)/objs/ndk_http_module.so
+endef
+export MODULE_PREINSTALL_encrypted_session
+
+define MODULE_POST_encrypted_session
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_encrypted_session) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_encrypted_session_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/encrypted-session-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_encrypted_session
diff --git a/debian/Makefile.module-geoip b/debian/Makefile.module-geoip
index 5823ed0..1152422 100644
--- a/debian/Makefile.module-geoip
+++ b/debian/Makefile.module-geoip
@@ -9,7 +9,6 @@
 			--with-stream_geoip_module=dynamic
 
 MODULE_BUILD_DEPENDS_geoip=,libgeoip-dev
-MODULE_DEPENDS_geoip=,libgeoip1
 
 define MODULE_POST_geoip
 cat <<BANNER
@@ -23,8 +22,8 @@
     load_module modules/ngx_stream_geoip_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_geoip_module.html
-http://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
+https://nginx.org/en/docs/http/ngx_http_geoip_module.html
+https://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/Makefile.module-geoip2 b/debian/Makefile.module-geoip2
new file mode 100644
index 0000000..1bf53c1
--- /dev/null
+++ b/debian/Makefile.module-geoip2
@@ -0,0 +1,40 @@
+MODULES+=	geoip2
+
+MODULE_SUMMARY_geoip2=	3rd-party GeoIP2 dynamic modules
+
+include $(CONTRIB)/src/ngx_http_geoip2_module/version
+
+MODULE_VERSION_geoip2=	$(GEOIP2_NGINX_MODULE_VERSION)
+MODULE_RELEASE_geoip2=	1
+
+MODULE_VERSION_PREFIX_geoip2=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_geoip2=	ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_geoip2=	--with-stream \
+			--add-dynamic-module=$(MODSRC_PREFIX)ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION)
+
+.deps-module-geoip2:
+	cd $(CONTRIB) && make .sum-ngx_http_geoip2_module
+	touch $@
+
+MODULE_BUILD_DEPENDS_geoip2=, libmaxminddb-dev
+
+define MODULE_POST_geoip2
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_geoip2) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_geoip2_module.so;
+    load_module modules/ngx_stream_geoip2_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/leev/ngx_http_geoip2_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_geoip2
diff --git a/debian/Makefile.module-headers-more b/debian/Makefile.module-headers-more
new file mode 100644
index 0000000..560f043
--- /dev/null
+++ b/debian/Makefile.module-headers-more
@@ -0,0 +1,38 @@
+MODULES+=	headers-more
+
+MODULE_SUMMARY_headers_more=	3rd-party headers-more dynamic module
+
+include $(CONTRIB)/src/headers-more-nginx-module/version
+
+MODULE_VERSION_headers_more=	$(HEADERS_MORE_NGINX_MODULE_VERSION)
+MODULE_RELEASE_headers_more=	1
+
+MODULE_VERSION_PREFIX_headers_more=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_headers_more=	headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_headers_more=	--with-http_dav_module \
+				--with-http_realip_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION)
+
+.deps-module-headers-more:
+	cd $(CONTRIB) && make .sum-headers-more-nginx-module
+	touch $@
+
+define MODULE_POST_headers_more
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_headers_more) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_headers_more_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/headers-more-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_headers_more
diff --git a/debian/Makefile.module-image-filter b/debian/Makefile.module-image-filter
index 5c54ebb..51dc347 100644
--- a/debian/Makefile.module-image-filter
+++ b/debian/Makefile.module-image-filter
@@ -20,7 +20,7 @@
     load_module modules/ngx_http_image_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_image_filter_module.html
+https://nginx.org/en/docs/http/ngx_http_image_filter_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/Makefile.module-lua b/debian/Makefile.module-lua
new file mode 100644
index 0000000..0c70931
--- /dev/null
+++ b/debian/Makefile.module-lua
@@ -0,0 +1,122 @@
+MODULES+=	lua
+
+MODULE_SUMMARY_lua=	3rd-party Lua dynamic modules
+
+include $(CONTRIB)/src/luajit2/version
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/lua-nginx-module/version
+include $(CONTRIB)/src/stream-lua-nginx-module/version
+include $(CONTRIB)/src/lua-resty-core/version
+include $(CONTRIB)/src/lua-resty-lrucache/version
+
+MODULE_VERSION_lua=	$(LUA_NGINX_MODULE_VERSION)
+MODULE_RELEASE_lua=	1
+
+MODULE_VERSION_PREFIX_lua=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_lua=	ngx_devel_kit-$(MODULE_VERSION_ndk).tar.gz \
+			lua-nginx-module-$(MODULE_VERSION_lua).tar.gz \
+			stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz \
+			luajit2-$(LUAJIT2_VERSION).tar.gz \
+			lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz \
+			lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz
+
+MODULE_PATCHES_lua=	$(CONTRIB)/src/luajit2/Makefile.patch \
+			$(CONTRIB)/src/luajit2/src-luaconf.h.patch \
+			$(CONTRIB)/src/lua-nginx-module/config.patch \
+			$(CONTRIB)/src/stream-lua-nginx-module/config.patch
+
+MODULE_CONFARGS_lua=	--with-http_dav_module \
+			--with-http_realip_module \
+			--with-http_ssl_module \
+			--with-http_v2_module \
+			--with-stream \
+			--with-stream_ssl_module \
+			--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+			--add-dynamic-module=$(MODSRC_PREFIX)lua-nginx-module-$(LUA_NGINX_MODULE_VERSION) \
+			--add-dynamic-module=$(MODSRC_PREFIX)stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION)
+
+.deps-module-lua:
+	cd $(CONTRIB) && make \
+		.sum-luajit2 \
+		.sum-ngx_devel_kit \
+		.sum-lua-nginx-module \
+		.sum-stream-lua-nginx-module \
+		.sum-lua-resty-core \
+		.sum-lua-resty-lrucache
+	touch $@
+
+MODULE_DEPENDS_lua=,$(NDK_DEPENDENCY_TAG)
+
+define MODULE_DEFINITIONS_lua
+	USE_LUAJIT = 1
+	LUAJIT_INC_nginx=$$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1
+	LUAJIT_LIB_nginx=$$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/lib
+	LUAJIT_INC_nginx_debug=$$(BUILDDIR_nginx_debug)/extra/luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1
+	LUAJIT_LIB_nginx_debug=$$(BUILDDIR_nginx_debug)/extra/luajit2-$(LUAJIT2_VERSION)/usr/lib
+endef
+export MODULE_DEFINITIONS_lua
+
+define MODULE_PREBUILD_lua
+	cd $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION) \&\& \
+	DESTDIR="$$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)" CFLAGS="-fPIC" $$(MAKE) -j$$(NUMJOBS) install
+	mv $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/bin/luajit $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/bin/nginx-luajit
+	mv $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/share/man/man1/luajit.1 $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/share/man/man1/nginx-luajit.1
+endef
+export MODULE_PREBUILD_lua
+
+define MODULE_ENV_lua
+LUAJIT_INC="$$(LUAJIT_INC_$$(shell echo $$@ | cut -d '.' -f 3))" LUAJIT_LIB="$$(LUAJIT_LIB_$$(shell echo $$@ | cut -d '.' -f 3))"
+endef
+export MODULE_ENV_lua
+
+define MODULE_PREINSTALL_lua
+	rm -f $$(BUILDDIR_nginx_debug)/objs/ndk_http_module-debug.so
+	rm -f $$(BUILDDIR_nginx)/objs/ndk_http_module.so
+	mkdir -p $$(INSTALLDIR)/usr/bin
+	mkdir -p $$(INSTALLDIR)/usr/share/man/man1
+	install -m755 $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/bin/nginx-luajit $$(INSTALLDIR)/usr/bin/
+	install -m644 $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/share/man/man1/nginx-luajit.1 $$(INSTALLDIR)/usr/share/man/man1/
+	mkdir -p $$(INSTALLDIR)/usr/share/nginx-luajit-2.1/jit
+	for f in `find $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/share/nginx-luajit-2.1/jit/ -type f`; do \
+		install -m644 $$$${f} $$(INSTALLDIR)/usr/share/nginx-luajit-2.1/jit/ ; \
+	done
+	mkdir -p $$(INSTALLDIR)/usr/include/nginx-luajit-2.1
+	for f in `find $$(BUILDDIR_nginx)/extra/luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1/ -type f`; do \
+		install -m644 $$$${f} $$(INSTALLDIR)/usr/include/nginx-luajit-2.1/ ; \
+	done
+	mkdir -p $$(INSTALLDIR)/usr/share/nginx-luajit-2.1/resty
+	cd $$(BUILDDIR_nginx)/extra/lua-resty-core-$(LUA_RESTY_CORE_VERSION) \&\& \
+		LUA_LIB_DIR=$$(INSTALLDIR)/usr/share/nginx-luajit-2.1 make install
+	cd $$(BUILDDIR_nginx)/extra/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION) \&\& \
+		LUA_LIB_DIR=$$(INSTALLDIR)/usr/share/nginx-luajit-2.1 make install
+endef
+export MODULE_PREINSTALL_lua
+
+define MODULE_POST_lua
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_lua) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_lua_module.so;
+    load_module modules/ngx_stream_lua_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+These modules are compiled with LuaJIT 2.1 library.
+The following binary should be used for testing and bytecode generation:
+
+    /usr/bin/nginx-luajit
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/lua-nginx-module
+https://github.com/openresty/stream-lua-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_lua
diff --git a/debian/Makefile.module-modsecurity b/debian/Makefile.module-modsecurity
new file mode 100644
index 0000000..1a9997e
--- /dev/null
+++ b/debian/Makefile.module-modsecurity
@@ -0,0 +1,81 @@
+MODULES+=	modsecurity
+
+MODULE_SUMMARY_modsecurity=	3rd-party ModSecurity dynamic module
+
+include $(CONTRIB)/src/modsecurity/version
+include $(CONTRIB)/src/modsecurity-nginx/version
+
+MODULE_VERSION_modsecurity=	$(MODSECURITY_NGINX_VERSION)
+MODULE_RELEASE_modsecurity=	1
+LIBMODSECURITY_SOVER=		$(MODSECURITY_VERSION)
+
+MODULE_VERSION_PREFIX_modsecurity=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_modsecurity=	modsecurity-v$(MODSECURITY_VERSION).tar.gz \
+				modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz
+
+MODULE_PATCHES_modsecurity=	$(CONTRIB)/src/modsecurity/PR2348.patch \
+				$(CONTRIB)/src/modsecurity-nginx/PR165.patch
+
+MODULE_CONFARGS_modsecurity=	--add-dynamic-module=$(MODSRC_PREFIX)modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)
+
+.deps-module-modsecurity:
+	cd $(CONTRIB) && make \
+		.sum-modsecurity \
+		.sum-modsecurity-nginx
+	touch $@
+
+MODULE_BUILD_DEPENDS_modsecurity=,libxml2-dev,libyajl-dev,libcurl4-openssl-dev
+
+define MODULE_PREBUILD_modsecurity
+	cd $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION) \&\& \
+	./configure --prefix $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION)/local --without-lmdb --without-lua \&\& \
+	$$(MAKE) -j$$(NUMJOBS) install \&\& $$(MAKE) check-TESTS
+	rm -f /tmp/audit_test.log /tmp/audit_test_parallel.log
+	rm -rf /tmp/test
+endef
+export MODULE_PREBUILD_modsecurity
+
+define MODULE_ENV_modsecurity
+MODSECURITY_INC="$$(BUILDDIR_$$(shell echo $$@ | cut -d '.' -f 3))/extra/modsecurity-v$(MODSECURITY_VERSION)/local/include" \
+MODSECURITY_LIB="$$(BUILDDIR_$$(shell echo $$@ | cut -d '.' -f 3))/extra/modsecurity-v$(MODSECURITY_VERSION)/local/lib" \
+NGX_IGNORE_RPATH=YES
+endef
+export MODULE_ENV_modsecurity
+
+MODULE_CC_OPT_DEBUG_modsecurity=-DMODSECURITY_DDEBUG=1
+
+define MODULE_PREINSTALL_modsecurity
+	mkdir -p $$(INSTALLDIR)/usr/bin
+	install -m755 -s $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION)/local/bin/modsec-rules-check $$(INSTALLDIR)/usr/bin/
+	mkdir -p $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)
+	install -m755 $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION)/local/lib/libmodsecurity.so.$(LIBMODSECURITY_SOVER) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)
+	ln -fs libmodsecurity.so.$(LIBMODSECURITY_SOVER) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libmodsecurity.so.3
+	ln -fs libmodsecurity.so.$(LIBMODSECURITY_SOVER) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libmodsecurity.so
+	mkdir -p $$(INSTALLDIR)/etc/nginx/modsec
+	install -m644 $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION)/modsecurity.conf-recommended $$(INSTALLDIR)/etc/nginx/modsec/modsecurity.conf
+	install -m644 $$(BUILDDIR_nginx)/extra/modsecurity-v$(MODSECURITY_VERSION)/unicode.mapping $$(INSTALLDIR)/etc/nginx/modsec/
+endef
+export MODULE_PREINSTALL_modsecurity
+
+MODULE_TESTS_modsecurity=modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)/tests
+
+define MODULE_POST_modsecurity
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_modsecurity) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_modsecurity_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/SpiderLabs/ModSecurity-nginx
+
+----------------------------------------------------------------------
+BANNER
+
+/sbin/ldconfig
+endef
+export MODULE_POST_modsecurity
diff --git a/debian/Makefile.module-ndk b/debian/Makefile.module-ndk
new file mode 100644
index 0000000..ab7624e
--- /dev/null
+++ b/debian/Makefile.module-ndk
@@ -0,0 +1,45 @@
+MODULES+=	ndk
+
+MODULE_SUMMARY_ndk=	3rd-party NDK dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+
+MODULE_VERSION_ndk=	$(NGX_DEVEL_KIT_VERSION)
+MODULE_RELEASE_ndk=	1
+
+MODULE_VERSION_PREFIX_ndk=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_ndk=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz
+
+MODULE_CONFARGS_ndk=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION)
+
+.deps-module-ndk:
+	cd $(CONTRIB) && make .sum-ngx_devel_kit
+	touch $@
+
+MODULE_CC_OPT_ndk=-DNDK_SET_VAR -DNDK_UPSTREAM_LIST
+MODULE_CC_OPT_DEBUG_ndk=$(MODULE_CC_OPT_ndk)
+
+ifeq ($(MODULE_TARGET), plus)
+NDK_DEPENDENCY_TAG=	nginx-plus-module-ndk-r$(PLUS_VERSION)
+else
+NDK_DEPENDENCY_TAG=	nginx-module-ndk-r$(BASE_VERSION)
+endif
+
+define MODULE_POST_ndk
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_ndk) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/simpl/ngx_devel_kit
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_ndk
diff --git a/debian/Makefile.module-njs b/debian/Makefile.module-njs
index 241236b..2e1109d 100644
--- a/debian/Makefile.module-njs
+++ b/debian/Makefile.module-njs
@@ -2,27 +2,33 @@
 
 MODULE_SUMMARY_njs=	njs dynamic modules
 
-MODULE_VERSION_njs=	0.5.0
+include $(CONTRIB)/src/njs/version
+
+MODULE_VERSION_njs=	$(NJS_VERSION)
 MODULE_RELEASE_njs=	1
 
-MODULE_SOURCES_njs=	njs-$(MODULE_VERSION_njs).tar.gz
+MODULE_SOURCES_njs=	njs-$(NJS_VERSION).tar.gz
 
-MODULE_CONFARGS_njs=	--add-dynamic-module=$(MODSRC_PREFIX)njs-$(MODULE_VERSION_njs)/nginx
+MODULE_CONFARGS_njs=	--add-dynamic-module=$(MODSRC_PREFIX)njs-$(NJS_VERSION)/nginx
+
+.deps-module-njs:
+	cd $(CONTRIB) && make .sum-njs
+	touch $@
 
 MODULE_VERSION_PREFIX_njs=$(MODULE_TARGET_PREFIX)
 
 MODULE_BUILD_DEPENDS_njs=,libedit-dev
 
 define MODULE_PREBUILD_njs
-	cd debian/extra/njs-$(MODULE_VERSION_njs) \&\& ./configure \&\& make njs
+	cd debian/extra/njs-$(NJS_VERSION) \&\& ./configure \&\& make njs
 endef
 export MODULE_PREBUILD_njs
 
 define MODULE_PREINSTALL_njs
 	mkdir -p $$(INSTALLDIR)/usr/share/doc/nginx-module-njs
-	install -m644 $$(BUILDDIR_nginx)/extra/njs-$(MODULE_VERSION_njs)/CHANGES $$(INSTALLDIR)/usr/share/doc/nginx-module-njs/
+	install -m644 $$(BUILDDIR_nginx)/extra/njs-$(NJS_VERSION)/CHANGES $$(INSTALLDIR)/usr/share/doc/nginx-module-njs/
 	mkdir -p $$(INSTALLDIR)/usr/bin
-	install -m755 $$(CURDIR)/debian/extra/njs-$(MODULE_VERSION_njs)/build/njs $$(INSTALLDIR)/usr/bin/
+	install -m755 $$(CURDIR)/debian/extra/njs-$(NJS_VERSION)/build/njs $$(INSTALLDIR)/usr/bin/
 endef
 export MODULE_PREINSTALL_njs
 
@@ -38,9 +44,9 @@
     load_module modules/ngx_stream_js_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/njs/
-http://nginx.org/en/docs/http/ngx_http_js_module.html
-http://nginx.org/en/docs/stream/ngx_stream_js_module.html
+https://nginx.org/en/docs/njs/
+https://nginx.org/en/docs/http/ngx_http_js_module.html
+https://nginx.org/en/docs/stream/ngx_stream_js_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/Makefile.module-opentracing b/debian/Makefile.module-opentracing
new file mode 100644
index 0000000..a7d6709
--- /dev/null
+++ b/debian/Makefile.module-opentracing
@@ -0,0 +1,92 @@
+MODULES+=	opentracing
+
+MODULE_SUMMARY_opentracing=	3rd-party OpenTracing dynamic module
+
+include $(CONTRIB)/src/opentracing-cpp/version
+include $(CONTRIB)/src/nginx-opentracing/version
+include $(CONTRIB)/src/jaeger-client-cpp/version
+
+MODULE_VERSION_opentracing=	$(NGINX_OPENTRACING_VERSION)
+MODULE_RELEASE_opentracing=	1
+
+MODULE_VERSION_PREFIX_opentracing=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_opentracing=	opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz \
+				nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz \
+				jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz
+
+MODULE_PATCHES_opentracing=	$(CONTRIB)/src/opentracing-cpp/CMakeLists.txt.patch \
+				$(CONTRIB)/src/jaeger-client-cpp/CMakeLists.txt.patch
+
+MODULE_CONFARGS_opentracing=	--add-dynamic-module=$(MODSRC_PREFIX)nginx-opentracing-$(NGINX_OPENTRACING_VERSION)/opentracing
+
+.deps-module-opentracing:
+	cd $(CONTRIB) && make \
+		.sum-opentracing-cpp \
+		.sum-nginx-opentracing \
+		.sum-jaeger-client-cpp
+	touch $@
+
+MODULE_BUILD_DEPENDS_opentracing=,cmake,libyaml-cpp-dev
+
+define MODULE_PREBUILD_opentracing
+	cd $$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION) \&\& \
+		mkdir .build \&\& \
+		cd .build \&\& \
+		cmake ../ \&\& \
+		DESTDIR=$$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION) $$(MAKE) -j$$(NUMJOBS) install
+	cd $$(BUILDDIR_nginx)/extra/jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION) \&\& \
+		mkdir .build \&\& \
+		cd .build \&\& \
+		OpenTracing_DIR=$$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/.build cmake -DCMAKE_BUILD_TYPE=Release -DJAEGERTRACING_PLUGIN=ON -DHUNTER_CONFIGURATION_TYPES=Release -DBUILD_TESTING=OFF ../ -DOPENTRACING_INC=$$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include \&\& \
+		$$(MAKE) -j$$(NUMJOBS)
+endef
+export MODULE_PREBUILD_opentracing
+
+MODULE_CC_OPT_opentracing=-I$$\(BUILDDIR_nginx\)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include
+MODULE_CC_OPT_DEBUG_opentracing=$(MODULE_CC_OPT_opentracing)
+MODULE_LD_OPT_opentracing=-L$$\(BUILDDIR_nginx\)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib
+MODULE_LD_OPT_DEBUG_opentracing=$(MODULE_LD_OPT_opentracing)
+
+define MODULE_PREINSTALL_opentracing
+	mkdir -p $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)
+	install -m755 $$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing.so.$(OPENTRACING_CPP_VERSION) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)
+	ln -fs libopentracing.so.$(OPENTRACING_CPP_VERSION) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libopentracing.so.1
+	ln -fs libopentracing.so.1 $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libopentracing.so
+	install -m755 $$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)
+	ln -fs libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libopentracing_mocktracer.so.1
+	ln -fs libopentracing_mocktracer.so.1 $$(INSTALLDIR)/usr/lib/$$(DEB_HOST_MULTIARCH)/libopentracing_mocktracer.so
+	mkdir -p $$(INSTALLDIR)/usr/include
+	cp -pr $$(BUILDDIR_nginx)/extra/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include/opentracing $$(INSTALLDIR)/usr/include/
+	mkdir -p $$(INSTALLDIR)/usr/libexec/opentracing
+	install -m755 $$(BUILDDIR_nginx)/extra/jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION)/.build/libjaegertracing_plugin.so $$(INSTALLDIR)/usr/libexec/opentracing/
+endef
+export MODULE_PREINSTALL_opentracing
+
+define MODULE_POST_opentracing
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_opentracing) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_opentracing_module.so;
+
+Note that additional tracer plugins are required in order
+to communicate with corresponding services (e.g. Zipkin, Jaeger).
+This package includes the Jaeger dynamic tracer plugin:
+
+    /usr/libexec/opentracing/libjaegertracing_plugin.so
+
+Please refer to the module documentation for further details:
+https://github.com/opentracing-contrib/nginx-opentracing
+https://github.com/opentracing-contrib/nginx-opentracing/blob/master/doc/Reference.md
+
+OpenTracing project site (general info and documentation):
+https://opentracing.io/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_opentracing
diff --git a/debian/Makefile.module-passenger b/debian/Makefile.module-passenger
new file mode 100644
index 0000000..907d3cd
--- /dev/null
+++ b/debian/Makefile.module-passenger
@@ -0,0 +1,41 @@
+MODULES+=	passenger
+
+MODULE_SUMMARY_passenger=	3rd-party Passenger dynamic module
+
+include $(CONTRIB)/src/passenger/version
+
+MODULE_VERSION_passenger=	$(PASSENGER_VERSION)
+MODULE_RELEASE_passenger=	1
+
+MODULE_VERSION_PREFIX_passenger=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_passenger=	passenger-$(PASSENGER_VERSION).tar.gz
+MODULE_PATCHES_passenger=	$(CONTRIB)/src/passenger/build-nginx.rb.patch \
+				$(CONTRIB)/src/passenger/src-nginx_module-ContentHandler.c.patch
+
+MODULE_CONFARGS_passenger=	--with-http_ssl_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)passenger-$(PASSENGER_VERSION)/src/nginx_module
+
+.deps-module-passenger:
+	cd $(CONTRIB) && make .sum-passenger
+	touch $@
+
+MODULE_BUILD_DEPENDS_passenger=, rake
+
+define MODULE_POST_passenger
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_passenger) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_passenger_module.so;
+
+Please refer to the module documentation for further details:
+https://www.phusionpassenger.com/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_passenger
diff --git a/debian/Makefile.module-perl b/debian/Makefile.module-perl
index 50dedfa..ce9c3ef 100644
--- a/debian/Makefile.module-perl
+++ b/debian/Makefile.module-perl
@@ -30,7 +30,7 @@
     load_module modules/ngx_http_perl_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_perl_module.html
+https://nginx.org/en/docs/http/ngx_http_perl_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/Makefile.module-rtmp b/debian/Makefile.module-rtmp
new file mode 100644
index 0000000..8593852
--- /dev/null
+++ b/debian/Makefile.module-rtmp
@@ -0,0 +1,37 @@
+MODULES+=	rtmp
+
+MODULE_SUMMARY_rtmp=	3rd-party RTMP dynamic module
+
+include $(CONTRIB)/src/nginx-rtmp-module/version
+
+MODULE_VERSION_rtmp=	$(NGINX_RTMP_MODULE_VERSION)
+MODULE_RELEASE_rtmp=	1
+
+MODULE_VERSION_PREFIX_rtmp=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_rtmp=	nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz
+MODULE_PATCHES_rtmp=	$(CONTRIB)/src/nginx-rtmp-module/PR1340.patch
+
+MODULE_CONFARGS_rtmp=	--add-dynamic-module=$(MODSRC_PREFIX)nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION)
+
+.deps-module-rtmp:
+	cd $(CONTRIB) && make .sum-nginx-rtmp-module
+	touch $@
+
+define MODULE_POST_rtmp
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_rtmp) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_rtmp_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/arut/nginx-rtmp-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_rtmp
diff --git a/debian/Makefile.module-set-misc b/debian/Makefile.module-set-misc
new file mode 100644
index 0000000..de7799d
--- /dev/null
+++ b/debian/Makefile.module-set-misc
@@ -0,0 +1,53 @@
+MODULES+=	set-misc
+
+MODULE_SUMMARY_set_misc=	3rd-party set-misc dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/set-misc-nginx-module/version
+
+MODULE_VERSION_set_misc=	$(SET_MISC_NGINX_MODULE_VERSION)
+MODULE_RELEASE_set_misc=	1
+
+MODULE_VERSION_PREFIX_set_misc=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_set_misc=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+				set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_set_misc=	--with-http_ssl_module \
+				--add-dynamic-module=$(MODSRC_PREFIX)ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+				--add-dynamic-module=$(MODSRC_PREFIX)set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION)
+
+.deps-module-set-misc:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-set-misc-nginx-module
+	touch $@
+
+MODULE_DEPENDS_set_misc=,$(NDK_DEPENDENCY_TAG)
+
+define MODULE_PREINSTALL_set_misc
+	rm -f $$(BUILDDIR_nginx_debug)/objs/ndk_http_module-debug.so
+	rm -f $$(BUILDDIR_nginx)/objs/ndk_http_module.so
+endef
+export MODULE_PREINSTALL_set_misc
+
+define MODULE_POST_set_misc
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_set_misc) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_set_misc_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/set-misc-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_set_misc
diff --git a/debian/Makefile.module-subs-filter b/debian/Makefile.module-subs-filter
new file mode 100644
index 0000000..f73f85d
--- /dev/null
+++ b/debian/Makefile.module-subs-filter
@@ -0,0 +1,36 @@
+MODULES+=	subs-filter
+
+MODULE_SUMMARY_subs_filter=	3rd-party substitution dynamic module
+
+include $(CONTRIB)/src/ngx_http_substitutions_filter_module/version
+
+MODULE_VERSION_subs_filter=	$(SUBSTITUTIONS_FILTER_NGINX_MODULE_VERSION)
+MODULE_RELEASE_subs_filter=	1
+
+MODULE_VERSION_PREFIX_subs_filter=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_subs_filter=	ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz
+
+MODULE_CONFARGS_subs_filter=	--add-dynamic-module=$(MODSRC_PREFIX)ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH)
+
+.deps-module-subs-filter:
+	cd $(CONTRIB) && make .sum-ngx_http_substitutions_filter_module
+	touch $@
+
+define MODULE_POST_subs_filter
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_subs_filter) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_subs_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/yaoweibin/ngx_http_substitutions_filter_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_subs_filter
diff --git a/debian/Makefile.module-xslt b/debian/Makefile.module-xslt
index 5e655bb..2d6e00c 100644
--- a/debian/Makefile.module-xslt
+++ b/debian/Makefile.module-xslt
@@ -20,7 +20,7 @@
     load_module modules/ngx_http_xslt_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_xslt_module.html
+https://nginx.org/en/docs/http/ngx_http_xslt_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/extra/njs-0.5.0.tar.gz b/debian/extra/njs-0.5.0.tar.gz
deleted file mode 100644
index 688acfe..0000000
--- a/debian/extra/njs-0.5.0.tar.gz
+++ /dev/null
Binary files differ
diff --git a/debian/nginx-debug.service b/debian/nginx-debug.service
index af0bba4..5ae4759 100644
--- a/debian/nginx-debug.service
+++ b/debian/nginx-debug.service
@@ -1,6 +1,6 @@
 [Unit]
 Description=nginx - high performance web server
-Documentation=http://nginx.org/en/docs/
+Documentation=https://nginx.org/en/docs/
 After=network-online.target remote-fs.target nss-lookup.target
 Wants=network-online.target
 
diff --git a/debian/nginx.control.in b/debian/nginx.control.in
index 69a34cf..0474938 100644
--- a/debian/nginx.control.in
+++ b/debian/nginx.control.in
@@ -11,7 +11,7 @@
                libpcre3-dev,
                zlib1g-dev
 Standards-Version: 3.9.8.0
-Homepage: http://nginx.org
+Homepage: https://nginx.org
 
 Package: nginx
 Architecture: any
diff --git a/debian/nginx.preinst b/debian/nginx.preinst
index c18b83b..dc26ffb 100644
--- a/debian/nginx.preinst
+++ b/debian/nginx.preinst
@@ -32,14 +32,14 @@
 Thanks for using nginx!
 
 Please find the official documentation for nginx here:
-* http://nginx.org/en/docs/
+* https://nginx.org/en/docs/
 
 Please subscribe to nginx-announce mailing list to get
 the most important news about nginx:
-* http://nginx.org/en/support.html
+* https://nginx.org/en/support.html
 
 Commercial subscriptions for nginx are available on:
-* http://nginx.com/products/
+* https://nginx.com/products/
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/debian/nginx.service b/debian/nginx.service
index e509a2e..833aa45 100644
--- a/debian/nginx.service
+++ b/debian/nginx.service
@@ -1,6 +1,6 @@
 [Unit]
 Description=nginx - high performance web server
-Documentation=http://nginx.org/en/docs/
+Documentation=https://nginx.org/en/docs/
 After=network-online.target remote-fs.target nss-lookup.target
 Wants=network-online.target
 
diff --git a/docs/Makefile b/docs/Makefile
index 244c64c..b3e5ffb 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -5,10 +5,22 @@
 XSLS?=	xslscript.pl
 
 PACKAGES=	nginx							\
+		nginx-module-brotli					\
+		nginx-module-encrypted-session				\
 		nginx-module-geoip					\
+		nginx-module-geoip2					\
+		nginx-module-headers-more				\
 		nginx-module-image-filter				\
+		nginx-module-lua					\
+		nginx-module-modsecurity				\
+		nginx-module-ndk					\
 		nginx-module-njs					\
+		nginx-module-opentracing				\
+		nginx-module-passenger					\
 		nginx-module-perl					\
+		nginx-module-rtmp					\
+		nginx-module-set-misc					\
+		nginx-module-subs-filter				\
 		nginx-module-xslt
 
 all:		changes changelogs
diff --git a/docs/nginx-module-brotli.copyright b/docs/nginx-module-brotli.copyright
new file mode 100644
index 0000000..d07af3b
--- /dev/null
+++ b/docs/nginx-module-brotli.copyright
@@ -0,0 +1,25 @@
+Copyright (C) 2002-2015 Igor Sysoev
+Copyright (C) 2011-2015 Nginx, Inc.
+Copyright (C) 2015 Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGE.
diff --git a/docs/nginx-module-brotli.xml b/docs/nginx-module-brotli.xml
new file mode 100644
index 0000000..03e893d
--- /dev/null
+++ b/docs/nginx-module-brotli.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_brotli">
+
+
+<changes apply="nginx-module-brotli" ver="1.0.0" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of brotli nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-encrypted-session.copyright b/docs/nginx-module-encrypted-session.copyright
new file mode 100644
index 0000000..0f8e413
--- /dev/null
+++ b/docs/nginx-module-encrypted-session.copyright
@@ -0,0 +1,25 @@
+Copyright (c) 2009-2018, Yichun Zhang (agentzh) <agentzh@gmail.com>, OpenResty Inc.
+
+This module is licensed under the terms of the BSD license.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice,
+  this list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice,
+  this list of conditions and the following disclaimer in the documentation
+  and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-encrypted-session.xml b/docs/nginx-module-encrypted-session.xml
new file mode 100644
index 0000000..f0bfb7d
--- /dev/null
+++ b/docs/nginx-module-encrypted-session.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_encrypted_session">
+
+
+<changes apply="nginx-module-encrypted-session" ver="0.08" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of encrypted session nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-geoip2.copyright b/docs/nginx-module-geoip2.copyright
new file mode 100644
index 0000000..fdc13a7
--- /dev/null
+++ b/docs/nginx-module-geoip2.copyright
@@ -0,0 +1,23 @@
+Copyright (c) 2014, Lee Valentine <lee@leev.net>
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-geoip2.xml b/docs/nginx-module-geoip2.xml
new file mode 100644
index 0000000..9a29a4f
--- /dev/null
+++ b/docs/nginx-module-geoip2.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_geoip2">
+
+
+<changes apply="nginx-module-geoip2" ver="3.3" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of geoip2 nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-headers-more.copyright b/docs/nginx-module-headers-more.copyright
new file mode 100644
index 0000000..a787148
--- /dev/null
+++ b/docs/nginx-module-headers-more.copyright
@@ -0,0 +1,30 @@
+The code base is borrowed directly from the standard headers module
+in Nginx 0.8.24. This part of code is copyrighted by Igor Sysoev.
+
+Copyright (c) 2009-2017, Yichun "agentzh" Zhang (章亦春) agentzh@gmail.com, OpenResty Inc.
+Copyright (c) 2010-2013, Bernd Dorn.
+
+This module is licensed under the terms of the BSD license.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-headers-more.xml b/docs/nginx-module-headers-more.xml
new file mode 100644
index 0000000..7be47e1
--- /dev/null
+++ b/docs/nginx-module-headers-more.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_headers_more">
+
+
+<changes apply="nginx-module-headers-more" ver="0.33" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of headers more nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-lua.copyright b/docs/nginx-module-lua.copyright
new file mode 100644
index 0000000..cd2c396
--- /dev/null
+++ b/docs/nginx-module-lua.copyright
@@ -0,0 +1,151 @@
+This module is licensed under the BSD license.
+
+Copyright (C) 2009-2017, by Xiaozhe Wang (chaoslawful) chaoslawful@gmail.com.
+Copyright (C) 2009-2019, by Yichun "agentzh" Zhang (章亦春) agentzh@gmail.com, OpenResty Inc.
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+===============================================================================
+Includes LuaJIT with the following license:
+
+LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/
+
+Copyright (C) 2005-2017 Mike Pall. All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+[ MIT license: http://www.opensource.org/licenses/mit-license.php ]
+
+===============================================================================
+[ LuaJIT includes code from Lua 5.1/5.2, which has this license statement: ]
+
+Copyright (C) 1994-2012 Lua.org, PUC-Rio.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+===============================================================================
+[ LuaJIT includes code from dlmalloc, which has this license statement: ]
+
+This is a version (aka dlmalloc) of malloc/free/realloc written by
+Doug Lea and released to the public domain, as explained at
+http://creativecommons.org/licenses/publicdomain
+
+===============================================================================
+Includes lua-resty-core with the following license:
+
+This module is licensed under the BSD license.
+
+Copyright (C) 2013-2019, by Yichun "agentzh" Zhang, OpenResty Inc.
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+
+===============================================================================
+Includes lua-resty-lrucache with the following license:
+
+This module is licensed under the BSD license.
+
+Copyright (C) 2014-2019, by Yichun "agentzh" Zhang, OpenResty Inc.
+Copyright (C) 2014-2017, by Shuxin Yang.
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-lua.xml b/docs/nginx-module-lua.xml
new file mode 100644
index 0000000..a4f8c21
--- /dev/null
+++ b/docs/nginx-module-lua.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_lua">
+
+
+<changes apply="nginx-module-lua" ver="0.10.19" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of Lua nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-modsecurity.copyright b/docs/nginx-module-modsecurity.copyright
new file mode 100644
index 0000000..b040295
--- /dev/null
+++ b/docs/nginx-module-modsecurity.copyright
@@ -0,0 +1,73 @@
+
+ModSecurity, http://www.modsecurity.org/
+Copyright (c) 2015 Trustwave Holdings, Inc. (http://www.trustwave.com/)
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+
+Includes the libinjection library distributed under the following license:
+
+/*
+ * Copyright 2012, 2013, 2014
+ * Nick Galbreath -- nickg [at] client9 [dot] com
+ * http://www.client9.com/projects/libinjection/
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *   Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ *
+ *   Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ *
+ *   Neither the name of libinjection nor the names of its
+ *   contributors may be used to endorse or promote products derived from
+ *   this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * This is the standard "new" BSD license:
+ * http://www.opensource.org/licenses/bsd-license.php
+ */
+
+
+Includes the YAJL library distributed under the following license:
+
+Copyright (c) 2007-2014, Lloyd Hilaiel <me@lloyd.io>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/docs/nginx-module-modsecurity.xml b/docs/nginx-module-modsecurity.xml
new file mode 100644
index 0000000..884f989
--- /dev/null
+++ b/docs/nginx-module-modsecurity.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_modsecurity">
+
+
+<changes apply="nginx-module-modsecurity" ver="1.0.1" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of ModSecurity nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-ndk.copyright b/docs/nginx-module-ndk.copyright
new file mode 100644
index 0000000..973d39e
--- /dev/null
+++ b/docs/nginx-module-ndk.copyright
@@ -0,0 +1,29 @@
+Copyright (c) 2010-2018, Marcus Clyne
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its contributors
+may be used to endorse or promote products derived from this software without
+specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-ndk.xml b/docs/nginx-module-ndk.xml
new file mode 100644
index 0000000..5114028
--- /dev/null
+++ b/docs/nginx-module-ndk.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_ndk">
+
+
+<changes apply="nginx-module-ndk" ver="0.3.1" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of nginx devel kit module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-opentracing.copyright b/docs/nginx-module-opentracing.copyright
new file mode 100644
index 0000000..8dada3e
--- /dev/null
+++ b/docs/nginx-module-opentracing.copyright
@@ -0,0 +1,201 @@
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "{}"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright {yyyy} {name of copyright owner}
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
diff --git a/docs/nginx-module-opentracing.xml b/docs/nginx-module-opentracing.xml
new file mode 100644
index 0000000..4444f6d
--- /dev/null
+++ b/docs/nginx-module-opentracing.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_opentracing">
+
+
+<changes apply="nginx-module-opentracing" ver="0.10.0" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of OpenTracing nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-passenger.copyright b/docs/nginx-module-passenger.copyright
new file mode 100644
index 0000000..aa2c62c
--- /dev/null
+++ b/docs/nginx-module-passenger.copyright
@@ -0,0 +1,19 @@
+Copyright (c) 2010-2017 Phusion Holding B.V.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/docs/nginx-module-passenger.xml b/docs/nginx-module-passenger.xml
new file mode 100644
index 0000000..565ffa5
--- /dev/null
+++ b/docs/nginx-module-passenger.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_passenger">
+
+
+<changes apply="nginx-module-passenger" ver="6.0.6" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of Passenger nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-rtmp.copyright b/docs/nginx-module-rtmp.copyright
new file mode 100644
index 0000000..15cb1e0
--- /dev/null
+++ b/docs/nginx-module-rtmp.copyright
@@ -0,0 +1,22 @@
+Copyright (c) 2012-2014, Roman Arutyunyan
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-rtmp.xml b/docs/nginx-module-rtmp.xml
new file mode 100644
index 0000000..55cb23f
--- /dev/null
+++ b/docs/nginx-module-rtmp.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_rtmp">
+
+
+<changes apply="nginx-module-rtmp" ver="1.2.1" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of RTMP nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-set-misc.copyright b/docs/nginx-module-set-misc.copyright
new file mode 100644
index 0000000..e54a086
--- /dev/null
+++ b/docs/nginx-module-set-misc.copyright
@@ -0,0 +1,26 @@
+Copyright (C) 2009-2018, Yichun Zhang (章亦春) <agentzh@gmail.com>, OpenResty Inc.
+
+This module is licensed under the terms of the BSD license.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-set-misc.xml b/docs/nginx-module-set-misc.xml
new file mode 100644
index 0000000..1f8b43e
--- /dev/null
+++ b/docs/nginx-module-set-misc.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_set_misc">
+
+
+<changes apply="nginx-module-set-misc" ver="0.32" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of set misc nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/docs/nginx-module-subs-filter.copyright b/docs/nginx-module-subs-filter.copyright
new file mode 100644
index 0000000..2c59504
--- /dev/null
+++ b/docs/nginx-module-subs-filter.copyright
@@ -0,0 +1,28 @@
+This module is licensed under the BSD license.
+
+Copyright (C) 2014 by Weibin Yao <yaoweibin@gmail.com>.
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+ * Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/docs/nginx-module-subs-filter.xml b/docs/nginx-module-subs-filter.xml
new file mode 100644
index 0000000..fab0ad3
--- /dev/null
+++ b/docs/nginx-module-subs-filter.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+<!DOCTYPE change_log SYSTEM "changes.dtd" >
+
+
+<change_log title="nginx_module_subs_filter">
+
+
+<changes apply="nginx-module-subs-filter" ver="0.6.4" rev="1" basever="1.19.6"
+         date="2020-12-17" time="12:00:00 +0300"
+         packager="Andrei Belov &lt;defanator@gmail.com&gt;">
+
+<change>
+<para>
+Initial release of subs filter nginx module package.
+</para>
+</change>
+
+</changes>
+
+
+</change_log>
diff --git a/rpm/SOURCES/njs-0.5.0.tar.gz b/rpm/SOURCES/njs-0.5.0.tar.gz
deleted file mode 100644
index 688acfe..0000000
--- a/rpm/SOURCES/njs-0.5.0.tar.gz
+++ /dev/null
Binary files differ
diff --git a/rpm/SPECS/Makefile b/rpm/SPECS/Makefile
index 515e947..8452a14 100644
--- a/rpm/SPECS/Makefile
+++ b/rpm/SPECS/Makefile
@@ -8,9 +8,10 @@
 BUILD_ENV_PATH=	${HOME}/rpmbuild
 MODULE_TARGET?=	oss
 MODSRC_PREFIX=
-MODSRC_PATH=	$(SRCPATH)
 BUILD_DIR=	%{bdir}
 DOCS?=		../../docs
+CONTRIB?=	../../contrib
+CONTRIB:=	$(abspath $(CONTRIB))
 
 ifeq ($(MODULE_TARGET), plus)
 MODULE_SPEC_TEMPLATE=	nginx-plus-module.spec.in
@@ -27,9 +28,11 @@
 MODULE_TARGET_PREFIX=$(TARGET_VERSION)+
 
 MODULE_PACKAGE_VENDOR=	Nginx, Inc.
-MODULE_PACKAGE_URL=	http://nginx.org/
+MODULE_PACKAGE_URL=	https://nginx.org/
 MODULE_PACKAGE_LICENSE=2-clause BSD-like license
 
+BASE_MODULES=	geoip image-filter njs perl xslt
+
 MODULES=
 
 -include Makefile.module-*
@@ -77,23 +80,35 @@
 
 export CR=\\n
 
-modname = $(shell echo $1 | cut -c 14- | cut -d '.' -f 1 | tr '-' '_')
+modname = $(shell echo $1 | tr '-' '_')
 
 default:
 	@echo "valid targets: all base $(addprefix module-, $(MODULES)) test test-debug"
 
-all:	base modules
+list-base:
+	@printf "%-20s\t%s\n" nginx $(BASE_VERSION)-$(BASE_RELEASE)
+
+list-module-%:
+	@printf "%-20s\t%s\n" $* $(MODULE_VERSION_$(call modname, $*))-$(MODULE_RELEASE_$(call modname, $*))
+
+list-all-modules: $(addprefix list-module-, $(MODULES))
+
+list-base-modules: $(addprefix list-module-, $(BASE_MODULES))
+
+list: list-base list-all-modules
+
+all:	base base-modules
 	@echo "===> all done"
 
+base-modules:	$(addprefix module-, $(BASE_MODULES))
+
 modules:	$(addprefix module-, $(MODULES))
 
 specs:	nginx.spec $(addsuffix .spec, $(addprefix nginx-module-, $(MODULES)))
 
-$(BASE_SRC):
-	wget http://nginx.org/download/$(BASE_SRC)
-
 $(SRCPATH)/$(BASE_SRC):
-	@cd $(SRCPATH) && wget http://nginx.org/download/$(BASE_SRC)
+	cd $(CONTRIB) && make .sum-nginx
+	cd $(SRCPATH) && ln -s $(CONTRIB)/tarballs/$(BASE_SRC) $(BASE_SRC)
 
 base:	nginx.spec $(SRCPATH)/$(BASE_SRC)
 	@echo "===> Building base package" ; \
@@ -120,7 +135,10 @@
 	cp -p $(DOCS)/nginx.copyright ../SOURCES/ ; \
 	}
 
-module-%: nginx-module-%.spec check-compat-% $(SRCPATH)/$(BASE_SRC)
+.deps-module-%:
+	touch $@
+
+module-%: nginx-module-%.spec check-compat-% $(SRCPATH)/$(BASE_SRC) .deps-module-%
 	@if [ -e nginx-$@.skip ]; then \
 	    echo "---> Skipping nginx-$@ package (`cat nginx-$@.skip`)" ; \
 	else \
@@ -140,19 +158,42 @@
 	i=100 ; \
 	sources= ; \
 	prepsources= ; \
-	for src in $(MODULE_SOURCES_$(call modname, $@)); do \
+	for src in $(MODULE_SOURCES_$(call modname, $*)); do \
+		if [ -h ../SOURCES/$${src} ] ; then rm ../SOURCES/$${src} ; fi ; \
+		ln -s $(CONTRIB)/tarballs/$${src} ../SOURCES/$${src} ; \
 		s="`printf "Source%d: %s\n" $${i} $${src}`" ; \
 		sources="$${sources}\n$${s}" ; \
-		s="`printf "tar zxf %%{SOURCE%d\}" $${i}`" ; \
+		case "$${src}" in \
+			*.tar.xz) \
+				taropts="xvJfo" ; \
+				;; \
+			*) \
+				taropts="xvzfo" ; \
+				;; \
+		esac ; \
+		s="`printf "tar $${taropts} %%{SOURCE%d\}" $${i}`" ; \
+		prepsources="$${prepsources}\n$${s}" ; \
+		sn=`echo $${src} | sed -e 's/-[0-9].*$$//'` ; \
+		if [ "$${sn}" = "$${src}" ] ; then \
+			sn=$${src%-*} ; \
+		fi ; \
+		s="`printf "ln -s $${sn}-* $${sn}"`" ; \
 		prepsources="$${prepsources}\n$${s}" ; \
 		i=$$(($${i}+1)) ; \
 	done ; \
 	i=100 ; \
 	patches= ; \
 	preppatches= ; \
-	for src in $(MODULE_PATCHES_$(call modname, $@)); do \
-		s="`printf "Patch%d: %s\n" $${i} $${src}`" ; \
+	for src in $(MODULE_PATCHES_$(call modname, $*)); do \
+		dn=`dirname $${src}` ; \
+		bdn=`basename $${dn}` ; \
+		pn="$${bdn}_`basename $${src}`" ; \
+		if [ -h ../SOURCES/$${pn} ] ; then rm ../SOURCES/$${pn} ; fi ; \
+		ln -s $${src} ../SOURCES/$${pn} ; \
+		s="`printf "Patch%d: %s\n" $${i} $${pn}`" ; \
 		patches="$${patches}\n$${s}" ; \
+		s="`printf "cd %%{bdir}/$${bdn}"`" ; \
+		preppatches="$${preppatches}\n$${s}" ; \
 		s="`printf "%%patch%d -p1" $${i}`" ; \
 		preppatches="$${preppatches}\n$${s}" ; \
 		i=$$(($${i}+1)) ; \
@@ -163,28 +204,28 @@
 	if [ "$(MODULE_TARGET)" = "plus" ]; then \
 		pkgname=`echo $${pkgname} | sed -e "s#^nginx-#nginx-plus-#"` ; \
 	fi ; \
-	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	buildenv=`echo "$$MODULE_ENV_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	files=`echo "$$MODULE_FILES_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
-	post=`echo "$$MODULE_POST_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	buildenv=`echo "$$MODULE_ENV_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	files=`echo "$$MODULE_FILES_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	post=`echo "$$MODULE_POST_$(call modname, $*)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
 	cat $(MODULE_SPEC_TEMPLATE) | sed \
 		-e "s#%%NAME%%#$${pkgname}#g" \
 		-e "s#%%MODULE_PACKAGE_VENDOR%%#$(MODULE_PACKAGE_VENDOR)#g" \
 		-e "s#%%MODULE_PACKAGE_URL%%#$(MODULE_PACKAGE_URL)#g" \
 		-e "s#%%MODULE_PACKAGE_LICENSE%%#$(MODULE_PACKAGE_LICENSE)#g" \
-		-e "s#%%SUMMARY%%#$(MODULE_SUMMARY_PREFIX) $(MODULE_SUMMARY_$(call modname, $@))#g" \
-		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $@))#g" \
+		-e "s#%%SUMMARY%%#$(MODULE_SUMMARY_PREFIX) $(MODULE_SUMMARY_$(call modname, $*))#g" \
+		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $*))#g" \
 		-e "s#%%TARGET_VERSION%%#$(TARGET_VERSION)#g" \
 		-e "s#%%BASE_VERSION%%#$(BASE_VERSION)#g" \
 		-e "s#%%BASE_RELEASE%%#$(BASE_RELEASE)#g" \
 		-e "s#%%PLUS_VERSION%%#$(PLUS_VERSION)#g" \
-		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
-		-e "s#%%VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
-		-e "s#%%RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
+		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $*))#g" \
+		-e "s#%%VERSION%%#$(MODULE_VERSION_$(call modname, $*))#g" \
+		-e "s#%%RELEASE%%#$(MODULE_RELEASE_$(call modname, $*))#g" \
 		-e "s#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g" \
-		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $@))#g" \
+		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $*))#g" \
 		-e "s#%%COPYRIGHT_SOURCE%%#$${module_copyright}#g" \
 		-e "s#%%MODULE_SOURCES%%#$${sources}#g" \
 		-e "s#%%MODULE_PATCHES%%#$${patches}#g" \
@@ -193,10 +234,10 @@
 		-e "s#%%MODULE_DEFINITIONS%%#$${definitions}#g" \
 		-e "s#%%MODULE_PREBUILD%%#$${prebuild}#g" \
 		-e "s#%%MODULE_ENV%%#$${buildenv}#g" \
-		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $@))#g" \
-		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $@))#g" \
+		-e "s#%%MODULE_CC_OPT%%#$(MODULE_CC_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_CC_OPT_DEBUG%%#$(MODULE_CC_OPT_DEBUG_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT%%#$(MODULE_LD_OPT_$(call modname, $*))#g" \
+		-e "s#%%MODULE_LD_OPT_DEBUG%%#$(MODULE_LD_OPT_DEBUG_$(call modname, $*))#g" \
 		-e "s#%%MODULE_PREINSTALL%%#$${preinstall}#g" \
 		-e "s#%%MODULE_FILES%%#$${files}#g" \
 		-e "s#%%MODULE_POST%%#$${post}#g" \
@@ -205,8 +246,8 @@
 		-e 's#%%TARGET_VERSION%%#$(TARGET_VERSION)#g' \
 		-e 's#%%BASE_VERSION%%#$(BASE_VERSION)#g' \
 		-e 's#%%BASE_RELEASE%%#$(BASE_RELEASE)#g' \
-		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
-		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $*))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $*))#g" \
 		>> $@.tmp && \
 	mv $@.tmp $@ ; \
 	}
@@ -230,7 +271,7 @@
 		cp -rP ../nginx-tests nginx-tests ; \
 	else \
 		echo "===> Cloning tests" ; \
-		hg clone http://hg.nginx.org/nginx-tests ; \
+		hg clone https://hg.nginx.org/nginx-tests ; \
 	fi ; \
 	}
 
@@ -239,6 +280,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -248,7 +291,11 @@
 	if [ -d $$pwd/module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$pwd/module-opentracing/../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ;  \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	if [ -d $$pwd/module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/../BUILD/nginx-module-lua-$(BASE_VERSION)/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/../BUILD/nginx-module-lua-$(BASE_VERSION)/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
 	}
 
 test-debug: base nginx-tests
@@ -256,6 +303,8 @@
 	@{ \
 	pwd=`pwd` ; \
 	globals= ; \
+	globals_http= ; \
+	globals_stream= ; \
 	for so in `find module-*/ -maxdepth 1 -type f -name "*module-debug.so" | sort -t / -k 2`; do \
 		globals="$$globals load_module $$pwd/$$so;" ; \
 	done ; \
@@ -265,34 +314,33 @@
 	if [ -d $$pwd/module-opentracing ]; then \
 		export LD_LIBRARY_PATH=$$pwd/module-opentracing/../opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib ; \
 	fi ;  \
-	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	if [ -d $$pwd/module-lua ]; then \
+		globals_http="lua_package_path '$$pwd/../BUILD/nginx-module-lua-$(BASE_VERSION)/lua-resty-core-$(LUA_RESTY_CORE_VERSION)/lib/?.lua;$$pwd/../BUILD/nginx-module-lua-$(BASE_VERSION)/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION)/lib/?.lua;;';" ; \
+		globals_stream="$$globals_http" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" TEST_NGINX_GLOBALS_HTTP="$$globals_http" TEST_NGINX_GLOBALS_STREAM="$$globals_stream" prove $$PROVE_ARGS . ; \
 	}
 
-prepare-build-env: $(BASE_SRC)
+test-modules: $(addprefix test-module-, $(MODULES))
+
+test-module-%: base nginx-tests module-%
 	@{ \
-	set -e ; \
-	cwd=`pwd` ; \
-	case $$cwd in $(BUILD_ENV_PATH)*) \
-		echo "You are in $(BUILD_ENV_PATH), skipping" >&2 ; \
-		exit 1 ; \
-	esac ; \
-	if [ -e $(BUILD_ENV_PATH) ]; then \
-		echo "$(BUILD_ENV_PATH) is already exists and going to be removed." ; \
-		echo "Press Enter to continue or Ctrl+C to exit" ; \
-		read ; \
-		rm -rf $(BUILD_ENV_PATH) ; \
+	module=`echo $@ | cut -d '-' -f 3-` ; \
+	testdir="$(MODULE_TESTS_$(shell echo $@ | cut -d '-' -f 3-))" ; \
+	if [ -z "$$testdir" ]; then \
+		echo "---> Skipping, no tests defined for $$module module" ; \
+		exit 0 ; \
 	fi ; \
-	mkdir -p $(BUILD_ENV_PATH) ; \
-	pd=`dirname $${cwd}` ; \
-	cp -rP $${pd}/SPECS $(BUILD_ENV_PATH)/ ; \
-	cp -rP $${pd}/SOURCES $(BUILD_ENV_PATH)/ ; \
-	cp $(BASE_SRC) $(BUILD_ENV_PATH)/SOURCES/ ; \
-	cp -pr $(DOCS) $(BUILD_ENV_PATH); \
-	echo "Build environment has been created in: $(BUILD_ENV_PATH)" ; \
-	echo ; \
-	echo "Please do the following in order to get available build targets:" ; \
-	echo "    cd $(BUILD_ENV_PATH)/SPECS" ; \
-	echo "    make" ; \
+	pwd=`pwd` ; \
+	globals= ; \
+	for so in `find module-$${module}/ -maxdepth 1 -type f -name "*module.so"`; do \
+		globals="$$globals load_module $$pwd/$$so;" ; \
+	done ; \
+	if [ ! -d nginx-tests/module-$${module} ]; then \
+		cp -r $${pwd}/module-$${module}/../$${testdir} nginx-tests/module-$${module} ; \
+		ln -fs ../lib nginx-tests/module-$${module}/lib ; \
+	fi ; \
+	cd nginx-tests/module-$${module} && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove $$PROVE_ARGS . ; \
 	}
 
 clean:
@@ -301,7 +349,9 @@
 	@rm -rf nginx-tests
 	@rm -f $(BASE_SRC) $(SRCPATH)/$(BASE_SRC)
 	@rm -f nginx.rpm-changelog nginx-module-*.rpm-changelog
+	@rm -f .deps-module-*
+	@find ../SOURCES/ -type l -delete
 
-.PHONY:	default all modules specs test test-debug clean
+.PHONY:	default list list-base list-all-modules list-base-modules all modules specs test test-debug clean
 
 .SECONDARY:
diff --git a/rpm/SPECS/Makefile.module-brotli b/rpm/SPECS/Makefile.module-brotli
new file mode 100644
index 0000000..6e28d69
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-brotli
@@ -0,0 +1,46 @@
+MODULES+=	brotli
+
+MODULE_SUMMARY_brotli=	3rd-party brotli compression dynamic modules
+
+include $(CONTRIB)/src/ngx_brotli/version
+
+MODULE_VERSION_brotli=	$(NGX_BROTLI_VERSION)
+MODULE_RELEASE_brotli=	1
+
+MODULE_VERSION_PREFIX_brotli=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_brotli=	ngx_brotli-$(NGX_BROTLI_VERSION).tar.gz
+
+MODULE_CONFARGS_brotli=	--add-dynamic-module=ngx_brotli-$(NGX_BROTLI_VERSION)rc
+
+.deps-module-brotli:
+	cd $(CONTRIB) && make .sum-ngx_brotli
+	touch $@
+
+define MODULE_DEFINITIONS_brotli
+%if 0%{?suse_version} == 0
+BuildRequires: brotli-devel
+%else
+BuildRequires: libbrotli-devel
+%endif
+endef
+export MODULE_DEFINITIONS_brotli
+
+define MODULE_POST_brotli
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_brotli) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_brotli_filter_module.so;
+    load_module modules/ngx_http_brotli_static_module.so;
+
+Please refer to the modules documentation for further details:
+https://github.com/google/ngx_brotli
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_brotli
diff --git a/rpm/SPECS/Makefile.module-encrypted-session b/rpm/SPECS/Makefile.module-encrypted-session
new file mode 100644
index 0000000..a1895fe
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-encrypted-session
@@ -0,0 +1,54 @@
+MODULES+=	encrypted-session
+
+MODULE_SUMMARY_encrypted_session=	3rd-party encrypted session dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/encrypted-session-nginx-module/version
+
+MODULE_VERSION_encrypted_session=	$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+MODULE_RELEASE_encrypted_session=	1
+
+MODULE_VERSION_PREFIX_encrypted_session=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_encrypted_session=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+					encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_encrypted_session=	--add-dynamic-module=ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+					--add-dynamic-module=encrypted-session-nginx-module-$(ENCRYPTED_SESSION_NGINX_MODULE_VERSION)
+
+.deps-module-encrypted-session:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-encrypted-session-nginx-module
+	touch $@
+
+define MODULE_DEFINITIONS_encrypted_session
+Requires: $(NDK_DEPENDENCY_TAG)
+endef
+export MODULE_DEFINITIONS_encrypted_session
+
+define MODULE_PREINSTALL_encrypted_session
+%{__rm} -f %{bdir}/objs/ndk_http_module.so %{bdir}/objs/ndk_http_module-debug.so
+endef
+export MODULE_PREINSTALL_encrypted_session
+
+define MODULE_POST_encrypted_session
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_encrypted_session) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_encrypted_session_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/encrypted-session-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_encrypted_session
diff --git a/rpm/SPECS/Makefile.module-geoip b/rpm/SPECS/Makefile.module-geoip
index 4ff160d..04beadb 100644
--- a/rpm/SPECS/Makefile.module-geoip
+++ b/rpm/SPECS/Makefile.module-geoip
@@ -11,10 +11,8 @@
 define MODULE_DEFINITIONS_geoip
 %if 0%{?suse_version} >= 1315
 BuildRequires: libGeoIP-devel
-Requires: libGeoIP1
 %else
 BuildRequires: GeoIP-devel
-Requires: GeoIP
 %endif
 endef
 export MODULE_DEFINITIONS_geoip
@@ -31,8 +29,8 @@
     load_module modules/ngx_stream_geoip_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_geoip_module.html
-http://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
+https://nginx.org/en/docs/http/ngx_http_geoip_module.html
+https://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/rpm/SPECS/Makefile.module-geoip2 b/rpm/SPECS/Makefile.module-geoip2
new file mode 100644
index 0000000..d31a252
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-geoip2
@@ -0,0 +1,43 @@
+MODULES+=	geoip2
+
+MODULE_SUMMARY_geoip2=	3rd-party GeoIP2 dynamic modules
+
+include $(CONTRIB)/src/ngx_http_geoip2_module/version
+
+MODULE_VERSION_geoip2=	$(GEOIP2_NGINX_MODULE_VERSION)
+MODULE_RELEASE_geoip2=	1
+
+MODULE_VERSION_PREFIX_geoip2=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_geoip2=	ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_geoip2=	--with-stream \
+			--add-dynamic-module=ngx_http_geoip2_module-$(GEOIP2_NGINX_MODULE_VERSION)
+
+.deps-module-geoip2:
+	cd $(CONTRIB) && make .sum-ngx_http_geoip2_module
+	touch $@
+
+define MODULE_DEFINITIONS_geoip2
+BuildRequires: libmaxminddb-devel
+endef
+export MODULE_DEFINITIONS_geoip2
+
+define MODULE_POST_geoip2
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_geoip2) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_geoip2_module.so;
+    load_module modules/ngx_stream_geoip2_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/leev/ngx_http_geoip2_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_geoip2
diff --git a/rpm/SPECS/Makefile.module-headers-more b/rpm/SPECS/Makefile.module-headers-more
new file mode 100644
index 0000000..8316522
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-headers-more
@@ -0,0 +1,38 @@
+MODULES+=	headers-more
+
+MODULE_SUMMARY_headers_more=	3rd-party headers-more dynamic module
+
+include $(CONTRIB)/src/headers-more-nginx-module/version
+
+MODULE_VERSION_headers_more=	$(HEADERS_MORE_NGINX_MODULE_VERSION)
+MODULE_RELEASE_headers_more=	1
+
+MODULE_VERSION_PREFIX_headers_more=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_headers_more=	headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_headers_more=	--with-http_dav_module \
+				--with-http_realip_module \
+				--add-dynamic-module=headers-more-nginx-module-$(HEADERS_MORE_NGINX_MODULE_VERSION)
+
+.deps-module-headers-more:
+	cd $(CONTRIB) && make .sum-headers-more-nginx-module
+	touch $@
+
+define MODULE_POST_headers_more
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_headers_more) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_headers_more_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/headers-more-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_headers_more
diff --git a/rpm/SPECS/Makefile.module-image-filter b/rpm/SPECS/Makefile.module-image-filter
index 6f92860..d53e312 100644
--- a/rpm/SPECS/Makefile.module-image-filter
+++ b/rpm/SPECS/Makefile.module-image-filter
@@ -9,7 +9,6 @@
 
 define MODULE_DEFINITIONS_image_filter
 BuildRequires: gd-devel
-Requires: gd
 endef
 export MODULE_DEFINITIONS_image_filter
 
@@ -24,7 +23,7 @@
     load_module modules/ngx_http_image_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_image_filter_module.html
+https://nginx.org/en/docs/http/ngx_http_image_filter_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/rpm/SPECS/Makefile.module-lua b/rpm/SPECS/Makefile.module-lua
new file mode 100644
index 0000000..3cc7041
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-lua
@@ -0,0 +1,129 @@
+MODULES+=	lua
+
+MODULE_SUMMARY_lua=	3rd-party Lua dynamic modules
+
+include $(CONTRIB)/src/luajit2/version
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/lua-nginx-module/version
+include $(CONTRIB)/src/stream-lua-nginx-module/version
+include $(CONTRIB)/src/lua-resty-core/version
+include $(CONTRIB)/src/lua-resty-lrucache/version
+
+MODULE_VERSION_lua=	$(LUA_NGINX_MODULE_VERSION)
+MODULE_RELEASE_lua=	1
+
+MODULE_VERSION_PREFIX_lua=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_lua=	luajit2-$(LUAJIT2_VERSION).tar.gz \
+			ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+			lua-nginx-module-$(LUA_NGINX_MODULE_VERSION).tar.gz \
+			stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION).tar.gz \
+			lua-resty-core-$(LUA_RESTY_CORE_VERSION).tar.gz \
+			lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION).tar.gz
+
+MODULE_PATCHES_lua=	$(CONTRIB)/src/luajit2/Makefile.patch \
+			$(CONTRIB)/src/luajit2/src-luaconf.h.patch \
+			$(CONTRIB)/src/lua-nginx-module/config.patch \
+			$(CONTRIB)/src/stream-lua-nginx-module/config.patch
+
+MODULE_CONFARGS_lua=	--with-http_dav_module \
+			--with-http_realip_module \
+			--with-http_ssl_module \
+			--with-http_v2_module \
+			--with-stream \
+			--with-stream_ssl_module \
+			--add-dynamic-module=ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+			--add-dynamic-module=lua-nginx-module-$(LUA_NGINX_MODULE_VERSION) \
+			--add-dynamic-module=stream-lua-nginx-module-$(STREAM_LUA_NGINX_MODULE_VERSION)
+
+.deps-module-lua:
+	cd $(CONTRIB) && make \
+		.sum-luajit2 \
+		.sum-ngx_devel_kit \
+		.sum-lua-nginx-module \
+		.sum-stream-lua-nginx-module \
+		.sum-lua-resty-core \
+		.sum-lua-resty-lrucache
+	touch $@
+
+define MODULE_DEFINITIONS_lua
+Requires: $(NDK_DEPENDENCY_TAG)
+%define LUAJIT_INC %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1
+%define LUAJIT_LIB %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/lib
+endef
+export MODULE_DEFINITIONS_lua
+
+define MODULE_PREBUILD_lua
+cd %{bdir}/luajit2-$(LUAJIT2_VERSION)
+DESTDIR="%{bdir}/luajit2-$(LUAJIT2_VERSION)" CFLAGS="-fPIC" make %{?_smp_mflags} install
+mv %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/bin/luajit %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/bin/nginx-luajit
+endef
+export MODULE_PREBUILD_lua
+
+define MODULE_ENV_lua
+LUAJIT_INC="%{LUAJIT_INC}" \\
+LUAJIT_LIB="%{LUAJIT_LIB}" \\
+endef
+export MODULE_ENV_lua
+
+define MODULE_PREINSTALL_lua
+%{__rm} -f %{bdir}/objs/ndk_http_module.so %{bdir}/objs/ndk_http_module-debug.so
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_bindir}
+%{__install} -m755 %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/bin/nginx-luajit \
+   $$RPM_BUILD_ROOT%{_bindir}/
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_datadir}/nginx-luajit-2.1/jit
+for f in `find %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/share/nginx-luajit-2.1/jit/ -type f`; do
+    %{__install} -m644 $${f} $$RPM_BUILD_ROOT%{_datadir}/nginx-luajit-2.1/jit/
+done
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_includedir}/nginx-luajit-2.1
+for f in `find %{bdir}/luajit2-$(LUAJIT2_VERSION)/usr/include/nginx-luajit-2.1/ -type f`; do
+    %{__install} -m644 $${f} $$RPM_BUILD_ROOT%{_includedir}/nginx-luajit-2.1/
+done
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_includedir}/nginx-luajit-2.1/resty
+cd %{bdir}/lua-resty-core-$(LUA_RESTY_CORE_VERSION) \&\& \
+    LUA_LIB_DIR=$$RPM_BUILD_ROOT%{_datadir}/nginx-luajit-2.1 make install
+cd %{bdir}/lua-resty-lrucache-$(LUA_RESTY_LRUCACHE_VERSION) \&\& \
+    LUA_LIB_DIR=$$RPM_BUILD_ROOT%{_datadir}/nginx-luajit-2.1 make install
+endef
+export MODULE_PREINSTALL_lua
+
+define MODULE_FILES_lua
+%{_bindir}/nginx-luajit
+%dir %{_datadir}/nginx-luajit-2.1/jit
+%{_datadir}/nginx-luajit-2.1/jit/*
+%dir %{_datadir}/nginx-luajit-2.1/ngx
+%{_datadir}/nginx-luajit-2.1/ngx/*
+%dir %{_datadir}/nginx-luajit-2.1/resty
+%{_datadir}/nginx-luajit-2.1/resty/*
+%dir %{_includedir}/nginx-luajit-2.1
+%{_includedir}/nginx-luajit-2.1/*
+endef
+export MODULE_FILES_lua
+
+define MODULE_POST_lua
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_lua) for $(MODULE_SUMMARY_PREFIX) have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_lua_module.so;
+    load_module modules/ngx_stream_lua_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+These modules are compiled with LuaJIT 2.1 library.
+The following binary should be used for testing and bytecode generation:
+
+    /usr/bin/nginx-luajit
+
+Please refer to the modules documentation for further details:
+https://github.com/openresty/lua-nginx-module
+https://github.com/openresty/stream-lua-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_lua
diff --git a/rpm/SPECS/Makefile.module-modsecurity b/rpm/SPECS/Makefile.module-modsecurity
new file mode 100644
index 0000000..392a07c
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-modsecurity
@@ -0,0 +1,100 @@
+MODULES+=	modsecurity
+
+MODULE_SUMMARY_modsecurity=	3rd-party ModSecurity dynamic module
+
+include $(CONTRIB)/src/modsecurity/version
+include $(CONTRIB)/src/modsecurity-nginx/version
+
+MODULE_VERSION_modsecurity=	$(MODSECURITY_NGINX_VERSION)
+MODULE_RELEASE_modsecurity=	1
+LIBMODSECURITY_SOVER=		$(MODSECURITY_VERSION)
+
+MODULE_VERSION_PREFIX_modsecurity=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_modsecurity=	modsecurity-v$(MODSECURITY_VERSION).tar.gz \
+				modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH).tar.xz
+
+MODULE_PATCHES_modsecurity=	$(CONTRIB)/src/modsecurity/PR2348.patch \
+				$(CONTRIB)/src/modsecurity-nginx/PR165.patch
+
+MODULE_CONFARGS_modsecurity=	--add-dynamic-module=modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)
+
+.deps-module-modsecurity:
+	cd $(CONTRIB) && make \
+		.sum-modsecurity \
+		.sum-modsecurity-nginx
+	touch $@
+
+define MODULE_DEFINITIONS_modsecurity
+BuildRequires: gcc-c++
+BuildRequires: yajl-devel
+BuildRequires: libcurl-devel
+BuildRequires: libxml2-devel
+endef
+export MODULE_DEFINITIONS_modsecurity
+
+define MODULE_PREBUILD_modsecurity
+cd %{bdir}/modsecurity-v$(MODSECURITY_VERSION) \&\& \
+./configure --prefix %{bdir}/modsecurity-v$(MODSECURITY_VERSION)/local --without-lmdb --without-lua \&\& \
+make %{?_smp_mflags} install \&\& TERM=foo make check-TESTS
+rm -f /tmp/audit_test.log /tmp/audit_test_parallel.log
+rm -rf /tmp/test
+endef
+export MODULE_PREBUILD_modsecurity
+
+define MODULE_ENV_modsecurity
+MODSECURITY_INC="%{bdir}/modsecurity-v$(MODSECURITY_VERSION)/local/include" \\
+MODSECURITY_LIB="%{bdir}/modsecurity-v$(MODSECURITY_VERSION)/local/lib" \\
+NGX_IGNORE_RPATH=yes \\
+endef
+export MODULE_ENV_modsecurity
+
+MODULE_CC_OPT_DEBUG_modsecurity=-DMODSECURITY_DDEBUG=1
+
+define MODULE_PREINSTALL_modsecurity
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_bindir}
+%{__install} -m755 -s %{bdir}/modsecurity-v$(MODSECURITY_VERSION)/local/bin/modsec-rules-check \
+   $$RPM_BUILD_ROOT%{_bindir}/
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_libdir}
+%{__install} -m755 %{bdir}/modsecurity-v$(MODSECURITY_VERSION)/local/lib/libmodsecurity.so.$(LIBMODSECURITY_SOVER) \
+   $$RPM_BUILD_ROOT%{_libdir}/
+%{__ln_s} -f libmodsecurity.so.$(LIBMODSECURITY_SOVER) $$RPM_BUILD_ROOT%{_libdir}/libmodsecurity.so.3
+%{__ln_s} -f libmodsecurity.so.$(LIBMODSECURITY_SOVER) $$RPM_BUILD_ROOT%{_libdir}/libmodsecurity.so
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_sysconfdir}/nginx/modsec
+%{__install} -m644 %{bdir}/modsecurity-v$(MODSECURITY_VERSION)/modsecurity.conf-recommended \
+   $$RPM_BUILD_ROOT%{_sysconfdir}/nginx/modsec/modsecurity.conf
+%{__install} -m644 %{bdir}/modsecurity-v$(MODSECURITY_VERSION)/unicode.mapping \
+   $$RPM_BUILD_ROOT%{_sysconfdir}/nginx/modsec/
+endef
+export MODULE_PREINSTALL_modsecurity
+
+define MODULE_FILES_modsecurity
+%dir %{_sysconfdir}/nginx/modsec
+%config(noreplace) %{_sysconfdir}/nginx/modsec/modsecurity.conf
+%config(noreplace) %{_sysconfdir}/nginx/modsec/unicode.mapping
+%{_bindir}/modsec-rules-check
+%{_libdir}/libmodsecurity.so.$(LIBMODSECURITY_SOVER)
+%{_libdir}/libmodsecurity.so.3
+%{_libdir}/libmodsecurity.so
+endef
+export MODULE_FILES_modsecurity
+
+MODULE_TESTS_modsecurity=modsecurity-nginx-$(MODSECURITY_NGINX_GITHASH)/tests
+
+define MODULE_POST_modsecurity
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_modsecurity) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_modsecurity_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/SpiderLabs/ModSecurity-nginx
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_modsecurity
diff --git a/rpm/SPECS/Makefile.module-ndk b/rpm/SPECS/Makefile.module-ndk
new file mode 100644
index 0000000..60d94fd
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-ndk
@@ -0,0 +1,45 @@
+MODULES+=	ndk
+
+MODULE_SUMMARY_ndk=	3rd-party NDK dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+
+MODULE_VERSION_ndk=	$(NGX_DEVEL_KIT_VERSION)
+MODULE_RELEASE_ndk=	1
+
+MODULE_VERSION_PREFIX_ndk=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_ndk=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz
+
+MODULE_CONFARGS_ndk=	--add-dynamic-module=ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION)
+
+.deps-module-ndk:
+	cd $(CONTRIB) && make .sum-ngx_devel_kit
+	touch $@
+
+MODULE_CC_OPT_ndk=-DNDK_SET_VAR -DNDK_UPSTREAM_LIST
+MODULE_CC_OPT_DEBUG_ndk=$(MODULE_CC_OPT_ndk)
+
+ifeq ($(MODULE_TARGET), plus)
+NDK_DEPENDENCY_TAG=	nginx-plus-module-ndk-r$(PLUS_VERSION)
+else
+NDK_DEPENDENCY_TAG=	nginx-module-ndk-r$(BASE_VERSION)
+endif
+
+define MODULE_POST_ndk
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_ndk) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/simpl/ngx_devel_kit
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_ndk
diff --git a/rpm/SPECS/Makefile.module-njs b/rpm/SPECS/Makefile.module-njs
index 97a2704..719dd7d 100644
--- a/rpm/SPECS/Makefile.module-njs
+++ b/rpm/SPECS/Makefile.module-njs
@@ -2,14 +2,20 @@
 
 MODULE_SUMMARY_njs=	njs dynamic modules
 
-MODULE_VERSION_njs=	0.5.0
+include $(CONTRIB)/src/njs/version
+
+MODULE_VERSION_njs=	$(NJS_VERSION)
 MODULE_RELEASE_njs=	1
 
 MODULE_VERSION_PREFIX_njs=$(MODULE_TARGET_PREFIX)
 
-MODULE_SOURCES_njs=	njs-$(MODULE_VERSION_njs).tar.gz
+MODULE_SOURCES_njs=	njs-$(NJS_VERSION).tar.gz
 
-MODULE_CONFARGS_njs=	--add-dynamic-module=njs-$(MODULE_VERSION_njs)/nginx
+MODULE_CONFARGS_njs=	--add-dynamic-module=njs-$(NJS_VERSION)/nginx
+
+.deps-module-njs:
+	cd $(CONTRIB) && make .sum-njs
+	touch $@
 
 define MODULE_DEFINITIONS_njs
 BuildRequires: libedit-devel
@@ -17,15 +23,15 @@
 export MODULE_DEFINITIONS_njs
 
 define MODULE_PREBUILD_njs
-cd %{bdir}/njs-$(MODULE_VERSION_njs) \&\& ./configure \&\& make njs
+cd %{bdir}/njs-$(NJS_VERSION) \&\& ./configure \&\& make njs
 endef
 export MODULE_PREBUILD_njs
 
 define MODULE_PREINSTALL_njs
-%{__install} -m644 %{bdir}/njs-$(MODULE_VERSION_njs)/CHANGES \
+%{__install} -m644 %{bdir}/njs-$(NJS_VERSION)/CHANGES \
         $$RPM_BUILD_ROOT%{_datadir}/doc/%{name}/
 %{__mkdir} -p $$RPM_BUILD_ROOT%{_bindir}
-%{__install} -m755 %{bdir}/njs-$(MODULE_VERSION_njs)/build/njs \
+%{__install} -m755 %{bdir}/njs-$(NJS_VERSION)/build/njs \
         $$RPM_BUILD_ROOT%{_bindir}/
 endef
 export MODULE_PREINSTALL_njs
@@ -47,9 +53,9 @@
     load_module modules/ngx_stream_js_module.so;
 
 Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/njs/
-http://nginx.org/en/docs/http/ngx_http_js_module.html
-http://nginx.org/en/docs/stream/ngx_stream_js_module.html
+https://nginx.org/en/docs/njs/
+https://nginx.org/en/docs/http/ngx_http_js_module.html
+https://nginx.org/en/docs/stream/ngx_stream_js_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/rpm/SPECS/Makefile.module-opentracing b/rpm/SPECS/Makefile.module-opentracing
new file mode 100644
index 0000000..2a2a9f4
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-opentracing
@@ -0,0 +1,126 @@
+MODULES+=	opentracing
+
+MODULE_SUMMARY_opentracing=	3rd-party OpenTracing dynamic module
+
+include $(CONTRIB)/src/opentracing-cpp/version
+include $(CONTRIB)/src/nginx-opentracing/version
+include $(CONTRIB)/src/jaeger-client-cpp/version
+
+MODULE_VERSION_opentracing=	$(NGINX_OPENTRACING_VERSION)
+MODULE_RELEASE_opentracing=	1
+
+MODULE_VERSION_PREFIX_opentracing=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_opentracing=	opentracing-cpp-$(OPENTRACING_CPP_VERSION).tar.gz \
+				nginx-opentracing-$(NGINX_OPENTRACING_VERSION).tar.gz \
+				jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION).tar.gz
+
+MODULE_PATCHES_opentracing=	$(CONTRIB)/src/opentracing-cpp/CMakeLists.txt.patch \
+				$(CONTRIB)/src/jaeger-client-cpp/CMakeLists.txt.patch
+
+MODULE_CONFARGS_opentracing=	--add-dynamic-module=nginx-opentracing-$(NGINX_OPENTRACING_VERSION)/opentracing
+
+.deps-module-opentracing:
+	cd $(CONTRIB) && make \
+		.sum-opentracing-cpp \
+		.sum-nginx-opentracing \
+		.sum-jaeger-client-cpp
+	touch $@
+
+define MODULE_DEFINITIONS_opentracing
+%if (0%{?rhel} > 0) || (0%{?amzn} > 0)
+%if (0%{?rhel} >= 8)
+BuildRequires: cmake
+%define _cmake_cmd %{__cmake}
+%else
+BuildRequires: cmake3
+%define _cmake_cmd %{__cmake3}
+%endif
+%endif
+
+%if (0%{?suse_version} >= 1500) || (0%{?fedora} > 0)
+BuildRequires: cmake
+%define _cmake_cmd %{__cmake}
+%endif
+BuildRequires: libstdc++-static
+BuildRequires: yaml-cpp-devel
+endef
+export MODULE_DEFINITIONS_opentracing
+
+MODULE_CC_OPT_opentracing=-I%{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include
+MODULE_CC_OPT_DEBUG_opentracing=$(MODULE_CC_OPT_opentracing)
+MODULE_LD_OPT_opentracing=-L%{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib
+MODULE_LD_OPT_DEBUG_opentracing=$(MODULE_LD_OPT_opentracing)
+
+define MODULE_PREBUILD_opentracing
+cd %{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION) \&\& \
+mkdir .build \&\& \
+cd .build \&\& \
+%{_cmake_cmd} ../ \&\& \
+DESTDIR=%{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION) make %{?_smp_mflags} install || exit 1
+cd %{bdir}/jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION) \&\& \
+mkdir .build \&\& \
+cd .build \&\& \
+OpenTracing_DIR=%{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/.build %{_cmake_cmd} -DCMAKE_BUILD_TYPE=Release -DJAEGERTRACING_PLUGIN=ON -DHUNTER_CONFIGURATION_TYPES=Release -DBUILD_TESTING=OFF ../ -DOPENTRACING_INC=%{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include \&\& \
+make %{?_smp_mflags} || exit 1
+endef
+export MODULE_PREBUILD_opentracing
+
+define MODULE_PREINSTALL_opentracing
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_libdir}
+%{__install} -m755 %{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing.so.$(OPENTRACING_CPP_VERSION) \
+   $$RPM_BUILD_ROOT%{_libdir}/
+%{__install} -m755 %{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/lib/libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) \
+   $$RPM_BUILD_ROOT%{_libdir}/
+%{__ln_s} -f libopentracing.so.$(OPENTRACING_CPP_VERSION) $$RPM_BUILD_ROOT%{_libdir}/libopentracing.so.1
+%{__ln_s} -f libopentracing.so.1 $$RPM_BUILD_ROOT%{_libdir}/libopentracing.so
+%{__ln_s} -f libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION) $$RPM_BUILD_ROOT%{_libdir}/libopentracing_mocktracer.so.1
+%{__ln_s} -f libopentracing_mocktracer.so.1 $$RPM_BUILD_ROOT%{_libdir}/libopentracing_mocktracer.so
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_includedir}
+%{__cp} -rp %{bdir}/opentracing-cpp-$(OPENTRACING_CPP_VERSION)/usr/local/include/opentracing $$RPM_BUILD_ROOT%{_includedir}/
+%{__mkdir} -p $$RPM_BUILD_ROOT%{_libexecdir}/opentracing
+%{__install} -m755 %{bdir}/jaeger-client-cpp-$(JAEGER_CLIENT_CPP_VERSION)/.build/libjaegertracing_plugin.so $$RPM_BUILD_ROOT%{_libexecdir}/opentracing/
+endef
+export MODULE_PREINSTALL_opentracing
+
+define MODULE_FILES_opentracing
+%{_libdir}/libopentracing.so.$(OPENTRACING_CPP_VERSION)
+%{_libdir}/libopentracing.so.1
+%{_libdir}/libopentracing.so
+%{_libdir}/libopentracing_mocktracer.so.$(OPENTRACING_CPP_VERSION)
+%{_libdir}/libopentracing_mocktracer.so.1
+%{_libdir}/libopentracing_mocktracer.so
+%dir %{_libexecdir}/opentracing
+%{_libexecdir}/opentracing/libjaegertracing_plugin.so
+%dir %{_includedir}/opentracing
+%{_includedir}/opentracing/*
+endef
+export MODULE_FILES_opentracing
+
+define MODULE_POST_opentracing
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_opentracing) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_opentracing_module.so;
+
+Note that additional tracer plugins are required in order
+to communicate with corresponding services (e.g. Zipkin, Jaeger).
+This package includes the Jaeger dynamic tracer plugin:
+
+    /usr/libexec/opentracing/libjaegertracing_plugin.so
+
+Please refer to the module documentation for further details:
+https://github.com/opentracing-contrib/nginx-opentracing
+https://github.com/opentracing-contrib/nginx-opentracing/blob/master/doc/Reference.md
+
+OpenTracing project site (general info and documentation):
+https://opentracing.io/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_opentracing
diff --git a/rpm/SPECS/Makefile.module-passenger b/rpm/SPECS/Makefile.module-passenger
new file mode 100644
index 0000000..1fa2793
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-passenger
@@ -0,0 +1,43 @@
+MODULES+=	passenger
+
+MODULE_SUMMARY_passenger=	3rd-party Passenger dynamic module
+
+include $(CONTRIB)/src/passenger/version
+
+MODULE_VERSION_passenger=	$(PASSENGER_VERSION)
+MODULE_RELEASE_passenger=	1
+
+MODULE_VERSION_PREFIX_passenger=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_passenger=	passenger-$(PASSENGER_VERSION).tar.gz
+MODULE_PATCHES_passenger=	$(CONTRIB)/src/passenger/build-nginx.rb.patch
+
+MODULE_CONFARGS_passenger=	--with-http_ssl_module \
+				--add-dynamic-module=passenger-$(PASSENGER_VERSION)/src/nginx_module
+
+.deps-module-passenger:
+	cd $(CONTRIB) && make .sum-passenger
+	touch $@
+
+define MODULE_DEFINITIONS_passenger
+BuildRequires: rubygem-rake
+endef
+export MODULE_DEFINITIONS_passenger
+
+define MODULE_POST_passenger
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_passenger) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_passenger_module.so;
+
+Please refer to the module documentation for further details:
+https://www.phusionpassenger.com/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_passenger
diff --git a/rpm/SPECS/Makefile.module-perl b/rpm/SPECS/Makefile.module-perl
index 67205fa..826fbfc 100644
--- a/rpm/SPECS/Makefile.module-perl
+++ b/rpm/SPECS/Makefile.module-perl
@@ -47,7 +47,7 @@
     load_module modules/ngx_http_perl_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_perl_module.html
+https://nginx.org/en/docs/http/ngx_http_perl_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/rpm/SPECS/Makefile.module-rtmp b/rpm/SPECS/Makefile.module-rtmp
new file mode 100644
index 0000000..4eb68b0
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-rtmp
@@ -0,0 +1,37 @@
+MODULES+=	rtmp
+
+MODULE_SUMMARY_rtmp=	3rd-party RTMP dynamic module
+
+include $(CONTRIB)/src/nginx-rtmp-module/version 
+
+MODULE_VERSION_rtmp=	$(NGINX_RTMP_MODULE_VERSION)
+MODULE_RELEASE_rtmp=	1
+
+MODULE_VERSION_PREFIX_rtmp=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_rtmp=	nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION).tar.gz
+MODULE_PATCHES_rtmp=	$(CONTRIB)/src/nginx-rtmp-module/PR1340.patch
+
+MODULE_CONFARGS_rtmp=	--add-dynamic-module=nginx-rtmp-module-$(NGINX_RTMP_MODULE_VERSION)
+
+.deps-module-rtmp:
+	cd $(CONTRIB) && make .sum-nginx-rtmp-module
+	touch $@
+
+define MODULE_POST_rtmp
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_rtmp) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_rtmp_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/arut/nginx-rtmp-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_rtmp
diff --git a/rpm/SPECS/Makefile.module-set-misc b/rpm/SPECS/Makefile.module-set-misc
new file mode 100644
index 0000000..33d82d7
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-set-misc
@@ -0,0 +1,55 @@
+MODULES+=	set-misc
+
+MODULE_SUMMARY_set_misc=	3rd-party set-misc dynamic module
+
+include $(CONTRIB)/src/ngx_devel_kit/version
+include $(CONTRIB)/src/set-misc-nginx-module/version
+
+MODULE_VERSION_set_misc=	$(SET_MISC_NGINX_MODULE_VERSION)
+MODULE_RELEASE_set_misc=	1
+
+MODULE_VERSION_PREFIX_set_misc=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_set_misc=	ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION).tar.gz \
+				set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION).tar.gz
+
+MODULE_CONFARGS_set_misc=	--with-http_ssl_module \
+				--add-dynamic-module=ngx_devel_kit-$(NGX_DEVEL_KIT_VERSION) \
+				--add-dynamic-module=set-misc-nginx-module-$(SET_MISC_NGINX_MODULE_VERSION)
+
+.deps-module-set-misc:
+	cd $(CONTRIB) && make \
+		.sum-ngx_devel_kit \
+		.sum-set-misc-nginx-module
+	touch $@
+
+define MODULE_DEFINITIONS_set_misc
+Requires: $(NDK_DEPENDENCY_TAG)
+endef
+export MODULE_DEFINITIONS_set_misc
+
+define MODULE_PREINSTALL_set_misc
+%{__rm} -f %{bdir}/objs/ndk_http_module.so %{bdir}/objs/ndk_http_module-debug.so
+endef
+export MODULE_PREINSTALL_set_misc
+
+define MODULE_POST_set_misc
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_set_misc) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ndk_http_module.so;
+    load_module modules/ngx_http_set_misc_module.so;
+
+Note that ndk_http_module.so must be placed first.
+
+Please refer to the module documentation for further details:
+https://github.com/openresty/set-misc-nginx-module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_set_misc
diff --git a/rpm/SPECS/Makefile.module-subs-filter b/rpm/SPECS/Makefile.module-subs-filter
new file mode 100644
index 0000000..cf2d1ee
--- /dev/null
+++ b/rpm/SPECS/Makefile.module-subs-filter
@@ -0,0 +1,36 @@
+MODULES+=	subs-filter
+
+MODULE_SUMMARY_subs_filter=	3rd-party substitution dynamic module
+
+include $(CONTRIB)/src/ngx_http_substitutions_filter_module/version
+
+MODULE_VERSION_subs_filter=	$(SUBSTITUTIONS_FILTER_NGINX_MODULE_VERSION)
+MODULE_RELEASE_subs_filter=	1
+
+MODULE_VERSION_PREFIX_subs_filter=$(MODULE_TARGET_PREFIX)
+
+MODULE_SOURCES_subs_filter=	ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH).tar.xz
+
+MODULE_CONFARGS_subs_filter=	--add-dynamic-module=ngx_http_substitutions_filter_module-$(SUBSTITUTIONS_FILTER_NGINX_MODULE_GITHASH)
+
+.deps-module-subs-filter:
+	cd $(CONTRIB) && make .sum-ngx_http_substitutions_filter_module
+	touch $@
+
+define MODULE_POST_subs_filter
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_subs_filter) for $(MODULE_SUMMARY_PREFIX) has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_subs_filter_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/yaoweibin/ngx_http_substitutions_filter_module
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_subs_filter
diff --git a/rpm/SPECS/Makefile.module-xslt b/rpm/SPECS/Makefile.module-xslt
index 4403110..86a9452 100644
--- a/rpm/SPECS/Makefile.module-xslt
+++ b/rpm/SPECS/Makefile.module-xslt
@@ -9,7 +9,6 @@
 
 define MODULE_DEFINITIONS_xslt
 BuildRequires: libxslt-devel
-Requires: libxslt
 endef
 export MODULE_DEFINITIONS_xslt
 
@@ -24,7 +23,7 @@
     load_module modules/ngx_http_xslt_filter_module.so;
 
 Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_xslt_module.html
+https://nginx.org/en/docs/http/ngx_http_xslt_module.html
 
 ----------------------------------------------------------------------
 BANNER
diff --git a/rpm/SPECS/nginx-module.spec.in b/rpm/SPECS/nginx-module.spec.in
index 139d6fb..78ac7db 100644
--- a/rpm/SPECS/nginx-module.spec.in
+++ b/rpm/SPECS/nginx-module.spec.in
@@ -45,7 +45,7 @@
 URL: %%MODULE_PACKAGE_URL%%
 Group: %{_group}
 
-Source0: http://nginx.org/download/nginx-%{base_version}.tar.gz
+Source0: https://nginx.org/download/nginx-%{base_version}.tar.gz
 Source1: %%COPYRIGHT_SOURCE%%
 %%MODULE_SOURCES%%
 
diff --git a/rpm/SPECS/nginx-plus-module.spec.in b/rpm/SPECS/nginx-plus-module.spec.in
index 560cae3..0862eff 100644
--- a/rpm/SPECS/nginx-plus-module.spec.in
+++ b/rpm/SPECS/nginx-plus-module.spec.in
@@ -42,7 +42,7 @@
 URL: %%MODULE_PACKAGE_URL%%
 Group: %{_group}
 
-Source0: http://nginx.org/download/nginx-%{base_version}.tar.gz
+Source0: https://nginx.org/download/nginx-%{base_version}.tar.gz
 Source1: %%COPYRIGHT_SOURCE%%
 %%MODULE_SOURCES%%
 
diff --git a/rpm/SPECS/nginx.spec.in b/rpm/SPECS/nginx.spec.in
index 2cffcd6..dbb0311 100644
--- a/rpm/SPECS/nginx.spec.in
+++ b/rpm/SPECS/nginx.spec.in
@@ -76,10 +76,10 @@
 Version: %{base_version}
 Release: %{base_release}
 Vendor: Nginx, Inc.
-URL: http://nginx.org/
+URL: https://nginx.org/
 Group: %{_group}
 
-Source0: http://nginx.org/download/%{name}-%{version}.tar.gz
+Source0: https://nginx.org/download/%{name}-%{version}.tar.gz
 Source1: logrotate
 Source2: nginx.init.in
 Source3: nginx.sysconf
@@ -284,14 +284,14 @@
 Thanks for using nginx!
 
 Please find the official documentation for nginx here:
-* http://nginx.org/en/docs/
+* https://nginx.org/en/docs/
 
 Please subscribe to nginx-announce mailing list to get
 the most important news about nginx:
-* http://nginx.org/en/support.html
+* https://nginx.org/en/support.html
 
 Commercial subscriptions for nginx are available on:
-* http://nginx.com/products/
+* https://nginx.com/products/
 
 ----------------------------------------------------------------------
 BANNER
