summaryrefslogtreecommitdiff
path: root/source4/lib/events/libevents.m4
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2008-06-14 11:23:31 -0400
committerSimo Sorce <idra@samba.org>2008-06-14 11:59:19 -0400
commit2aba4107915611b223daa8c27c52352f57b25bbc (patch)
treeb97a1f2408c3101ca8e66faa6851848d829e4f5f /source4/lib/events/libevents.m4
parent3443954c2bf971c3506aa40667989a10d5769706 (diff)
downloadsamba-2aba4107915611b223daa8c27c52352f57b25bbc.tar.gz
samba-2aba4107915611b223daa8c27c52352f57b25bbc.tar.bz2
samba-2aba4107915611b223daa8c27c52352f57b25bbc.zip
This patch make it possible to build the events library completely
standalone with no ties to internal samba4 functions Samba4 itself just uses the plain library, compatibility glue is in events_s4.c only (This used to be commit 7109b6a5a19eb2dbef4259104858b171298bad6e)
Diffstat (limited to 'source4/lib/events/libevents.m4')
-rw-r--r--source4/lib/events/libevents.m424
1 files changed, 21 insertions, 3 deletions
diff --git a/source4/lib/events/libevents.m4 b/source4/lib/events/libevents.m4
index 483ab861fb..be3f1bb638 100644
--- a/source4/lib/events/libevents.m4
+++ b/source4/lib/events/libevents.m4
@@ -13,16 +13,34 @@ if test x"$eventsdir" = "x"; then
AC_MSG_ERROR([cannot find libevents source in $eventspaths])
fi
-EVENTS_OBJ="events.o events_select.o events_signal.o events_timed.o events_standard.o events_util.o"
-AC_SUBST(LIBREPLACEOBJ)
+EVENTS_OBJ="events.o events_select.o events_signal.o events_timed.o events_standard.o events_debug.o events_util.o"
+SMB_ENABLE(EVENTS_EPOLL, NO)
+SMB_ENABLE(EVENTS_AIO, NO)
AC_CHECK_HEADERS(sys/epoll.h)
AC_CHECK_FUNCS(epoll_create)
-
if test x"$ac_cv_header_sys_epoll_h" = x"yes" -a x"$ac_cv_func_epoll_create" = x"yes"; then
EVENTS_OBJ="$EVENTS_OBJ events_epoll.o"
+ SMB_ENABLE(EVENTS_EPOLL,YES)
AC_DEFINE(HAVE_EVENTS_EPOLL, 1, [Whether epoll available])
+
+ # check for native Linux AIO interface
+ AC_CHECK_HEADERS(libaio.h)
+ AC_CHECK_LIB_EXT(aio, AIO_LIBS, io_getevents)
+ if test x"$ac_cv_header_libaio_h" = x"yes" -a x"$ac_cv_lib_ext_aio_io_getevents" = x"yes";then
+ EVENTS_OBJ="$EVENTS_OBJ events_aio.o"
+ SMB_ENABLE(EVENTS_AIO,YES)
+ AC_DEFINE(HAVE_LINUX_AIO, 1, [Whether Linux AIO is available])
+ fi
fi
AC_SUBST(EVENTS_OBJ)
+SMB_EXT_LIB(LIBAIO_LINUX, $AIO_LIBS)
+
+EVENTS_CFLAGS="-I$eventsdir"
+AC_SUBST(EVENTS_CFLAGS)
+
+EVENTS_LIBS=""
+AC_SUBST(EVENTS_LIBS)
+