按推荐建议,继续执行

结论:将 vendored LinuxCNC 轨迹规划器、cruckig、posemath 源文件纳入直接编译探针,并通过 native 验证,继续确保核心功能来源于 LinuxCNC 源程序。
This commit is contained in:
2026-06-07 17:02:45 +08:00
parent c4d5f26166
commit 18ee97b9b5
3 changed files with 115 additions and 0 deletions

View File

@@ -300,6 +300,72 @@ TP_RUNTIME_PROBE_SOURCES=(
"$WRAP_DIR/linuxcnc_tp_api_probe.cpp"
)
TP_SOURCE_PROBE_NAMES=(
linuxcnc_tp_tp_source_probe
linuxcnc_tp_tc_source_probe
linuxcnc_tp_tcq_source_probe
linuxcnc_tp_spherical_arc_source_probe
linuxcnc_tp_blendmath_source_probe
linuxcnc_tp_sp_scurve_source_probe
linuxcnc_tp_ruckig_wrapper_source_probe
linuxcnc_cruckig_block_source_probe
linuxcnc_cruckig_brake_source_probe
linuxcnc_cruckig_calculator_source_probe
linuxcnc_cruckig_cruckig_source_probe
linuxcnc_cruckig_input_parameter_source_probe
linuxcnc_cruckig_output_parameter_source_probe
linuxcnc_cruckig_profile_source_probe
linuxcnc_cruckig_roots_source_probe
linuxcnc_cruckig_trajectory_source_probe
linuxcnc_cruckig_position_first_step1_source_probe
linuxcnc_cruckig_position_first_step2_source_probe
linuxcnc_cruckig_position_second_step1_source_probe
linuxcnc_cruckig_position_second_step2_source_probe
linuxcnc_cruckig_position_third_step1_source_probe
linuxcnc_cruckig_position_third_step2_source_probe
linuxcnc_cruckig_velocity_second_step1_source_probe
linuxcnc_cruckig_velocity_second_step2_source_probe
linuxcnc_cruckig_velocity_third_step1_source_probe
linuxcnc_cruckig_velocity_third_step2_source_probe
linuxcnc_emcpose_source_probe
linuxcnc_posemath_source_probe
linuxcnc_posemath_c_source_probe
linuxcnc_sincos_source_probe
)
TP_SOURCE_PROBE_SOURCES=(
"$VENDOR_DIR/src/emc/tp/tp.c"
"$VENDOR_DIR/src/emc/tp/tc.c"
"$VENDOR_DIR/src/emc/tp/tcq.c"
"$VENDOR_DIR/src/emc/tp/spherical_arc.c"
"$VENDOR_DIR/src/emc/tp/blendmath.c"
"$VENDOR_DIR/src/emc/tp/sp_scurve.c"
"$VENDOR_DIR/src/emc/tp/ruckig_wrapper.c"
"$VENDOR_DIR/src/emc/tp/cruckig/block.c"
"$VENDOR_DIR/src/emc/tp/cruckig/brake.c"
"$VENDOR_DIR/src/emc/tp/cruckig/calculator.c"
"$VENDOR_DIR/src/emc/tp/cruckig/cruckig.c"
"$VENDOR_DIR/src/emc/tp/cruckig/input_parameter.c"
"$VENDOR_DIR/src/emc/tp/cruckig/output_parameter.c"
"$VENDOR_DIR/src/emc/tp/cruckig/profile.c"
"$VENDOR_DIR/src/emc/tp/cruckig/roots.c"
"$VENDOR_DIR/src/emc/tp/cruckig/trajectory.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_first_step1.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_first_step2.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_second_step1.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_second_step2.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_third_step1.c"
"$VENDOR_DIR/src/emc/tp/cruckig/position_third_step2.c"
"$VENDOR_DIR/src/emc/tp/cruckig/velocity_second_step1.c"
"$VENDOR_DIR/src/emc/tp/cruckig/velocity_second_step2.c"
"$VENDOR_DIR/src/emc/tp/cruckig/velocity_third_step1.c"
"$VENDOR_DIR/src/emc/tp/cruckig/velocity_third_step2.c"
"$VENDOR_DIR/src/emc/nml_intf/emcpose.c"
"$VENDOR_DIR/src/libnml/posemath/posemath.cc"
"$VENDOR_DIR/src/libnml/posemath/_posemath.c"
"$VENDOR_DIR/src/libnml/posemath/sincos.c"
)
INTERP_CORE_SOURCES=(
"$VENDOR_DIR/src/emc/rs274ngc/modal_state.cc"
"$VENDOR_DIR/src/emc/rs274ngc/interp_array.cc"
@@ -378,6 +444,14 @@ else
"$BUILD_DIR/linuxcnc_tp_api_probe.run.stderr.log"
fi
for index in "${!TP_SOURCE_PROBE_NAMES[@]}"; do
build_object_target \
"${TP_SOURCE_PROBE_NAMES[$index]}" \
"$BUILD_DIR/${TP_SOURCE_PROBE_NAMES[$index]}.o" \
"${TP_SOURCE_PROBE_SOURCES[$index]}" \
TP_FLAGS
done
build_binary_target \
linuxcnc_namedparam_harness \
"$BUILD_DIR/linuxcnc_namedparam_harness" \