feat(ncm): 网易云技术栈预研+构建验证 (agent-200) — 选型: mbedtls3.6.2裁剪(TLS+AES+MD5+RSA raw+Base64,~388KB)/jsmn(2.2KB)/qrcodegen(10.8KB)/minimp3(37.4KB), 合计~438KB; HTTPS unikey 全链路宿主+qemu-mipsel 实测通过; RSA raw 与 Python pow 逐字节一致; MP3 解码非瓶颈

vendor源码+out产物不入库(126MB, gitignore; 版本/许可/裁剪见 VENDOR_NOTES.md, build_*.sh 可复现)
This commit is contained in:
MeowOS committed 2026-08-31 06:03:36 +08:00
1 parent 2d93298f8a
commit c96e912518
19 files changed
+733

No files matched your search

+21
View File
@@ -0,0 +1,21 @@
#!/bin/bash
# 公共编译/测量环境。被各 build_*.sh 引用。
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
VENDOR="$ROOT/vendor"
OUT="$ROOT/out"
CC_MIPS="/home/Aska/Project/R3ProII/.tools/zig-mipsel-cc"
AR_MIPS="/home/Aska/Project/R3ProII/.tools/zig-env/bin/zig ar"
CC_HOST="gcc"
SZ_HOST="size"
# 交叉 bin 是 x86_64 的,本机(aarch64)跑不了;统一用 host `size`(可读任意 ELF)+ zig ar。
# 注意:build 目录在 patch_v2/ncm_app 内,符号用绝对路径由各脚本自行 source 本文件。
# measure_archive <lib.a> : 统计归档全部成员 text/data/bss。flash≈text,RAM≈data+bss
measure_archive() {
local a="$1"
if [ ! -s "$a" ]; then echo " (missing/empty: $a)"; return; fi
$SZ_HOST "$a" | awk '
/^[[:space:]]*[0-9]+[[:space:]]/ { t+=$1; d+=$2; b+=$3 }
END { printf " text=%-8d data=%-8d bss=%-8d (flash~%s KB RAM~%s KB)\n", t, d, b, t/1024.0, (d+b)/1024.0 }
'
}