2 AC_DEFUN(APACHE_CONFIG_NICE,[
11 for arg in [$]0 "[$]@"; do
12 echo "\"[$]arg\" \\" >> $1
18 AC_DEFUN(APACHE_PASSTHRU,[
20 AC_CACHE_VAL(ac_cv_pass_$1, [ac_cv_pass_$1=$$1])
23 dnl APACHE_SUBST(VARIABLE)
24 dnl Makes VARIABLE available in generated files
25 dnl (do not use @variable@ in Makefiles, but $(variable))
26 AC_DEFUN(APACHE_SUBST,[
27 APACHE_VAR_SUBST="$APACHE_VAR_SUBST $1"
31 dnl APACHE_FAST_OUTPUT(FILENAME)
32 dnl Perform substitutions on FILENAME (Makefiles only)
33 AC_DEFUN(APACHE_FAST_OUTPUT,[
34 APACHE_FAST_OUTPUT_FILES="$APACHE_FAST_OUTPUT_FILES $1"
37 dnl APACHE_MKDIR_P_CHECK
38 dnl checks whether mkdir -p works
39 AC_DEFUN(APACHE_MKDIR_P_CHECK,[
40 AC_CACHE_CHECK(for working mkdir -p, ac_cv_mkdir_p,[
41 test -d conftestdir && rm -rf conftestdir
42 mkdir -p conftestdir/somedir >/dev/null 2>&1
43 if test -d conftestdir/somedir; then
52 dnl APACHE_GEN_CONFIG_VARS
53 dnl Creates config_vars.mk
54 AC_DEFUN(APACHE_GEN_CONFIG_VARS,[
55 APACHE_SUBST(abs_srcdir)
59 APACHE_SUBST(exec_prefix)
61 APACHE_SUBST(localstatedir)
62 APACHE_SUBST(libexecdir)
63 APACHE_SUBST(htdocsdir)
64 APACHE_SUBST(includedir)
65 APACHE_SUBST(iconsdir)
66 APACHE_SUBST(sysconfdir)
67 APACHE_SUBST(progname)
72 APACHE_SUBST(CPPFLAGS)
74 APACHE_SUBST(CXXFLAGS)
80 APACHE_SUBST(MODULE_DIRS)
83 abs_srcdir="`(cd $srcdir && pwd)`"
86 echo creating config_vars.mk
88 for i in $APACHE_VAR_SUBST; do
89 eval echo "$i = \$$i" >> config_vars.mk
93 dnl APACHE_GEN_MAKEFILES
95 AC_DEFUN(APACHE_GEN_MAKEFILES,[
96 $SHELL $srcdir/build/fastgen.sh $srcdir $ac_cv_mkdir_p $BSD_MAKEFILE $APACHE_FAST_OUTPUT_FILES
99 AC_DEFUN(APACHE_LIBTOOL_SILENT,[
100 LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent'
104 dnl ## APACHE_OUTPUT(file)
105 dnl ## adds "file" to the list of files generated by AC_OUTPUT
106 dnl ## This macro can be used several times.
107 AC_DEFUN(APACHE_OUTPUT, [
108 APACHE_OUTPUT_FILES="$APACHE_OUTPUT_FILES $1"
112 dnl AC_ADD_LIBRARY(library)
114 dnl add a library to the link line
116 AC_DEFUN(AC_ADD_LIBRARY,[
117 APACHE_ONCE(LIBRARY, $1, [
118 EXTRA_LIBS="$EXTRA_LIBS -l$1"
123 dnl AC_CHECK_DEFINE(macro, headerfile)
125 dnl checks for the macro in the header file
127 AC_DEFUN(AC_CHECK_DEFINE,[
128 AC_CACHE_CHECK(for $1 in $2, ac_cv_define_$1,
129 AC_EGREP_CPP([YES_IS_DEFINED], [
134 ], ac_cv_define_$1=yes, ac_cv_define_$1=no))
135 if test "$ac_cv_define_$1" = "yes" ; then
137 [Define if the macro "$1" is defined on this system])
144 dnl If rlim_t is not defined, define it to int
146 AC_DEFUN(AC_TYPE_RLIM_T, [
147 AC_CACHE_CHECK([for rlim_t], ac_cv_type_rlim_t, [
149 #include <sys/types.h>
150 #include <sys/time.h>
151 #include <sys/resource.h>
152 ], [rlim_t spoon;], [
153 ac_cv_type_rlim_t=yes
154 ],[ac_cv_type_rlim_t=no
157 if test "$ac_cv_type_rlim_t" = "no" ; then
158 AC_DEFINE(rlim_t, int,
159 [Define to 'int' if <sys/resource.h> doesn't define it for us])
164 dnl APACHE_ONCE(namespace, variable, code)
166 dnl execute code, if variable is not set in namespace
168 AC_DEFUN(APACHE_ONCE,[
169 unique=`echo $ac_n "$2$ac_c" | tr -cd a-zA-Z0-9`
170 cmd="echo $ac_n \"\$$1$unique$ac_c\""
171 if test -n "$unique" && test "`eval $cmd`" = "" ; then
177 sinclude(srclib/apr/apr_common.m4)
178 sinclude(srclib/apr/hints.m4)
181 AC_DEFUN(APACHE_CHECK_SIGWAIT_ONE_ARG,[
182 AC_CACHE_CHECK(whether sigwait takes one argument,ac_cv_sigwait_one_arg,[
185 /* When using the unproven-pthreads package, we need to pull in this
186 * header to get a prototype for sigwait(). Else things will fail later
187 * on. XXX Should probably be fixed in the unproven-pthreads package.
197 ac_cv_sigwait_one_arg=yes
199 ac_cv_sigwait_one_arg=no
201 if test "$ac_cv_sigwait_one_arg" = "yes"; then
202 AC_DEFINE(SIGWAIT_TAKES_ONE_ARG,1,[ ])
206 dnl APACHE_MODPATH_INIT(modpath)
207 AC_DEFUN(APACHE_MODPATH_INIT,[
209 modpath_current=modules/$1
212 test -d $1 || $srcdir/build/mkdir.sh $modpath_current
213 > $modpath_current/modules.mk
216 AC_DEFUN(APACHE_MODPATH_FINISH,[
217 echo "DISTCLEAN_TARGETS = modules.mk" >> $modpath_current/modules.mk
218 echo "static = $modpath_static" >> $modpath_current/modules.mk
219 echo "shared = $modpath_shared" >> $modpath_current/modules.mk
220 if test ! -z "$modpath_static" -o ! -z "$modpath_shared"; then
221 MODULE_DIRS="$MODULE_DIRS $current_dir"
223 APACHE_FAST_OUTPUT($modpath_current/Makefile)
226 dnl APACHE_MODPATH_ADD(name[, shared[, objects [, ldflags[, libs]]]])
227 AC_DEFUN(APACHE_MODPATH_ADD,[
228 if test -z "$3"; then
234 if test -z "$module_standalone"; then
235 if test -z "$2"; then
237 BUILTIN_LIBS="$BUILTIN_LIBS $modpath_current/$libname"
238 modpath_static="$modpath_static $libname"
239 cat >>$modpath_current/modules.mk<<EOF
241 \$(MOD_LINK) $objects
244 apache_need_shared=yes
246 shobjects=`echo $objects | sed 's/\.lo/.slo/'`
247 modpath_shared="$modpath_shared $libname"
248 cat >>$modpath_current/modules.mk<<EOF
250 \$(SH_LINK) -rpath \$(libexecdir) -module -avoid-version $4 $objects $5
256 dnl APACHE_MODULE(name, helptext[, objects[, structname[, default[, config]]]])
257 AC_DEFUN(APACHE_MODULE,[
258 AC_MSG_CHECKING(whether to enable mod_$1)
259 define([optname],[ --]ifelse($5,yes,disable,enable)[-]translit($1,_,-))dnl
260 AC_ARG_ENABLE(translit($1,_,-),optname() substr([ ],len(optname()))$2,,enable_$1=ifelse($5,,no,$5))
261 undefine([optname])dnl
262 AC_MSG_RESULT($enable_$1)
263 if test "$enable_$1" != "no"; then
266 enable_$1=`echo $ac_n $enable_$1$ac_c|sed 's/shared,*//'`
270 MODLIST="$MODLIST ifelse($4,,$1,$4)"
271 if test "$1" = "so"; then
277 APACHE_MODPATH_ADD($1, $shared, $3)
281 dnl APACHE_LAYOUT(configlayout, layoutname)
282 AC_DEFUN(APACHE_LAYOUT,[
283 if test ! -f $srcdir/config.layout; then
284 echo "** Error: Layout file $srcdir/../config.layout not found"
285 echo "** Error: Cannot use undefined layout '$LAYOUT'"
290 sed -e "1,/[ ]*<[lL]ayout[ ]*$2[ ]*>[ ]*/d" \
291 -e '/[ ]*<\/Layout>[ ]*/,$d' \
299 for var in prefix exec_prefix bindir sbindir libexecdir mandir \
300 sysconfdir datadir iconsdir htdocsdir cgidir includedir \
301 localstatedir runtimedir logdir proxycachedir; do
302 eval "val=\"\$$var\""
305 val=`echo $val | sed -e 's;\+$;;'`
306 eval "$var=\"\$val\""
313 val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
314 val=`echo $val | sed -e 's:$\([a-z_]*\):$(\1):g'`
315 if test "$autosuffix" = "yes"; then
316 if echo $val | grep apache >/dev/null; then
321 if test "$addtarget" = "yes"; then
330 dnl APACHE_ENABLE_LAYOUT
332 AC_DEFUN(APACHE_ENABLE_LAYOUT,[
333 AC_ARG_ENABLE(layout,
334 [ --enable-layout=LAYOUT],[
338 if test -z "$LAYOUT"; then
339 htdocsdir='$(prefix)/htdocs'
340 iconsdir='$(prefix)/icons'
341 cgidir='$(prefix)/cgi-bin'
342 logdir='$(prefix)/logs'
343 sysconfdir='${prefix}/conf'
344 libexecdir='${prefix}/modules'
347 APACHE_LAYOUT($srcdir/../config.layout, $LAYOUT)
350 AC_MSG_CHECKING(for chosen layout)
351 AC_MSG_RESULT($layout_name)
354 dnl APACHE_ENABLE_SHARED
356 AC_DEFUN(APACHE_ENABLE_SHARED,[
357 AC_ARG_ENABLE(mods-shared,
358 [ --enable-mods-shared=MODULE-LIST],[
359 for i in $enableval; do
360 eval "enable_$i=shared"
365 dnl APACHE_ENABLE_MODULES
367 AC_DEFUN(APACHE_ENABLE_MODULES,[
368 AC_ARG_ENABLE(modules,
369 [ --enable-modules=MODULE-LIST],[
370 for i in $enableval; do
376 AC_DEFUN(APACHE_REQUIRE_CXX,[
377 if test -z "$apache_cxx_done"; then