acinclude.m4 revision ec7f09808149aa3a0f9895c29025766d4961a044
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_CONFIG_NICE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson rm -f $1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson cat >$1<<EOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#! /bin/sh
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# Created by configure
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonEOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson for arg in [$]0 "[$]@"; do
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson echo "\"[$]arg\" \\" >> $1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson done
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson echo '"[$]@"' >> $1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson chmod +x $1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_PASSTHRU,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson unset ac_cv_pass_$1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_VAL(ac_cv_pass_$1, [ac_cv_pass_$1=$$1])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_SUBST(VARIABLE)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl Makes VARIABLE available in generated files
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl (do not use @variable@ in Makefiles, but $(variable))
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_SUBST,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_VAR_SUBST="$APACHE_VAR_SUBST $1"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_SUBST($1)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_FAST_OUTPUT(FILENAME)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl Perform substitutions on FILENAME (Makefiles only)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_FAST_OUTPUT,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_FAST_OUTPUT_FILES="$APACHE_FAST_OUTPUT_FILES $1"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_MKDIR_P_CHECK
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl checks whether mkdir -p works
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_MKDIR_P_CHECK,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK(for working mkdir -p, ac_cv_mkdir_p,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson test -d conftestdir && rm -rf conftestdir
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson mkdir -p conftestdir/somedir >/dev/null 2>&1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test -d conftestdir/somedir; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_mkdir_p=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson else
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_mkdir_p=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson rm -rf conftestdir
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_FAST_GENERATE
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl Creates Makefiles and config_vars.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_FAST_GENERATE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(abs_srcdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(bindir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(cgidir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(logdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(exec_prefix)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(libexecdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(htdocsdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(includedir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(iconsdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(sysconfdir)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(progname)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(prefix)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(CC)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(CFLAGS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(CPPFLAGS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(LTFLAGS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(LDFLAGS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(DEFS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(LIBTOOL)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(SHELL)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_SUBST(MODULE_DIRS)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson abs_srcdir="`(cd $srcdir && pwd)`"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_MKDIR_P_CHECK
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson echo creating config_vars.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson > config_vars.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson for i in $APACHE_VAR_SUBST; do
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval echo "$i = \$$i" >> config_vars.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson done
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson $SHELL $srcdir/build/fastgen.sh $srcdir $ac_cv_mkdir_p $APACHE_FAST_OUTPUT_FILES
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_LIBTOOL_SILENT,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl ## APACHE_OUTPUT(file)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl ## adds "file" to the list of files generated by AC_OUTPUT
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl ## This macro can be used several times.
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_OUTPUT, [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_OUTPUT_FILES="$APACHE_OUTPUT_FILES $1"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl AC_ADD_LIBRARY(library)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl add a library to the link line
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(AC_ADD_LIBRARY,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_ONCE(LIBRARY, $1, [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson EXTRA_LIBS="$EXTRA_LIBS -l$1"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl AC_CHECK_DEFINE(macro, headerfile)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl checks for the macro in the header file
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(AC_CHECK_DEFINE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK(for $1 in $2, ac_cv_define_$1,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_EGREP_CPP([YES_IS_DEFINED], [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <$2>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifdef $1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonYES_IS_DEFINED
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ], ac_cv_define_$1=yes, ac_cv_define_$1=no))
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_define_$1" = "yes" ; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(HAVE_$1,,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson [Define if the macro "$1" is defined on this system])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl AC_TYPE_RLIM_T
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl If rlim_t is not defined, define it to int
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(AC_TYPE_RLIM_T, [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK([for rlim_t], ac_cv_type_rlim_t, [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_TRY_COMPILE([#include <sys/resource.h>], [rlim_t spoon;], [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_type_rlim_t=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ],[ac_cv_type_rlim_t=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_type_rlim_t" = "no" ; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(rlim_t, int,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson [Define to 'int' if <sys/resource.h> doesn't define it for us])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_ONCE(namespace, variable, code)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl execute code, if variable is not set in namespace
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_ONCE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson unique=`echo $ac_n "$2$ac_c" | tr -cd a-zA-Z0-9`
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson cmd="echo $ac_n \"\$$1$unique$ac_c\""
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test -n "$unique" && test "`eval $cmd`" = "" ; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "$1$unique=set"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson $3
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonsinclude(lib/apr/threads.m4)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonsinclude(lib/apr/hints.m4)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_INADDR_NONE
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl checks for missing INADDR_NONE macro
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_INADDR_NONE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK(whether system defines INADDR_NONE, ac_cv_inaddr_none,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_TRY_COMPILE([
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifdef HAVE_SYS_TYPES_H
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/types.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifdef HAVE_SYS_SOCKET_H
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/socket.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifdef HAVE_NETINET_IN_H
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <netinet/in.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifdef HAVE_ARPA_INET_H
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <arpa/inet.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonunsigned long foo = INADDR_NONE;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_inaddr_none=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_inaddr_none=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_inaddr_none" = "no"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(INADDR_NONE, ((unsigned int) 0xffffffff), [ ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_CHECK_SIGWAIT_ONE_ARG,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK(whether sigwait takes one argument,ac_cv_sigwait_one_arg,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_TRY_COMPILE([
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <signal.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sigset_t set;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sigwait(&set);
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_sigwait_one_arg=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_sigwait_one_arg=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_sigwait_one_arg" = "yes"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(SIGWAIT_TAKES_ONE_ARG,1,[ ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_CHECK_SHM_RW,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK([whether system defines SHM_R,SHM_W],ac_cv_shm_rw,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_TRY_COMPILE([
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/types.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/ipc.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#ifndef _OSD_POSIX
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/shm.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#else
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#define _KMEMUSER /* BS2000 needs this to enable SHM_[RW] */
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#include <sys/shm.h>
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#undef _KMEMUSER
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson#endif
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson int x = SHM_R | SHM_W;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_shm_rw=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_shm_rw=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_shm_rw" = "no"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(SHM_R, 0400, [ ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(SHM_W, 0200, [ ])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_EBCDIC,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_CACHE_CHECK([whether system uses EBCDIC],ac_cv_ebcdic,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_TRY_RUN( [
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonint main(void) {
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson return (unsigned char)'A' != (unsigned char)0xC1;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson}
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_ebcdic="yes"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_ebcdic="no"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ac_cv_ebcdic="no"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$ac_cv_ebcdic" = "yes"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_DEFINE(CHARSET_EBCDIC,, [Define if system uses EBCDIC])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_MODPATH_INIT(modpath)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_MODPATH_INIT,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson modpath_current=modules/$1
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson modpath_static=
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson modpath_shared=
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson test -d $1 || $srcdir/helpers/mkdir.sh $modpath_current
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson > $modpath_current/modules.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson MODULE_DIRS="$MODULE_DIRS $1"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_MODPATH_FINISH,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson echo "static = $modpath_static" >> $modpath_current/modules.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson echo "shared = $modpath_shared" >> $modpath_current/modules.mk
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_FAST_OUTPUT($modpath_current/Makefile)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_MODPATH_ADD(name[, shared[, objects [, ldflags[, libs]]]])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_MODPATH_ADD,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test -z "$3"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson objects="mod_$1.lo"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson else
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson objects="$3"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test -z "$module_standalone"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test -z "$2"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson libname="libapachemod_$1.la"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson BUILTIN_LIBS="$BUILTIN_LIBS $modpath_current/$libname"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson modpath_static="$modpath_static $libname"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson cat >>$modpath_current/modules.mk<<EOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson$libname: $objects
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson \$(LINK) $objects
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonEOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson else
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson apache_need_shared=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson libname="mod_$1.la"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson shobjects=`echo $objects | sed 's/\.lo/.slo/'`
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson modpath_shared="$modpath_shared $libname"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson cat >>$modpath_current/modules.mk<<EOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson$libname: $shobjects
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson \$(SHLINK) -rpath \$(libexecdir) -module -avoid-version $4 $objects $5
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonEOF
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_MODULE(name, helptext[, objects[, structname[, default[, config]]]])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_MODULE,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_MSG_CHECKING(whether to enable mod_$1)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson define([optname],[ --]ifelse($5,yes,disable,enable)[-]translit($1,_,-))dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_ARG_ENABLE(translit($1,_,-),optname() substr([ ],len(optname()))$2,,enable_$1=ifelse($5,,no,$5))
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson undefine([optname])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson AC_MSG_RESULT($enable_$1)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$enable_$1" != "no"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson case "$enable_$1" in
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson shared*)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson enable_$1=`echo $ac_n $enable_$1$ac_c|sed 's/shared,*//'`
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sharedobjs=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson shared=yes;;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson *)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson MODLIST="$MODLIST ifelse($4,,$1,$4)"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$1" = "so"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sharedobjs=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson shared="";;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson esac
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ifelse($6,,:,$6)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_MODPATH_ADD($1, $shared, $3)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_LAYOUT(configlayout, layoutname)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_LAYOUT,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson pldconf=config.pld
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson changequote({,})
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sed -e "1,/[ ]*<[lL]ayout[ ]*$2[ ]*>[ ]*/d" \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson -e '/[ ]*<\/Layout>[ ]*/,$d' \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson -e "s/^[ ]*//g" \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson -e "s/:[ ]*/=\'/g" \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson -e "s/[ ]*$/'/g" \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson $1 > $pldconf
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson changequote([,])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson layout_name=$name
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson . $pldconf
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson rm $pldconf
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson for var in prefix exec_prefix bindir sbindir libexecdir mandir \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sysconfdir datadir iconsdir htdocsdir cgidir includedir \
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson localstatedir runtimedir logfiledir proxycachedir; do
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "val=\"\$$var\""
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson case $val in
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson *+)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson val=`echo $val | sed -e 's;\+$;;'`
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "$var=\"\$val\""
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson autosuffix=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ;;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson *)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson autosuffix=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson ;;
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson esac
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$autosuffix" = "yes"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if echo $val | grep apache >/dev/null; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson addtarget=no
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson else
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson addtarget=yes
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson if test "$addtarget" = "yes"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson val="$val/apache"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson fi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "$var=\"$val\""
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson done
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_ENABLE_LAYOUT
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_ENABLE_LAYOUT,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_ARG_ENABLE(layout,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson[ --enable-layout=LAYOUT],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson LAYOUT=$enableval
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonif test -z "$LAYOUT"; then
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson htdocsdir='$(prefix)/htdocs'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson iconsdir='$(prefix)/icons'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson cgidir='$(prefix)/cgi-bin'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson logdir='$(prefix)/logs'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson sysconfdir='$(prefix)/conf'
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson layout_name=Apache
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonelse
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson APACHE_LAYOUT($srcdir/../config.layout, $LAYOUT)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssonfi
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_MSG_CHECKING(for chosen layout)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_MSG_RESULT($layout_name)
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_ENABLE_SHARED
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_ENABLE_SHARED,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_ARG_ENABLE(shared,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson[ --enable-shared=MODULE-LIST],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson for i in $enableval; do
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "enable_$i=shared"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson done
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl APACHE_ENABLE_MODULES
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafssondnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_DEFUN(APACHE_ENABLE_MODULES,[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas GustafssonAC_ARG_ENABLE(modules,
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson[ --enable-modules=MODULE-LIST],[
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson for i in $enableval; do
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson eval "enable_$i=yes"
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson done
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson])dnl
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson