aboutsummaryrefslogtreecommitdiffstats
path: root/src/afb-fdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/afb-fdev.c')
-rw-r--r--src/afb-fdev.c27
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
+