X-Git-Url: https://git.llucax.com/software/libev.git/blobdiff_plain/c4977e2742acfd90d4c4abd068f1c9e284951ef5..7633bcdce9c376b70aca8166696f360a4e5bbddc:/README.embed diff --git a/README.embed b/README.embed index 2980a96..e10ad1d 100644 --- a/README.embed +++ b/README.embed @@ -35,7 +35,8 @@ FILESETS ev.c ev_vars.h ev_wrap.h - ev_win32.c + + ev_win32.c required on win32 platforms only ev_select.c only when select backend is enabled (which is is by default) ev_poll.c only when poll backend is enabled (disabled by default) @@ -61,10 +62,17 @@ FILESETS event.h event.c +AUTOCONF SUPPORT + + Instead of using EV_STANDALONE=1 and providing your config in whatever + way you want, you can also m4_include([libev.m4]) in your configure.ac + and leave EV_STANDALONE off. ev.c will then include "config.h" and + configure itself accordingly. + PREPROCESSOR SYMBOLS Libev can be configured via a variety of preprocessor symbols you have to define - before including any of its files. The default is not to build for mulciplicity + before including any of its files. The default is not to build for multiplicity and only include the select backend. EV_STANDALONE @@ -142,19 +150,6 @@ PREPROCESSOR SYMBOLS Similarly to EV_H, this macro cna be used to override event.c's idea of how the event.h header can be found. - EV_COMMON - - By default, all watchers have a "void *data" member. By redefining - this macro to a something else you can include more and other types - of members. You have to define it each time you include one of the - files, though, and it must be identical each time. - - For example, the perl EV module uses this: - - #define EV_COMMON \ - SV *self; /* contains this struct */ \ - SV *cb_sv, *fh /* note no trailing ";" */ - EV_PROTOTYPES If defined to be "0", then "ev.h" will not define any function @@ -170,13 +165,35 @@ PREPROCESSOR SYMBOLS event loop pointer argument. Instead, all functions act on the single default loop. + EV_PERIODICS + + If undefined or defined to be "1", then periodic timers are + supported, otherwise not. This saves a few kb of code. + + EV_COMMON + + By default, all watchers have a "void *data" member. By redefining + this macro to a something else you can include more and other types + of members. You have to define it each time you include one of the + files, though, and it must be identical each time. + + For example, the perl EV module uses this: + + #define EV_COMMON \ + SV *self; /* contains this struct */ \ + SV *cb_sv, *fh /* note no trailing ";" */ + EV_CB_DECLARE(type) EV_CB_INVOKE(watcher,revents) + ev_set_cb(ev,cb) Can be used to change the callback member declaration in each - watcher, and the way callbacks are invoked. Must expand to a struct - member definition and a statement, respectively. See the ev.v - header file for their default definitions. + watcher, and the way callbacks are invoked and set. Must expand + to a struct member definition and a statement, respectively. See + the ev.v header file for their default definitions. One possible + use for overriding these is to avoid the ev_loop pointer as first + argument in all cases, or to use method calls instead of plain + function calls in C++. EXAMPLES