Some time this week, I'm going to propose this patch for backport, since I rely on it for the `make check` feature and I want to get that into 2.4.x.

Rainer, if you (or anyone else) have reservations, please let me know.

--Jacob

On 02/12/2016 09:46 AM, rj...@apache.org wrote:
Author: rjung
Date: Fri Feb 12 17:46:38 2016
New Revision: 1730079

URL: http://svn.apache.org/viewvc?rev=1730079&view=rev
Log:
Use different variables to track normal
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.

Modified:
     httpd/httpd/trunk/Makefile.in
     httpd/httpd/trunk/acinclude.m4
     httpd/httpd/trunk/build/config_vars.sh.in

Modified: httpd/httpd/trunk/Makefile.in
URL: 
http://svn.apache.org/viewvc/httpd/httpd/trunk/Makefile.in?rev=1730079&r1=1730078&r2=1730079&view=diff
==============================================================================
--- httpd/httpd/trunk/Makefile.in (original)
+++ httpd/httpd/trunk/Makefile.in Fri Feb 12 17:46:38 2016
@@ -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' \

Modified: httpd/httpd/trunk/acinclude.m4
URL: 
http://svn.apache.org/viewvc/httpd/httpd/trunk/acinclude.m4?rev=1730079&r1=1730078&r2=1730079&view=diff
==============================================================================
--- httpd/httpd/trunk/acinclude.m4 (original)
+++ httpd/httpd/trunk/acinclude.m4 Fri Feb 12 17:46:38 2016
@@ -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

Modified: httpd/httpd/trunk/build/config_vars.sh.in
URL: 
http://svn.apache.org/viewvc/httpd/httpd/trunk/build/config_vars.sh.in?rev=1730079&r1=1730078&r2=1730079&view=diff
==============================================================================
--- httpd/httpd/trunk/build/config_vars.sh.in (original)
+++ httpd/httpd/trunk/build/config_vars.sh.in Fri Feb 12 17:46:38 2016
@@ -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




Reply via email to