Kazeia-engine/dist/build_stt_cli.sh

35 lines
973 B
Bash

#!/usr/bin/env bash
# Build kazeia_stt_cli : binaire S2 standalone (Whisper NPU QNN + decoder KV-cache).
# Lie ORT 1.24.3 + QNN EP (libonnxruntime.so dans dist/lib/, headers dans
# dist/include/onnxruntime/).
set -euo pipefail
HERE="$(cd "$(dirname "$0")" && pwd)"
NDK="${ANDROID_NDK_ROOT:-/opt/Kazeia/android-ndk-r27d}"
CXX="$NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android31-clang++"
JNI="$HERE/jni"
INC="$HERE/include"
LIB="$HERE/lib"
OUT="$HERE/b-jni/kazeia_stt_cli"
mkdir -p "$HERE/b-jni"
CFLAGS=(
-std=c++17 -O3 -fPIE
-march=armv8.6-a+i8mm+bf16+dotprod+fp16
-Wno-unused-parameter -Wno-unused-variable -Wno-sign-compare -Wno-parentheses
-static-libstdc++
)
INCS=( -I"$INC" )
LIBS=(
"$JNI/stt_cli.cpp"
"$JNI/stt_engine.cpp"
"$JNI/kazeia_mel.cpp"
-L"$LIB" -lonnxruntime
-Wl,-rpath,'$ORIGIN'
-llog -ldl -lm
)
echo "== building $OUT =="
"$CXX" "${CFLAGS[@]}" "${INCS[@]}" "${LIBS[@]}" -o "$OUT"
ls -la "$OUT"