aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorheqnx <root@heqnx.com>2025-07-04 13:59:57 +0300
committerheqnx <root@heqnx.com>2025-07-04 13:59:57 +0300
commit121c7aaf53b0f34ddec77424fecbdac993f2fe45 (patch)
tree4730ffc33a226b302ef9e62b7f251d8e4628eda0 /Makefile
parentfed1bf7e23b4da9c0d5dfe1d29dd2ff5e2be72ff (diff)
downloadgo-cryptonym-121c7aaf53b0f34ddec77424fecbdac993f2fe45.tar.gz
go-cryptonym-121c7aaf53b0f34ddec77424fecbdac993f2fe45.zip
initial commit
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile52
1 files changed, 52 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..8433305
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,52 @@
+PROJECT_NAME := go-cryptonym
+BUILD_DIR := build
+GOFLAGS := -ldflags "-s -w" -trimpath -buildvcs=false
+GO_BUILD := go build $(GOFLAGS)
+.PHONY: all clean linux windows darwin tidy
+
+all: tidy linux windows darwin
+
+$(BUILD_DIR):
+ mkdir -p $(BUILD_DIR)
+
+tidy:
+ go mod tidy
+
+linux: linux-amd64 linux-386
+
+linux-amd64: $(BUILD_DIR)/$(PROJECT_NAME)-linux-amd64
+
+$(BUILD_DIR)/$(PROJECT_NAME)-linux-amd64: tidy | $(BUILD_DIR)
+ GOOS=linux GOARCH=amd64 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-linux-amd64
+
+linux-386: $(BUILD_DIR)/$(PROJECT_NAME)-linux-386
+
+$(BUILD_DIR)/$(PROJECT_NAME)-linux-386: tidy | $(BUILD_DIR)
+ GOOS=linux GOARCH=386 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-linux-386
+
+windows: windows-amd64 windows-386
+
+windows-amd64: $(BUILD_DIR)/$(PROJECT_NAME)-windows-amd64.exe
+
+$(BUILD_DIR)/$(PROJECT_NAME)-windows-amd64.exe: tidy | $(BUILD_DIR)
+ GOOS=windows GOARCH=amd64 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-windows-amd64.exe
+
+windows-386: $(BUILD_DIR)/$(PROJECT_NAME)-windows-386.exe
+
+$(BUILD_DIR)/$(PROJECT_NAME)-windows-386.exe: tidy | $(BUILD_DIR)
+ GOOS=windows GOARCH=386 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-windows-386.exe
+
+darwin: darwin-amd64 darwin-arm64
+
+darwin-amd64: $(BUILD_DIR)/$(PROJECT_NAME)-darwin-amd64
+
+$(BUILD_DIR)/$(PROJECT_NAME)-darwin-amd64: tidy | $(BUILD_DIR)
+ GOOS=darwin GOARCH=amd64 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-darwin-amd64
+
+darwin-arm64: $(BUILD_DIR)/$(PROJECT_NAME)-darwin-arm64
+
+$(BUILD_DIR)/$(PROJECT_NAME)-darwin-arm64: tidy | $(BUILD_DIR)
+ GOOS=darwin GOARCH=arm64 $(GO_BUILD) -o $(BUILD_DIR)/$(PROJECT_NAME)-darwin-arm64
+
+clean:
+ rm -rf $(BUILD_DIR)