mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-11-01 14:57:38 +00:00
build(ldflags): 版本注入串同步到新 module 路径(Makefile:62/318、build.sh:69/230/240)
批 1,不含 SDK 仓与目录改名。
不同步的后果:go build 全绿但 -X 对未知路径静默忽略,
homed --version 的 Version/Commit/BuildTime 回落成默认值。
- Makefile:62 -X .../internal/meta.{Version,Commit,BuildTime}
- Makefile:318 -X .../internal/kernelboot.EmbeddedGraphHash
- build.sh:69 同上三个 meta 变量
- build.sh:230 -X .../internal/security.embeddedKeyHex
- build.sh:240 -X .../internal/kernelboot.EmbeddedGraphHash
This commit is contained in:
4
Makefile
4
Makefile
@ -59,7 +59,7 @@ VERSION := $(META_VERSION)dev$(if $(filter --dirty,$(shell git status --porcelai
|
||||
endif
|
||||
COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown")
|
||||
BUILD_TIME ?= $(shell date -u '+%Y-%m-%dT%H:%M:%SZ')
|
||||
LDFLAGS = -X github.com/JianFeeeee/HomeAgent/internal/meta.Version=$(VERSION) -X github.com/JianFeeeee/HomeAgent/internal/meta.Commit=$(COMMIT) -X github.com/JianFeeeee/HomeAgent/internal/meta.BuildTime=$(BUILD_TIME)
|
||||
LDFLAGS = -X github.com/JianFeeeee/HologramAgent/internal/meta.Version=$(VERSION) -X github.com/JianFeeeee/HologramAgent/internal/meta.Commit=$(COMMIT) -X github.com/JianFeeeee/HologramAgent/internal/meta.BuildTime=$(BUILD_TIME)
|
||||
|
||||
all: build build-cli
|
||||
|
||||
@ -315,7 +315,7 @@ build:
|
||||
$(BUILD_DIR)/homed-depgraph -print && \
|
||||
$(BUILD_DIR)/homed-depgraph -out $(BUILD_DIR)/$(GRAPH_FILE) && \
|
||||
echo "已注入启动依赖图 hash: $$GRAPH_HASH" ; \
|
||||
CGO_ENABLED=1 $(GO) build $(TAG_ARGS) -trimpath -installsuffix dynlink -ldflags "$(LDFLAGS) -X github.com/JianFeeeee/HomeAgent/internal/kernelboot.EmbeddedGraphHash=$$GRAPH_HASH" -o $(BUILD_DIR)/$(BINARY) ./cmd/homed/
|
||||
CGO_ENABLED=1 $(GO) build $(TAG_ARGS) -trimpath -installsuffix dynlink -ldflags "$(LDFLAGS) -X github.com/JianFeeeee/HologramAgent/internal/kernelboot.EmbeddedGraphHash=$$GRAPH_HASH" -o $(BUILD_DIR)/$(BINARY) ./cmd/homed/
|
||||
@echo "Built: $(BUILD_DIR)/$(BINARY) ($(VERSION), tags='$(HOMED_TAGS)')"
|
||||
@go version -m $(BUILD_DIR)/$(BINARY) | grep -q 'onnxruntime' \
|
||||
|| echo "WARN: 本次构建不含 onnxruntime,本地向量空间不可用(HOMED_TAGS= 显式关掉时才符合预期)"
|
||||
|
||||
@ -66,7 +66,7 @@ GO="${GO:-$(command -v go 2>/dev/null || echo "go")}"
|
||||
# 实测(2026-10-17):用旧路径构建 waiter,`--version` 输出
|
||||
# `waiter 1.4.0 (commit unknown, built unknown)`
|
||||
# 而正确路径得到注入的值。
|
||||
LDFLAGS="-X github.com/JianFeeeee/HomeAgent/internal/meta.Version=${VERSION} -X github.com/JianFeeeee/HomeAgent/internal/meta.Commit=${COMMIT} -X github.com/JianFeeeee/HomeAgent/internal/meta.BuildTime=${BUILD_TIME}"
|
||||
LDFLAGS="-X github.com/JianFeeeee/HologramAgent/internal/meta.Version=${VERSION} -X github.com/JianFeeeee/HologramAgent/internal/meta.Commit=${COMMIT} -X github.com/JianFeeeee/HologramAgent/internal/meta.BuildTime=${BUILD_TIME}"
|
||||
|
||||
# 版本与提交的**权威来源**是上面注入的 meta.Version / meta.Commit,不是 Go 自带的
|
||||
# VCS 戳。后者不进 build cache key(Go 文档明确说明 VCS 变化不会触发重建),
|
||||
@ -227,7 +227,7 @@ build_homed() {
|
||||
case "$_embedkey" in
|
||||
????????????????????????????????????????????????????????????????)
|
||||
# 64 字符:形状像 32 字节 hex
|
||||
_keyflag=" -X github.com/JianFeeeee/HomeAgent/internal/security.embeddedKeyHex=$_embedkey"
|
||||
_keyflag=" -X github.com/JianFeeeee/HologramAgent/internal/security.embeddedKeyHex=$_embedkey"
|
||||
echo " [security] 内嵌主密钥已注入(64 位 hex)" ;;
|
||||
*)
|
||||
echo " error: HA_EMBEDDED_KEY_HEX 必须是 64 位 hex(当前 ${#_embedkey} 字符)" >&2
|
||||
@ -237,7 +237,7 @@ build_homed() {
|
||||
|
||||
CGO_ENABLED=1 CC="$_cc" "$GO" build -buildvcs=false -trimpath -installsuffix dynlink \
|
||||
${_tagargs[@]+"${_tagargs[@]}"} \
|
||||
-ldflags "$LDFLAGS -X github.com/JianFeeeee/HomeAgent/internal/kernelboot.EmbeddedGraphHash=$_graph_hash$_keyflag" -o "$out" ./cmd/homed/
|
||||
-ldflags "$LDFLAGS -X github.com/JianFeeeee/HologramAgent/internal/kernelboot.EmbeddedGraphHash=$_graph_hash$_keyflag" -o "$out" ./cmd/homed/
|
||||
echo " OK ($(file "$out" | sed 's/.*: //') | $(du -h "$out" | cut -f1))"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user