e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzdnl APACHE_HELP_STRING(LHS, RHS)
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzdnl Autoconf 2.50 can not handle substr correctly. It does have
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzdnl AC_HELP_STRING, so let's try to call it if we can.
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzdnl Note: this define must be on one line so that it can be properly returned
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzdnl as the help string.
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantzAC_DEFUN(APACHE_HELP_STRING,[ifelse(regexp(AC_ACVERSION, 2\.1), -1, AC_HELP_STRING($1,$2),[ ]$1 substr([ ],len($1))$2)])dnl
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl APACHE_SUBST(VARIABLE)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl Makes VARIABLE available in generated files
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl (do not use @variable@ in Makefiles, but $(variable))
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_SUBST,[
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_VAR_SUBST="$APACHE_VAR_SUBST $1"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha AC_SUBST($1)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl APACHE_FAST_OUTPUT(FILENAME)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl Perform substitutions on FILENAME (Makefiles only)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_FAST_OUTPUT,[
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_FAST_OUTPUT_FILES="$APACHE_FAST_OUTPUT_FILES $1"
3a47c2ef905c3b6483279637fb8054ca67c5b6ddsaschadnl APACHE_GEN_CONFIG_VARS
3a47c2ef905c3b6483279637fb8054ca67c5b6ddsaschaAC_DEFUN(APACHE_GEN_CONFIG_VARS,[
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(abs_srcdir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(bindir)
e50587e6b2ff25bdcbe29410be5bf8f4792016eegregames APACHE_SUBST(sbindir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(cgidir)
0d9c389e9c63d02edb068917d49af2fa8012af91marc APACHE_SUBST(logfiledir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(exec_prefix)
dadf206a4cf1eccf5c13b64bd9678610dd763868rbb APACHE_SUBST(datadir)
dadf206a4cf1eccf5c13b64bd9678610dd763868rbb APACHE_SUBST(localstatedir)
a773226ea345018b49d45cf2e076ff2452eead5arbb APACHE_SUBST(mandir)
f9e54e16ac4952a85bb00b8043c1d1e0f495eefbgregames APACHE_SUBST(libdir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(libexecdir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(htdocsdir)
ec9b5c4854a4055d00f5459dbbd879d517f1531dmartin APACHE_SUBST(manualdir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(includedir)
5181b311fbd45b65a34b3fddb3ace5fab85f36e4wrowe APACHE_SUBST(errordir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(iconsdir)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(sysconfdir)
4cbb3bcf66a6788196bcc7244e4e36705acfbb57rbb APACHE_SUBST(installbuilddir)
a91a466a0d812a522d492c3c182163f73591ca20aaron APACHE_SUBST(runtimedir)
a91a466a0d812a522d492c3c182163f73591ca20aaron APACHE_SUBST(proxycachedir)
975e51c02f55eaa15e6c5c65ffd89f6c0431e4f5jkaluza APACHE_SUBST(davlockdb)
5f69f46ccdf50afd8f0a23f134746e6066185e89rbb APACHE_SUBST(other_targets)
12b0070d002520b81a273ae892b9ea08e810b123rbb APACHE_SUBST(progname)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(prefix)
886cd69ebf69e990dbc365be87ff8ea7cd681904rbb APACHE_SUBST(AWK)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(CC)
305a68a1a5db3cc264077d89b3caa6f923257150fielding APACHE_SUBST(CPP)
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha APACHE_SUBST(CXX)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(CPPFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(CFLAGS)
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha APACHE_SUBST(CXXFLAGS)
a7d224ab99ed0a9b2b7fee9db6ac231fb7e02b0bfuankg APACHE_SUBST(CC_FOR_BUILD)
a7d224ab99ed0a9b2b7fee9db6ac231fb7e02b0bfuankg APACHE_SUBST(CFLAGS_FOR_BUILD)
f07a80771bc5d30b1e0cfcb7256c1a302da77675rbb APACHE_SUBST(LTFLAGS)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(LDFLAGS)
80e9324586de2fa55e2da4df409e6a85885ea659fielding APACHE_SUBST(LT_LDFLAGS)
9022fa73d4ac101553e7c36a1457ead52a73333borlikowski APACHE_SUBST(SH_LDFLAGS)
9022fa73d4ac101553e7c36a1457ead52a73333borlikowski APACHE_SUBST(HTTPD_LDFLAGS)
38d37e90b45f2a735e7aecf702c76159e0b9f58ftrawick APACHE_SUBST(UTIL_LDFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(LIBS)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(DEFS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(INCLUDES)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(NOTEST_CPPFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(NOTEST_CFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(NOTEST_CXXFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(NOTEST_LDFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(NOTEST_LIBS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_CPPFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_CFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_CXXFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_LDFLAGS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_LIBS)
105475009f541187ba7a14a367547d9404c578befielding APACHE_SUBST(EXTRA_INCLUDES)
67a658b0de7252b685412e0d424a0a18ab484f9ftrawick APACHE_SUBST(INTERNAL_CPPFLAGS)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(LIBTOOL)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(SHELL)
9db19053d8158d96abd6934678c012e0d59d59edjerenkrantz APACHE_SUBST(RSYNC)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_SUBST(MODULE_DIRS)
cb5d3f2f217d457dada4883addb1dc9f3f17bb85fielding APACHE_SUBST(MODULE_CLEANDIRS)
6a1c919219ae7e3382fb22f1c4cf89f11b4becffcoar APACHE_SUBST(PORT)
24066abc54d26593eaad3ebbbaad2fd6b6693700fuankg APACHE_SUBST(SSLPORT)
ce8d7a0627c0f246376cccd980463f8250a6a97ebjh APACHE_SUBST(CORE_IMPLIB_FILE)
ce8d7a0627c0f246376cccd980463f8250a6a97ebjh APACHE_SUBST(CORE_IMPLIB)
20bca6c9617ad7d0268203c21039424e99acdd91bjh APACHE_SUBST(SH_LIBS)
ce8d7a0627c0f246376cccd980463f8250a6a97ebjh APACHE_SUBST(SH_LIBTOOL)
ce8d7a0627c0f246376cccd980463f8250a6a97ebjh APACHE_SUBST(MK_IMPLIB)
11c8f1b409a02814693ec75cbe7f69f3ef994fbajerenkrantz APACHE_SUBST(MKDEP)
cdb58be93a9cbeaba1ebc759b48aa8ed519675a9bjh APACHE_SUBST(INSTALL_PROG_FLAGS)
7dfed2b71c9c4223996cbd7c5c0c85c7c8fef2a4rbb APACHE_SUBST(DSO_MODULES)
0a2212da6843659e65c378c5201e6612be625731sf APACHE_SUBST(ENABLED_DSO_MODULES)
fb333f30ae01a1f14b2afaa8a92c99192abf883erjung APACHE_SUBST(LOAD_ALL_MODULES)
5d5073be0470140d32914de8e74d869ee4145bffjerenkrantz APACHE_SUBST(APR_BINDIR)
6552de06c3d34e6ecfad4c93a6604531b52caf63wsanchez APACHE_SUBST(APR_INCLUDEDIR)
4b09621ec91a53c7b48114c37a84f0018cadcb34jerenkrantz APACHE_SUBST(APR_VERSION)
e9ab76f3d59c1be02501c291554715e8155c7c81jorton APACHE_SUBST(APR_CONFIG)
5d5073be0470140d32914de8e74d869ee4145bffjerenkrantz APACHE_SUBST(APU_BINDIR)
6552de06c3d34e6ecfad4c93a6604531b52caf63wsanchez APACHE_SUBST(APU_INCLUDEDIR)
4b09621ec91a53c7b48114c37a84f0018cadcb34jerenkrantz APACHE_SUBST(APU_VERSION)
e9ab76f3d59c1be02501c291554715e8155c7c81jorton APACHE_SUBST(APU_CONFIG)
93e568f5fc0607ca5063f5fe1b6cef985379de24jorton APACHE_SUBST(APREQ_MAJOR_VERSION)
93e568f5fc0607ca5063f5fe1b6cef985379de24jorton APACHE_SUBST(APREQ_LIBTOOL_VERSION)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha abs_srcdir="`(cd $srcdir && pwd)`"
26e9ee946723dbc91b9e5eee0d903975bc19e84fjorton AC_MSG_NOTICE([creating config_vars.mk])
a736bac16e58d5e96945f35ee3c43a2cd2f5d37ejerenkrantz test -d build || $mkdir_p build
6ca0e6973c8176100f4a426444823ae5e777e28fsascha for i in $APACHE_VAR_SUBST; do
88ecd979f1112454432371f55a1420240fae3743trawick eval echo "$i = \$$i" >> build/config_vars.mk
3a47c2ef905c3b6483279637fb8054ca67c5b6ddsaschadnl APACHE_GEN_MAKEFILES
3a47c2ef905c3b6483279637fb8054ca67c5b6ddsaschadnl Creates Makefiles
3a47c2ef905c3b6483279637fb8054ca67c5b6ddsaschaAC_DEFUN(APACHE_GEN_MAKEFILES,[
96e6cafca226a8a2a64a7bbdc634b5b2679c9e0csascha $SHELL $srcdir/build/fastgen.sh $srcdir $ac_cv_mkdir_p $BSD_MAKEFILE $APACHE_FAST_OUTPUT_FILES
22ad84685642948ad15cc1e881ecbc4ac8cbf98cmanojdnl ## APACHE_OUTPUT(file)
22ad84685642948ad15cc1e881ecbc4ac8cbf98cmanojdnl ## adds "file" to the list of files generated by AC_OUTPUT
22ad84685642948ad15cc1e881ecbc4ac8cbf98cmanojdnl ## This macro can be used several times.
22ad84685642948ad15cc1e881ecbc4ac8cbf98cmanojAC_DEFUN(APACHE_OUTPUT, [
22ad84685642948ad15cc1e881ecbc4ac8cbf98cmanoj APACHE_OUTPUT_FILES="$APACHE_OUTPUT_FILES $1"
b90c64e517df3fe1c97806830f84a30362187f0afieldingdnl APACHE_TYPE_RLIM_T
aa811cad2eb3fc01d17a5c8eba274b915ab8cd20manojdnl If rlim_t is not defined, define it to int
b90c64e517df3fe1c97806830f84a30362187f0afieldingAC_DEFUN(APACHE_TYPE_RLIM_T, [
aa811cad2eb3fc01d17a5c8eba274b915ab8cd20manoj AC_CACHE_CHECK([for rlim_t], ac_cv_type_rlim_t, [
e6b0215ca481b00d658a0adfea378c36a67aa088trawick AC_TRY_COMPILE([
e6b0215ca481b00d658a0adfea378c36a67aa088trawick], [rlim_t spoon;], [
aa811cad2eb3fc01d17a5c8eba274b915ab8cd20manoj ac_cv_type_rlim_t=yes
aa811cad2eb3fc01d17a5c8eba274b915ab8cd20manoj ],[ac_cv_type_rlim_t=no
ec7f09808149aa3a0f9895c29025766d4961a044dougm if test "$ac_cv_type_rlim_t" = "no" ; then
b9e4a86f22b3e8666186b9fe08e9241cdaf50d26manoj AC_DEFINE(rlim_t, int,
b9e4a86f22b3e8666186b9fe08e9241cdaf50d26manoj [Define to 'int' if <sys/resource.h> doesn't define it for us])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbranddnl the list of build variables which are available for customization on a
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbranddnl per module subdir basis (to be inserted into modules.mk with a "MOD_"
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbranddnl prefix, i.e. MOD_CFLAGS etc.). Used in APACHE_MODPATH_{INIT,FINISH}.
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbranddefine(mod_buildvars, [CFLAGS CXXFLAGS CPPFLAGS LDFLAGS LIBS INCLUDES])
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl APACHE_MODPATH_INIT(modpath)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_MODPATH_INIT,[
825ab8e480abebc9528fa3b580df41bc9ec4fbderbb current_dir=$1
6ca0e6973c8176100f4a426444823ae5e777e28fsascha modpath_current=modules/$1
6ca0e6973c8176100f4a426444823ae5e777e28fsascha modpath_static=
6ca0e6973c8176100f4a426444823ae5e777e28fsascha modpath_shared=
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand for var in mod_buildvars; do
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand eval MOD_$var=
0af3a77b888861a190b1701079a96469f323e661rbb test -d $1 || $srcdir/build/mkdir.sh $modpath_current
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_MODPATH_FINISH,[
7b4eb92d597c1c5cb679d021b84f06f1e425f41bdgaudet echo "DISTCLEAN_TARGETS = modules.mk" >> $modpath_current/modules.mk
6ca0e6973c8176100f4a426444823ae5e777e28fsascha echo "static = $modpath_static" >> $modpath_current/modules.mk
6ca0e6973c8176100f4a426444823ae5e777e28fsascha echo "shared = $modpath_shared" >> $modpath_current/modules.mk
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand for var in mod_buildvars; do
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand if eval val=\"\$MOD_$var\"; test -n "$val"; then
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand echo "MOD_$var = $val" >> $modpath_current/modules.mk
825ab8e480abebc9528fa3b580df41bc9ec4fbderbb if test ! -z "$modpath_static" -o ! -z "$modpath_shared"; then
825ab8e480abebc9528fa3b580df41bc9ec4fbderbb MODULE_DIRS="$MODULE_DIRS $current_dir"
cb5d3f2f217d457dada4883addb1dc9f3f17bb85fielding MODULE_CLEANDIRS="$MODULE_CLEANDIRS $current_dir"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha APACHE_FAST_OUTPUT($modpath_current/Makefile)
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl APACHE_MODPATH_ADD(name[, shared[, objects [, ldflags[, libs]]]])
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_MODPATH_ADD,[
6ca0e6973c8176100f4a426444823ae5e777e28fsascha if test -z "$3"; then
6ca0e6973c8176100f4a426444823ae5e777e28fsascha objects="mod_$1.lo"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha objects="$3"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha if test -z "$module_standalone"; then
6ca0e6973c8176100f4a426444823ae5e777e28fsascha if test -z "$2"; then
5eb7c0254ac26350a5a471c23514152446d50bccjorton # The filename of a convenience library must have a "lib" prefix:
8013f5d3fff948bf54b8df266e5fab613629b0c1jorton libname="libmod_$1.la"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha BUILTIN_LIBS="$BUILTIN_LIBS $modpath_current/$libname"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha modpath_static="$modpath_static $libname"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha$libname: $objects
164141857c02667118df04b14fe536d1756f0ef4jorton \$(MOD_LINK) $objects $5
d52ef6a778f70aae633080afeb3b8668005a07c7jerenkrantz if test ! -z "$5"; then
d52ef6a778f70aae633080afeb3b8668005a07c7jerenkrantz APR_ADDTO(AP_LIBS, [$5])
6ca0e6973c8176100f4a426444823ae5e777e28fsascha apache_need_shared=yes
6ca0e6973c8176100f4a426444823ae5e777e28fsascha libname="mod_$1.la"
832935ea1f5cc1b21d72674929eef16ed80437d6martin shobjects=`echo $objects | sed 's/\.lo/.slo/g'`
6ca0e6973c8176100f4a426444823ae5e777e28fsascha modpath_shared="$modpath_shared $libname"
6ca0e6973c8176100f4a426444823ae5e777e28fsascha$libname: $shobjects
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha \$(SH_LINK) -rpath \$(libexecdir) -module -avoid-version $4 $objects $5
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsfdnl Same as APACHE_MODPATH_INIT/FINISH but for MPMs
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsfdnl APACHE_MPMPATH_INIT(mpmpath)
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsfAC_DEFUN(APACHE_MPMPATH_INIT,[
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf current_dir=$1
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf modpath_current=server/mpm/$1
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf modpath_static=
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf modpath_shared=
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf for var in mod_buildvars; do
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf eval MOD_$var=
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf test -d $1 || $srcdir/build/mkdir.sh $modpath_current
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsfAC_DEFUN(APACHE_MPMPATH_FINISH,[
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf for var in mod_buildvars; do
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf if eval val=\"\$MOD_$var\"; test -n "$val"; then
319fab7d7f9b50ff1e6403b44a51c09f9a594cdbsf echo "MOD_$var = $val" >> $modpath_current/modules.mk
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfdnl APACHE_MPM_MODULE(name[, shared[, objects[, config[, path[, libs]]]]])
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl Provide information for building the MPM. (Enablement is handled using
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl --with-mpm/--enable-mpms-shared.)
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl name -- name of MPM, same as MPM directory name
e5281d93b355c2c57b57e70091acc90afb81b3bdtrawickdnl shared -- "shared" to indicate shared module build, empty string otherwise
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl objects -- one or more .lo files to link into the MPM module (default: mpmname.lo)
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl config -- configuration logic to run if the MPM is enabled
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickdnl path -- relative path to MPM (default: server/mpm/mpmname)
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfdnl libs -- libs needed by this MPM
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickAC_DEFUN(APACHE_MPM_MODULE,[
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick if ap_mpm_is_enabled $1; then
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick if test -z "$3"; then
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick objects="$3"
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick if test -z "$5"; then
cbe7e2406bb76d2182ef7065f0a4064a8ad65631trawick dnl VPATH support
cbe7e2406bb76d2182ef7065f0a4064a8ad65631trawick test -d $mpmpath || $srcdir/build/mkdir.sh $mpmpath
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick APACHE_FAST_OUTPUT($mpmpath/Makefile)
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick if test -z "$2"; then
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf APR_ADDTO(AP_LIBS, [$6])
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick libname="lib$1.la"
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick$libname: $objects
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick \$(MOD_LINK) $objects
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickDISTCLEAN_TARGETS = modules.mk
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickstatic = $libname
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick apache_need_shared=yes
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick libname="mod_mpm_$1.la"
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick shobjects=`echo $objects | sed 's/\.lo/.slo/g'`
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick$libname: $shobjects
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf \$(SH_LINK) -rpath \$(libexecdir) -module -avoid-version $objects $6
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickDISTCLEAN_TARGETS = modules.mk
0af58edfee6112cc3399e0e693340e525b96ab1ctrawickshared = $libname
6f3b56e6e1c6676d67cfdc6ec1c53624fd7156f3ylavic DSO_MODULES="$DSO_MODULES mpm_$1"
a299403a6661753a93f4e4f476946c0de4e11311trawick # add default MPM to LoadModule list
a299403a6661753a93f4e4f476946c0de4e11311trawick if test $1 = $default_mpm; then
dc12feb05fcd9f7afbe6c5d830898f028370cafbsf ENABLED_DSO_MODULES="${ENABLED_DSO_MODULES},mpm_$1"
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl APACHE_MODULE(name, helptext[, objects[, structname[, default[, config[, prereq_module]]]]])
d0211374a981173d4537e3f919c708b5f64040fcgsteindnl default is one of:
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbbdnl yes -- enabled by default. user must explicitly disable.
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbbdnl no -- disabled under default, most, all. user must explicitly enable.
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbbdnl most -- disabled by default. enabled explicitly or with most or all.
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbbdnl static -- enabled as static by default, must be explicitly changed.
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbbdnl "" -- disabled under default, most. enabled explicitly or with all.
0368b03c62a6bd2af3b5c2077fdb2257032aebf6sfdnl XXX: The arg must really be empty here. Passing an empty shell
0368b03c62a6bd2af3b5c2077fdb2257032aebf6sfdnl XXX: variable doesn't work for some reason. This should be
0368b03c62a6bd2af3b5c2077fdb2257032aebf6sfdnl XXX: fixed.
d0211374a981173d4537e3f919c708b5f64040fcgsteindnl basically: yes/no is a hard setting. "most" means follow the "most"
d0211374a981173d4537e3f919c708b5f64040fcgsteindnl setting. otherwise, fall under the "all" setting.
212c401808586d1fecd0e639ec1697229674a151sfdnl explicit yes/no always overrides, except if the user selects
212c401808586d1fecd0e639ec1697229674a151sfdnl "reallyall".
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl prereq_module is a module (without the "mod_" prefix) that must be enabled
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl if the current module is enabled. If the current module is built
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl statically, prereq_module must be built statically, too. If these
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl conditions are not fulfilled, configure will abort if the current module
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl has been enabled explicitly. Otherwise, configure will disable the
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl current module.
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl prereq_module's APACHE_MODULE() statement must have been processed
39a5e6b885a8705613e73c368e063547ec2bf813sfdnl before the current APACHE_MODULE() statement.
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_MODULE,[
6ca0e6973c8176100f4a426444823ae5e777e28fsascha AC_MSG_CHECKING(whether to enable mod_$1)
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantz define([optname],[--]ifelse($5,yes,disable,enable)[-]translit($1,_,-))dnl
54e36aed6866e09e1a572dc84996e93cdb487b7bsf AC_ARG_ENABLE(translit($1,_,-),APACHE_HELP_STRING(optname(),$2),force_$1=$enableval,enable_$1=ifelse($5,,maybe-all,$5))
7a9190dfde3a06f271dc6c4f4830c1a5440efef8fanf undefine([optname])dnl
d0211374a981173d4537e3f919c708b5f64040fcgstein _apmod_extra_msg=""
739cc2257378b5b9092669d142dbf5d41b6f75b7trawick dnl If the module was not explicitly requested, allow it to disable itself if
212c401808586d1fecd0e639ec1697229674a151sf dnl its pre-reqs fail.
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf case "$enable_$1" in
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf yes|static|shared)
0a2212da6843659e65c378c5201e6612be625731sf _apmod_required="yes"
739cc2257378b5b9092669d142dbf5d41b6f75b7trawick _apmod_required="no"
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb if test "$enable_$1" = "static"; then
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung enable_$1=static
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb elif test "$enable_$1" = "yes"; then
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb enable_$1=$module_default
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb elif test "$enable_$1" = "most"; then
212c401808586d1fecd0e639ec1697229674a151sf if test "$module_selection" = "most" -o "$module_selection" = "all" -o \
212c401808586d1fecd0e639ec1697229674a151sf "$module_selection" = "reallyall"
68de907078051f290050b089c0570d8167b3500dgstein enable_$1=$module_default
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung elif test "$module_selection" = "few" -o "$module_selection" = "none"; then
68de907078051f290050b089c0570d8167b3500dgstein enable_$1=no
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung _apmod_extra_msg=" ($module_selection)"
d0211374a981173d4537e3f919c708b5f64040fcgstein elif test "$enable_$1" = "maybe-all"; then
212c401808586d1fecd0e639ec1697229674a151sf if test "$module_selection" = "all" -o "$module_selection" = "reallyall"
68de907078051f290050b089c0570d8167b3500dgstein enable_$1=$module_default
212c401808586d1fecd0e639ec1697229674a151sf _apmod_extra_msg=" ($module_selection)"
68de907078051f290050b089c0570d8167b3500dgstein enable_$1=no
54e36aed6866e09e1a572dc84996e93cdb487b7bsf elif test "$enable_$1" = "no" -a "$module_selection" = "reallyall" -a \
54e36aed6866e09e1a572dc84996e93cdb487b7bsf "$force_$1" != "no" ; then
212c401808586d1fecd0e639ec1697229674a151sf enable_$1=$module_default
212c401808586d1fecd0e639ec1697229674a151sf _apmod_extra_msg=" ($module_selection)"
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz if test "$enable_$1" != "no"; then
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz dnl If we plan to enable it, allow the module to run some autoconf magic
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz dnl that may disable it because of missing dependencies.
f0845d140b11c340e910322f5fb4469bf5c98092sf ifelse([$6$7],,:,
f0845d140b11c340e910322f5fb4469bf5c98092sf [AC_MSG_RESULT([checking dependencies])
f0845d140b11c340e910322f5fb4469bf5c98092sf ifelse([$7],,:,[if test "$enable_$7" = "no" ; then
f0845d140b11c340e910322f5fb4469bf5c98092sf enable_$1=no
f0845d140b11c340e910322f5fb4469bf5c98092sf AC_MSG_WARN("mod_$7 is disabled but required for mod_$1")
f0845d140b11c340e910322f5fb4469bf5c98092sf elif test "$enable_$1" = "static" && test "$enable_$7" != "static" ; then
f0845d140b11c340e910322f5fb4469bf5c98092sf enable_$1=no
f0845d140b11c340e910322f5fb4469bf5c98092sf AC_MSG_WARN("cannot build mod_$1 statically if mod_$7 is built shared")
f0845d140b11c340e910322f5fb4469bf5c98092sf ifelse([$6],,:,[ $6])
f0845d140b11c340e910322f5fb4469bf5c98092sf ifelse([$7],,:,[fi])
f0845d140b11c340e910322f5fb4469bf5c98092sf AC_MSG_CHECKING(whether to enable mod_$1)
f0845d140b11c340e910322f5fb4469bf5c98092sf if test "$enable_$1" = "no"; then
f0845d140b11c340e910322f5fb4469bf5c98092sf if test "$_apmod_required" = "no"; then
f0845d140b11c340e910322f5fb4469bf5c98092sf _apmod_extra_msg=" (disabled)"
f0845d140b11c340e910322f5fb4469bf5c98092sf AC_MSG_ERROR([mod_$1 has been requested but can not be built due to prerequisite failures])
d0211374a981173d4537e3f919c708b5f64040fcgstein AC_MSG_RESULT($enable_$1$_apmod_extra_msg)
6ca0e6973c8176100f4a426444823ae5e777e28fsascha if test "$enable_$1" != "no"; then
6ca0e6973c8176100f4a426444823ae5e777e28fsascha case "$enable_$1" in
6ca0e6973c8176100f4a426444823ae5e777e28fsascha MODLIST="$MODLIST ifelse($4,,$1,$4)"
df349d5fc2ae7d106b058fe779c7ea4d19ee0588trawick if test "$1" = "so"; then
c803b0d84b48f151504b87ec3f196cb433149592rbb sharedobjs=yes
6ca0e6973c8176100f4a426444823ae5e777e28fsascha shared="";;
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung enable_$1=`echo $enable_$1|sed 's/shared,*//'`
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung sharedobjs=yes
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung DSO_MODULES="$DSO_MODULES $1"
521fc51bdadd21ae8cc2f4a8b354c5fe424a037csf if test "$5" = "yes" ; then
dc12feb05fcd9f7afbe6c5d830898f028370cafbsf ENABLED_DSO_MODULES="${ENABLED_DSO_MODULES},$1"
164141857c02667118df04b14fe536d1756f0ef4jorton define([modprefix], [MOD_]translit($1, [a-z-], [A-Z_]))
164141857c02667118df04b14fe536d1756f0ef4jorton APACHE_MODPATH_ADD($1, $shared, $3,, [\$(]modprefix[_LDADD)])
164141857c02667118df04b14fe536d1756f0ef4jorton APACHE_SUBST(modprefix[_LDADD])
164141857c02667118df04b14fe536d1756f0ef4jorton undefine([modprefix])
6ca0e6973c8176100f4a426444823ae5e777e28fsaschadnl APACHE_ENABLE_MODULES
6ca0e6973c8176100f4a426444823ae5e777e28fsaschaAC_DEFUN(APACHE_ENABLE_MODULES,[
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung module_selection=most
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung module_default=shared
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung dnl Check whether we have DSO support.
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung dnl If "yes", we build shared modules by default.
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung APR_CHECK_APR_DEFINE(APR_HAS_DSO)
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung if test $ac_cv_define_APR_HAS_DSO = "no"; then
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung AC_MSG_WARN([Missing DSO support - building static modules by default.])
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung module_default=static
d0211374a981173d4537e3f919c708b5f64040fcgstein AC_ARG_ENABLE(modules,
686555019e71b355e835166dfefbec33f7fb6f90rjung APACHE_HELP_STRING(--enable-modules=MODULE-LIST,Space-separated list of modules to enable | "all" | "most" | "few" | "none" | "reallyall"),[
c71458c4b81237e414c1c774a80da14fe22c52b4jorton if test "$enableval" = "none"; then
c71458c4b81237e414c1c774a80da14fe22c52b4jorton module_default=no
c71458c4b81237e414c1c774a80da14fe22c52b4jorton module_selection=none
c71458c4b81237e414c1c774a80da14fe22c52b4jorton for i in $enableval; do
212c401808586d1fecd0e639ec1697229674a151sf if test "$i" = "all" -o "$i" = "most" -o "$i" = "few" -o "$i" = "reallyall"
c71458c4b81237e414c1c774a80da14fe22c52b4jorton module_selection=$i
c71458c4b81237e414c1c774a80da14fe22c52b4jorton i=`echo $i | sed 's/-/_/g'`
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung eval "enable_$i=shared"
d0211374a981173d4537e3f919c708b5f64040fcgstein AC_ARG_ENABLE(mods-shared,
686555019e71b355e835166dfefbec33f7fb6f90rjung APACHE_HELP_STRING(--enable-mods-shared=MODULE-LIST,Space-separated list of shared modules to enable | "all" | "most" | "few" | "reallyall"),[
d0211374a981173d4537e3f919c708b5f64040fcgstein for i in $enableval; do
212c401808586d1fecd0e639ec1697229674a151sf if test "$i" = "all" -o "$i" = "most" -o "$i" = "few" -o "$i" = "reallyall"
d0211374a981173d4537e3f919c708b5f64040fcgstein module_selection=$i
d0211374a981173d4537e3f919c708b5f64040fcgstein module_default=shared
98fde0d0b2576b57adedb21b7cb2fbbc765df7e1trawick i=`echo $i | sed 's/-/_/g'`
d0211374a981173d4537e3f919c708b5f64040fcgstein eval "enable_$i=shared"
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung AC_ARG_ENABLE(mods-static,
686555019e71b355e835166dfefbec33f7fb6f90rjung APACHE_HELP_STRING(--enable-mods-static=MODULE-LIST,Space-separated list of static modules to enable | "all" | "most" | "few" | "reallyall"),[
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung for i in $enableval; do
686555019e71b355e835166dfefbec33f7fb6f90rjung if test "$i" = "all" -o "$i" = "most" -o "$i" = "few" -o "$i" = "reallyall"; then
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung module_selection=$i
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung module_default=static
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung i=`echo $i | sed 's/-/_/g'`
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung eval "enable_$i=static"
7bfe076b680e6e591add6cdc754ce9a6910682a2saschaAC_DEFUN(APACHE_REQUIRE_CXX,[
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha if test -z "$apache_cxx_done"; then
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha AC_PROG_CXX
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha AC_PROG_CXXCPP
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha apache_cxx_done=yes
4281cf6a722c99ae21394dc2000bd48efcebdb3akbranddnl APACHE_CHECK_OPENSSL
4281cf6a722c99ae21394dc2000bd48efcebdb3akbranddnl Configure for OpenSSL, giving preference to
4281cf6a722c99ae21394dc2000bd48efcebdb3akbranddnl "--with-ssl=<path>" if it was specified.
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrandAC_DEFUN(APACHE_CHECK_OPENSSL,[
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_CACHE_CHECK([for OpenSSL], [ac_cv_openssl], [
8c2ac56b3654234237ca3a943407361c45a3a4d1sf dnl initialise the variables we use
292707b9868335763d6f2bb74a263134eeeb8cadkbrand ac_cv_openssl=no
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand ap_openssl_found=""
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand ap_openssl_base=""
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand ap_openssl_libs=""
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand dnl Determine the OpenSSL base directory, if any
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_MSG_CHECKING([for user-provided OpenSSL base directory])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand AC_ARG_WITH(ssl, APACHE_HELP_STRING(--with-ssl=PATH,OpenSSL installation directory), [
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand dnl If --with-ssl specifies a directory, we use that directory
8c2ac56b3654234237ca3a943407361c45a3a4d1sf if test "x$withval" != "xyes" -a "x$withval" != "x"; then
8c2ac56b3654234237ca3a943407361c45a3a4d1sf dnl This ensures $withval is actually a directory and that it is absolute
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand ap_openssl_base="`cd $withval ; pwd`"
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand if test "x$ap_openssl_base" = "x"; then
8c2ac56b3654234237ca3a943407361c45a3a4d1sf AC_MSG_RESULT(none)
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_MSG_RESULT($ap_openssl_base)
8c2ac56b3654234237ca3a943407361c45a3a4d1sf dnl Run header and version checks
8c2ac56b3654234237ca3a943407361c45a3a4d1sf saved_CPPFLAGS="$CPPFLAGS"
8c2ac56b3654234237ca3a943407361c45a3a4d1sf saved_LIBS="$LIBS"
8c2ac56b3654234237ca3a943407361c45a3a4d1sf saved_LDFLAGS="$LDFLAGS"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand dnl Before doing anything else, load in pkg-config variables
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand if test -n "$PKGCONFIG"; then
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand saved_PKG_CONFIG_PATH="$PKG_CONFIG_PATH"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand if test "x$ap_openssl_base" != "x" -a \
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand -f "${ap_openssl_base}/lib/pkgconfig/openssl.pc"; then
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand dnl Ensure that the given path is used by pkg-config too, otherwise
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand dnl the system openssl.pc might be picked up instead.
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand PKG_CONFIG_PATH="${ap_openssl_base}/lib/pkgconfig${PKG_CONFIG_PATH+:}${PKG_CONFIG_PATH}"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand export PKG_CONFIG_PATH
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand AC_ARG_ENABLE(ssl-staticlib-deps,APACHE_HELP_STRING(--enable-ssl-staticlib-deps,[link mod_ssl with dependencies of OpenSSL's static libraries (as indicated by "pkg-config --static"). Must be specified in addition to --enable-ssl.]), [
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand if test "$enableval" = "yes"; then
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand PKGCONFIG_LIBOPTS="--static"
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand ap_openssl_libs="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-l --silence-errors openssl`"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand if test $? -eq 0; then
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand ap_openssl_found="yes"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand pkglookup="`$PKGCONFIG --cflags-only-I openssl`"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand APR_ADDTO(CPPFLAGS, [$pkglookup])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_CFLAGS, [$pkglookup])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(ab_CFLAGS, [$pkglookup])
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand pkglookup="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-L openssl`"
a4b590ec2d838dde45afa73723862a348e77d933kbrand APR_ADDTO(LDFLAGS, [$pkglookup])
a4b590ec2d838dde45afa73723862a348e77d933kbrand APR_ADDTO(MOD_LDFLAGS, [$pkglookup])
c0771b8f1380258edacd34451cf7aef1daa8b0cfkbrand pkglookup="`$PKGCONFIG $PKGCONFIG_LIBOPTS --libs-only-other openssl`"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand APR_ADDTO(LDFLAGS, [$pkglookup])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_LDFLAGS, [$pkglookup])
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand PKG_CONFIG_PATH="$saved_PKG_CONFIG_PATH"
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand dnl fall back to the user-supplied directory if not found via pkg-config
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand if test "x$ap_openssl_base" != "x" -a "x$ap_openssl_found" = "x"; then
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand APR_ADDTO(CPPFLAGS, [-I$ap_openssl_base/include])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_CFLAGS, [-I$ap_openssl_base/include])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(ab_CFLAGS, [-I$ap_openssl_base/include])
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand APR_ADDTO(LDFLAGS, [-L$ap_openssl_base/lib])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_LDFLAGS, [-L$ap_openssl_base/lib])
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand if test "x$ap_platform_runtime_link_flag" != "x"; then
cda405bd389d0b9a161ba98f4a10caeebd24d7dfkbrand APR_ADDTO(LDFLAGS, [$ap_platform_runtime_link_flag$ap_openssl_base/lib])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_LDFLAGS, [$ap_platform_runtime_link_flag$ap_openssl_base/lib])
ac0c8366f49659958162b4bfb3d625a77343eda3kbrand AC_MSG_CHECKING([for OpenSSL version >= 0.9.8a])
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_TRY_COMPILE([#include <openssl/opensslv.h>],[
da482ec6da90f2609367d840933bedd9e90e11b6wrowe#if !defined(OPENSSL_VERSION_NUMBER)
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand#error "Missing OpenSSL version"
ac0c8366f49659958162b4bfb3d625a77343eda3kbrand#if OPENSSL_VERSION_NUMBER < 0x0090801f
292707b9868335763d6f2bb74a263134eeeb8cadkbrand#error "Unsupported OpenSSL version " OPENSSL_VERSION_TEXT
292707b9868335763d6f2bb74a263134eeeb8cadkbrand [AC_MSG_RESULT(OK)
292707b9868335763d6f2bb74a263134eeeb8cadkbrand ac_cv_openssl=yes],
292707b9868335763d6f2bb74a263134eeeb8cadkbrand [AC_MSG_RESULT(FAILED)])
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand if test "x$ac_cv_openssl" = "xyes"; then
a4b590ec2d838dde45afa73723862a348e77d933kbrand ap_openssl_libs="${ap_openssl_libs:--lssl -lcrypto} `$apr_config --libs`"
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_LDFLAGS, [$ap_openssl_libs])
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand APR_ADDTO(LIBS, [$ap_openssl_libs])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_SETVAR(ab_LDFLAGS, [$MOD_LDFLAGS])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APACHE_SUBST(ab_CFLAGS)
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APACHE_SUBST(ab_LDFLAGS)
8c2ac56b3654234237ca3a943407361c45a3a4d1sf dnl Run library and function checks
8c2ac56b3654234237ca3a943407361c45a3a4d1sf liberrors=""
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_CHECK_HEADERS([openssl/engine.h])
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], [liberrors="yes"])
9c50a7d34b902169aa4df9b72707f83d45b11fc2stsp AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines RAND_egd])
8c2ac56b3654234237ca3a943407361c45a3a4d1sf if test "x$liberrors" != "x"; then
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_MSG_WARN([OpenSSL libraries are unusable])
292707b9868335763d6f2bb74a263134eeeb8cadkbrand AC_MSG_WARN([OpenSSL version is too old])
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand dnl restore
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand CPPFLAGS="$saved_CPPFLAGS"
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand LIBS="$saved_LIBS"
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand LDFLAGS="$saved_LDFLAGS"
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand if test "x$ac_cv_openssl" = "xyes"; then
4281cf6a722c99ae21394dc2000bd48efcebdb3akbrand AC_DEFINE(HAVE_OPENSSL, 1, [Define if OpenSSL is available])
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfdnl APACHE_CHECK_SERF
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfdnl Configure for the detected libserf, giving preference to
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfdnl "--with-serf=<path>" if it was specified.
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sfAC_DEFUN([APACHE_CHECK_SERF], [
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf AC_CACHE_CHECK([for libserf], [ac_cv_serf], [
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf ac_cv_serf=no
212c401808586d1fecd0e639ec1697229674a151sf serf_prefix=/usr
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf SERF_LIBS=""
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand AC_ARG_WITH(serf, APACHE_HELP_STRING([--with-serf=PATH],
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf [Serf client library]),
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf if test "$withval" = "yes" ; then
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf serf_prefix=/usr
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf serf_prefix=$withval
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf if test "$serf_prefix" != "no" ; then
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf save_cppflags="$CPPFLAGS"
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf CPPFLAGS="$CPPFLAGS $APR_INCLUDES $APU_INCLUDES -I$serf_prefix/include/serf-0"
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf AC_CHECK_HEADERS(serf.h,[
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf save_ldflags="$LDFLAGS"
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf LDFLAGS="$LDFLAGS -L$serf_prefix/lib"
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf AC_CHECK_LIB(serf-0, serf_context_create,[ac_cv_serf="yes"])
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf LDFLAGS="$save_ldflags"])
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf CPPFLAGS="$save_cppflags"
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf APACHE_SUBST(SERF_LIBS)
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf if test "$ac_cv_serf" = "yes"; then
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf AC_DEFINE(HAVE_SERF, 1, [Define if libserf is available])
047cb8df15a408e0c0c6125c4a351b35aa3c6e82sf APR_SETVAR(SERF_LIBS, [-L$serf_prefix/lib -lserf-0])
708fec3f1a67942d7ee00b8c57fb0aa4fb40dde2kbrand APR_ADDTO(MOD_INCLUDES, [-I$serf_prefix/include/serf-0])
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jortonAC_DEFUN(APACHE_CHECK_SYSTEMD, [
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jortondnl Check for systemd support for listen.c's socket activation.
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jortoncase $host in
d13139765fae8fcde58a1c767716d2663a3ebfd9jorton if test -n "$PKGCONFIG" && $PKGCONFIG --exists libsystemd; then
853e713d64a76d9b8211ec896aefb0422ef064e4jorton SYSTEMD_LIBS=`$PKGCONFIG --libs libsystemd`
d13139765fae8fcde58a1c767716d2663a3ebfd9jorton elif test -n "$PKGCONFIG" && $PKGCONFIG --exists libsystemd-daemon; then
853e713d64a76d9b8211ec896aefb0422ef064e4jorton SYSTEMD_LIBS=`$PKGCONFIG --libs libsystemd-daemon`
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton AC_CHECK_LIB(systemd-daemon, sd_notify, SYSTEMD_LIBS="-lsystemd-daemon")
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton if test -n "$SYSTEMD_LIBS"; then
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton AC_CHECK_HEADERS(systemd/sd-daemon.h)
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton if test "${ac_cv_header_systemd_sd_daemon_h}" = "no" || test -z "${SYSTEMD_LIBS}"; then
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton AC_MSG_WARN([Your system does not support systemd.])
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton APR_ADDTO(HTTPD_LIBS, [$SYSTEMD_LIBS])
265e9c84e4ee23f41ac25622f8b8b3f481bbf281jorton AC_DEFINE(HAVE_SYSTEMD, 1, [Define if systemd is supported])
9d432e23f6025b78322cbee43e8e89262a108e5eaarondnl APACHE_EXPORT_ARGUMENTS
9d432e23f6025b78322cbee43e8e89262a108e5eaarondnl Export (via APACHE_SUBST) the various path-related variables that
9d432e23f6025b78322cbee43e8e89262a108e5eaarondnl apache will use while generating scripts like autoconf and apxs and
9d432e23f6025b78322cbee43e8e89262a108e5eaarondnl the default config file.
9d432e23f6025b78322cbee43e8e89262a108e5eaaronAC_DEFUN(APACHE_SUBST_EXPANDED_ARG,[
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APR_EXPAND_VAR(exp_$1, [$]$1)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST(exp_$1)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APR_PATH_RELATIVE(rel_$1, [$]exp_$1, ${prefix})
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST(rel_$1)
9d432e23f6025b78322cbee43e8e89262a108e5eaaronAC_DEFUN(APACHE_EXPORT_ARGUMENTS,[
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(exec_prefix)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(bindir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(sbindir)
e213c8a802baea59a07c8a6d089f94a678f70b96aaron APACHE_SUBST_EXPANDED_ARG(libdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(libexecdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(mandir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(sysconfdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(datadir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(installbuilddir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(errordir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(iconsdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(htdocsdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(manualdir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(cgidir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(includedir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(localstatedir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(runtimedir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(logfiledir)
9d432e23f6025b78322cbee43e8e89262a108e5eaaron APACHE_SUBST_EXPANDED_ARG(proxycachedir)
975e51c02f55eaa15e6c5c65ffd89f6c0431e4f5jkaluza APACHE_SUBST_EXPANDED_ARG(davlockdb)
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl APACHE_CHECK_APxVER({apr|apu}, major, minor,
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl [actions-if-ok], [actions-if-not-ok])
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl Checks for APR or APR-util of given major/minor version or later;
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl if so, runs actions-if-ok; otherwise runs actions-if-not-ok if given.
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl If the version is not satisfactory and actions-if-not-ok is not
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl given, then an error is printed and the configure script is aborted.
cb6310f4ea253e5706c71958b0943f142cbda667jortondnl The first argument must be [apr] or [apu].
cb6310f4ea253e5706c71958b0943f142cbda667jortonAC_DEFUN([APACHE_CHECK_APxVER], [
cb6310f4ea253e5706c71958b0943f142cbda667jortondefine(ap_ckver_major, translit($1, [apru], [APRU])[_MAJOR_VERSION])
cb6310f4ea253e5706c71958b0943f142cbda667jortondefine(ap_ckver_minor, translit($1, [apru], [APRU])[_MINOR_VERSION])
cb6310f4ea253e5706c71958b0943f142cbda667jortondefine(ap_ckver_cvar, [ap_cv_$1ver$2$3])
cb6310f4ea253e5706c71958b0943f142cbda667jortondefine(ap_ckver_name, ifelse([$1],[apr],[APR],[APR-util]))
cb6310f4ea253e5706c71958b0943f142cbda667jortonap_ckver_CPPFLAGS="$CPPFLAGS"
cb6310f4ea253e5706c71958b0943f142cbda667jortonCPPFLAGS="$CPPFLAGS `$[$1]_config --includes`"
cb6310f4ea253e5706c71958b0943f142cbda667jortonAC_CACHE_CHECK([for ap_ckver_name version $2.$3.0 or later], ap_ckver_cvar, [
cb6310f4ea253e5706c71958b0943f142cbda667jortonAC_EGREP_CPP([good], [
cb6310f4ea253e5706c71958b0943f142cbda667jorton#if ]ap_ckver_major[ > $2 || (]ap_ckver_major[ == $2 && ]ap_ckver_minor[ >= $3)
cb6310f4ea253e5706c71958b0943f142cbda667jorton], [ap_ckver_cvar=yes], [ap_ckver_cvar=no])])
cb6310f4ea253e5706c71958b0943f142cbda667jortonif test "$ap_ckver_cvar" = "yes"; then
cb6310f4ea253e5706c71958b0943f142cbda667jorton ifelse([$4],[],[:],[$4])
cb6310f4ea253e5706c71958b0943f142cbda667jorton ifelse([$5],[],[AC_MSG_ERROR([ap_ckver_name version $2.$3.0 or later is required])], [$5])
cb6310f4ea253e5706c71958b0943f142cbda667jortonCPPFLAGS="$ap_ckver_CPPFLAGS"
cb6310f4ea253e5706c71958b0943f142cbda667jortonundefine([ap_ckver_major])
cb6310f4ea253e5706c71958b0943f142cbda667jortonundefine([ap_ckver_minor])
cb6310f4ea253e5706c71958b0943f142cbda667jortonundefine([ap_ckver_cvar])
cb6310f4ea253e5706c71958b0943f142cbda667jortonundefine([ap_ckver_name])
e36cfe8caf074cce72f1e4136894608665b7fbd8colmdnl APACHE_CHECK_VOID_PTR_LEN
e36cfe8caf074cce72f1e4136894608665b7fbd8colmdnl Checks if the size of a void pointer is at least as big as a "long"
e36cfe8caf074cce72f1e4136894608665b7fbd8colmdnl integer type.
e36cfe8caf074cce72f1e4136894608665b7fbd8colmAC_DEFUN([APACHE_CHECK_VOID_PTR_LEN], [
0b083c7f392e96303fc8aee44571631964778b7cjimAC_CACHE_CHECK([for void pointer length], [ap_cv_void_ptr_lt_long],
e36cfe8caf074cce72f1e4136894608665b7fbd8colm[AC_TRY_RUN([
e36cfe8caf074cce72f1e4136894608665b7fbd8colmint main(void)
e36cfe8caf074cce72f1e4136894608665b7fbd8colm return sizeof(void *) < sizeof(long);
0b083c7f392e96303fc8aee44571631964778b7cjim}], [ap_cv_void_ptr_lt_long=no], [ap_cv_void_ptr_lt_long=yes],
7f887fe6513b42d0a2e0ef8ca94aa51f59cfaba7fuankg [ap_cv_void_ptr_lt_long="cross compile - not checked"])])
0b083c7f392e96303fc8aee44571631964778b7cjimif test "$ap_cv_void_ptr_lt_long" = "yes"; then
e36cfe8caf074cce72f1e4136894608665b7fbd8colm AC_MSG_ERROR([Size of "void *" is less than size of "long"])
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfdnl APACHE_CHECK_APR_HAS_LDAP
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfdnl Check if APR_HAS_LDAP is 1
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfdnl Unfortunately, we can't use APR_CHECK_APR_DEFINE (because it only includes apr.h)
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfdnl or APR_CHECK_DEFINE (because it only checks for defined'ness and not for 0/1).
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfAC_DEFUN([APACHE_CHECK_APR_HAS_LDAP], [
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf AC_CACHE_CHECK([for ldap support in apr/apr-util],ac_cv_APR_HAS_LDAP,[
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf apache_old_cppflags="$CPPFLAGS"
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf CPPFLAGS="$CPPFLAGS $INCLUDES"
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf AC_EGREP_CPP(YES_IS_DEFINED, [
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf#if APR_HAS_LDAP
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sfYES_IS_DEFINED
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf ], ac_cv_APR_HAS_LDAP=yes, ac_cv_APR_HAS_LDAP=no)
65f6e321663b3fd0f93d8b47b4df05f189de6cf1sf CPPFLAGS="$apache_old_cppflags"
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sfdnl APACHE_ADD_GCC_CFLAGS
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sfdnl Check if compiler is gcc and supports flag. If yes, add to CFLAGS.
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sfAC_DEFUN([APACHE_ADD_GCC_CFLAG], [
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf define([ap_gcc_ckvar], [ac_cv_gcc_]translit($1, [-:.=], [____]))
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf if test "$GCC" = "yes"; then
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf AC_CACHE_CHECK([whether gcc accepts $1], ap_gcc_ckvar, [
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf save_CFLAGS="$CFLAGS"
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf CFLAGS="$CFLAGS $1"
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf AC_COMPILE_IFELSE([AC_LANG_SOURCE([int foo() { return 0; }])],
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf [ap_gcc_ckvar=yes], [ap_gcc_ckvar=no])
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf CFLAGS="$save_CFLAGS"
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf if test "$]ap_gcc_ckvar[" = "yes" ; then
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf APR_ADDTO(CFLAGS,[$1])
b8f1ab8691c3c3aad22102f6926dde31b7e45db9sf undefine([ap_gcc_ckvar])