diff options
Diffstat (limited to 'src/afb-fdev.c')
-rw-r--r-- | src/afb-fdev.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/afb-fdev.c b/src/afb-fdev.c index 943c2542..1c36091e 100644 --- a/src/afb-fdev.c +++ b/src/afb-fdev.c @@ -15,8 +15,19 @@ * limitations under the License. */ -#include "afb-systemd.h" #include "fdev.h" + +#if defined(WITH_SYSTEMD_EVENT) +# define USE_SYSTEMD 1 +# define USE_EPOLL 0 +#else +# define USE_SYSTEMD 0 +# define USE_EPOLL 1 +#endif + +#if USE_SYSTEMD + +#include "afb-systemd.h" #include "fdev-systemd.h" struct fdev *afb_fdev_create(int fd) @@ -24,3 +35,17 @@ struct fdev *afb_fdev_create(int fd) return fdev_systemd_create(afb_systemd_get_event_loop(), fd); } +#endif + +#if USE_EPOLL + +#include "jobs.h" +#include "fdev-epoll.h" + +struct fdev *afb_fdev_create(int fd) +{ + return fdev_epoll_add(jobs_get_fdev_epoll(), fd); +} + +#endif + |