Files
wasm-simulator/test-linuxcnc-wasm-tooldata-link.sh
cnc de273bf830 接续上一轮:推进浏览器验证与M428配置收拢
结论:已完成浏览器侧真实加载验证,M428/M429/M430 的配置入口进一步从 LinuxCNC INI/HALFILE/REMAP 来源生成,native 与 source-link 验证通过。
2026-05-30 10:03:21 +08:00

32 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
cd "$(dirname "$0")"
linuxcnc_root=${LINUXCNC_ROOT:-../linuxcnc}
cxx=${CXX:-g++}
build_dir=$(mktemp -d "${TMPDIR:-/tmp}/cnc_sim_linuxcnc_wasm_tooldata_link.XXXXXX")
trap 'rm -rf "$build_dir"' EXIT
LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs.sh --root-only
tooldata_mmap_backend_shim=$(./list-linuxcnc-wasm-safe-shims.sh tooldata_mmap_backend.cc)
tooldata_runtime_stubs_shim=$(./list-linuxcnc-wasm-safe-shims.sh tooldata_runtime_stubs.cc)
tooldata_common_source=$(LINUXCNC_ROOT="$linuxcnc_root" ./list-linuxcnc-source-files.sh src/emc/tooldata/tooldata_common.cc)
common_flag_output=$(LINUXCNC_ROOT="$linuxcnc_root" ./list-linuxcnc-wasm-common-cxxflags.sh)
mapfile -t common_flags <<<"$common_flag_output"
"$cxx" "${common_flags[@]}" \
"$tooldata_common_source" \
"$tooldata_mmap_backend_shim" \
"$tooldata_runtime_stubs_shim" \
core/wasm_shims/tooldata/tooldata_probe_main.cc \
-o "$build_dir/tooldata_probe"
"$build_dir/tooldata_probe" 2>"$build_dir/tooldata_probe.err"
grep -F "tool_mmap_user(): tool mmap not available" "$build_dir/tooldata_probe.err" >/dev/null
grep -F "tooldata_put() no tool_mmap_base" "$build_dir/tooldata_probe.err" >/dev/null
echo "linuxcnc wasm tooldata shim link probe passed"