Files
ports/devel/brpc/files/patch-src_butil_endpoint.cpp
T
Vanilla I. Shu a4a400be07 devel/brpc: add new ports.
PR:		293396
2026-05-01 22:23:23 +08:00

39 lines
1.4 KiB
C++

--- src/butil/endpoint.cpp.orig 2026-02-23 02:11:29 UTC
+++ src/butil/endpoint.cpp
@@ -30,7 +30,7 @@
#include <memory>
#include <gflags/gflags.h>
#include <sys/poll.h>
-#if defined(OS_MACOSX)
+#if defined(OS_MACOSX) || defined(OS_FREEBSD)
#include <sys/event.h> // kevent(), kqueue()
#endif
#include "butil/build_config.h" // OS_MACOSX
@@ -403,7 +403,7 @@ static short epoll_to_poll_events(uint32_t epoll_event
CHECK_EQ((uint32_t)poll_events, epoll_events);
return poll_events;
}
-#elif defined(OS_MACOSX)
+#elif defined(OS_MACOSX) || defined(OS_FREEBSD)
short kqueue_to_poll_events(int kqueue_events) {
//TODO: add more values?
short poll_events = 0;
@@ -421,7 +421,7 @@ int pthread_fd_wait(int fd, unsigned events,
const timespec* abstime) {
#if defined(OS_LINUX)
const short poll_events = epoll_to_poll_events(events);
-#elif defined(OS_MACOSX)
+#elif defined(OS_MACOSX) || defined(OS_FREEBSD)
const short poll_events = kqueue_to_poll_events(events);
#endif
if (poll_events == 0) {
@@ -482,7 +482,7 @@ int pthread_timed_connect(int sockfd, const struct soc
}
#if defined(OS_LINUX)
if (pthread_fd_wait(sockfd, EPOLLOUT, abstime) < 0) {
-#elif defined(OS_MACOSX)
+#elif defined(OS_MACOSX) || defined(OS_FREEBSD)
if (pthread_fd_wait(sockfd, EVFILT_WRITE, abstime) < 0) {
#endif
return -1;