--- libaitsched/configure.in 2012/01/24 21:59:46 1.4 +++ libaitsched/configure.in 2014/05/19 22:28:50 1.34.2.4 @@ -1,11 +1,14 @@ # # $Author: misho $ -# $Id: configure.in,v 1.4 2012/01/24 21:59:46 misho Exp $ +# $Id: configure.in,v 1.34.2.4 2014/05/19 22:28:50 misho Exp $ # -AC_INIT(libaitsched, 1.3, misho@openbsd-bg.org) +AC_INIT(libaitsched, 5.2, misho@elwix.org) AC_CONFIG_SRCDIR([src/aitsched.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 @@ -14,15 +17,16 @@ AC_PROG_RANLIB AC_CANONICAL_HOST AC_CANONICAL_TARGET -AC_CHECK_TOOL(MKDEP, mkdep, no) +AC_CHECK_TOOL(MKDEP, mkdep, ../mkdep) AC_SUBST(MKDEP) -CFLAGS="-Wall -O2 -fPIC -I/usr/local/include ${CFLAGS}" -LDFLAGS="-L/usr/local/lib ${LDFLAGS}" +CFLAGS="-Wall -O2 -fPIC ${CFLAGS}" +LDFLAGS="${LDFLAGS}" # Checks for libraries. AC_CHECK_LIB([pthread], [pthread_create]) +AC_CHECK_LIB([rt], [aio_read]) # Checks for header files. AC_CHECK_HEADERS([stdint.h stdlib.h string.h sys/time.h unistd.h]) @@ -33,7 +37,7 @@ AC_TYPE_SIZE_T # Checks for library functions. AC_FUNC_MALLOC -AC_CHECK_FUNCS([clock_gettime memset strerror]) +AC_CHECK_FUNCS([clock_gettime memset strerror timer_create timer_settime timer_delete]) DEBUG=no AC_MSG_CHECKING(Debug Build) @@ -51,8 +55,58 @@ AC_ARG_ENABLE(debug, esac ], AC_DEFINE(NDEBUG,, [Turn off debug asserts])) AC_MSG_RESULT($DEBUG) +AIO=no +AC_MSG_CHECKING(AIO Builtin support) +AC_ARG_ENABLE(aio, + [ --enable-aio Build scheduler library with AIO operations ], + [ AIO=$enableval + case "$enableval" in + yes) + AC_DEFINE(AIO_SUPPORT,, [Build scheduler library with AIO operations]) + ;; + *) + ;; + esac ],) +AC_MSG_RESULT($AIO) + +KQSUP=yes +AC_MSG_CHECKING(kqueue support) +AC_ARG_ENABLE(kqueue, + [ --disable-kqueue Disable kqueue support ], + [ KQSUP=$enableval + case "$enableval" in + yes) + AC_DEFINE(KQ_ENABLE,, [Enable kqueue support]) + ;; + *) + ;; + esac ], [ AC_DEFINE(KQ_ENABLE,, [Enable kqueue support]) ]) +AC_MSG_RESULT($KQSUP) + +KQ_EVENTS=24 +AC_MSG_CHECKING(How many kqueue events can scheduling at one time) +AC_ARG_WITH(kq_events, + [ --with-kq_events Set how many kqueue events can scheduling at one time ], + [ KQ_EVENTS=$withval ], KQ_EVENTS=32) +AC_DEFINE_UNQUOTED(KQ_EVENTS, $KQ_EVENTS, [ How many kqueue events can scheduling at one time ]) +AC_MSG_RESULT($KQ_EVENTS) + +EPSUP=no +AC_MSG_CHECKING(epoll support) +AC_ARG_ENABLE(epoll, + [ --enable-epoll Enable epoll support (only under Linux) ], + [ EPSUP=$enableval + case "$enableval" in + yes) + AC_DEFINE(EP_ENABLE,, [Enable epoll support]) + ;; + *) + ;; + esac ],) +AC_MSG_RESULT($EPSUP) + AC_CONFIG_FILES([Makefile inc/Makefile lib/Makefile src/Makefile]) -AC_OUTPUT +AC_OUTPUT()