mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-14 06:39:00 +08:00
a1703aa3e8
Updated to include capnproto f4152f83b which fixes error C7692: "rewritten candidate function was excluded..." which occurs when building with MSVC 2022. The updated code brings in another bug which is only fixed in the v2 branch of capnproto (not in master which is used here). The first patch in this commit disables the problematic code by disabling the coroutine check in async-prelude.h The second patch disables KJ_USE_EPOLL for Android NDK version < 23 where sigtimedwait is not defined.
29 lines
914 B
Diff
29 lines
914 B
Diff
From 306220e57881064da99f89ad4192b3e19c7953a9 Mon Sep 17 00:00:00 2001
|
|
From: Stig Hornang <shornang@gmail.com>
|
|
Date: Thu, 31 Aug 2023 21:20:09 +0200
|
|
Subject: [PATCH] Undef KJ_USE_EPOLL for ANDROID_PLATFORM < 23
|
|
|
|
---
|
|
c++/src/kj/async-unix.h | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/c++/src/kj/async-unix.h b/c++/src/kj/async-unix.h
|
|
index 665305ea..c5f195cf 100644
|
|
--- a/c++/src/kj/async-unix.h
|
|
+++ b/c++/src/kj/async-unix.h
|
|
@@ -34,7 +34,10 @@
|
|
KJ_BEGIN_HEADER
|
|
|
|
#if !defined(KJ_USE_EPOLL) && !defined(KJ_USE_KQUEUE)
|
|
-#if __linux__
|
|
+
|
|
+// Android NDK less than API version 23 doesn't have sigtimedwait
|
|
+// sigtimedwait is used in async-unix.c++ if KJ_USE_EPOLL is defined
|
|
+#if __linux__ && !(__ANDROID__ && __ANDROID_API__ < 23)
|
|
// Default to epoll on Linux.
|
|
#define KJ_USE_EPOLL 1
|
|
#elif __APPLE__ || __FreeBSD__ || __OpenBSD__ || __NetBSD__ || __DragonFly__
|
|
--
|
|
2.41.0.windows.3
|
|
|