From: Justin Erenkrantz
Date: Fri, 4 Feb 2005 17:14:12 +0000 (+0000)
Subject: --with-module can now take more than one module to be statically
X-Git-Tag: 2.0.53~21
X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb101974cf481ff61b43a9b42ea675051ddde777;p=thirdparty%2Fapache%2Fhttpd.git
--with-module can now take more than one module to be statically
linked: --with-module=:,:,...
If the -subdirectory doesn't exist it will be created and
populated with a standard Makefile.in.
MFC: 124600
Reviewed by: erikabele, jerenkrantz, fielding
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x@151372 13f79535-47bb-0310-9956-ffa450edef68
---
diff --git a/CHANGES b/CHANGES
index 8f44dab63ae..d9fb8bed6bd 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,10 @@
Changes with Apache 2.0.53
+ *) --with-module can now take more than one module to be statically
+ linked: --with-module=:,:,...
+ If the -subdirectory doesn't exist it will be created and
+ populated with a standard Makefile.in. [Erik Abele]
+
*) Fix the RPM spec file so that an RPM build now works. An RPM
build now requires system installations of APR and APR-util.
Remove some arbitrary moving around of binaries - the RPM now
diff --git a/docs/manual/programs/configure.xml b/docs/manual/programs/configure.xml
index 2f821144731..347f727d8e9 100644
--- a/docs/manual/programs/configure.xml
+++ b/docs/manual/programs/configure.xml
@@ -614,16 +614,17 @@
modules use the following options:
- --with-module=module-type:module-file
-
- Add a third-party module to the list of statically linked
+
--with-module=module-type:module-file[,
+ module-type:module-file]
+ Add one or more third-party modules to the list of statically linked
modules. The module source file module-file
will be searched in the modules/module-type
- subdirectory of your Apache HTTP server source tree so it has to be
- placed there before. If it is not found here
- configure
is considering module-file to be
+ subdirectory of your Apache HTTP server source tree. If it is not found
+ there configure
is considering module-file to be
an absolute file path and tries to copy the source file into the
- module-type subdirectory.
+ module-type subdirectory. If the subdirectory doesn't
+ exist it will be created and populated with a standard
+ Makefile.in
.
This option is useful to add small external modules consisting of
one source file. For more complex modules you should read the
vendor's documentation.
diff --git a/modules/config5.m4 b/modules/config5.m4
index eec9ec4f77e..5e38c951ae6 100644
--- a/modules/config5.m4
+++ b/modules/config5.m4
@@ -3,18 +3,24 @@ AC_ARG_WITH(module,
APACHE_HELP_STRING(--with-module=module-type:module-file,
Enable module-file in the modules/ directory.),
[
- modtype=`echo $withval | sed -e's/\(.*\):.*/\1/'`
- pkg=`echo $withval | sed -e's/.*:\(.*\)/\1/'`
+ as_save_IFS="$IFS"; IFS=","
+ for mod in $withval
+ do
+ modtype=`echo $mod | sed -e's/\(.*\):.*/\1/'`
+ pkg=`echo $mod | sed -e's/.*:\(.*\)/\1/'`
modfilec=`echo $pkg | sed -e 's;^.*/;;'`
modfileo=`echo $pkg | sed -e 's;^.*/;;' -e 's;\.c$;.o;'`
-
- if test "x$withval" != "xmodules/$modtype/$modfilec"; then
- cp $pkg modules/$modtype/$modfilec
+ modpath_current="modules/$modtype"
+ if test "x$mod" != "x$modpath_current/$modfilec"; then
+ if test ! -d "$modpath_current"; then
+ mkdir $modpath_current
+ echo 'include $(top_srcdir)/build/special.mk' > $modpath_current/Makefile.in
+ fi
+ cp $pkg $modpath_current/$modfilec
fi
- module=`echo $pkg | sed -e 's;.*/mod_\(.*\).c;\1;'`
+ module=`echo $pkg | sed -e 's;\(.*/\)*mod_\(.*\).c;\2;'`
objects="mod_$module.lo"
libname="mod_$module.la"
- modpath_current="modules/$modtype"
BUILTIN_LIBS="$BUILTIN_LIBS $modpath_current/$libname"
if test ! -s "$modpath_current/modules.mk"; then
cat >>$modpath_current/modules.mk<