按 align-linuxcnc 约束补 runtime shim 源码依据

This commit is contained in:
cnc
2026-06-02 10:10:56 +08:00
parent e1708c96ee
commit 8826f2ee73
4 changed files with 17 additions and 0 deletions

View File

@@ -7,8 +7,12 @@
#include <string>
#include <wordexp.h>
// LinuxCNC source basis: src/emc/rs274ngc/gcodemodule.cc defines _task=0 for
// preview, while src/emc/task/emctaskmain.cc defines _task=1 for milltask.
int _task = 0;
// LinuxCNC source basis: src/emc/task/taskclass.cc and
// src/emc/rs274ngc/gcodemodule.cc register builtin interpreter/emccanon modules.
extern "C" PyObject *PyInit_interpreter(void) {
return nullptr;
}
@@ -29,6 +33,9 @@ struct _inittab builtin_modules[] = {
};
}
// LinuxCNC source basis: src/emc/rs274ngc/interp_namedparams.cc fetch_hal_param()
// uses these HAL entry points; include/hal.h declares them and src/hal/hal_lib.c
// provides the native backend.
extern "C" int hal_init(const char *) {
return 1;
}
@@ -159,6 +166,8 @@ std::string expand_path_word(const char *words) {
} // namespace
// LinuxCNC source basis: src/emc/rs274ngc/rs274ngc_pre.cc uses wordexp() and
// wordfree() while resolving program/subroutine paths.
extern "C" int wordexp(const char *words, wordexp_t *pwordexp, int) {
if (!words || !pwordexp) {
return WRDE_BADVAL;