#
# $Author: misho $
# $Id: configure.in,v 1.29 2014/01/28 14:05:43 misho Exp $
#
AC_INIT(libaitrpc, 6.8, misho@elwix.org)
AC_CONFIG_SRCDIR([src/aitrpc.c])
AC_CONFIG_HEADERS([inc/config.h])
ac_cv_func_malloc_0_nonnull="yes"
ac_cv_func_realloc_0_nonnull="yes"
# Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
AC_CHECK_TOOL(MKDEP, mkdep, no)
AC_SUBST(MKDEP)
CFLAGS="-Wall -O2 -fPIC ${CFLAGS}"
LDFLAGS="${LDFLAGS}"
# Checks for libraries.
AC_CHECK_LIB([pthread], [pthread_create])
AC_CHECK_LIB([elwix], [array_Init])
AC_CHECK_LIB([aitsched], [schedInit])
# Checks for header files.
AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h stdlib.h string.h sys/param.h sys/socket.h unistd.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_INLINE
AC_TYPE_INT16_T
AC_TYPE_INT32_T
AC_TYPE_INT64_T
AC_TYPE_INT8_T
AC_TYPE_UINT16_T
AC_TYPE_UINT32_T
AC_TYPE_UINT64_T
AC_TYPE_UINT8_T
# Checks for library functions.
AC_FUNC_FORK
AC_FUNC_MALLOC
AC_FUNC_REALLOC
AC_CHECK_FUNCS([memset select socket strdup strerror])
AC_CHECK_FUNCS([srandomdev])
AC_CHECK_FUNCS([crcFletcher16 hash_fnv1])
AC_CHECK_FUNCS([pthread_yield])
AC_CHECK_FUNCS([array_Init array_Destroy])
AC_CHECK_FUNCS([schedInit schedEnd])
DEBUG=no
AC_MSG_CHECKING(Debug Build)
AC_ARG_ENABLE(debug,
[ --enable-debug Build library with debug information and additional messages],
[ DEBUG=$enableval
case "$enableval" in
yes)
AC_DEFINE(__DEBUG,, [Build libraries with debug information and additional messages])
CFLAGS="-g ${CFLAGS}"
;;
*)
AC_DEFINE(NDEBUG,, [Build w/o assert() support])
;;
esac ],)
AC_MSG_RESULT($DEBUG)
CLI_RES_ZC=no
AC_MSG_CHECKING(Client zero-copy return variables)
AC_ARG_ENABLE(cli-res-zcpy,
[ --enable-cli-res-zcpy Build library with zero-copy return array from RPC client ],
[ CLI_RES_ZC=$enableval
case "$enableval" in
yes)
AC_DEFINE(CLI_RES_ZCOPY,,
[Build library with zero-copy return array from RPC client])
;;
*)
;;
esac ],)
AC_MSG_RESULT($CLI_RES_ZC)
TCP_SESSION_TIMEOUT=no
AC_MSG_CHECKING(RPC server can to do expiring for TCP sessions)
AC_ARG_ENABLE(tcp_sess_exp,
[ --enable-tcp_sess_exp Build library with TCP session expiration],
[ TCP_SESSION_TIMEOUT=$enableval
case "$enableval" in
yes)
AC_DEFINE(TCP_SESSION_TIMEOUT,,
[Build library with TCP session expiration])
;;
*)
;;
esac ],)
AC_MSG_RESULT($TCP_SESSION_TIMEOUT)
DEF_RPC_TIMEOUT=60
AC_MSG_CHECKING(RPC server timeout period)
AC_ARG_WITH(timeout_period,
[ --with-timeout_period Build library with TCP timeout period],
[ DEF_RPC_TIMEOUT=$withval ],)
AC_DEFINE_UNQUOTED(DEF_RPC_TIMEOUT, $DEF_RPC_TIMEOUT, [Build library with TCP timeout period])
AC_MSG_RESULT($DEF_RPC_TIMEOUT)
AC_CONFIG_FILES([Makefile
inc/Makefile
lib/Makefile
src/Makefile])
AC_OUTPUT
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>