Makefile 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # =============================================================================
  2. # 统一 Go 后端 · 构建入口(ADR-011 单二进制 / ADR-015 部署形态)
  3. #
  4. # 产物位置约定(2026-11-06 用户拍板):
  5. # · API 生成物固定输出到 bin/api/ 目录
  6. # · Windows 下固定命名 go-backend.exe(非 Windows 为 go-backend)
  7. # · bin/ 整目录已被 .gitignore 忽略(不入库)
  8. #
  9. # 常用目标:
  10. # make build 编译 cmd/api → bin/api/go-backend(.exe)
  11. # make clean 清除 bin/ 构建产物
  12. # make test 跑全量单测(域模块就绪后启用)
  13. # make vet 静态检查
  14. # =============================================================================
  15. # 产物后缀按当前 Go 目标平台判定(windows → .exe,其余无后缀)
  16. GOOS ?= $(shell go env GOOS)
  17. ifeq ($(GOOS),windows)
  18. BINEXT := .exe
  19. else
  20. BINEXT :=
  21. endif
  22. BIN_DIR := bin/api
  23. BIN := $(BIN_DIR)/go-backend$(BINEXT)
  24. .PHONY: build
  25. build:
  26. @mkdir -p $(BIN_DIR)
  27. @go build -o $(BIN) ./cmd/api
  28. @echo "build ok -> $(BIN)"
  29. .PHONY: clean
  30. clean:
  31. @rm -rf bin
  32. .PHONY: test
  33. test:
  34. go test ./...
  35. .PHONY: vet
  36. vet:
  37. go vet ./...