- test_time32_abi.sh 增加构建级主判据:解析各组件的 build_*.sh,按 -o <产物> 定位实际编译行(自动拼接续行),断言同时出现 meow_time32.c 与 -DMEOW_TIME32_LIBC_OVERRIDES。缺任一即 FAIL(100% 抓「漏加」)。 - 二进制 16B 断言从「空间窗口」改为「数据依赖」:0/4/8 写回必须来自 被调函数填的 ts32 缓冲(lw off() → sw 0x0,lw off+4() → sw 0x8, 含 sra 符号扩展),修掉无关结构体写回造成的 false positive。 已知健康件 launcherd(非内联转换)仍 PASS;复现的评审反例 bad6b 现 FAIL。 - bootmenu 注释把 initramfs 误述改为 squashfs /usr/bin(M23 未碰该文件)。
16 lines
951 B
Bash
Executable File
16 lines
951 B
Bash
Executable File
#!/bin/bash
|
||
# build_bootmenu.sh — build the meow_bootmenu binary: static MIPS32r2 musl (soft-float).
|
||
# M2.26: 链入 meow_launcherd/meow_touch.c(统一触摸接口),boot menu 选单/确认框触摸迁到 meow_touch,
|
||
# 修「触摸确认点两下」。meow_touch.h 在 ../meow_launcherd/ 下,用 -I 引相对路径。
|
||
set -e
|
||
cd "$(dirname "$0")"
|
||
CC="$HOME/Project/R3ProII/.tools/zig-mipsel-cc"
|
||
MEOW_TOUCH_DIR="../meow_launcherd"
|
||
# M43: bootmenu 也不链 meow_ui.a,单独链 time32 修取时/睡眠 ABI。只改语义正确的取时来源,
|
||
# boot_timeout/按键长按/守候计时行为不变(修复后才是真实毫秒;squashfs /usr/bin,改坏影响
|
||
# 开机选单/自动启动,但不是 initramfs 级不可恢复)。
|
||
"$CC" -Os -static -I "$MEOW_TOUCH_DIR" -DMEOW_TIME32_LIBC_OVERRIDES \
|
||
meow_bootmenu.c "$MEOW_TOUCH_DIR/meow_touch.c" ../sdk/meow_time32.c -o meow_bootmenu
|
||
ls -la meow_bootmenu
|
||
file meow_bootmenu
|