--- libaitsched/configure.in 2013/09/02 11:21:22 1.28 +++ libaitsched/configure.in 2024/02/26 12:58:55 1.56 @@ -1,8 +1,8 @@ # # $Author: misho $ -# $Id: configure.in,v 1.28 2013/09/02 11:21:22 misho Exp $ +# $Id: configure.in,v 1.56 2024/02/26 12:58:55 misho Exp $ # -AC_INIT(libaitsched, 4.3, misho@elwix.org) +AC_INIT(libaitsched, 8.0, misho@elwix.org) AC_CONFIG_SRCDIR([src/aitsched.c]) AC_CONFIG_HEADERS([inc/config.h]) @@ -17,19 +17,21 @@ 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]) +AC_CHECK_LIB([bsd], [strlcpy]) # Checks for header files. AC_CHECK_HEADERS([stdint.h stdlib.h string.h sys/time.h unistd.h]) +AC_CHECK_HEADERS([bsd/string.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_INLINE @@ -37,7 +39,7 @@ AC_TYPE_SIZE_T # Checks for library functions. AC_FUNC_MALLOC -AC_CHECK_FUNCS([clock_gettime memset strerror timer_create timer_settime]) +AC_CHECK_FUNCS([clock_gettime memset strerror timer_create timer_settime timer_delete strlcat strlcpy]) DEBUG=no AC_MSG_CHECKING(Debug Build) @@ -69,6 +71,41 @@ AC_ARG_ENABLE(aio, esac ],) AC_MSG_RESULT($AIO) +AC_DEFINE(NO_SUPPORT, 0, [select support]) +AC_DEFINE(KQ_SUPPORT, 1, [kqueue support]) +AC_DEFINE(EP_SUPPORT, 2, [epoll support]) + +AC_DEFINE(SUP_ENABLE, KQ_SUPPORT, [support type]) + +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(SUP_ENABLE, EP_SUPPORT, [support type]) + KQSUP=no + ;; + *) + KQSUP=yes + ;; + esac ], [ KQSUP=yes ]) +AC_MSG_RESULT($EPSUP) + +AC_MSG_CHECKING(kqueue support) +AC_ARG_ENABLE(kqueue, + [ --disable-kqueue Disable kqueue support ], + [ KQSUP=$enableval + case "$enableval" in + no) + AC_DEFINE(SUP_ENABLE, NO_SUPPORT, [support type]) + ;; + *) + ;; + esac ], ) +AC_MSG_RESULT($KQSUP) + KQ_EVENTS=24 AC_MSG_CHECKING(How many kqueue events can scheduling at one time) AC_ARG_WITH(kq_events, @@ -76,6 +113,22 @@ AC_ARG_WITH(kq_events, [ 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) + +ELWIX=no +AC_MSG_CHECKING(With libelwix Build) +AC_ARG_WITH(elwix, + [ --with-elwix Build library with libelwix memory managemant], + [ ELWIX=$withval + case "$withval" in + yes) + AC_DEFINE(__ELWIX,, [Build libraries with libelwix memory managemant]) + CFLAGS="-g ${CFLAGS}" + LIBS="${LIBS} -lelwix" + ;; + *) + ;; + esac ],) +AC_MSG_RESULT($ELWIX) AC_CONFIG_FILES([Makefile inc/Makefile