10
10
* HTTPLIB_REQUIRE_BROTLI (default off)
11
11
* HTTPLIB_REQUIRE_ZSTD (default off)
12
12
* HTTPLIB_USE_CERTS_FROM_MACOSX_KEYCHAIN (default on)
13
+ * HTTPLIB_USE_NON_BLOCKING_GETADDRINFO (default on)
13
14
* HTTPLIB_COMPILE (default off)
14
15
* HTTPLIB_INSTALL (default on)
15
16
* HTTPLIB_TEST (default off)
49
50
* HTTPLIB_IS_USING_BROTLI - a bool for if Brotli support is enabled.
50
51
* HTTPLIB_IS_USING_ZSTD - a bool for if ZSTD support is enabled.
51
52
* HTTPLIB_IS_USING_CERTS_FROM_MACOSX_KEYCHAIN - a bool for if support of loading system certs from the Apple Keychain is enabled.
53
+ * HTTPLIB_IS_USING_NON_BLOCKING_GETADDRINFO - a bool for if nonblocking getaddrinfo is enabled.
52
54
* HTTPLIB_IS_COMPILED - a bool for if the library is compiled, or otherwise header-only.
53
55
* HTTPLIB_INCLUDE_DIR - the root path to httplib's header (e.g. /usr/include).
54
56
* HTTPLIB_LIBRARY - the full path to the library if compiled (e.g. /usr/lib/libhttplib.so).
@@ -104,6 +106,7 @@ option(HTTPLIB_TEST "Enables testing and builds tests" OFF)
104
106
option (HTTPLIB_REQUIRE_BROTLI "Requires Brotli to be found & linked, or fails build." OFF )
105
107
option (HTTPLIB_USE_BROTLI_IF_AVAILABLE "Uses Brotli (if available) to enable Brotli decompression support." ON )
106
108
option (HTTPLIB_USE_CERTS_FROM_MACOSX_KEYCHAIN "Enable feature to load system certs from the Apple Keychain." ON )
109
+ option (HTTPLIB_USE_NON_BLOCKING_GETADDRINFO "Enables the non-blocking alternatives for getaddrinfo." ON )
107
110
option (HTTPLIB_REQUIRE_ZSTD "Requires ZSTD to be found & linked, or fails build." OFF )
108
111
option (HTTPLIB_USE_ZSTD_IF_AVAILABLE "Uses ZSTD (if available) to enable zstd support." ON )
109
112
# Defaults to static library
@@ -117,6 +120,7 @@ endif()
117
120
# Set some variables that are used in-tree and while building based on our options
118
121
set (HTTPLIB_IS_COMPILED ${HTTPLIB_COMPILE} )
119
122
set (HTTPLIB_IS_USING_CERTS_FROM_MACOSX_KEYCHAIN ${HTTPLIB_USE_CERTS_FROM_MACOSX_KEYCHAIN} )
123
+ set (HTTPLIB_IS_USING_NON_BLOCKING_GETADDRINFO ${HTTPLIB_USE_NON_BLOCKING_GETADDRINFO} )
120
124
121
125
# Threads needed for <thread> on some systems, and for <pthread.h> on Linux
122
126
set (THREADS_PREFER_PTHREAD_FLAG TRUE )
@@ -269,6 +273,7 @@ target_compile_definitions(${PROJECT_NAME} ${_INTERFACE_OR_PUBLIC}
269
273
$<$<BOOL :${HTTPLIB_IS_USING_ZSTD} >:CPPHTTPLIB_ZSTD_SUPPORT>
270
274
$<$<BOOL :${HTTPLIB_IS_USING_OPENSSL} >:CPPHTTPLIB_OPENSSL_SUPPORT>
271
275
$<$<AND :$<PLATFORM_ID:Darwin>,$<BOOL :${HTTPLIB_IS_USING_OPENSSL} >,$<BOOL :${HTTPLIB_IS_USING_CERTS_FROM_MACOSX_KEYCHAIN} >>:CPPHTTPLIB_USE_CERTS_FROM_MACOSX_KEYCHAIN>
276
+ $<$<BOOL :${HTTPLIB_USE_NON_BLOCKING_GETADDRINFO} >:CPPHTTPLIB_USE_NON_BLOCKING_GETADDRINFO>
272
277
)
273
278
274
279
# CMake configuration files installation directory
0 commit comments