Skip to content

Commit 769caf8

Browse files
committed
cmake : adapt native lib linking for Android
1 parent ec114f1 commit 769caf8

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

ggml/src/CMakeLists.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1127,7 +1127,7 @@ if (CMAKE_OSX_ARCHITECTURES STREQUAL "arm64" OR
11271127
endif()
11281128
endif()
11291129
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "armv8")
1130-
# Android arm64-v8a
1130+
# Android arm64-v8a <- NOT REACHED; arm64-v8a and armv8 differ
11311131
# Raspberry Pi 3, 4, Zero 2 (32-bit)
11321132
list(APPEND ARCH_FLAGS -mno-unaligned-access)
11331133
endif()
@@ -1341,11 +1341,15 @@ list(APPEND GGML_EXTRA_LIBS_PRIVATE Threads::Threads)
13411341

13421342
find_library(MATH_LIBRARY m)
13431343
if (MATH_LIBRARY)
1344-
if (NOT WIN32 OR NOT GGML_SYCL)
1344+
if (NOT WIN32 OR NOT GGML_SYCL OR NOT CMAKE_SYSTEM_NAME MATCHES "Android")
13451345
list(APPEND GGML_EXTRA_LIBS_PRIVATE m)
13461346
endif()
13471347
endif()
13481348

1349+
if (CMAKE_SYSTEM_NAME MATCHES "Android")
1350+
list(APPEND GGML_EXTRA_LIBS_PRIVATE dl) # Must be linked explicitly
1351+
endif()
1352+
13491353
list(REMOVE_DUPLICATES GGML_EXTRA_LIBS_PRIVATE)
13501354
list(REMOVE_DUPLICATES GGML_EXTRA_LIBS_PUBLIC)
13511355
target_link_libraries(ggml PRIVATE ${GGML_EXTRA_LIBS_PRIVATE} PUBLIC ${GGML_EXTRA_LIBS_PUBLIC})

0 commit comments

Comments
 (0)