# dsfree2api — build / test helpers GO ?= go VERSION ?= 0.6.5 LDFLAGS := -s -w -X github.com/nyoungo/dsfree2api/internal/admin.Version=$(VERSION) BIN := bin/dsfree2api IMAGE ?= dsfree2api:latest .PHONY: build run test vet fmt tidy check linux docker clean build: CGO_ENABLED=0 $(GO) build -trimpath -ldflags "$(LDFLAGS)" -o $(BIN) ./cmd/dsfree2api run: build ./$(BIN) test: $(GO) test ./... vet: $(GO) vet ./... fmt: gofmt -w . tidy: $(GO) go mod tidy check: fmt vet test # Static linux/amd64 binary for servers (scp it over and run it). linux: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 $(GO) build -trimpath \ -ldflags "$(LDFLAGS)" -o bin/dsfree2api-linux-amd64 ./cmd/dsfree2api linux-arm: CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(GO) build -trimpath \ -ldflags "$(LDFLAGS)" -o bin/dsfree2api-linux-arm64 ./cmd/dsfree2api docker: docker build -t $(IMAGE) . clean: rm -rf bin