summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2007-01-15 07:15:47 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:40:55 -0500
commit274df78541eec948e546bb98901b5bb00aaadc00 (patch)
tree959390245acf753ef11ddbc78280a9baf8bdacf9
parentf5473306c53b53f7e13bce74a0fb1138699afa22 (diff)
downloadsamba-274df78541eec948e546bb98901b5bb00aaadc00.tar.gz
samba-274df78541eec948e546bb98901b5bb00aaadc00.tar.xz
samba-274df78541eec948e546bb98901b5bb00aaadc00.zip
r20788: - remove epoll configure checks from libreplace
- fix epoll configure checks for the epoll and aio events backends - we should only activate the epoll backend if sys/epoll.h and epoll_create() are found - we should only activate the aio backend if sys/epoll.h, epoll_create(), libaio.h and io_getevents() are found hopefully fix the build on 'bnhtest' in the build farm... metze (This used to be commit d46a5efb03ea1df50567cad00e1589870cdb31fe)
-rw-r--r--source4/lib/events/config.m428
-rw-r--r--source4/lib/events/events_aio.c2
-rw-r--r--source4/lib/events/events_epoll.c2
-rw-r--r--source4/lib/replace/libreplace.m43
-rw-r--r--source4/lib/replace/system/select.h9
5 files changed, 15 insertions, 29 deletions
diff --git a/source4/lib/events/config.m4 b/source4/lib/events/config.m4
index 8c61f7ed428..b23407baed9 100644
--- a/source4/lib/events/config.m4
+++ b/source4/lib/events/config.m4
@@ -1,19 +1,17 @@
-AC_CHECK_HEADERS(sys/epoll.h)
-
-# check for native Linux AIO interface
-SMB_ENABLE(EVENTS_AIO, NO)
-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
- SMB_ENABLE(EVENTS_AIO,YES)
- AC_DEFINE(HAVE_LINUX_AIO, 1, [Whether Linux AIO is available])
-fi
-SMB_EXT_LIB(LIBAIO_LINUX, $AIO_LIBS)
-
-# check for native Linux AIO interface
+# check for EPOLL and native Linux AIO interface
SMB_ENABLE(EVENTS_EPOLL, NO)
+SMB_ENABLE(EVENTS_AIO, NO)
AC_CHECK_HEADERS(sys/epoll.h)
-if test x"$ac_cv_header_sys_epoll_h" = x"yes";then
+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
SMB_ENABLE(EVENTS_EPOLL,YES)
-fi
+ # 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
+ SMB_ENABLE(EVENTS_AIO,YES)
+ AC_DEFINE(HAVE_LINUX_AIO, 1, [Whether Linux AIO is available])
+ fi
+ SMB_EXT_LIB(LIBAIO_LINUX, $AIO_LIBS)
+fi
diff --git a/source4/lib/events/events_aio.c b/source4/lib/events/events_aio.c
index 52ddadfc524..6d9dd6d7538 100644
--- a/source4/lib/events/events_aio.c
+++ b/source4/lib/events/events_aio.c
@@ -33,10 +33,10 @@
#include "includes.h"
#include "system/filesys.h"
-#include "system/select.h" /* needed for WITH_EPOLL */
#include "lib/util/dlinklist.h"
#include "lib/events/events.h"
#include "lib/events/events_internal.h"
+#include <sys/epoll.h>
#include <libaio.h>
#define MAX_AIO_QUEUE_DEPTH 100
diff --git a/source4/lib/events/events_epoll.c b/source4/lib/events/events_epoll.c
index cd894d8dff1..f69b5bc6f49 100644
--- a/source4/lib/events/events_epoll.c
+++ b/source4/lib/events/events_epoll.c
@@ -23,10 +23,10 @@
#include "includes.h"
#include "system/filesys.h"
-#include "system/select.h" /* needed for WITH_EPOLL */
#include "lib/util/dlinklist.h"
#include "lib/events/events.h"
#include "lib/events/events_internal.h"
+#include <sys/epoll.h>
struct epoll_event_context {
/* a pointer back to the generic event_context */
diff --git a/source4/lib/replace/libreplace.m4 b/source4/lib/replace/libreplace.m4
index b63c0fd4718..dff60982971 100644
--- a/source4/lib/replace/libreplace.m4
+++ b/source4/lib/replace/libreplace.m4
@@ -63,9 +63,6 @@ AC_CHECK_FUNCS(pipe strftime srandom random srand rand usleep setbuffer lstat ge
AC_CHECK_HEADERS(stdbool.h sys/select.h)
-AC_CHECK_HEADERS(sys/epoll.h)
-AC_CHECK_FUNCS(epoll_create)
-
AC_CHECK_TYPE(bool,
[AC_DEFINE(HAVE_BOOL, 1, [Whether the bool type is available])],,
[
diff --git a/source4/lib/replace/system/select.h b/source4/lib/replace/system/select.h
index 0d1eabbc35d..20346259c27 100644
--- a/source4/lib/replace/system/select.h
+++ b/source4/lib/replace/system/select.h
@@ -30,13 +30,4 @@
#define SELECT_CAST
#endif
-/* use epoll if it is available */
-#if defined(HAVE_EPOLL_CREATE) && defined(HAVE_SYS_EPOLL_H)
-#define WITH_EPOLL 1
-#endif
-
-#if WITH_EPOLL
-#include <sys/epoll.h>
-#endif
-
#endif