diff --git a/Build/libHttpClient.Android/build.gradle b/Build/libHttpClient.Android/build.gradle
index 110bfff8..94e31a9a 100644
--- a/Build/libHttpClient.Android/build.gradle
+++ b/Build/libHttpClient.Android/build.gradle
@@ -1,7 +1,7 @@
apply plugin: "com.android.library"
android {
- compileSdkVersion 31
+ compileSdkVersion 34
ndkVersion "27.2.12479018"
defaultConfig {
diff --git a/Build/libHttpClient.GDK.props b/Build/libHttpClient.GDK.props
index 118ac231..7ef22c71 100644
--- a/Build/libHttpClient.GDK.props
+++ b/Build/libHttpClient.GDK.props
@@ -106,7 +106,12 @@
true
false
ProgramDatabase
- __WRL_NO_DEFAULT_LIB__;_LIB;$(libHttpClientDefine);%(PreprocessorDefinitions)
+
+ __WRL_NO_DEFAULT_LIB__;_LIB;ASIO_DISABLE_SERIAL_PORT;$(libHttpClientDefine);%(PreprocessorDefinitions)
%(AdditionalIncludeDirectories);$(GDKCrossPlatformPath)GRDK\ExtensionLibraries\Xbox.XCurl.API\Include
Guard
/Zc:__cplusplus /ZH:SHA_256 /bigobj /Zi %(AdditionalOptions)
diff --git a/Build/libHttpClient.Linux/CMakeLists.txt b/Build/libHttpClient.Linux/CMakeLists.txt
index 58a52f1b..87622d76 100644
--- a/Build/libHttpClient.Linux/CMakeLists.txt
+++ b/Build/libHttpClient.Linux/CMakeLists.txt
@@ -226,6 +226,7 @@ if (HC_ENABLE_WEBSOCKET_COMPRESSION AND NOT HC_NOWEBSOCKETS)
PRIVATE
"${PROJECT_NAME}"
Threads::Threads
+ ${CMAKE_DL_LIBS} # Required for dlopen/dlsym referenced by linked libcrypto in some configurations
)
if (NOT BUILD_SHARED_LIBS)
diff --git a/Include/httpClient/httpClient.h b/Include/httpClient/httpClient.h
index 331ae17f..8744a764 100644
--- a/Include/httpClient/httpClient.h
+++ b/Include/httpClient/httpClient.h
@@ -1043,7 +1043,13 @@ enum class HCWebSocketOptions : uint32_t
CompressionClientNoContextTakeover = 0x00000004
};
+// DEFINE_ENUM_FLAG_OPERATORS expands to C++ inline operators returning
+// HCWebSocketOptions&, which is not legal inside the surrounding extern "C"
+// block. Re-enter C++ linkage just for the macro expansion so callers can
+// still combine flags with |, &, ^, etc.
+extern "C++" {
DEFINE_ENUM_FLAG_OPERATORS(HCWebSocketOptions)
+} // extern "C++"
///
/// Creates an WebSocket handle.
diff --git a/Samples/UWP-Http/Http.vcxproj b/Samples/UWP-Http/Http.vcxproj
index 322568d6..d423c1da 100644
--- a/Samples/UWP-Http/Http.vcxproj
+++ b/Samples/UWP-Http/Http.vcxproj
@@ -9,6 +9,7 @@
_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;%(PreprocessorDefinitions)
+ false