@@ -8,79 +8,86 @@ cleanup:
88 - rm -r bin
99 - rm src/ws4sqlite
1010
11+ upd-libraries :
12+ cd src; go get -u
13+ cd src; go mod tidy
14+
1115build :
1216 make build-prepare
13- cd src; CGO_ENABLED=0 go build -a -tags netgo,osusergo -ldflags ' -w -extldflags "-static" ' -o ws4sqlite - trimpath
17+ cd src; CGO_ENABLED=0 go build -trimpath
1418 mv src/ws4sqlite bin/
1519
16- zbuild :
17- make build
18- cd bin; 7zr a -mx9 -t7z ws4sqlite-v0.14.2-` uname -s| tr ' [:upper:]' ' [:lower:]' ` -` uname -m` .7z ws4sqlite
19-
2020build-nostatic :
2121 make build-prepare
22- cd src; CGO_ENABLED=0 go build -o ws4sqlite -trimpath
22+ cd src; go build -trimpath
2323 mv src/ws4sqlite bin/
2424
25- zbuild-nostatic :
26- make build-nostatic
27- cd bin; 7zr a -mx9 -t7z ws4sqlite-v0.14.2-` uname -s| tr ' [:upper:]' ' [:lower:]' ` -` uname -m` .7z ws4sqlite
28-
2925zbuild-all :
3026 make build-prepare
31- cd src; CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -tags netgo,osusergo -ldflags ' -w -extldflags "-static"' -trimpath
32- cd src; tar czf ../bin/ws4sqlite-v0.14.2-linux-amd64.tar.gz ws4sqlite
27+ cd src; CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -trimpath
28+ cd src; tar czf ../bin/ws4sqlite-v0.15.0-linux-amd64.tar.gz ws4sqlite
29+ rm src/ws4sqlite
30+ cd src; CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -trimpath
31+ cd src; tar czf ../bin/ws4sqlite-v0.15.0-linux-arm.tar.gz ws4sqlite
3332 rm src/ws4sqlite
34- cd src; CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -a -tags netgo,osusergo -ldflags ' -w -extldflags "-static" ' -trimpath
35- cd src; tar czf ../bin/ws4sqlite-v0.14.2 -linux-arm .tar.gz ws4sqlite
33+ cd src; CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -trimpath
34+ cd src; tar czf ../bin/ws4sqlite-v0.15.0 -linux-arm64 .tar.gz ws4sqlite
3635 rm src/ws4sqlite
37- cd src; CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -a -tags netgo,osusergo -ldflags ' -w -extldflags "-static" ' -trimpath
38- cd src; tar czf ../bin/ws4sqlite-v0.14.2 -linux-arm64 .tar.gz ws4sqlite
36+ cd src; CGO_ENABLED=0 GOOS=linux GOARCH=riscv64 go build -trimpath
37+ cd src; tar czf ../bin/ws4sqlite-v0.15.0 -linux-riscv64 .tar.gz ws4sqlite
3938 rm src/ws4sqlite
40- cd src; CGO_ENABLED=0 GOOS=linux GOARCH=riscv64 go build -a -tags netgo,osusergo -ldflags ' -w -extldflags "-static" ' -trimpath
41- cd src; tar czf ../bin/ws4sqlite-v0.14.2 -linux-riscv64 .tar.gz ws4sqlite
39+ cd src; CGO_ENABLED=0 GOOS=linux GOARCH=s390x go build -trimpath
40+ cd src; tar czf ../bin/ws4sqlite-v0.15.0 -linux-s390x .tar.gz ws4sqlite
4241 rm src/ws4sqlite
4342 cd src; CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -trimpath
44- cd src; zip -9 ../bin/ws4sqlite-v0.14.2 -darwin-amd64.zip ws4sqlite
43+ cd src; zip -9 ../bin/ws4sqlite-v0.15.0 -darwin-amd64.zip ws4sqlite
4544 rm src/ws4sqlite
4645 cd src; CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -trimpath
47- cd src; zip -9 ../bin/ws4sqlite-v0.14.2 -darwin-arm64.zip ws4sqlite
46+ cd src; zip -9 ../bin/ws4sqlite-v0.15.0 -darwin-arm64.zip ws4sqlite
4847 rm src/ws4sqlite
4948 cd src; CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -trimpath
50- cd src; zip -9 ../bin/ws4sqlite-v0.14.2 -win-amd64.zip ws4sqlite.exe
49+ cd src; zip -9 ../bin/ws4sqlite-v0.15.0 -win-amd64.zip ws4sqlite.exe
5150 rm src/ws4sqlite.exe
5251 cd src; CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go build -trimpath
53- cd src; zip -9 ../bin/ws4sqlite-v0.14.2 -win-arm64.zip ws4sqlite.exe
52+ cd src; zip -9 ../bin/ws4sqlite-v0.15.0 -win-arm64.zip ws4sqlite.exe
5453 rm src/ws4sqlite.exe
5554 cd src; CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 go build -trimpath
56- cd src; tar czf ../bin/ws4sqlite-v0.14.2 -freebsd-amd64.tar.gz ws4sqlite
55+ cd src; tar czf ../bin/ws4sqlite-v0.15.0 -freebsd-amd64.tar.gz ws4sqlite
5756 rm src/ws4sqlite
5857 cd src; CGO_ENABLED=0 GOOS=freebsd GOARCH=arm64 go build -trimpath
59- cd src; tar czf ../bin/ws4sqlite-v0.14.2 -freebsd-arm64.tar.gz ws4sqlite
58+ cd src; tar czf ../bin/ws4sqlite-v0.15.0 -freebsd-arm64.tar.gz ws4sqlite
6059 rm src/ws4sqlite
6160
6261test :
6362 cd src; go test -v -timeout 6m
6463
6564docker :
66- sudo docker buildx build --no-cache -t local_ws4sqlite:latest .
65+ sudo docker buildx build -f Dockerfile.containers --no-cache -t local_ws4sqlite:latest .
66+
67+ docker-multiarch :
68+ sudo docker run --privileged --rm tonistiigi/binfmt --install arm64,arm
69+ sudo docker buildx build -f Dockerfile.containers --no-cache -t germanorizzo/ws4sqlite:v0.15.0-amd64 .
70+ sudo docker buildx build -f Dockerfile.containers --no-cache --platform linux/arm/v7 -t germanorizzo/ws4sqlite:v0.15.0-arm .
71+ sudo docker buildx build -f Dockerfile.containers --no-cache --platform linux/arm64/v8 -t germanorizzo/ws4sqlite:v0.15.0-arm64 .
6772
6873docker-publish :
69- # # Prepare system with:
70- # # (verify which is latest at https://hub.docker.com/r/docker/binfmt/tags)
71- sudo docker run --privileged --rm docker/binfmt:a7996909642ee92942dcd6cff44b9b95f08dad64
72- sudo docker buildx build --no-cache -t germanorizzo/ws4sqlite:v0.14.2-amd64 .
73- sudo docker buildx build --no-cache --platform linux/arm/v7 -t germanorizzo/ws4sqlite:v0.14.2-arm .
74- sudo docker buildx build --no-cache --platform linux/arm64/v8 -t germanorizzo/ws4sqlite:v0.14.2-arm64 .
75- sudo docker push germanorizzo/ws4sqlite:v0.14.2-amd64
76- sudo docker push germanorizzo/ws4sqlite:v0.14.2-arm
77- sudo docker push germanorizzo/ws4sqlite:v0.14.2-arm64
78- sudo docker manifest create -a germanorizzo/ws4sqlite:v0.14.2 germanorizzo/ws4sqlite:v0.14.2-amd64 germanorizzo/ws4sqlite:v0.14.2-arm germanorizzo/ws4sqlite:v0.14.2-arm64
79- sudo docker manifest push germanorizzo/ws4sqlite:v0.14.2
74+ make docker-multiarch
75+ sudo docker push germanorizzo/ws4sqlite:v0.15.0-amd64
76+ sudo docker push germanorizzo/ws4sqlite:v0.15.0-arm
77+ sudo docker push germanorizzo/ws4sqlite:v0.15.0-arm64
78+ sudo docker manifest create -a germanorizzo/ws4sqlite:v0.15.0 germanorizzo/ws4sqlite:v0.15.0-amd64 germanorizzo/ws4sqlite:v0.15.0-arm germanorizzo/ws4sqlite:v0.15.0-arm64
79+ sudo docker manifest push germanorizzo/ws4sqlite:v0.15.0
8080 - sudo docker manifest rm germanorizzo/ws4sqlite:latest
81- sudo docker manifest create germanorizzo/ws4sqlite:latest germanorizzo/ws4sqlite:v0.14.2 -amd64 germanorizzo/ws4sqlite:v0.14.2 -arm germanorizzo/ws4sqlite:v0.14.2 -arm64
81+ sudo docker manifest create germanorizzo/ws4sqlite:latest germanorizzo/ws4sqlite:v0.15.0 -amd64 germanorizzo/ws4sqlite:v0.15.0 -arm germanorizzo/ws4sqlite:v0.15.0 -arm64
8282 sudo docker manifest push germanorizzo/ws4sqlite:latest
8383
8484docker-devel :
85- sudo docker buildx build --no-cache -t germanorizzo/ws4sqlite:edge .
86- sudo docker push germanorizzo/ws4sqlite:edge
85+ sudo docker buildx build -f Dockerfile.containers --no-cache -t germanorizzo/ws4sqlite:edge .
86+ sudo docker push germanorizzo/ws4sqlite:edge
87+
88+ docker-test-and-zbuild-all :
89+ sudo docker buildx build -f Dockerfile.binaries --target export -t tmp_binaries_build . --output bin
90+
91+ docker-cleanup :
92+ sudo docker builder prune -af
93+ sudo docker image prune -af
0 commit comments