mirror of
https://github.com/darmiel/yaxc.git
synced 2024-11-10 09:03:00 +08:00
51 lines
1.5 KiB
Makefile
51 lines
1.5 KiB
Makefile
# default
|
|
compileAll: compileDarwin compileLinux compileFreeBSD compileWindows
|
|
|
|
# dir
|
|
mkdirs: clean
|
|
mkdir -p bin/
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -r bin/
|
|
#
|
|
|
|
# compile
|
|
compileDarwin: mkdirs
|
|
@echo ""
|
|
@echo "🍏 Compile for Darwin"
|
|
@echo ""
|
|
GOOS=darwin GOARCH=amd64 go build -ldflags="-s -w" -o ./bin/yaxc-darwin-amd64 ./main.go
|
|
|
|
compileLinux: mkdirs
|
|
@echo ""
|
|
@echo "🐧 Compile for Linux"
|
|
@echo ""
|
|
GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o ./bin/yaxc-linux-amd64 ./main.go
|
|
GOOS=linux GOARCH=386 go build -ldflags="-s -w" -o ./bin/yaxc-linux-386 ./main.go
|
|
GOOS=linux GOARCH=arm go build -ldflags="-s -w" -o ./bin/yaxc-linux-arm ./main.go
|
|
GOOS=linux GOARCH=arm64 go build -ldflags="-s -w" -o ./bin/yaxc-linux-arm64 ./main.go
|
|
|
|
compileFreeBSD: mkdirs
|
|
@echo ""
|
|
@echo "🐡 Compile for FreeBSD"
|
|
@echo ""
|
|
GOOS=freebsd GOARCH=amd64 go build -ldflags="-s -w" -o ./bin/yaxc-freebsd-amd64 ./main.go
|
|
GOOS=freebsd GOARCH=386 go build -ldflags="-s -w" -o ./bin/yaxc-freebsd-386 ./main.go
|
|
GOOS=freebsd GOARCH=arm go build -ldflags="-s -w" -o ./bin/yaxc-freebsd-arm ./main.go
|
|
|
|
compileWindows: mkdirs
|
|
@echo ""
|
|
@echo "🪟 Compile for Windows"
|
|
@echo ""
|
|
GOOS=windows GOARCH=amd64 go build -ldflags="-s -w" -o ./bin/yaxc-windows-amd64.exe ./main.go
|
|
GOOS=windows GOARCH=386 go build -ldflags="-s -w" -o ./bin/yaxc-windows-386.exe ./main.go
|
|
|
|
# compress
|
|
compileAndCompress: compileAll
|
|
@echo ""
|
|
@echo "📦 Compress binaries"
|
|
@echo ""
|
|
upx -1 -k bin/yaxc-linux-*
|
|
upx -1 -k bin/yaxc-darwin-*
|
|
upx -1 -k bin/yaxc-windows-*
|