0
0
Files
2026-07-17 12:14:59 +02:00

46 lines
984 B
Makefile

PROG := ./pandadraw.go
NAME := pandadraw
AMD64 := x86_64-linux-musl
ARM64 := aarch64-linux-musl
TARGETS := $(AMD64) $(ARCH64)
default:
@go build -v $(PROG) && ./$(NAME)
freshbuild:
@rm -rf .pandadraw*
second:
@go build -v $(PROG) && ./$(NAME) -data .pandadraw2
third:
@go build -v $(PROG) && ./$(NAME) -data .pandadraw3
release: amd64 arm64 upx
cleanup:
@rm -rf target
setup: cleanup
@$(foreach t,$(TARGETS),mkdir -p target/$(t);)
amd64: setup
@CC="zig cc -target $(AMD64) -lunwind" \
CGO_ENABLED=1 \
CGO_LDFLAGS="-static" \
GOOS=linux GOARCH=amd64 \
go build -v -a -ldflags '-extldflags "-static" -s -w' \
-o target/$(AMD64)/$(NAME) $(PROG)
arm64: setup
@CC="zig cc -target $(ARM64) -lunwind" \
CGO_ENABLED=1 \
CGO_LDFLAGS="-static" \
GOOS=linux GOARCH=arm64 \
go build -v -a -ldflags '-extldflags "-static" -s -w' \
-o target/$(ARM64)/$(NAME) $(PROG)
upx:
@upx --best --lzma target/$(AMD64)/$(NAME)
@upx --best --lzma target/$(ARM64)/$(NAME)