diff --git a/Makefile b/Makefile index bea6e9b..9f32239 100644 --- a/Makefile +++ b/Makefile @@ -1,19 +1,8 @@ -DIST := dist EXECUTABLE := drone-scp -GOFMT ?= gofumpt -l -DIST := dist -DIST_DIRS := $(DIST)/binaries $(DIST)/release +GOFMT ?= gofumpt -l -s -w GO ?= go -SHASUM ?= shasum -a 256 GOFILES := $(shell find . -name "*.go" -type f) HAS_GO = $(shell hash $(GO) > /dev/null 2>&1 && echo "GO" || echo "NOGO" ) -XGO_PACKAGE ?= src.techknowlogick.com/xgo@latest -XGO_VERSION := go-1.19.x -GXZ_PAGAGE ?= github.com/ulikunitz/xz/cmd/gxz@v0.5.11 - -LINUX_ARCHS ?= linux/amd64,linux/arm64 -DARWIN_ARCHS ?= darwin-10.12/amd64,darwin-10.12/arm64 -WINDOWS_ARCHS ?= windows/* ifneq ($(shell uname), Darwin) EXTLDFLAGS = -extldflags "-static" $(null) @@ -115,51 +104,6 @@ ssh-server: coverage: sed -i '/main.go/d' coverage.txt -.PHONY: deps-backend -deps-backend: - $(GO) mod download - $(GO) install $(GXZ_PAGAGE) - $(GO) install $(XGO_PACKAGE) - -.PHONY: release -release: release-linux release-darwin release-windows release-copy release-compress release-check - -$(DIST_DIRS): - mkdir -p $(DIST_DIRS) - -.PHONY: release-windows -release-windows: | $(DIST_DIRS) - CGO_CFLAGS="$(CGO_CFLAGS)" $(GO) run $(XGO_PACKAGE) -go $(XGO_VERSION) -buildmode exe -dest $(DIST)/binaries -tags 'netgo osusergo $(TAGS)' -ldflags '-linkmode external -extldflags "-static" $(LDFLAGS)' -targets '$(WINDOWS_ARCHS)' -out $(EXECUTABLE)-$(VERSION) . -ifeq ($(CI),true) - cp -r /build/* $(DIST)/binaries/ -endif - -.PHONY: release-linux -release-linux: | $(DIST_DIRS) - CGO_CFLAGS="$(CGO_CFLAGS)" $(GO) run $(XGO_PACKAGE) -go $(XGO_VERSION) -dest $(DIST)/binaries -tags 'netgo osusergo $(TAGS)' -ldflags '-linkmode external -extldflags "-static" $(LDFLAGS)' -targets '$(LINUX_ARCHS)' -out $(EXECUTABLE)-$(VERSION) . -ifeq ($(CI),true) - cp -r /build/* $(DIST)/binaries/ -endif - -.PHONY: release-darwin -release-darwin: | $(DIST_DIRS) - CGO_CFLAGS="$(CGO_CFLAGS)" $(GO) run $(XGO_PACKAGE) -go $(XGO_VERSION) -dest $(DIST)/binaries -tags 'netgo osusergo $(TAGS)' -ldflags '$(LDFLAGS)' -targets '$(DARWIN_ARCHS)' -out $(EXECUTABLE)-$(VERSION) . -ifeq ($(CI),true) - cp -r /build/* $(DIST)/binaries/ -endif - -.PHONY: release-copy -release-copy: | $(DIST_DIRS) - cd $(DIST); for file in `find . -type f -name "*"`; do cp $${file} ./release/; done; - -.PHONY: release-check -release-check: | $(DIST_DIRS) - cd $(DIST)/release/; for file in `find . -type f -name "*"`; do echo "checksumming $${file}" && $(SHASUM) `echo $${file} | sed 's/^..//'` > $${file}.sha256; done; - -.PHONY: release-compress -release-compress: | $(DIST_DIRS) - cd $(DIST)/release/; for file in `find . -type f -name "*"`; do echo "compressing $${file}" && $(GO) run $(GXZ_PAGAGE) -k -9 $${file}; done; - clean: $(GO) clean -x -i ./... rm -rf coverage.txt $(EXECUTABLE) $(DIST)