|
|
@@ -0,0 +1,43 @@
|
|
|
+# =============================================================================
|
|
|
+# 统一 Go 后端 · 构建入口(ADR-011 单二进制 / ADR-015 部署形态)
|
|
|
+#
|
|
|
+# 产物位置约定(2026-11-06 用户拍板):
|
|
|
+# · API 生成物固定输出到 bin/api/ 目录
|
|
|
+# · Windows 下固定命名 go-backend.exe(非 Windows 为 go-backend)
|
|
|
+# · bin/ 整目录已被 .gitignore 忽略(不入库)
|
|
|
+#
|
|
|
+# 常用目标:
|
|
|
+# make build 编译 cmd/api → bin/api/go-backend(.exe)
|
|
|
+# make clean 清除 bin/ 构建产物
|
|
|
+# make test 跑全量单测(域模块就绪后启用)
|
|
|
+# make vet 静态检查
|
|
|
+# =============================================================================
|
|
|
+
|
|
|
+# 产物后缀按当前 Go 目标平台判定(windows → .exe,其余无后缀)
|
|
|
+GOOS ?= $(shell go env GOOS)
|
|
|
+ifeq ($(GOOS),windows)
|
|
|
+BINEXT := .exe
|
|
|
+else
|
|
|
+BINEXT :=
|
|
|
+endif
|
|
|
+
|
|
|
+BIN_DIR := bin/api
|
|
|
+BIN := $(BIN_DIR)/go-backend$(BINEXT)
|
|
|
+
|
|
|
+.PHONY: build
|
|
|
+build:
|
|
|
+ @mkdir -p $(BIN_DIR)
|
|
|
+ @go build -o $(BIN) ./cmd/api
|
|
|
+ @echo "build ok -> $(BIN)"
|
|
|
+
|
|
|
+.PHONY: clean
|
|
|
+clean:
|
|
|
+ @rm -rf bin
|
|
|
+
|
|
|
+.PHONY: test
|
|
|
+test:
|
|
|
+ go test ./...
|
|
|
+
|
|
|
+.PHONY: vet
|
|
|
+vet:
|
|
|
+ go vet ./...
|