android: fix NDK build — add Opus sources, fix Kotlin composable context, fix bridge db_path param

This commit is contained in:
evgeny committed 2026-07-28 23:20:19 +03:00
1 parent 5b6979da27
commit 0f1e6e0006
4 files changed
+18 -7

No files matched your search

@@ -10,13 +10,24 @@ set(TOOLS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../../../..)
include(${CFG_DIR}/utun_sources.cmake)
utun_setup_sources("${LIB_DIR}" "${SRC_DIR}" "${CFG_DIR}" "${TOOLS_DIR}")
# Exclude opus from Android (no prebuilt for NDK)
list(FILTER UTUN_SOURCES EXCLUDE REGEX "opus_codec\\.c$")
# Include Opus codec wrapper (was excluded before voice support)
# list(FILTER UTUN_SOURCES EXCLUDE REGEX "opus_codec\\.c$")
# Exclude tun_windows and tun_freebsd (Android is Linux-like)
list(FILTER UTUN_SOURCES EXCLUDE REGEX "tun_windows\\.c$")
list(FILTER UTUN_SOURCES EXCLUDE REGEX "tun_freebsd\\.c$")
# Add libopus sources (for voice recording)
file(GLOB_RECURSE _OPUS_SRC "${LIB_DIR}/libopus/src/*.c"
"${LIB_DIR}/libopus/celt/*.c" "${LIB_DIR}/libopus/silk/*.c"
"${LIB_DIR}/libopus/silk/float/*.c")
list(FILTER _OPUS_SRC EXCLUDE REGEX "/x86/")
list(APPEND UTUN_SOURCES ${_OPUS_SRC})
list(APPEND UTUN_INCLUDE_DIRS "${LIB_DIR}/libopus" "${LIB_DIR}/libopus/include"
"${LIB_DIR}/libopus/celt" "${LIB_DIR}/libopus/silk" "${LIB_DIR}/libopus/silk/float")
# Opus requires these to be defined (or HAVE_CONFIG_H + config.h with VAR_ARRAYS)
list(APPEND UTUN_DEFINES OPUS_BUILD VAR_ARRAYS USE_ALLOCA)
# Prebuilt OpenSSL (cross-compiled for Android)
set(OPENSSL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/openssl/${ANDROID_ABI})
add_library(openssl_crypto STATIC IMPORTED)