Allow to remove systemd library
[src/app-framework-binder.git] / src / afb-fdev.c
index 4243637..e98d39d 100644 (file)
  * limitations under the License.
  */
 
+#include "evmgr.h"
 #include "fdev.h"
+#include "jobs.h"
 
-#include "afb-systemd.h"
+#if WITH_SYSTEMD
+
+#include "systemd.h"
 #include "fdev-systemd.h"
 
 struct fdev *afb_fdev_create(int fd)
 {
-       return fdev_systemd_create(afb_systemd_get_event_loop(), fd);
+       jobs_acquire_event_manager();
+       return fdev_systemd_create(systemd_get_event_loop(), fd);
+}
+
+#endif
+#if WITH_FDEV_EPOLL
+
+#include "evmgr.h"
+#include "fdev-epoll.h"
+
+struct fdev *afb_fdev_create(int fd)
+{
+       struct evmgr *evmgr = jobs_acquire_event_manager();
+       return fdev_epoll_add(evmgr_get_fdev_epoll(evmgr), fd);
 }
+
+#endif