mirror of
https://github.com/apache/httpd.git
synced 2025-08-20 16:09:55 +00:00

chose to use --with-maintainer-mode, because that flag can be passed down using AC_CONFIG_SUBDIRS. I couldn't find any easy way to pass environment variables to configure scripts called from within Apache's configure. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85262 13f79535-47bb-0310-9956-ffa450edef68
231 lines
5.4 KiB
Plaintext
231 lines
5.4 KiB
Plaintext
dnl ## Process this file with autoconf to produce a configure script
|
|
|
|
AC_PREREQ(2.13)
|
|
AC_INIT(acinclude.m4)
|
|
|
|
dnl ## This is the central place where Apache's version should be kept.
|
|
dnl AM_INIT_AUTOMAKE(apache, 2.0-dev)
|
|
|
|
VERSION="apache-2.0-dev"
|
|
|
|
AC_CONFIG_HEADER(include/ap_config_auto.h)
|
|
|
|
APACHE_VERSION=$VERSION
|
|
APACHE_SUBST(APACHE_VERSION)
|
|
|
|
test "$exec_prefix" = "NONE" && exec_prefix='${prefix}'
|
|
test "$prefix" = "NONE" && prefix='/usr/local'
|
|
|
|
dnl Absolute source/build directory
|
|
abs_srcdir=`(cd $srcdir && pwd)`
|
|
abs_builddir=`pwd`
|
|
|
|
APACHE_CONFIG_NICE(config.nice)
|
|
|
|
dnl If the source dir is not equal to the build dir,
|
|
dnl then we are running in VPATH mode.
|
|
|
|
if test "$abs_builddir" != "$abs_srcdir"; then
|
|
USE_VPATH=1
|
|
fi
|
|
|
|
dnl ## Run configure for packages Apache uses
|
|
AC_CONFIG_SUBDIRS(lib/pcre lib/apr)
|
|
|
|
dnl
|
|
dnl ## Preload our OS configuration
|
|
APR_PRELOAD
|
|
|
|
dnl ## Check for programs
|
|
|
|
AC_PROG_AWK
|
|
AC_PROG_CC
|
|
AC_PROG_CPP
|
|
AC_PROG_INSTALL
|
|
dnl AC_PROG_RANLIB
|
|
dnl AC_PATH_PROG(PERL_PATH, perl)
|
|
|
|
REENTRANCY_FLAGS
|
|
|
|
dnl various OS checks that apparently set required flags
|
|
AC_AIX
|
|
AC_ISC_POSIX
|
|
AC_MINIX
|
|
|
|
dnl ## Check for libraries
|
|
|
|
dnl ## Check for header files
|
|
|
|
dnl I think these are just used all over the place, so just check for
|
|
dnl them at the base of the tree. If some are specific to a single
|
|
dnl directory, they should be moved (Comment #Spoon)
|
|
|
|
dnl Regarding standard header files: AC_HEADER_STDC doesn't set symbols
|
|
dnl HAVE_STRING_H, HAVE_STDLIB_H, etc., so those are checked for
|
|
dnl explicitly so that the normal HAVE_xxx_H symbol is defined.
|
|
|
|
AC_HEADER_STDC
|
|
AC_CHECK_HEADERS( \
|
|
string.h \
|
|
stdlib.h \
|
|
ctype.h \
|
|
limits.h \
|
|
unistd.h \
|
|
sys/stat.h \
|
|
sys/time.h \
|
|
sys/types.h \
|
|
sys/socket.h \
|
|
netinet/in.h \
|
|
netinet/tcp.h \
|
|
arpa/inet.h \
|
|
netdb.h \
|
|
pwd.h \
|
|
grp.h \
|
|
)
|
|
AC_HEADER_SYS_WAIT
|
|
AC_STRUCT_TM
|
|
|
|
dnl ## Check for C preprocessor symbols
|
|
|
|
AC_CHECK_DEFINE(EAGAIN, errno.h)
|
|
|
|
dnl ## Check for typedefs, structures, and compiler characteristics.
|
|
|
|
AC_C_CONST
|
|
AC_C_INLINE
|
|
AC_TYPE_PID_T
|
|
|
|
dnl ## Check for library functions
|
|
|
|
dnl See Comment #Spoon
|
|
|
|
AC_CHECK_FUNCS( \
|
|
strdup \
|
|
strcasecmp \
|
|
strncasecmp \
|
|
strstr \
|
|
strerror \
|
|
initgroups \
|
|
waitpid \
|
|
gettimeofday \
|
|
memmove \
|
|
bzero \
|
|
)
|
|
|
|
AC_CHECK_LIB(nsl, gethostbyname)
|
|
AC_CHECK_LIB(nsl, gethostname)
|
|
AC_CHECK_LIB(socket, socket)
|
|
AC_CHECK_LIB(resolv, sethostent)
|
|
|
|
AC_CHECK_FUNCS(inet_addr inet_network, break, [
|
|
AC_MSG_ERROR(inet_addr function not found)
|
|
])
|
|
|
|
APACHE_INADDR_NONE
|
|
|
|
APACHE_EBCDIC
|
|
|
|
AC_FUNC_SELECT_ARGTYPES
|
|
|
|
dnl Check if we'll actually need to cast select args all the time
|
|
if test "$ac_cv_func_select_arg1" != "int" \
|
|
-o "$ac_cv_func_select_arg234" != "fd_set *" \
|
|
-o "$ac_cv_func_select_arg5" != "struct timeval *" ; then
|
|
|
|
AC_DEFINE(SELECT_NEEDS_CAST,,
|
|
[Define if arguments to select() aren't what we expect])
|
|
fi
|
|
|
|
AC_ARG_WITH(optim,[ --with-optim="FLAGS" compiler optimisation flags],
|
|
[OPTIM="$withval"])
|
|
|
|
AC_ARG_WITH(debug,[ --with-debug Turn on debugging and compile time warnings],
|
|
[if test "$GCC" = "yes"; then CFLAGS="$CFLAGS -g -Wall"; else CFLAGS="$CFLAGS -g"; fi])
|
|
|
|
AC_ARG_WITH(maintainer-mode,[ --with-maintainer-mode Turn on debugging and compile time warnings],
|
|
[if test "$GCC" = "yes"; then CFLAGS="$CFLAGS -g -Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations"; else CFLAGS="$CFLAGS -g"; fi])
|
|
|
|
APACHE_ENABLE_LAYOUT
|
|
APACHE_ENABLE_MODULES
|
|
APACHE_ENABLE_SHARED
|
|
|
|
INCLUDES="-I\$(top_srcdir)/include -I\$(top_srcdir)/lib/apr/include"
|
|
if test -n "$USE_VPATH"; then
|
|
INCLUDES="$INCLUDES -I\$(top_builddir)/include -I\$(top_builddir)/lib/apr/include"
|
|
fi
|
|
|
|
dnl reading config stubs
|
|
esyscmd(./helpers/config-stubs .)
|
|
|
|
INCLUDES="$INCLUDES -I\$(top_srcdir)/os/\$(OS_DIR)"
|
|
EXTRA_LIBS="$EXTRA_LIBS $LIBS"
|
|
EXTRA_LDFLAGS="$LDFLAGS"
|
|
LIBS=""
|
|
LDFLAGS=""
|
|
APACHE_SUBST(progname)
|
|
APACHE_SUBST(EXTRA_CFLAGS)
|
|
APACHE_SUBST(EXTRA_LDFLAGS)
|
|
APACHE_SUBST(EXTRA_LIBS)
|
|
APACHE_SUBST(INCLUDES)
|
|
APACHE_SUBST(MPM_LIB)
|
|
APACHE_SUBST(OS)
|
|
APACHE_SUBST(OS_DIR)
|
|
APACHE_SUBST(BUILTIN_LIBS)
|
|
APACHE_SUBST(LIBPRE)
|
|
|
|
AM_DISABLE_SHARED
|
|
AM_PROG_LIBTOOL
|
|
APACHE_LIBTOOL_SILENT
|
|
|
|
if test "$apache_need_shared" = "yes"; then
|
|
$SHELL $srcdir/ltconfig --output=shlibtool --disable-static --srcdir=$srcdir --cache-file=./config.cache $srcdir/ltmain.sh
|
|
fi
|
|
|
|
AC_ARG_WITH(program-name,
|
|
[ --with-program-name=alternate executable name],[
|
|
progname="$withval" ], [
|
|
progname="httpd"] )
|
|
|
|
APACHE_FAST_OUTPUT(Makefile ap/Makefile lib/Makefile main/Makefile
|
|
modules/Makefile os/Makefile support/Makefile)
|
|
|
|
APACHE_FAST_GENERATE
|
|
|
|
dnl There needs to be a .deps file in the top build directory.
|
|
dnl All others are created dynamically by rules.mk.
|
|
|
|
touch .deps
|
|
|
|
dnl ## Build modules.c
|
|
rm -f $srcdir/modules.c
|
|
echo $MODLIST | $AWK -f $srcdir/helpers/build-modules-c.awk > $srcdir/modules.c
|
|
|
|
AC_OUTPUT_COMMANDS([
|
|
echo '/* Generated by configure */' > ${path_h}.new
|
|
echo "#define HTTPD_ROOT \"$prefix\"" >> ${path_h}.new
|
|
echo "#define SUEXEC_BIN \"$bindir/suexec\"" >> ${path_h}.new
|
|
echo "#define SERVER_CONFIG_FILE \"conf/$progname.conf\"" >> ${path_h}.new
|
|
|
|
cmp ${path_h}.new ${path_h} >/dev/null 2>&1
|
|
if test $? -ne 0 ; then
|
|
rm -f ${path_h} && mv ${path_h}.new ${path_h} && \
|
|
echo "Updated ${path_h}"
|
|
else
|
|
rm -f ${path_h}.new && \
|
|
echo "${path_h} unchanged"
|
|
fi
|
|
],[
|
|
path_h=./include/ap_config_path.h
|
|
prefix=$prefix
|
|
exec_prefix=$exec_prefix
|
|
bindir=$bindir
|
|
progname=$progname
|
|
])
|
|
|
|
perlbin=`./helpers/PrintPath perl`
|
|
AC_SUBST(perlbin)
|
|
|
|
AC_OUTPUT($APACHE_OUTPUT_FILES support/apxs)
|
|
|
|
|