From 166981244eec7699190bf8b70c32ffe99e485b72 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sun, 26 Jul 2020 11:49:37 -0700 Subject: fixes #1232 EVFILT_USER is not available on NetBSD This means that NetBSD and OpenBSD cannot benefit from kqueue, and will need to use poll(). The best answer for those platforms is that someone contribute a working EVFILT_USER implementation. --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 966d396b..3fdafc62 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -333,7 +333,9 @@ else () nng_check_sym(backtrace_symbols_fd execinfo.h NNG_HAVE_BACKTRACE) nng_check_struct_member(msghdr msg_control sys/socket.h NNG_HAVE_MSG_CONTROL) nng_check_sym(eventfd sys/eventfd.h NNG_HAVE_EVENTFD) - nng_check_sym(kqueue sys/event.h NNG_HAVE_KQUEUE) + # While some systems (NetBSD) have kqueue, our use depends on EVFILT_USER + # This means that NetBSD and OpenBSD will be stuck with poll(). + nng_check_sym(EVFILT_USER sys/event.h NNG_HAVE_KQUEUE) nng_check_sym(port_create port.h NNG_HAVE_PORT_CREATE) nng_check_sym(epoll_create sys/epoll.h NNG_HAVE_EPOLL) nng_check_sym(epoll_create1 sys/epoll.h NNG_HAVE_EPOLL_CREATE1) -- cgit v1.2.3-70-g09d2