X-Git-Url: https://git.llucax.com/software/libev.git/blobdiff_plain/ab1616ff65c64fe3b5fff03284e8ea8dc8defccc..4f1dc6c0e6bd6e6e6edab0e55fc6b96824a12f38:/README.embed?ds=inline diff --git a/README.embed b/README.embed index 5d60ee8..925c13e 100644 --- a/README.embed +++ b/README.embed @@ -61,10 +61,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 +149,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,15 +164,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. 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++. + 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