Files
cnc_wams/wasm-port/tools/build_ini_panel.sh
wangdequan 0a8bf7d5e2 按建议,继续完成后续工作
结论:已新增 INI WASM Node smoke 验证,确认 vendored LinuxCNC inifile.cc 构建出的 WASM 模块可通过导出 C ABI 查询 INI 内容,并同步更新兼容性与漂移文档。
2026-06-08 00:15:50 +08:00

25 lines
796 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
OUT_DIR="$ROOT_DIR/runtime/ui/ini-panel"
emcc \
-std=c++20 \
-O2 \
-I"$ROOT_DIR/runtime/core/shims" \
-I"$ROOT_DIR/vendor/linuxcnc/src" \
-I"$ROOT_DIR/vendor/linuxcnc/src/rtapi" \
-I"$ROOT_DIR/vendor/linuxcnc/src/emc" \
"$ROOT_DIR/vendor/linuxcnc/src/emc/ini/inifile.cc" \
"$ROOT_DIR/runtime/core/linuxcnc_wrap/linuxcnc_ini_wasm.cpp" \
-o "$OUT_DIR/linuxcnc_ini.js" \
-s MODULARIZE=1 \
-s EXPORT_ES6=1 \
-s ENVIRONMENT=web,node \
-s ALLOW_MEMORY_GROWTH=1 \
-s NO_EXIT_RUNTIME=1 \
-s FORCE_FILESYSTEM=1 \
-s EXPORTED_FUNCTIONS='["_malloc","_free","_lcini_get_string","_lcini_tilde_expand"]' \
-s EXPORTED_RUNTIME_METHODS='["FS","UTF8ToString","stringToUTF8","lengthBytesUTF8"]'