comparison src/os/unix/ngx_posix_config.h @ 9266:93bbb9fbf30d

Fixed compilation on NetBSD 10. NetBSD 10 changed struct kevent's udata type from "intptr_t" to "void *", similarly to how it is defined on other systems. This breaks compilation, since intptr_t is assumed on NetBSD. Fix is to limit special intptr_t handling to NetBSD versions before 10.0. To simplify testing, relevant definitions are moved from configure to code (which seems to be the right thing anyway).
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 06 May 2024 00:07:33 +0300
parents fc0d06224eda
children
comparison
equal deleted inserted replaced
9265:d89e0386b695 9266:93bbb9fbf30d
122 #include <poll.h> 122 #include <poll.h>
123 #endif 123 #endif
124 124
125 125
126 #if (NGX_HAVE_KQUEUE) 126 #if (NGX_HAVE_KQUEUE)
127
127 #include <sys/event.h> 128 #include <sys/event.h>
129
130 /* NetBSD before 10.0 incompatibly defines kevent.udata as "intptr_t" */
131
132 #if (defined __NetBSD__ && __NetBSD_Version__ < 999001500)
133 #define NGX_KQUEUE_UDATA_T
134 #else
135 #define NGX_KQUEUE_UDATA_T (void *)
136 #endif
137
128 #endif 138 #endif
129 139
130 140
131 #if (NGX_HAVE_DEVPOLL) && !(NGX_TEST_BUILD_DEVPOLL) 141 #if (NGX_HAVE_DEVPOLL) && !(NGX_TEST_BUILD_DEVPOLL)
132 #include <sys/ioctl.h> 142 #include <sys/ioctl.h>