Makefile 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. BUILD_DATE = $(shell date +%F-%Z/%T)
  2. TAG=$(shell git describe --tags --abbrev=0)
  3. GO_VERSION=$(shell go version)
  4. GO_VERS := $(shell echo "${GO_VERSION}" | sed -e 's/ /_/g')
  5. build:
  6. clear
  7. rm -rdf ./bin
  8. go fmt ./...
  9. # go build -ldflags "-w -s -X main.GoVersion=$(GO_VERS) -X main.Version=${TAG} -X main.Date=${BUILD_DATE}" -o ./bin/server ./cmd/server/main.go
  10. go build -o ./bin/wartank_prod ./cmd/server/main.go
  11. strip -s ./bin/wartank_prod
  12. upx -f ./bin/wartank_prod
  13. prod2:
  14. clear
  15. rm -rdf ./bin_dev
  16. go fmt ./...
  17. go build -ldflags "-X main.GoVersion=${GO_VERS} -X main.Version=${TAG} -X main.Date=${BUILD_DATE}" -o ./bin2/server2 ./cmd/server/main.go
  18. strip -s ./bin2/server2
  19. upx -f ./bin2/server2
  20. dev:
  21. clear
  22. rm -rdf ./bin_dev
  23. go fmt ./...
  24. # go build -ldflags "-w -s -X main.GoVersion=$(GO_VERS) -X main.Version=${TAG} -X main.Date=${BUILD_DATE}" -o ./bin_dev/wartank_dev ./cmd/server/main.go
  25. go build -race -o ./bin_dev/wartank_dev ./cmd/server/main.go
  26. ./run_dev.sh
  27. prod:
  28. clear
  29. go fmt ./...
  30. go build -o ./bin/wartank_prod ./cmd/server/main.go
  31. ./run_prod.sh
  32. desk.dev:
  33. clear
  34. go fmt ./...
  35. go build -o ./bin_dev/desktop_dev ./cmd/desktop/main.go
  36. ./run_desk.sh
  37. .PHONY: test
  38. test:
  39. clear
  40. go fmt ./...
  41. go test -shuffle=on -vet=all -race -timeout 30s -coverprofile cover.out ./...
  42. go tool cover -func=cover.out
  43. mod:
  44. clear
  45. go get -u ./...
  46. go mod tidy -compat=1.24.3
  47. go mod vendor
  48. go fmt ./...
  49. lint:
  50. clear
  51. go fmt ./...
  52. golangci-lint run ./cmd/server/...
  53. golangci-lint run ./app/...
  54. golangci-lint run ./kernel/...
  55. .PHONY: graph
  56. graph:
  57. # #go install github.com/kisielk/godepgraph@latest
  58. # #go mod graph | modgraphviz | dot -Tsvg -o graph.svg
  59. # godepgraph ./cmd/server | dot -Tsvg -o graph.svg
  60. clear
  61. go fmt ./...
  62. # http://localhost:7878/
  63. # go-callvis ./...
  64. #
  65. #
  66. godepgraph ./cmd/server | dot -Tsvg -o graph.svg