Mercurial > hg > nginx
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> |