]> git.llucax.com Git - software/libev.git/commitdiff
*** empty log message ***
authorroot <root>
Mon, 12 Nov 2007 00:39:45 +0000 (00:39 +0000)
committerroot <root>
Mon, 12 Nov 2007 00:39:45 +0000 (00:39 +0000)
README.embed
ev.c

index d168cc51654d16dc60bb448de2366e890128e582..b7e3ea473bf5233b95fbcc21a942545397496618 100644 (file)
@@ -106,7 +106,17 @@ PREPROCESSOR SYMBOLS
        done: if no other method takes over, select will be it. Otherwise
        the select backend will not be compiled in.
 
        done: if no other method takes over, select will be it. Otherwise
        the select backend will not be compiled in.
 
-    EV_SELECT_USE_WIN32_HANDLES
+    EV_SELECT_USE_FD_SET
+
+       If defined to 1, then the select backend will use the system fd_set
+       structure. This is useful if libev doesn't compile due to a missing
+       NFDBITS or fd_mask definition or it misguesses the bitset layout on
+       exotic systems. This usually limits the range of file descriptors
+       to some low limit such as 1024 or might have other limitations
+       (winsocket only allows 64 sockets). The FD_SETSIZE macro, set
+       before compilation, might influence the size of the fd_set used.
+
+    EV_SELECT_IS_WINSOCKET
 
        When defined to 1, the select backend will assume that select
        doesn't understand file descriptors but wants osf handles on
 
        When defined to 1, the select backend will assume that select
        doesn't understand file descriptors but wants osf handles on
@@ -118,9 +128,8 @@ PREPROCESSOR SYMBOLS
     EV_USE_POLL
 
        If defined to be "1", libev will compile in support for the poll(2)
     EV_USE_POLL
 
        If defined to be "1", libev will compile in support for the poll(2)
-       backend. No attempt at autodetection will be done. poll usually
-       performs worse than select, so its not enabled by default (it is
-       also slightly less portable).
+       backend. Otherwise it will be enabled on non-win32 platforms. It
+       takes precedence over select.
 
     EV_USE_EPOLL
 
 
     EV_USE_EPOLL
 
diff --git a/ev.c b/ev.c
index 89c092985942abbc5466853b721e3b950a3cd546..1aafbec9ac321f6c9a6ed371a30ba16570ca3ba8 100644 (file)
--- a/ev.c
+++ b/ev.c
@@ -97,10 +97,15 @@ extern "C" {
 
 #ifndef EV_USE_SELECT
 # define EV_USE_SELECT 1
 
 #ifndef EV_USE_SELECT
 # define EV_USE_SELECT 1
+# define EV_SELECT_USE_FD_SET 1
 #endif
 
 #ifndef EV_USE_POLL
 #endif
 
 #ifndef EV_USE_POLL
-# define EV_USE_POLL 0 /* poll is usually slower than select, and not as well tested */
+# ifdef _WIN32
+#  define EV_USE_POLL 0
+# else
+#  define EV_USE_POLL 1
+# endif
 #endif
 
 #ifndef EV_USE_EPOLL
 #endif
 
 #ifndef EV_USE_EPOLL