#!/bin/bash # build_sysui.sh — meow_sysui 交叉编译(mipsel 静态)+ 宿主编译可选。 # # 目标:R3 Pro II / MeowOS(mipsel-linux-muslsf,静态)。sysui 极简无外部依赖, # 仅 POSIX + Linux 基础接口(同 svcd),单文件满足「固件内、不入卡」。 # # 用法: # ./build_sysui.sh # 交叉编译 → patch_v2/meow_sysui/meow_sysui(mipsel 静态) # ./build_sysui.sh host # 宿主编译 → patch_v2/meow_sysui/meow_sysui_host(集成测试用) set -e cd "$(dirname "$0")" ROOT="$HOME/Project/R3ProII" CC="$ROOT/.tools/zig-mipsel-cc" if [ "$1" = "host" ]; then HOST_CC="${CC_HOST:-cc}" "$HOST_CC" -Os -Wall -Wextra meow_sysui.c -o meow_sysui_host echo "== host build ==" ls -la meow_sysui_host file meow_sysui_host exit 0 fi # meow_time32.c:独立 o32 time32 取时/睡眠(sysui 不链 meow_ui.a);LIBC_OVERRIDES 在静态 # 链接期接管 clock_gettime/time/usleep/nanosleep,修 musl time64 头与 time32 实现的 ABI 错位。 "$CC" -Os -Wall -Wextra -static -DMEOW_TIME32_LIBC_OVERRIDES \ meow_sysui.c ../sdk/meow_time32.c -o meow_sysui echo "== meow_sysui (mipsel static) ==" ls -la meow_sysui md5sum meow_sysui file meow_sysui