summaryrefslogtreecommitdiff
path: root/modules/config5.m4
diff options
context:
space:
mode:
Diffstat (limited to 'modules/config5.m4')
-rw-r--r--modules/config5.m457
1 files changed, 57 insertions, 0 deletions
diff --git a/modules/config5.m4 b/modules/config5.m4
new file mode 100644
index 00000000..b8a5868b
--- /dev/null
+++ b/modules/config5.m4
@@ -0,0 +1,57 @@
+AC_MSG_CHECKING(for extra modules)
+AC_ARG_WITH(module,
+ APACHE_HELP_STRING(--with-module=module-type:module-file,
+ Enable module-file in the modules/<module-type> directory.),
+ [
+ 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;'`
+ 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;\2;'`
+ objects="mod_$module.lo"
+ # The filename of a convenience library must have a "lib" prefix:
+ libname="libmod_$module.la"
+ BUILTIN_LIBS="$BUILTIN_LIBS $modpath_current/$libname"
+ if test ! -s "$modpath_current/modules.mk"; then
+ cat >>$modpath_current/modules.mk<<EOF
+$libname: $objects
+ \$(MOD_LINK) $objects
+DISTCLEAN_TARGETS = modules.mk
+static = $libname
+shared =
+EOF
+ else
+ cat >>$modpath_current/modules.mk.tmp<<EOF
+$libname: $objects
+ \$(MOD_LINK) $objects
+EOF
+ cat $modpath_current/modules.mk >> $modpath_current/modules.mk.tmp
+ rm $modpath_current/modules.mk
+ mv $modpath_current/modules.mk.tmp $modpath_current/modules.mk
+ sed -e "s/\(static =.*\)/\1 $libname/" $modpath_current/modules.mk > $modpath_current/modules.mk.tmp
+ rm $modpath_current/modules.mk
+ mv $modpath_current/modules.mk.tmp $modpath_current/modules.mk
+ fi
+ MODLIST="$MODLIST $module"
+ EXTRA_MODLIST="$EXTRA_MODLIST $modtype:$modfilec"
+ MODULE_DIRS="$MODULE_DIRS $modtype"
+ APACHE_FAST_OUTPUT($modpath_current/Makefile)
+ done
+ if test ! -z "$EXTRA_MODLIST"; then
+ AC_MSG_RESULT(added:$EXTRA_MODLIST)
+ fi
+ IFS="$as_save_IFS"
+ ],
+ [ AC_MSG_RESULT(none)
+ ])