按推荐建议,继续执行

结论:将 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 `interp_execute.cc`. These probes keep the next interpreter-core migration
work focused on LinuxCNC source entry points and expose missing standalone work focused on LinuxCNC source entry points and expose missing standalone
runtime shims before wrapper behavior is expanded. 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 ## 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_read_source_probe
check_exitcode linuxcnc_interp_check_source_probe check_exitcode linuxcnc_interp_check_source_probe
check_exitcode linuxcnc_interp_execute_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" NAMEDPARAM_STDOUT="$BUILD_DIR/linuxcnc_namedparam_harness.run.stdout.log"
grep -Fq "init_named_parameters=0" "$NAMEDPARAM_STDOUT" 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" \ "$VENDOR_DIR/src/emc/rs274ngc/interp_execute.cc" \
COMMON_FLAGS 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" echo "native probes complete"