# SPDX-FileCopyrightText: Amolith # # SPDX-License-Identifier: CC0-1.0 GOOS := env("GOOS", `go env GOOS`) GOARCH := env("GOARCH", `go env GOARCH`) VERSION := `git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g'` default: fmt lint staticcheck test vuln reuse fmt: # Formatting all Go source code go install mvdan.cc/gofumpt@latest gofumpt -l -w . lint: # Linting Go source code golangci-lint run staticcheck: # Performing static analysis go install honnef.co/go/tools/cmd/staticcheck@latest staticcheck ./... test: # Running tests go test -v ./... vuln: # Checking for vulnerabilities go install golang.org/x/vuln/cmd/govulncheck@latest govulncheck ./... reuse: # Linting licenses and copyright headers reuse lint build: # Building planning-mcp-server CGO_ENABLED=0 GOOS={{GOOS}} GOARCH={{GOARCH}} go build -o planning-mcp-server -ldflags "-s -w -X main.version={{VERSION}}" ./cmd/planning-mcp-server install: # Installing planning-mcp-server CGO_ENABLED=0 GOOS={{GOOS}} GOARCH={{GOARCH}} go install -ldflags "-s -w -X main.version={{VERSION}}" ./cmd/planning-mcp-server run: # Running planning-mcp-server CGO_ENABLED=0 GOOS={{GOOS}} GOARCH={{GOARCH}} go run -ldflags "-s -w -X main.version={{VERSION}}" ./cmd/planning-mcp-server pack: # Packing planning-mcp-server upx --best -qo planning-mcp-server.min planning-mcp-server mv planning-mcp-server.min planning-mcp-server clean: # Removing build artifacts rm -rf planning-mcp-server clean-all: # Removing build artifacts and config.toml rm -rf planning-mcp-server config.toml