按推荐建议,继续执行
结论:新增 source-probes.tsv 映射并在 native 验证中比对 source-manifest,确保每个 vendored LinuxCNC .c/.cc 源文件都有显式 standalone 源码编译探针。
This commit is contained in:
@@ -7,12 +7,14 @@ BUILD_DIR="$ROOT_DIR/build/native"
|
||||
WRAP_DIR="$ROOT_DIR/runtime/core/linuxcnc_wrap"
|
||||
SHIM_DIR="$ROOT_DIR/runtime/core/shims"
|
||||
INCLUDE_DIR="$ROOT_DIR/runtime/core/include"
|
||||
SOURCE_PROBE_MAP="$BUILD_DIR/source-probes.tsv"
|
||||
MINIMAL_GCODE_FIXTURE="$ROOT_DIR/tests/fixtures/gcode/minimal_linear.ngc"
|
||||
NAMEDPARAM_INI_FIXTURE="$ROOT_DIR/tests/fixtures/ini/namedparams.ini"
|
||||
CXX="${CXX:-g++}"
|
||||
CC="${CC:-gcc}"
|
||||
|
||||
mkdir -p "$BUILD_DIR"
|
||||
: > "$SOURCE_PROBE_MAP"
|
||||
|
||||
COMMON_FLAGS=(
|
||||
-std=c++20
|
||||
@@ -179,6 +181,15 @@ compile_c_object() {
|
||||
return 1
|
||||
}
|
||||
|
||||
record_source_probe() {
|
||||
local target="$1"
|
||||
local source="$2"
|
||||
|
||||
[[ "$target" == *_source_probe ]] || return 0
|
||||
[[ "$source" == "$VENDOR_DIR/"* ]] || return 0
|
||||
printf '%s\t%s\n' "${source#"$VENDOR_DIR"/}" "$target" >> "$SOURCE_PROBE_MAP"
|
||||
}
|
||||
|
||||
link_needs_rebuild() {
|
||||
local output="$1"
|
||||
local cmdfile="$2"
|
||||
@@ -293,6 +304,7 @@ build_object_target() {
|
||||
status=1
|
||||
fi
|
||||
|
||||
record_source_probe "$target" "$source"
|
||||
echo "$status" > "$BUILD_DIR/$target.exitcode"
|
||||
return "$status"
|
||||
}
|
||||
@@ -314,6 +326,7 @@ build_c_object_target() {
|
||||
status=1
|
||||
fi
|
||||
|
||||
record_source_probe "$target" "$source"
|
||||
echo "$status" > "$BUILD_DIR/$target.exitcode"
|
||||
return "$status"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user