BINARY = linum GO = go MAIN = . OUTPUT = build/$(BINARY) LDFLAGS = -ldflags="-s -w -X main.version=$(VERSION)" .PHONY: default build test lint fmt clean run install fuzz race \ build-linux default: test lint build build: $(GO) build $(LDFLAGS) -o $(OUTPUT) $(MAIN) test: $(GO) test -race -count=1 ./... lint: $(GO) vet ./... fmt: gofmt -w . clean: rm -f $(OUTPUT) run: build ./$(OUTPUT) install: $(GO) install $(LDFLAGS) $(MAIN) fuzz: $(GO) test -fuzz=FuzzBuildResponse -fuzztime=30s ./internal/server/ build-linux: GOOS=linux GOARCH=amd64 $(GO) build $(LDFLAGS) -o build/$(BINARY)-linux-amd64 $(MAIN) build-darwin: GOOS=darwin GOARCH=amd64 $(GO) build $(LDFLAGS) -o build/$(BINARY)-darwin-amd64 $(MAIN) build-arm: GOOS=linux GOARCH=arm64 $(GO) build $(LDFLAGS) -o build/$(BINARY)-linux-arm64 $(MAIN) race: $(GO) test -race -count=1 ./...