按推荐建议,继续执行

结论:将 standalone harness 使用的剩余 rs274ngc 解释器核心源文件纳入 vendored LinuxCNC 直接编译探针,验证迁移边界继续来源于 LinuxCNC 源程序。
This commit is contained in:
2026-06-07 16:58:45 +08:00
parent b499ee5e2b
commit c4d5f26166
3 changed files with 100 additions and 0 deletions

View File

@@ -450,6 +450,15 @@ Current verified progress:
`interp_execute.cc`. These probes keep the next interpreter-core migration
work focused on LinuxCNC source entry points and expose missing standalone
runtime shims before wrapper behavior is expanded.
- The direct source compile probes now cover the remaining vendored
`rs274ngc` interpreter core files used by the standalone harness:
`modal_state.cc`, `interp_array.cc`, `interp_internal.cc`,
`interp_arc.cc`, `interp_inverse.cc`, `interp_cycles.cc`,
`interp_g7x.cc`, `interp_queue.cc`, `interp_find.cc`,
`interp_namedparams.cc`, `interp_write.cc`, `interp_o_word.cc`, and
`rs274ngc_pre.cc`. `rs274ngc_pre.cc` is compiled with the existing
standalone `UNIT_TEST`/`LINUXCNC_STANDALONE_USE_RS274_PRE_STATE` boundary
that isolates Python runtime integration from the browser simulation core.
## Phase 4: Port INI Parsing Without Editing Upstream

View File

@@ -45,6 +45,19 @@ check_exitcode linuxcnc_interp_convert_source_probe
check_exitcode linuxcnc_interp_read_source_probe
check_exitcode linuxcnc_interp_check_source_probe
check_exitcode linuxcnc_interp_execute_source_probe
check_exitcode linuxcnc_modal_state_source_probe
check_exitcode linuxcnc_interp_array_source_probe
check_exitcode linuxcnc_interp_internal_source_probe
check_exitcode linuxcnc_interp_arc_source_probe
check_exitcode linuxcnc_interp_inverse_source_probe
check_exitcode linuxcnc_interp_cycles_source_probe
check_exitcode linuxcnc_interp_g7x_source_probe
check_exitcode linuxcnc_interp_queue_source_probe
check_exitcode linuxcnc_interp_find_source_probe
check_exitcode linuxcnc_interp_namedparams_source_probe
check_exitcode linuxcnc_interp_write_source_probe
check_exitcode linuxcnc_interp_o_word_source_probe
check_exitcode linuxcnc_rs274ngc_pre_source_probe
NAMEDPARAM_STDOUT="$BUILD_DIR/linuxcnc_namedparam_harness.run.stdout.log"
grep -Fq "init_named_parameters=0" "$NAMEDPARAM_STDOUT"

View File

@@ -477,4 +477,82 @@ build_object_target \
"$VENDOR_DIR/src/emc/rs274ngc/interp_execute.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_modal_state_source_probe \
"$BUILD_DIR/linuxcnc_modal_state_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/modal_state.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_array_source_probe \
"$BUILD_DIR/linuxcnc_interp_array_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_array.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_internal_source_probe \
"$BUILD_DIR/linuxcnc_interp_internal_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_internal.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_arc_source_probe \
"$BUILD_DIR/linuxcnc_interp_arc_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_arc.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_inverse_source_probe \
"$BUILD_DIR/linuxcnc_interp_inverse_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_inverse.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_cycles_source_probe \
"$BUILD_DIR/linuxcnc_interp_cycles_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_cycles.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_g7x_source_probe \
"$BUILD_DIR/linuxcnc_interp_g7x_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_g7x.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_queue_source_probe \
"$BUILD_DIR/linuxcnc_interp_queue_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_queue.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_find_source_probe \
"$BUILD_DIR/linuxcnc_interp_find_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_find.cc" \
COMMON_FLAGS
build_object_target \
linuxcnc_interp_namedparams_source_probe \
"$BUILD_DIR/linuxcnc_interp_namedparams_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_namedparams.cc" \
COMMON_INI_FLAGS
build_object_target \
linuxcnc_interp_write_source_probe \
"$BUILD_DIR/linuxcnc_interp_write_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_write.cc" \
COMMON_INI_FLAGS
build_object_target \
linuxcnc_interp_o_word_source_probe \
"$BUILD_DIR/linuxcnc_interp_o_word_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/interp_o_word.cc" \
COMMON_INI_FLAGS
build_object_target \
linuxcnc_rs274ngc_pre_source_probe \
"$BUILD_DIR/linuxcnc_rs274ngc_pre_source_probe.o" \
"$VENDOR_DIR/src/emc/rs274ngc/rs274ngc_pre.cc" \
MINIMAL_FLAGS
echo "native probes complete"