Files
htsy-cli/Makefile
T

30 lines
766 B
Makefile

BINARY ?= htsy
VERSION ?= dev
LDFLAGS := -s -w -X main.version=$(VERSION)
PLATFORMS := linux/amd64 linux/arm64 darwin/amd64 darwin/arm64 windows/amd64 windows/arm64
.PHONY: test build release clean
test:
go test ./...
build:
mkdir -p bin
CGO_ENABLED=0 go build -trimpath -ldflags "$(LDFLAGS)" -o bin/$(BINARY) .
release: clean test
mkdir -p dist
for platform in $(PLATFORMS); do \
GOOS=$${platform%/*}; \
GOARCH=$${platform#*/}; \
EXT=""; \
if [ "$$GOOS" = "windows" ]; then EXT=".exe"; fi; \
OUT="dist/$(BINARY)_$${GOOS}_$${GOARCH}$${EXT}"; \
echo "building $$OUT"; \
CGO_ENABLED=0 GOOS=$$GOOS GOARCH=$$GOARCH go build -trimpath -ldflags "$(LDFLAGS)" -o "$$OUT" .; \
done
cd dist && shasum -a 256 * > checksums.txt
clean:
rm -rf bin dist