高效率推进 LinuxCNC 源码对齐流程

说明:集中 LinuxCNC 源码清单与 wasm/native probe 的路径解析,补强 manifest、shim、source-link 检查,并保持 LinuxCNC 源码后端对齐验证流程可复用。

验证:./test-native.sh;./test-linuxcnc-source-link.sh;./test-all-native.sh;wasm source/probe 相关脚本。
This commit is contained in:
cnc
2026-05-27 11:14:06 +08:00
parent ce2f3f3769
commit 40a63c76f7
44 changed files with 3566 additions and 475 deletions

View File

@@ -18,23 +18,9 @@ if [[ ! -d "$linuxcnc_root" ]]; then
exit 1
fi
while IFS=: read -r group path note; do
case "$group" in
""|\#*)
continue
;;
core|binding|tooldata)
;;
*)
echo "unknown manifest group: $group" >&2
exit 1
;;
esac
if [[ ! -f "$linuxcnc_root/$path" ]]; then
echo "missing manifest file: $path" >&2
exit 1
fi
done < "$manifest"
source_list=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_linuxcnc_source_syntax_sources.XXXXXX.txt")
trap 'rm -f "$source_list"' EXIT
LINUXCNC_ROOT="$linuxcnc_root" ./list-linuxcnc-source-manifest-sources.sh "$manifest" all full > "$source_list"
missing_source_manifest=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_missing_rs274_manifest_source.XXXXXX.txt")
missing_source_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_missing_rs274_manifest_source.XXXXXX.log")
@@ -72,18 +58,10 @@ common_flags=(
-I "$linuxcnc_root/include"
)
probe_sources=(
src/emc/rs274ngc/interp_base.cc
src/emc/rs274ngc/modal_state.cc
src/emc/rs274ngc/interp_arc.cc
src/emc/rs274ngc/interp_find.cc
src/emc/rs274ngc/interp_read.cc
src/emc/rs274ngc/nurbs_additional_functions.cc
)
for source in "${probe_sources[@]}"; do
while IFS= read -r source; do
[[ -z "$source" ]] && continue
# shellcheck disable=SC2086
"$cxx" "${common_flags[@]}" $python_includes "$linuxcnc_root/$source"
done
"$cxx" "${common_flags[@]}" $python_includes "$source"
done < "$source_list"
echo "linuxcnc rs274 source syntax probe passed"