blob: 6d3ef4d4526316faef716d843bdc7eac4ec41230 [file] [log] [blame]
dnl
dnl Process this file with autoconf to produce a configure script
dnl
AC_PREREQ(2.13)
AC_INIT(export_vars.sh.in)
AC_CONFIG_HEADER(include/private/apu_config.h)
AC_CONFIG_AUX_DIR(../apr/build)
sinclude(build/apu-conf.m4)
sinclude(build/apu-iconv.m4)
sinclude(build/apu-hints.m4)
sinclude(../apr/build/apr_common.m4)
sinclude(../apr/build/find_apr.m4)
dnl Generate ./config.nice for reproducing runs of configure
dnl
APR_CONFIG_NICE(config.nice)
dnl # Some initial steps for configuration. We setup the default directory
dnl # and which files are to be configured.
dnl Absolute source/build directory
abs_srcdir=`(cd $srcdir && pwd)`
abs_builddir=`pwd`
if test "$abs_builddir" != "$abs_srcdir"; then
USE_VPATH=1
fi
AC_CANONICAL_SYSTEM
dnl
dnl compute the top directory of the build
dnl note: this is needed for LIBTOOL and exporting the bundled Expat
dnl
top_builddir="$abs_builddir"
AC_SUBST(top_builddir)
AC_SUBST(abs_srcdir)
AC_SUBST(abs_builddir)
dnl Initialize mkdir -p functionality.
APR_MKDIR_P_CHECK($abs_srcdir/build/mkdir.sh)
dnl get our version information
get_version="$abs_srcdir/build/get-version.sh"
version_hdr="$abs_srcdir/include/apu_version.h"
APRUTIL_MAJOR_VERSION="`$get_version major $version_hdr APU`"
APRUTIL_DOTTED_VERSION="`$get_version all $version_hdr APU`"
AC_SUBST(APRUTIL_DOTTED_VERSION)
AC_SUBST(APRUTIL_MAJOR_VERSION)
echo "APR-util Version: ${APRUTIL_DOTTED_VERSION}"
dnl Enable the layout handling code, then reparse the prefix-style
dnl arguments due to autoconf being a PITA.
APR_ENABLE_LAYOUT(apr-util)
APR_PARSE_ARGUMENTS
dnl load os-specific hints for apr-util
APU_PRELOAD
dnl
dnl set up the compilation flags and stuff
dnl
APRUTIL_INCLUDES=""
APRUTIL_PRIV_INCLUDES="-I$top_builddir/include -I$top_builddir/include/private"
if test -n "$USE_VPATH"; then
APRUTIL_PRIV_INCLUDES="$APRUTIL_PRIV_INCLUDES -I$abs_srcdir/include/private -I$abs_srcdir/include"
fi
dnl
dnl 1. Find the APR includes directory and (possibly) the source (base) dir.
dnl 2. Determine what DBM backend type to use.
dnl 3. Find Expat
dnl 4. Find an iconv library
dnl
APU_FIND_APR
APU_FIND_LDAP
APU_CHECK_DBM
APU_FIND_EXPAT
APU_FIND_ICONV
so_ext=$APR_SO_EXT
lib_target=$APR_LIB_TARGET
AC_SUBST(so_ext)
AC_SUBST(lib_target)
APRUTIL_LIBNAME="aprutil${libsuffix}"
AC_SUBST(APRUTIL_LIBNAME)
EXTRA_OS_LINK=""
host_alias=`uname -s`
case "$host_alias" in
*BeOS*)
dnl ### BeOS requires that ALL symbols resolve at LINK time!
dnl ###
dnl ### So, if we're building on BeOS then we need to add in the
dnl ### apr and expat libraries to the build or it'll die a truly horrible
dnl ### death. We now use the apr-config tool to determine the correct
dnl ### library to link against :)
aprlib=`$APR_BUILD_DIR/apr-config --link-libtool`
EXTRA_OS_LINK="$aprlib $top_builddir/xml/expat/lib/libexpat.la"
;;
*AIX*)
dnl need such stuff as -liconv to be specified when building libaprutil.la
EXTRA_OS_LINK='$(APRUTIL_LIBS)'
;;
*)
;;
esac
AC_SUBST(EXTRA_OS_LINK)
dnl
dnl Prep all the flags and stuff for compilation and export to other builds
dnl
APR_ADDTO(APRUTIL_LIBS, [$APR_LIBS])
AC_SUBST(APRUTIL_EXPORT_LIBS)
AC_SUBST(APRUTIL_PRIV_INCLUDES)
AC_SUBST(APRUTIL_INCLUDES)
AC_SUBST(APRUTIL_LDFLAGS)
AC_SUBST(APRUTIL_LIBS)
AC_SUBST(LDFLAGS)
dnl
dnl BSD/OS (BSDi) needs to use a different include syntax in the Makefiles
dnl
case "$host_alias" in
*bsdi* | BSD/OS)
# Check whether they've installed GNU make
if make --version > /dev/null 2>&1; then
INCLUDE_RULES="include $APR_BUILD_DIR/build/rules.mk"
else
INCLUDE_RULES=".include \"$APR_BUILD_DIR/build/rules.mk\""
fi
;;
*)
INCLUDE_RULES="include $APR_BUILD_DIR/build/rules.mk"
;;
esac
AC_SUBST(INCLUDE_RULES)
if test -d ./test; then
test_Makefile="test/Makefile"
fi
if test ! -d "$top_builddir/include/private"; then
mkdir $top_builddir/include
mkdir $top_builddir/include/private
fi
dnl
dnl everthing is done.
MAKEFILES="Makefile buckets/Makefile crypto/Makefile dbm/Makefile dbm/sdbm/Makefile encoding/Makefile hooks/Makefile ldap/Makefile uri/Makefile xml/Makefile misc/Makefile strmatch/Makefile xlate/Makefile $test_Makefile"
AC_OUTPUT([
export_vars.sh
apu-config
include/private/apu_select_dbm.h
include/apr_ldap.h
include/apu.h
$MAKEFILES
],[
chmod +x apu-config
])