按推荐建议,继续执行

结论:继续按 LinuxCNC 源码直接复用路线推进,新增 SCARA 运动学源码的 vendored 同步、switchkins native 探针、source probe 覆盖和复用文档,并通过 native 验证。
This commit is contained in:
2026-06-07 20:16:32 +08:00
parent d9296eb5e0
commit 42f1acd34a
6 changed files with 394 additions and 3 deletions

View File

@@ -430,6 +430,15 @@ TRIPOD_KINEMATICS_PROBE_SOURCES=(
"$WRAP_DIR/linuxcnc_tripod_kinematics_probe.cpp"
)
SCARA_KINEMATICS_PROBE_SOURCES=(
"$VENDOR_DIR/src/emc/kinematics/kins_util.c"
"$VENDOR_DIR/src/emc/kinematics/switchkins.c"
"$VENDOR_DIR/src/emc/kinematics/userkfuncs.c"
"$VENDOR_DIR/src/emc/kinematics/scarakins.c"
"$WRAP_DIR/linuxcnc_hal_adapter.cpp"
"$WRAP_DIR/linuxcnc_scara_kinematics_probe.cpp"
)
TP_CORE_SOURCES=(
"$VENDOR_DIR/src/emc/tp/tp.c"
"$VENDOR_DIR/src/emc/tp/tc.c"
@@ -687,6 +696,13 @@ build_binary_target \
TRIPOD_KINEMATICS_PROBE_SOURCES \
NO_LINK_FLAGS
build_binary_target \
linuxcnc_scara_kinematics_probe \
"$BUILD_DIR/linuxcnc_scara_kinematics_probe" \
TP_FLAGS \
SCARA_KINEMATICS_PROBE_SOURCES \
NO_LINK_FLAGS
if [[ "$(tr -d '[:space:]' < "$BUILD_DIR/linuxcnc_kinematics_probe.exitcode")" == "0" ]]; then
set +e
"$BUILD_DIR/linuxcnc_kinematics_probe" \
@@ -867,6 +883,21 @@ else
"$BUILD_DIR/linuxcnc_tripod_kinematics_probe.run.stderr.log"
fi
if [[ "$(tr -d '[:space:]' < "$BUILD_DIR/linuxcnc_scara_kinematics_probe.exitcode")" == "0" ]]; then
set +e
"$BUILD_DIR/linuxcnc_scara_kinematics_probe" \
>"$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.stdout.log" \
2>"$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.stderr.log"
SCARA_KINEMATICS_RUN_RC=$?
set -e
echo "$SCARA_KINEMATICS_RUN_RC" > "$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.exitcode"
else
rm -f \
"$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.exitcode" \
"$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.stdout.log" \
"$BUILD_DIR/linuxcnc_scara_kinematics_probe.run.stderr.log"
fi
if [[ "$(tr -d '[:space:]' < "$BUILD_DIR/linuxcnc_tp_api_probe.exitcode")" == "0" ]]; then
set +e
"$BUILD_DIR/linuxcnc_tp_api_probe" \
@@ -1061,6 +1092,12 @@ build_object_target \
"$VENDOR_DIR/src/emc/kinematics/tripodkins.c" \
TP_FLAGS
build_object_target \
linuxcnc_scarakins_source_probe \
"$BUILD_DIR/linuxcnc_scarakins_source_probe.o" \
"$VENDOR_DIR/src/emc/kinematics/scarakins.c" \
TP_FLAGS
build_object_target \
linuxcnc_interp_convert_source_probe \
"$BUILD_DIR/linuxcnc_interp_convert_source_probe.o" \