2 dnl Autoconf configuration for Apache httpd
4 dnl Use ./buildconf to produce a configure script
10 AC_CONFIG_HEADER(include/ap_config_auto.h)
11 AC_CONFIG_AUX_DIR(build)
14 dnl # Include our own M4 macros along with those for APR and libtool
16 sinclude(build/apr_common.m4)
17 sinclude(build/find_apr.m4)
18 sinclude(build/find_apu.m4)
19 sinclude(acinclude.m4)
21 dnl XXX we can't just use AC_PREFIX_DEFAULT because that isn't subbed in
22 dnl by configure until it is too late. Is that how it should be or not?
23 dnl Something seems broken here.
24 AC_PREFIX_DEFAULT(/usr/local/apache2)
26 dnl Get the layout here, so we can pass the required variables to apr
27 APR_ENABLE_LAYOUT(Apache, [errordir iconsdir htdocsdir cgidir])
29 dnl reparse the configure arguments.
32 dnl export expanded and relative configure argument variables
33 APACHE_EXPORT_ARGUMENTS
35 dnl Save user-defined environment settings for later restoration
37 APR_SAVE_THE_ENVIRONMENT(CPPFLAGS)
38 APR_SAVE_THE_ENVIRONMENT(CFLAGS)
39 APR_SAVE_THE_ENVIRONMENT(CXXFLAGS)
40 APR_SAVE_THE_ENVIRONMENT(LDFLAGS)
41 APR_SAVE_THE_ENVIRONMENT(LIBS)
42 APR_SAVE_THE_ENVIRONMENT(INCLUDES)
44 dnl Generate ./config.nice for reproducing runs of configure
46 APR_CONFIG_NICE(config.nice)
50 dnl Check that mkdir -p works
51 APR_MKDIR_P_CHECK($top_srcdir/build/mkdir.sh)
53 dnl ## Run configure for packages Apache uses
55 dnl shared library support for these packages doesn't currently
56 dnl work on some platforms
62 echo $ac_n "${nl}Configuring Apache Portable Runtime library ...${nl}"
64 APR_FIND_APR("$srcdir/srclib/apr", "./srclib/apr", 1, 1)
66 if test "$apr_found" = "no"; then
67 AC_MSG_ERROR([APR not found. Please read the documentation.])
70 if test "$apr_found" = "reconfig"; then
71 APR_SUBDIR_CONFIG(srclib/apr,
72 [$apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir --datadir=$datadir --with-installbuilddir=$installbuilddir],
73 [--enable-layout=*|\'--enable-layout=*])
74 dnl We must be the first to build and the last to be cleaned
75 AP_BUILD_SRCLIB_DIRS="apr $AP_BUILD_SRCLIB_DIRS"
76 AP_CLEAN_SRCLIB_DIRS="$AP_CLEAN_SRCLIB_DIRS apr"
79 APR_SETIFNULL(CC, `$apr_config --cc`)
80 APR_SETIFNULL(CPP, `$apr_config --cpp`)
81 APR_ADDTO(CFLAGS, `$apr_config --cflags`)
82 APR_ADDTO(CPPFLAGS, `$apr_config --cppflags`)
83 APR_ADDTO(LDFLAGS, `$apr_config --ldflags`)
84 SHLIBPATH_VAR=`$apr_config --shlib-path-var`
85 APR_BINDIR=`$apr_config --bindir`
86 APR_INCLUDEDIR=`$apr_config --includedir`
87 APR_VERSION=`$apr_config --version`
88 APR_CONFIG="$APR_BINDIR/apr-`echo ${APR_VERSION} | sed 's,\..*,,'`-config"
90 echo $ac_n "${nl}Configuring Apache Portable Runtime Utility library...${nl}"
92 APR_FIND_APU("$srcdir/srclib/apr-util", "./srclib/apr-util", 1, 1)
94 if test "$apu_found" = "no"; then
95 AC_MSG_ERROR([APR-util not found. Please read the documentation.])
98 # Catch some misconfigurations:
99 case ${apr_found}.${apu_found} in
101 AC_MSG_ERROR([Cannot use an external APR-util with the bundled APR])
104 AC_MSG_ERROR([Cannot use an external APR with the bundled APR-util])
108 if test "$apu_found" = "reconfig"; then
109 APR_SUBDIR_CONFIG(srclib/apr-util,
110 [--with-apr=../apr --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir],
111 [--enable-layout=*|\'--enable-layout=*])
112 dnl We must be the last to build and the first to be cleaned
113 AP_BUILD_SRCLIB_DIRS="$AP_BUILD_SRCLIB_DIRS apr-util"
114 AP_CLEAN_SRCLIB_DIRS="apr-util $AP_CLEAN_SRCLIB_DIRS"
117 APR_ADDTO(LDFLAGS, `$apu_config --ldflags`)
118 APU_BINDIR=`$apu_config --bindir`
119 APU_INCLUDEDIR=`$apu_config --includedir`
120 APU_VERSION=`$apu_config --version`
121 APU_CONFIG="$APU_BINDIR/apu-`echo ${APU_VERSION} | sed 's,\..*,,'`-config"
123 dnl In case we picked up CC and CPP from APR, get that info into the
124 dnl config cache so that PCRE uses it. Otherwise, CC and CPP used for
125 dnl PCRE and for our config tests will be whatever PCRE determines.
129 if test "x${cache_file}" = "x/dev/null"; then
130 # Likewise, ensure that CC and CPP are passed through to the pcre
131 # configure script iff caching is disabled (the autoconf 2.5x default).
132 export CC; export CPP
135 dnl Absolute source/build directory
136 abs_srcdir=`(cd $srcdir && pwd)`
140 APACHE_HELP_STRING(--with-pcre=PATH,Use external PCRE library))
143 yes) AC_PATH_PROG(PCRE_CONFIG, pcre-config, false) ;;
144 /*) if test -d "$with_pcre" && test -x "$with_pcre/bin/pcre-config"; then
145 PCRE_CONFIG=$with_pcre/bin/pcre-config
146 elif test -x "$with_pcre"; then
147 PCRE_CONFIG=$with_pcre
150 if $PCRE_CONFIG --version >&/dev/null; then :; else
151 AC_MSG_ERROR([Did not find pcre-config script at $PCRE_CONFIG])
154 *) PCRE_CONFIG=false ;;
157 if test "$PCRE_CONFIG" != "false"; then
158 AC_MSG_NOTICE([Using external PCRE library from $PCRE_CONFIG])
159 APR_ADDTO(CFLAGS, [`$PCRE_CONFIG --cflags`])
160 APR_ADDTO(LIBS, [`$PCRE_CONFIG --libs`])
162 # Build the bundled PCRE
163 AC_MSG_NOTICE([Configuring PCRE regular expression library])
165 APR_SUBDIR_CONFIG(srclib/pcre,
166 [--prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir])
168 APR_ADDTO(AP_LIBS, [$abs_builddir/srclib/pcre/libpcre.la])
169 APR_ADDTO(INCLUDES, [-I\$(top_builddir)/srclib/pcre])
171 AP_BUILD_SRCLIB_DIRS="$AP_BUILD_SRCLIB_DIRS pcre"
172 AP_CLEAN_SRCLIB_DIRS="$AP_CLEAN_SRCLIB_DIRS pcre"
175 echo $ac_n "${nl}Configuring Apache httpd ...${nl}"
177 dnl If the source dir is not equal to the build dir,
178 dnl then we are running in VPATH mode.
180 APR_ADDTO(INCLUDES, [-I.])
182 if test "$abs_builddir" != "$abs_srcdir"; then
183 APR_ADDTO(INCLUDES, [-I\$(top_builddir)/include])
186 APR_ADDTO(INCLUDES, [-I\$(top_srcdir)/os/\$(OS_DIR) -I\$(top_srcdir)/server/mpm/\$(MPM_SUBDIR_NAME) -I\$(top_srcdir)/modules/http -I\$(top_srcdir)/modules/filters -I\$(top_srcdir)/modules/proxy -I\$(top_srcdir)/include -I\$(top_srcdir)/modules/generators -I\$(top_srcdir)/modules/mappers])
188 # apr/apr-util --includes may pick up system paths for dependent
189 # libraries, so ensure these are later in INCLUDES than local source
191 APR_ADDTO(INCLUDES, `$apr_config --includes`)
192 APR_ADDTO(INCLUDES, `$apu_config --includes`)
194 echo $ac_n "${nl}Applying OS-specific hints for httpd ...${nl}"
198 # Use a custom made libtool replacement
199 echo "using aplibtool"
200 LIBTOOL="$abs_srcdir/srclib/apr/build/aplibtool"
201 SH_LIBTOOL="$LIBTOOL --shared --export-all"
202 SH_LIBS="\$(ALL_LIBS)"
203 CORE_IMPLIB_FILE="ApacheCoreOS2.la"
204 CORE_IMPLIB="$abs_srcdir/server/$CORE_IMPLIB_FILE"
206 other_targets="$other_targets os2core"
207 INSTALL_PROG_FLAGS="-e .exe"
212 if test "x$LTFLAGS" = "x"; then
215 my_libtool=`$apr_config --apr-libtool`
216 LIBTOOL="$my_libtool \$(LTFLAGS)"
217 libtoolversion=`$my_libtool --version`
218 case $libtoolversion in
220 SH_LIBTOOL='$(LIBTOOL)'
221 SHLTCFLAGS="-prefer-pic"
222 LTCFLAGS="-prefer-non-pic -static"
225 SH_LIBTOOL='$(SHELL) $(top_builddir)/shlibtool $(LTFLAGS)'
232 APACHE_SUBST(SHLTCFLAGS)
233 APACHE_SUBST(LTCFLAGS)
239 APR_SETVAR(APACHE_MPM, [prefork])
240 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
243 APR_SETVAR(APACHE_MPM, [beos])
244 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
247 APR_SETVAR(APACHE_MPM, [mpmt_os2])
248 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
253 AP_SIG_GRACEFUL=WINCH
256 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
262 *486-*-bsdi* | *-netbsd* | *-freebsd* | *-apple-darwin* | *-dec-osf* | *-qnx)
263 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
266 dnl This is a hack -- we should be using AC_TRY_RUN instead
267 ap_platform_runtime_link_flag="-R"
268 dnl solaris 8 and above don't have a thundering herd
269 dnl not sure about rev's before this one.
274 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
279 APR_SETVAR(APACHE_MPM, [prefork])
280 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
283 aixver=`echo $host | sed 's/^[[^0-9]]*//' | sed 's/\.//g'`
284 if test $aixver -ge 4320; then
285 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
289 APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
293 APR_SETVAR(AP_NONBLOCK_WHEN_MULTI_LISTEN, [1])
296 dnl Process command line arguments. This is done early in the process so the
297 dnl user can get feedback quickly in case of an error.
299 dnl ### need to move some of the arguments "up here"
301 dnl ## Check for programs
304 AC_PATH_PROG(PKGCONFIG, pkg-config)
307 AC_CHECK_TOOL(RANLIB, ranlib, true)
308 dnl AC_PATH_PROG(PERL_PATH, perl)
309 AC_CHECK_PROGS(LYNX_PATH,[lynx links elinks], [lynx])
311 # Hard-coded install programs
312 MKINSTALLDIRS="\$(abs_srcdir)/build/mkdir.sh"
313 INSTALL="\$(LIBTOOL) --mode=install \$(abs_srcdir)/build/install.sh -c"
314 APACHE_SUBST(MKINSTALLDIRS)
315 APACHE_SUBST(INSTALL)
317 dnl various OS checks that apparently set required flags
322 dnl Check for what we can generate dependency files with
325 dnl ## Check for libraries
327 dnl ## Check for header files
329 dnl I think these are just used all over the place, so just check for
330 dnl them at the base of the tree. If some are specific to a single
331 dnl directory, they should be moved (Comment #Spoon)
333 dnl Regarding standard header files: AC_HEADER_STDC doesn't set symbols
334 dnl HAVE_STRING_H, HAVE_STDLIB_H, etc., so those are checked for
335 dnl explicitly so that the normal HAVE_xxx_H symbol is defined.
352 dnl ## Check for typedefs, structures, and compiler characteristics.
355 if test "x$GCC" = "xyes"; then
356 AC_DEFINE([AP_HAVE_DESIGNATED_INITIALIZER], 1,
357 [Define if the compiler supports designated initializers])
360 dnl ## Check for library functions
361 AC_SEARCH_LIBS(sqrt, m)
363 dnl See Comment #Spoon
374 dnl ## Check for the tm_gmtoff field in struct tm to get the timezone diffs
375 AC_CACHE_CHECK([for tm_gmtoff in struct tm], ac_cv_struct_tm_gmtoff,
376 [AC_TRY_COMPILE([#include <sys/types.h>
377 #include <time.h>], [struct tm tm; tm.tm_gmtoff;],
378 ac_cv_struct_tm_gmtoff=yes, ac_cv_struct_tm_gmtoff=no)])
379 if test "$ac_cv_struct_tm_gmtoff" = "yes"; then
380 AC_DEFINE(HAVE_GMTOFF, 1, [Define if struct tm has a tm_gmtoff field])
383 dnl ## Set up any appropriate OS-specific environment variables for apachectl
387 # for 32-bit builds, increase MAXDATA to allow lots of threads
388 if test x$OBJECT_MODE != x64; then
389 OS_SPECIFIC_VARS="LDR_CNTRL=\"MAXDATA=0x80000000\" ; export LDR_CNTRL ;"
391 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS AIXTHREAD_SCOPE=S ; export AIXTHREAD_SCOPE"
392 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; AIXTHREAD_MUTEX_DEBUG=OFF ; export AIXTHREAD_MUTEX_DEBUG"
393 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; AIXTHREAD_RWLOCK_DEBUG=OFF ; export AIXTHREAD_RWLOCK_DEBUG"
394 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; AIXTHREAD_COND_DEBUG=OFF ; export AIXTHREAD_COND_DEBUG"
395 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; SPINLOOPTIME=1000 ; export SPINLOOPTIME"
396 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; YIELDLOOPTIME=8 ; export YIELDLOOPTIME"
397 OS_SPECIFIC_VARS="$OS_SPECIFIC_VARS ; MALLOCMULTIHEAP=considersize,heaps:8 ; export MALLOCMULTIHEAP"
400 OS_SPECIFIC_VARS="export _CEE_RUNOPTS=\"STACK(,,ANY)\" ; export _EDC_ADD_ERRNO2=1"
406 AC_ARG_WITH(port,APACHE_HELP_STRING(--with-port=PORT,Port on which to listen (default is 80)),
407 [if test "$withval" = "yes"; then AC_MSG_ERROR('option --with-port requires a value (the TCP port number)'); else PORT="$withval"; fi],
410 APR_CHECK_APR_DEFINE(APR_HAVE_IPV6)
412 AC_ARG_ENABLE(v4-mapped,APACHE_HELP_STRING(--enable-v4-mapped,Allow IPv6 sockets to handle IPv4 connections),
418 *freebsd5*|*netbsd*|*openbsd*)
427 if test $v4mapped = "yes" -a $ac_cv_define_APR_HAVE_IPV6 = "yes"; then
428 AC_DEFINE(AP_ENABLE_V4_MAPPED, 1,
429 [Allow IPv4 connections on IPv6 listening sockets])
432 AC_ARG_ENABLE(exception-hook,APACHE_HELP_STRING(--enable-exception-hook,Enable fatal exception hook),
434 AC_DEFINE(AP_ENABLE_EXCEPTION_HOOK, 1,
435 [Allow modules to run hook after a fatal exception])
438 AC_ARG_ENABLE(maintainer-mode,APACHE_HELP_STRING(--enable-maintainer-mode,Turn on debugging and compile time warnings),
440 APR_ADDTO(CPPFLAGS, -DAP_DEBUG)
443 dnl Conditionally enable PIE support for GNU toolchains.
444 AC_ARG_ENABLE(pie,APACHE_HELP_STRING(--enable-pie,Build httpd as a Position Independent Executable))
445 if test "$enable_pie" = "yes"; then
446 AC_CACHE_CHECK([whether $CC accepts PIE flags], [ap_cv_cc_pie], [
448 save_LDFLAGS=$LDFLAGS
449 CFLAGS="$CFLAGS -fPIE"
450 LDFLAGS="$LDFLAGS -pie"
451 AC_TRY_RUN([static int foo[30000]; int main () { return 0; }],
452 [ap_cv_cc_pie=yes], [ap_cv_cc_pie=no], [ap_cv_cc_pie=yes])
454 LDFLAGS=$save_LDFLAGS
456 if test "$ap_cv_cc_pie" = "yes"; then
460 AC_ERROR([--enable-pie requested but $CC failed using PIE flags])
466 prefix="$orig_prefix"
467 APACHE_ENABLE_MODULES
469 dnl reading config stubs
470 esyscmd(./build/config-stubs .)
472 APACHE_SUBST(progname)
473 APACHE_SUBST(MPM_LIB)
476 APACHE_SUBST(BUILTIN_LIBS)
477 APACHE_SUBST(SHLIBPATH_VAR)
478 APACHE_SUBST(OS_SPECIFIC_VARS)
480 PRE_SHARED_CMDS='echo ""'
481 POST_SHARED_CMDS='echo ""'
483 dnl apache_need_shared tells us if Apache modules are being built as DSOs
485 if test "$apache_need_shared" = "yes"; then
486 if test -f $ac_aux_dir/ltconfig; then
487 $SHELL $ac_aux_dir/ltconfig --output=shlibtool --disable-static --srcdir=$ac_aux_dir --cache-file=./config.cache $ac_aux_dir/ltmain.sh
489 shared_build="shared-build"
492 dnl enable_so tells us if *any* modules can be built as DSOs
494 if test "$enable_so" = "yes"; then
497 HTTPD_LDFLAGS="$HTTPD_LDFLAGS -Wl,-uXML_Parse -Wl,-bE:$abs_builddir/server/httpd.exp"
498 SH_LDFLAGS="$SH_LDFLAGS \$(EXTRA_LDFLAGS) \$(EXTRA_LIBS)"
499 UTIL_LDFLAGS="$UTIL_LDFLAGS -Wl,-uXML_Parse"
502 SH_LDFLAGS='$(top_builddir)/_APP_'
503 PRE_SHARED_CMDS='ln -s $(top_builddir)/httpd $(top_builddir)/_APP_'
504 POST_SHARED_CMDS='rm $(top_builddir)/_APP_'
507 HTTPD_LDFLAGS="$HTTPD_LDFLAGS --main=$abs_srcdir/server/main.o --core-dll=$abs_srcdir/apachecore.dll"
508 SH_LDFLAGS="$SH_LDFLAGS --core-dll=$abs_srcdir/apachecore.dll"
512 APACHE_SUBST(PRE_SHARED_CMDS)
513 APACHE_SUBST(POST_SHARED_CMDS)
514 APACHE_SUBST(shared_build)
516 AC_ARG_WITH(program-name,
517 APACHE_HELP_STRING(--with-program-name,alternate executable name),[
518 progname="$withval" ], [
522 AC_ARG_WITH(suexec-bin,
523 APACHE_HELP_STRING(--with-suexec-bin,Path to suexec binary),[
524 AC_DEFINE_UNQUOTED(SUEXEC_BIN, "$withval", [Path to suexec binary] )
527 AC_ARG_WITH(suexec-caller,
528 APACHE_HELP_STRING(--with-suexec-caller,User allowed to call SuExec),[
529 AC_DEFINE_UNQUOTED(AP_HTTPD_USER, "$withval", [User allowed to call SuExec] ) ] )
531 AC_ARG_WITH(suexec-userdir,
532 APACHE_HELP_STRING(--with-suexec-userdir,User subdirectory),[
533 AC_DEFINE_UNQUOTED(AP_USERDIR_SUFFIX, "$withval", [User subdirectory] ) ] )
535 AC_ARG_WITH(suexec-docroot,
536 APACHE_HELP_STRING(--with-suexec-docroot,SuExec root directory),[
537 AC_DEFINE_UNQUOTED(AP_DOC_ROOT, "$withval", [SuExec root directory] ) ] )
539 AC_ARG_WITH(suexec-uidmin,
540 APACHE_HELP_STRING(--with-suexec-uidmin,Minimal allowed UID),[
541 AC_DEFINE_UNQUOTED(AP_UID_MIN, $withval, [Minimum allowed UID] ) ] )
543 AC_ARG_WITH(suexec-gidmin,
544 APACHE_HELP_STRING(--with-suexec-gidmin,Minimal allowed GID),[
545 AC_DEFINE_UNQUOTED(AP_GID_MIN, $withval, [Minimum allowed GID] ) ] )
547 AC_ARG_WITH(suexec-logfile,
548 APACHE_HELP_STRING(--with-suexec-logfile,Set the logfile),[
549 AC_DEFINE_UNQUOTED(AP_LOG_EXEC, "$withval", [SuExec log file] ) ] )
551 AC_ARG_WITH(suexec-safepath,
552 APACHE_HELP_STRING(--with-suexec-safepath,Set the safepath),[
553 AC_DEFINE_UNQUOTED(AP_SAFE_PATH, "$withval", [safe shell path for SuExec] ) ] )
555 AC_ARG_WITH(suexec-umask,
556 APACHE_HELP_STRING(--with-suexec-umask,umask for suexec'd process),[
557 AC_DEFINE_UNQUOTED(AP_SUEXEC_UMASK, 0$withval, [umask for suexec'd process] ) ] )
559 dnl APR should go after the other libs, so the right symbols can be picked up
560 AP_LIBS="$AP_LIBS `$apu_config --link-libtool --libs` `$apr_config --link-libtool --libs`"
561 APACHE_SUBST(AP_LIBS)
562 APACHE_SUBST(AP_BUILD_SRCLIB_DIRS)
563 APACHE_SUBST(AP_CLEAN_SRCLIB_DIRS)
565 AC_DEFINE(AP_USING_AUTOCONF, 1,
566 [Using autoconf to configure Apache])
568 if test "$SINGLE_LISTEN_UNSERIALIZED_ACCEPT" = "1"; then
569 AC_DEFINE(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, 1,
570 [This platform doesn't suffer from the thundering herd problem])
573 if test "$AP_NONBLOCK_WHEN_MULTI_LISTEN" = "1"; then
574 AC_DEFINE(AP_NONBLOCK_WHEN_MULTI_LISTEN, 1,
575 [Listening sockets are non-blocking when there are more than 1])
578 AC_DEFINE_UNQUOTED(AP_SIG_GRACEFUL, SIG$AP_SIG_GRACEFUL, [Signal used to gracefully restart])
579 AC_DEFINE_UNQUOTED(AP_SIG_GRACEFUL_STRING, "SIG$AP_SIG_GRACEFUL", [Signal used to gracefully restart (as a quoted string)])
580 AC_DEFINE_UNQUOTED(AP_SIG_GRACEFUL_SHORT, $AP_SIG_GRACEFUL, [Signal used to gracefully restart (without SIG prefix)])
581 AP_SIG_GRACEFUL_SHORT=$AP_SIG_GRACEFUL
582 AP_SIG_GRACEFUL=SIG$AP_SIG_GRACEFUL_SHORT
583 AC_SUBST(AP_SIG_GRACEFUL)
584 AC_SUBST(AP_SIG_GRACEFUL_STRING)
585 AC_SUBST(AP_SIG_GRACEFUL_SHORT)
587 APACHE_FAST_OUTPUT(Makefile modules/Makefile srclib/Makefile)
588 APACHE_FAST_OUTPUT(os/Makefile server/Makefile)
589 APACHE_FAST_OUTPUT(support/Makefile srclib/pcre/Makefile)
591 if test -d ./test; then
592 APACHE_FAST_OUTPUT(test/Makefile)
595 dnl ## Finalize the variables
596 echo $ac_n "${nl}Restore user-defined environment settings...${nl}"
598 APR_RESTORE_THE_ENVIRONMENT(CPPFLAGS, EXTRA_)
599 APR_RESTORE_THE_ENVIRONMENT(CFLAGS, EXTRA_)
600 APR_RESTORE_THE_ENVIRONMENT(CXXFLAGS, EXTRA_)
601 APR_RESTORE_THE_ENVIRONMENT(LDFLAGS, EXTRA_)
602 APR_RESTORE_THE_ENVIRONMENT(LIBS, EXTRA_)
603 APR_RESTORE_THE_ENVIRONMENT(INCLUDES, EXTRA_)
605 echo $ac_n "${nl}Construct makefiles and header files...${nl}"
607 APACHE_GEN_CONFIG_VARS
609 dnl ## Build modules.c
611 echo $MODLIST | $AWK -f $srcdir/build/build-modules-c.awk > modules.c
613 APR_EXPAND_VAR(ap_prefix, $prefix)
614 AC_DEFINE_UNQUOTED(HTTPD_ROOT, "${ap_prefix}",
615 [Root directory of the Apache install area])
616 AC_DEFINE_UNQUOTED(SERVER_CONFIG_FILE, "${rel_sysconfdir}/${progname}.conf",
617 [Location of the config file, relative to the Apache root directory])
618 AC_DEFINE_UNQUOTED(AP_TYPES_CONFIG_FILE, "${rel_sysconfdir}/mime.types",
619 [Location of the MIME types config file, relative to the Apache root directory])
620 AC_DEFINE_UNQUOTED(APACHE_MPM_DIR, "$MPM_DIR",
621 [Location of the source for the current MPM])
623 perlbin=`$ac_aux_dir/PrintPath perl`
624 if test "x$perlbin" = "x"; then
625 perlbin="/replace/with/path/to/perl/interpreter"
629 dnl If we are running on BSD/OS, we need to use the BSD .include syntax.
632 ap_make_include=include
633 ap_make_delimiter=' '
636 # Check whether they've installed GNU make
637 if make --version > /dev/null 2>&1; then
641 ap_make_include=.include
642 ap_make_delimiter='"'
646 AC_SUBST(ap_make_include)
647 AC_SUBST(ap_make_delimiter)
649 dnl Ensure that docs/conf is created.
650 test -d docs/conf||$mkdir_p docs/conf
652 dnl Ensure that the httpd version is included
653 HTTPD_VERSION=`$abs_srcdir/build/get-version.sh all $abs_srcdir/include/ap_release.h AP_SERVER`
654 AC_SUBST(HTTPD_VERSION)
656 AC_OUTPUT($APACHE_OUTPUT_FILES docs/conf/httpd.conf docs/conf/extra/httpd-autoindex.conf docs/conf/extra/httpd-dav.conf docs/conf/extra/httpd-default.conf docs/conf/extra/httpd-info.conf docs/conf/extra/httpd-languages.conf docs/conf/extra/httpd-manual.conf docs/conf/extra/httpd-mpm.conf docs/conf/extra/httpd-multilang-errordoc.conf docs/conf/extra/httpd-ssl.conf docs/conf/extra/httpd-userdir.conf docs/conf/extra/httpd-vhosts.conf include/ap_config_layout.h support/apxs support/apachectl support/dbmmanage support/envvars-std support/log_server_status support/logresolve.pl support/phf_abuse_log.cgi support/split-logfile build/rules.mk build/pkg/pkginfo build/config_vars.sh,[true],[
660 case $MPM_SUBDIR_NAME in
664 echo "============================================================"
665 echo " WARNING: THE '${APACHE_MPM}' MPM IS EXPERIMENTAL"
666 echo "============================================================"
667 echo " The selected MPM might not be fully functional!"
669 echo " Development of this MPM is not complete. Do not use this"
670 echo " MPM unless you are a programmer willing to help fix it."
672 echo " If you are looking for a stable server, you should not use"
673 echo " the '${APACHE_MPM}' MPM until it is moved out of experimental."
674 echo "============================================================"