Use different variables to track normal
authorRainer Jung <rjung@apache.org>
Fri, 12 Feb 2016 17:46:38 +0000 (17:46 +0000)
committerRainer Jung <rjung@apache.org>
Fri, 12 Feb 2016 17:46:38 +0000 (17:46 +0000)
modules and MPMs during build.

Normal modules and MPMs follow different
rules in the config, e.g. we are only
allowed to have one active LoadModule
for an MPM in the config.

As a side effect, LoadModule for MPMs
will now come before LoadModule for
the normal modules.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1730079 13f79535-47bb-0310-9956-ffa450edef68

Makefile.in
acinclude.m4
build/config_vars.sh.in

index 755d0b2969182b1ee8ad205a0dd468ff890c8935..b166700b6f005db335f53713dd6c9d934f1705a0 100644 (file)
@@ -45,7 +45,7 @@ install-conf:
                if [ -f $$i ] ; then \
                ( \
                        n_lm=`awk 'BEGIN {n=0} /@@LoadModule@@/ {n+=1} END {print n}' < $$i`; \
-                       if test $$n_lm -eq 0 -o "x$(DSO_MODULES)" = "x"; then \
+                       if test $$n_lm -eq 0 -o "x$(MPM_MODULE)$(DSO_MODULES)" = "x"; then \
                                sed -e 's#@@ServerRoot@@#$(prefix)#g' \
                                        -e 's#@@Port@@#$(PORT)#g' \
                                        -e 's#@@SSLPort@@#$(SSLPORT)#g' \
@@ -68,29 +68,38 @@ install-conf:
                                else \
                                        have_cgid="0"; \
                                fi; \
+                               for j in $(MPM_MODULES) "^EOL^"; do \
+                                       if test $$j != "^EOL^"; then \
+                                               if echo ",$(ENABLED_MPM_MODULE),"|$(EGREP) ",$$j," > /dev/null ; then \
+                                                       loading_disabled=""; \
+                                               else \
+                                                       loading_disabled="#"; \
+                                               fi; \
+                                               echo "$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
+                                       fi; \
+                               done; \
                                for j in $(DSO_MODULES) "^EOL^"; do \
                                        if test $$j != "^EOL^"; then \
                                                if echo ",$(ENABLED_DSO_MODULES),"|$(EGREP) ",$$j," > /dev/null ; then \
                                                        loading_disabled=""; \
                                                else \
                                                        loading_disabled="#"; \
-                                                       mpm=`echo $$j|sed s/_.*//`; \
-                                                       if test "$(LOAD_ALL_MODULES)" = "yes" -a "$$mpm" != "mpm"; then \
+                                                       if test "$(LOAD_ALL_MODULES)" = "yes"; then \
                                                                loading_disabled=""; \
                                                        fi; \
                                                fi; \
-                                                       if test $$j = "cgid" -a "$$have_cgi" = "1"; then \
-                                                               echo "<IfModule !mpm_prefork_module>"; \
-                                                               echo "  $${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
-                                                               echo "</IfModule>"; \
-                                                       elif test $$j = "cgi" -a "$$have_cgid" = "1"; then \
-                                                               echo "<IfModule mpm_prefork_module>"; \
-                                                               echo "  $${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
-                                                               echo "</IfModule>"; \
-                                                       else \
-                                                               echo "$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
-                                                       fi; \
+                                               if test $$j = "cgid" -a "$$have_cgi" = "1"; then \
+                                                       echo "<IfModule !mpm_prefork_module>"; \
+                                                       echo "  $${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
+                                                       echo "</IfModule>"; \
+                                               elif test $$j = "cgi" -a "$$have_cgid" = "1"; then \
+                                                       echo "<IfModule mpm_prefork_module>"; \
+                                                       echo "  $${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
+                                                       echo "</IfModule>"; \
+                                               else \
+                                                       echo "$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
                                                fi; \
+                                       fi; \
                                done; \
                                sed -e '1,/@@LoadModule@@/d' \
                                        -e '/@@LoadModule@@/d' \
index 054a83d9d1a171381830201a719c0e788f39a498..69f28efa69593bf91f67c3caada1c250a9200b25 100644 (file)
@@ -93,6 +93,8 @@ AC_DEFUN([APACHE_GEN_CONFIG_VARS],[
   APACHE_SUBST(MK_IMPLIB)
   APACHE_SUBST(MKDEP)
   APACHE_SUBST(INSTALL_PROG_FLAGS)
+  APACHE_SUBST(MPM_MODULES)
+  APACHE_SUBST(ENABLED_MPM_MODULE)
   APACHE_SUBST(DSO_MODULES)
   APACHE_SUBST(ENABLED_DSO_MODULES)
   APACHE_SUBST(LOAD_ALL_MODULES)
@@ -295,10 +297,10 @@ DISTCLEAN_TARGETS = modules.mk
 static =
 shared = $libname
 EOF
-            DSO_MODULES="$DSO_MODULES mpm_$1"
+            MPM_MODULES="$MPM_MODULES mpm_$1"
             # add default MPM to LoadModule list
             if test $1 = $default_mpm; then
-                ENABLED_DSO_MODULES="${ENABLED_DSO_MODULES},mpm_$1"
+                ENABLED_MPM_MODULE="mpm_$1"
             fi
         fi
         $4
index 593ff6e18e7dfd7abd3f6ca333a439d1c6a67fc5..496c2d0dba5667e66be9d7d286759e71920cfd4e 100644 (file)
@@ -47,6 +47,8 @@ exec sed "
 /MPM_LIB/d
 /APACHECTL_ULIMIT/d
 /[a-z]*_LTFLAGS/d
+/^MPM_MODULES/d
+/^ENABLED_MPM_MODULE/d
 /^DSO_MODULES/d
 /^ENABLED_DSO_MODULES/d
 /^LOAD_ALL_MODULES/d