Initial wasm simulator checkpoint

This commit is contained in:
CNC Local
2026-05-22 04:43:21 +08:00
commit 55d9fff9f0
54 changed files with 5523 additions and 0 deletions

42
test-linuxcnc-api-native.sh Executable file
View File

@@ -0,0 +1,42 @@
#!/usr/bin/env bash
set -euo pipefail
cd "$(dirname "$0")"
linuxcnc_root=${LINUXCNC_ROOT:-../linuxcnc}
cxx=${CXX:-g++}
build_dir=${TMPDIR:-/tmp}/cnc_sim_native
mkdir -p "$build_dir"
var_file="$build_dir/rs274ngc-api.var"
cp "$linuxcnc_root/tests/halui/jogging/sim.var" "$var_file"
"$cxx" -std=c++17 \
-DCNC_SIM_ENABLE_LINUXCNC_RS274_BACKEND \
$(python3.13-config --includes 2>/dev/null || python3-config --includes) \
-I core/include \
-I core/src \
-I "$linuxcnc_root/src" \
-I "$linuxcnc_root/src/emc" \
-I "$linuxcnc_root/src/emc/nml_intf" \
-I "$linuxcnc_root/src/emc/rs274ngc" \
-I "$linuxcnc_root/src/emc/motion" \
-I "$linuxcnc_root/include" \
core/src/canon_event_sink.cpp \
core/src/cnc_sim_api.cpp \
core/src/gcode_backend.cpp \
core/src/linuxcnc_canon_bridge.cpp \
core/src/linuxcnc_rs274_backend.cpp \
core/src/rtcp_kinematics.cpp \
core/src/simulator_gcode_controls.cpp \
core/src/smoke_gcode_parser.cpp \
core/tests/cnc_sim_api_linuxcnc_rs274_smoke.cpp \
-L "$linuxcnc_root/lib" \
-Wl,-rpath,"$linuxcnc_root/lib" \
-lrs274 \
-ltooldata \
-lpython3.13 \
-o "$build_dir/cnc_sim_api_linuxcnc_rs274_smoke"
CNC_SIM_RS274_VAR="$var_file" "$build_dir/cnc_sim_api_linuxcnc_rs274_smoke"
echo "linuxcnc rs274 API backend smoke passed"