makefile: add targets for release dist builds
This commit is contained in:
parent
ba7228ad44
commit
e15af5a544
6
.gitignore
vendored
6
.gitignore
vendored
@ -1,4 +1,8 @@
|
|||||||
testdata/
|
testdata/
|
||||||
liblcl*
|
liblcl-*.zip
|
||||||
|
liblcl.so
|
||||||
|
liblcl.dll
|
||||||
yvbolt
|
yvbolt
|
||||||
yvbolt.exe
|
yvbolt.exe
|
||||||
|
yvbolt.linux64.tar.xz
|
||||||
|
yvbolt.win64.zip
|
42
Makefile
Normal file
42
Makefile
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
SHELL:=/bin/bash
|
||||||
|
|
||||||
|
SOURCES=$(find . -name '*.go' -type f)
|
||||||
|
|
||||||
|
liblcl-2.2.3.zip:
|
||||||
|
wget 'https://github.com/ying32/govcl/releases/download/v2.2.3/liblcl-2.2.3.zip'
|
||||||
|
|
||||||
|
liblcl.so: liblcl-2.2.3.zip
|
||||||
|
echo "154b4e4a1d5137a2ffe51cb4d0bf152dd997c12616ae30862775c0e4f0928e88 liblcl-2.2.3.zip" | sha256sum -c
|
||||||
|
unzip -j liblcl-2.2.3.zip linux64-gtk2/liblcl.so -d .
|
||||||
|
touch liblcl.so
|
||||||
|
|
||||||
|
liblcl.dll: liblcl-2.2.3.zip
|
||||||
|
echo "154b4e4a1d5137a2ffe51cb4d0bf152dd997c12616ae30862775c0e4f0928e88 liblcl-2.2.3.zip" | sha256sum -c
|
||||||
|
unzip -j liblcl-2.2.3.zip win64/liblcl.dll -d .
|
||||||
|
touch liblcl.dll
|
||||||
|
|
||||||
|
yvbolt: $(SOURCES)
|
||||||
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build -trimpath -ldflags '-s -w'
|
||||||
|
chmod 755 yvbolt
|
||||||
|
upx --best yvbolt
|
||||||
|
|
||||||
|
yvbolt.exe: $(SOURCES)
|
||||||
|
GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags '-s -w'
|
||||||
|
upx --best yvbolt.exe
|
||||||
|
|
||||||
|
yvbolt.linux64.tar.xz: yvbolt liblcl.so
|
||||||
|
XZ_OPT='--best' tar caf yvbolt.linux64.tar.xz --owner=0 --group=0 yvbolt liblcl.so
|
||||||
|
|
||||||
|
yvbolt.win64.zip: yvbolt.exe liblcl.dll
|
||||||
|
zip -0 yvbolt.win64.zip yvbolt.exe liblcl.dll
|
||||||
|
|
||||||
|
.PHONY: dist
|
||||||
|
dist: yvbolt.linux64.tar.xz yvbolt.win64.zip
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
clean:
|
||||||
|
rm -f yvbolt.exe yvbolt yvbolt.linux64.tar.xz yvbolt.win64.zip
|
||||||
|
|
||||||
|
.PHONY: clean-all
|
||||||
|
clean-all: clean
|
||||||
|
rm -f liblcl-2.2.3.zip liblcl.so liblcl.dll
|
Loading…
Reference in New Issue
Block a user