docs: improve build system with enhanced targets and descriptions (#17)

- Add a `help` target to print a help message.
- Add descriptions for the `build`, `air`, `dev`, and `vendor` targets.
- Remove inline comments for the `air`, `dev`, and `vendor` targets.

Signed-off-by: appleboy <appleboy.tw@gmail.com>

Reviewed-on: https://gitea.com/gitea/gitea-mcp/pulls/17
Co-authored-by: appleboy <appleboy.tw@gmail.com>
Co-committed-by: appleboy <appleboy.tw@gmail.com>
This commit is contained in:
appleboy
2025-04-06 14:06:53 +00:00
committed by hiifong
parent a784029828
commit c9cada1a8d

View File

@@ -3,25 +3,30 @@ EXECUTABLE := gitea-mcp
VERSION ?= $(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//')
LDFLAGS := -X "main.Version=$(VERSION)"
.PHONY: help
help: ## Print this help message.
@echo "Usage: make [target]"
@echo ""
@echo "Targets:"
@echo ""
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: build
build:
build: ## Build the application.
$(GO) build -v -ldflags '-s -w $(LDFLAGS)' -o $(EXECUTABLE)
## air: install air for hot reload
.PHONY: air
air:
air: ## Install air for hot reload.
@hash air > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
$(GO) install github.com/air-verse/air@latest; \
fi
## dev: run the application with hot reload
.PHONY: dev
dev: air
dev: air ## run the application with hot reload
air --build.cmd "make build" --build.bin ./gitea-mcp
## vendor: tidy and verify module dependencies
.PHONY: vendor
vendor:
vendor: ## tidy and verify module dependencies
@echo 'Tidying and verifying module dependencies...'
go mod tidy
go mod verify
go mod verify