Spaces:
Running
Running
File size: 1,275 Bytes
5f923cd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # ==============================================================================
# LiteRT-LM Android Orchestrator Script
# Executes ONCE in the root to prepare Phase 2 variables
# ==============================================================================
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")
set(NDK_HOST_TAG "linux-x86_64")
elseif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin")
set(NDK_HOST_TAG "darwin-x86_64")
else()
message(FATAL_ERROR "[LiteRTLM] Unsupported host OS for Android cross-compilation.")
endif()
string(REPLACE "android-" "" API_LEVEL "${ANDROID_PLATFORM}")
if(ANDROID_ABI STREQUAL "arm64-v8a")
set(RUST_TARGET "aarch64-linux-android")
set(CARGO_ENV "CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER")
elseif(ANDROID_ABI STREQUAL "x86_64")
set(RUST_TARGET "x86_64-linux-android")
set(CARGO_ENV "CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER")
else()
message(WARNING "LiteRT-LM: Unmapped Rust target for ABI: ${ANDROID_ABI}")
endif()
set(RUST_LINKER_PATH "${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${NDK_HOST_TAG}/bin/${RUST_TARGET}${API_LEVEL}-clang")
list(APPEND LITERTLM_TOOLCHAIN_ARGS "-DLITERTLM_RUST_LINKER_OVERRIDE=${RUST_LINKER_PATH}")
list(APPEND LITERTLM_TOOLCHAIN_ARGS "-DLITERTLM_RUST_CARGO_ENV_VAR=${CARGO_ENV}") |