Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 7eabe7b

Browse files
committed
Fix swift support for android (NDK17)
1 parent 8471a83 commit 7eabe7b

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

cmake/modules/SwiftSupport.cmake

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,17 @@ function(add_swift_target target)
1111
set(compile_flags ${CMAKE_SWIFT_FLAGS})
1212
set(link_flags)
1313

14+
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Android")
15+
list(APPEND compile_flags "-sdk" "${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}/arch-${CMAKE_ANDROID_ARCH}")
16+
list(APPEND compile_flags "-I" "${CMAKE_ANDROID_NDK}/sysroot/usr/include")
17+
list(APPEND compile_flags "-I" "${CMAKE_ANDROID_NDK}/sysroot/usr/include/${CMAKE_ANDROID_ARCH_HEADER_TRIPLE}")
18+
19+
list(APPEND link_flags "-sdk" "${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}/arch-${CMAKE_ANDROID_ARCH}")
20+
list(APPEND link_flags "-tools-directory" "${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}/${CMAKE_ANDROID_ARCH_HEADER_TRIPLE}/bin")
21+
list(APPEND link_flags "-L" "${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}/lib/gcc/${CMAKE_ANDROID_ARCH_HEADER_TRIPLE}/4.9.x")
22+
list(APPEND link_flags "-L" "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/libs/${CMAKE_ANDROID_ARCH_ABI}")
23+
endif()
24+
1425
if(AST_TARGET)
1526
list(APPEND compile_flags -target;${AST_TARGET})
1627
list(APPEND link_flags -target;${AST_TARGET})
@@ -234,6 +245,8 @@ function(get_swift_host_arch result_var_name)
234245
set("${result_var_name}" "armv6" PARENT_SCOPE)
235246
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "armv7l")
236247
set("${result_var_name}" "armv7" PARENT_SCOPE)
248+
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "armv7-a")
249+
set("${result_var_name}" "armv7" PARENT_SCOPE)
237250
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64")
238251
set("${result_var_name}" "x86_64" PARENT_SCOPE)
239252
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "IA64")

0 commit comments

Comments
 (0)