1234567891011121314151617181920212223242526272829303132333435363738394041 |
- .PHONY: all build run gotool clean help
- BINARY="server"
- GVA = "gva"
- all: check gva initdb run
- gva:
- go build -o ${GVA} cmd/main.go
- initdb:
- @if [ -f ${GVA} ] ; then ./gva initdb && rm ${GVA} ; fi
- linux-build:
- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
- windows-build:
- CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o ${BINARY}.exe
- mac-build:
- CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o ${BINARY}
- run:
- @go run main.go
- check:
- go fmt ./
- go vet ./
- clean:
- @if [ -f ${BINARY} ] ; then rm ${BINARY} ; fi
- @if [ -f ${GVA} ] ; then rm ${GVA} ; fi
- help:
- @echo "make - 格式化 Go 代码, 并编译生成二进制文件"
- @echo "make linux-build - 编译 Go 代码, 生成Linux系统的二进制文件"
- @echo "make windows-build - 编译 Go 代码, 生成Windows系统的exe文件"
- @echo "make mac-build - 编译 Go 代码, 生成Mac系统的二进制文件"
- @echo "make run - 直接运行 main.go"
- @echo "make clean - 移除二进制文件"
- @echo "make check - 运行 Go 工具 'fmt' and 'vet'"
|