Files
MeowOS-For-R3P2/patch_v2/sdk/build_sdk.sh
T
MeowOS dcba5975a2 feat(sdk): meow_config_* App配置读写API(agent-158)
- 6 API: meow_config_dir/set/get/int/bool/remove; 落 TF MeowData/<pkg>/data/<key>.cfg(env MEOW_DATA_DIR, 回退/tmp/meowcfg_<pid>)
- 与系统设置 meow_settings_*(板载settings.conf) 区分; key清洗[A-Za-z0-9._-]→_ 防路径穿越; 值上限4096; 降级不崩(pthread_once/mutex)
- MEOW_CFG_* 错误码(避开 meow_ipc.h 枚举命名空间, 防宏展开冲突); 数值与 MEOWOS_API/meow_settings.h 同值
- meow_ui.a=92e61fb8(新增config成员) hello=5e31d919不变(0回归, 静态链未拉入新成员); build_sdk 0warning; 宿主test_meow_ui_config ALL PASS
- 未重链launcher(launcher未用config); 遗留真机验证MEOW_DATA_DIR落盘/无卡降级
2026-08-30 23:01:31 +08:00

32 lines
1.3 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# build_sdk.sh — 构建 meow_ui.a(mipsel 静态库,含 meow_font.o 内联打包,
# 应用只需链 meow_ui.a + libz.a + -lpthread)。
set -e
ROOT="$HOME/Project/R3ProII"
cd "$(dirname "$0")"
CC="$ROOT/.tools/zig-mipsel-cc"
AR="${AR:-/usr/bin/ar}" # 系统 GNU ar 即可归档 mipsel ELF 对象(架构无关)
rm -f meow_ui.a *.o
# -I../meow_launcherd:meow_notify_ipc.c 复用共享协议头 meow_ipc.h(同一份、杜绝两端漂移)
OBJS="meow_ui_gfx meow_ui_log meow_ui_notify meow_notify_ipc meow_ui_img meow_ui_widget meow_ui_input meow_ui_theme meow_ui_ime meow_ui_sys meow_ui_vol meow_ui_activity meow_ui_global meow_ui_dialog meow_ui_config stb_image"
CFLAGS="-Os -static -I$ROOT/patch_v2/meow_launcherd"
for f in $OBJS; do
echo "== cc $f =="
"$CC" $CFLAGS -c "$f.c" -o "$f.o"
done
# meow_font.o(复用 launcher 字库,打进 meow_ui.a → 应用只链一个库)
TMP="$(mktemp -d)"
( cd "$TMP" && "$AR" x "$ROOT/patch_v2/meow_launcherd/meow_font.a" && ls *.o )
cp "$TMP"/*.o meow_font.o 2>/dev/null || { echo "meow_font extract failed"; rm -rf "$TMP"; exit 1; }
rm -rf "$TMP"
rm -f meow_ui.a
for f in $OBJS; do "$AR" rcs meow_ui.a "$f.o"; done
"$AR" rcs meow_ui.a meow_font.o
echo "== meow_ui.a =="
ls -la meow_ui.a
"$AR" t meow_ui.a