libcurl: Use CMake to compile on Android (#3644)
* libcurl: Use CMake to compile on Android Fixes Android on Windows * Update xmake.lua * Update android.yml * Update xmake.lua * Update xmake.lua * Remove logs * Update libcurl to 8.7.1 and fix android armv7 compilationpull/3670/head
parent
934e01a034
commit
d3c13992f5
4 changed files with 81 additions and 40 deletions
@ -0,0 +1,38 @@ |
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 656aa7c74..4897369fa 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1228,7 +1228,6 @@ check_symbol_exists(getifaddrs "${CURL_INCLUDES};stdlib.h" HAVE_GETIFADDRS)
|
||||
check_symbol_exists(freeaddrinfo "${CURL_INCLUDES}" HAVE_FREEADDRINFO)
|
||||
check_symbol_exists(pipe "${CURL_INCLUDES}" HAVE_PIPE)
|
||||
check_symbol_exists(ftruncate "${CURL_INCLUDES}" HAVE_FTRUNCATE)
|
||||
-check_symbol_exists(fseeko "${CURL_INCLUDES};stdio.h" HAVE_FSEEKO)
|
||||
check_symbol_exists(_fseeki64 "${CURL_INCLUDES};stdio.h" HAVE__FSEEKI64)
|
||||
check_symbol_exists(getpeername "${CURL_INCLUDES}" HAVE_GETPEERNAME)
|
||||
check_symbol_exists(getsockname "${CURL_INCLUDES}" HAVE_GETSOCKNAME)
|
||||
@@ -1238,10 +1237,6 @@ check_symbol_exists(setlocale "${CURL_INCLUDES}" HAVE_SETLOCALE)
|
||||
check_symbol_exists(setmode "${CURL_INCLUDES}" HAVE_SETMODE)
|
||||
check_symbol_exists(setrlimit "${CURL_INCLUDES}" HAVE_SETRLIMIT)
|
||||
|
||||
-if(HAVE_FSEEKO)
|
||||
- set(HAVE_DECL_FSEEKO 1)
|
||||
-endif()
|
||||
-
|
||||
if(NOT MSVC OR (MSVC_VERSION GREATER_EQUAL 1900))
|
||||
# earlier MSVC compilers had faulty snprintf implementations
|
||||
check_symbol_exists(snprintf "stdio.h" HAVE_SNPRINTF)
|
||||
@@ -1304,6 +1299,14 @@ if(HAVE_FILE_OFFSET_BITS)
|
||||
endif()
|
||||
check_type_size("off_t" SIZEOF_OFF_T)
|
||||
|
||||
+# fseeko may not exist with _FILE_OFFSET_BITS=64 but can exist with _FILE_OFFSET_BITS unset or 32 (e.g. Android ARMv7 with NDK 26b and API level < 24)
|
||||
+# so we need to test fseeko after testing for _FILE_OFFSEt_BITS
|
||||
+check_symbol_exists(fseeko "${CURL_INCLUDES};stdio.h" HAVE_FSEEKO)
|
||||
+
|
||||
+if(HAVE_FSEEKO)
|
||||
+ set(HAVE_DECL_FSEEKO 1)
|
||||
+endif()
|
||||
+
|
||||
# include this header to get the type
|
||||
set(CMAKE_REQUIRED_INCLUDES "${CURL_SOURCE_DIR}/include")
|
||||
set(CMAKE_EXTRA_INCLUDE_FILES "curl/system.h")
|
Loading…
Reference in new issue