[nginx] Configure: honor dependencies of dynamic modules.

Maxim Dounin mdounin at mdounin.ru
Mon Nov 21 13:50:37 UTC 2016


details:   http://hg.nginx.org/nginx/rev/2c7a2d75938a
branches:  
changeset: 6804:2c7a2d75938a
user:      Maxim Dounin <mdounin at mdounin.ru>
date:      Mon Nov 21 16:49:19 2016 +0300
description:
Configure: honor dependencies of dynamic modules.

Dependencies of dynamic modules are added to NGX_ADDON_DEPS (and
it is now used for dynamic modules) to be in line with what happens
in case of static compilation.

To avoid duplication, MAIL_DEPS and STREAM_DEPS are no longer passed
to auto/module when these modules are compiled as dynamic ones.  Mail
and stream dependencies are handled explicitly via corresponding
variables.

diffstat:

 auto/make    |  17 +++--------------
 auto/module  |   4 ++++
 auto/modules |   4 ++--
 3 files changed, 9 insertions(+), 16 deletions(-)

diffs (83 lines):

diff --git a/auto/make b/auto/make
--- a/auto/make
+++ b/auto/make
@@ -156,7 +156,7 @@ fi
 ngx_all_srcs="$ngx_all_srcs $MISC_SRCS"
 
 
-if test -n "$NGX_ADDON_SRCS"; then
+if test -n "$NGX_ADDON_SRCS$DYNAMIC_MODULES"; then
 
 cat << END                                                >> $NGX_MAKEFILE
 
@@ -499,17 +499,6 @@ else
     ngx_perl_cc="$ngx_perl_cc \$(ALL_INCS)"
 fi
 
-ngx_obj_deps="\$(CORE_DEPS)"
-if [ $HTTP != NO ]; then
-    ngx_obj_deps="$ngx_obj_deps \$(HTTP_DEPS)"
-fi
-if [ $MAIL != NO ]; then
-    ngx_obj_deps="$ngx_obj_deps \$(MAIL_DEPS)"
-fi
-if [ $STREAM != NO ]; then
-    ngx_obj_deps="$ngx_obj_deps \$(STREAM_DEPS)"
-fi
-
 for ngx_module in $DYNAMIC_MODULES
 do
     eval ngx_module_srcs="\$${ngx_module}_SRCS"
@@ -665,7 +654,7 @@ END
 
             cat << END                                        >> $NGX_MAKEFILE
 
-$ngx_obj:	$ngx_obj_deps$ngx_cont$ngx_src
+$ngx_obj:	\$(ADDON_DEPS)$ngx_cont$ngx_src
 	$ngx_perl_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
 
 END
@@ -673,7 +662,7 @@ END
 
             cat << END                                        >> $NGX_MAKEFILE
 
-$ngx_obj:	$ngx_obj_deps$ngx_cont$ngx_src
+$ngx_obj:	\$(ADDON_DEPS)$ngx_cont$ngx_src
 	$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
 
 END
diff --git a/auto/module b/auto/module
--- a/auto/module
+++ b/auto/module
@@ -35,6 +35,10 @@ if [ "$ngx_module_link" = DYNAMIC ]; the
         CORE_INCS="$CORE_INCS $ngx_module_incs"
     fi
 
+    if test -n "$ngx_module_deps"; then
+        NGX_ADDON_DEPS="$NGX_ADDON_DEPS $ngx_module_deps"
+    fi
+
     libs=
     for lib in $ngx_module_libs
     do
diff --git a/auto/modules b/auto/modules
--- a/auto/modules
+++ b/auto/modules
@@ -1252,7 +1252,7 @@ if [ $MAIL != NO ]; then
     elif [ $MAIL = DYNAMIC ]; then
         ngx_module_name=$MAIL_MODULES
         ngx_module_incs=
-        ngx_module_deps=$MAIL_DEPS
+        ngx_module_deps=
         ngx_module_srcs=$MAIL_SRCS
         ngx_module_libs=
         ngx_module_link=DYNAMIC
@@ -1272,7 +1272,7 @@ if [ $STREAM != NO ]; then
     elif [ $STREAM = DYNAMIC ]; then
         ngx_module_name=$STREAM_MODULES
         ngx_module_incs=
-        ngx_module_deps=$STREAM_DEPS
+        ngx_module_deps=
         ngx_module_srcs=$STREAM_SRCS
         ngx_module_libs=
         ngx_module_link=DYNAMIC



More information about the nginx-devel mailing list