File tree 1 file changed +21
-2
lines changed
1 file changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -54,11 +54,30 @@ BuildWinArm64() {
54
54
55
55
BuildDev () {
56
56
rm -rf .git/
57
- xgo -targets=linux/amd64,windows/amd64,darwin/amd64 -out " $appName " -ldflags=" $ldflags " -tags=jsoniter .
58
57
mkdir -p " dist"
58
+ muslflags=" --extldflags '-static -fpic' $ldflags "
59
+ BASE=" https://musl.nn.ci/"
60
+ FILES=(x86_64-linux-musl-cross aarch64-linux-musl-cross)
61
+ for i in " ${FILES[@]} " ; do
62
+ url=" ${BASE}${i} .tgz"
63
+ curl -L -o " ${i} .tgz" " ${url} "
64
+ sudo tar xf " ${i} .tgz" --strip-components 1 -C /usr/local
65
+ done
66
+ OS_ARCHES=(linux-musl-amd64 linux-musl-arm64)
67
+ CGO_ARGS=(x86_64-linux-musl-gcc aarch64-linux-musl-gcc)
68
+ for i in " ${! OS_ARCHES[@]} " ; do
69
+ os_arch=${OS_ARCHES[$i]}
70
+ cgo_cc=${CGO_ARGS[$i]}
71
+ echo building for ${os_arch}
72
+ export GOOS=${os_arch%% -* }
73
+ export GOARCH=${os_arch##* -}
74
+ export CC=${cgo_cc}
75
+ export CGO_ENABLED=1
76
+ go build -o ./dist/$appName -$os_arch -ldflags=" $muslflags " -tags=jsoniter .
77
+ done
78
+ xgo -targets=windows/amd64,darwin/amd64 -out " $appName " -ldflags=" $ldflags " -tags=jsoniter .
59
79
mv alist-* dist
60
80
cd dist
61
- upx -9 ./alist-linux*
62
81
cp ./alist-windows-amd64.exe ./alist-windows-amd64-upx.exe
63
82
upx -9 ./alist-windows-amd64-upx.exe
64
83
find . -type f -print0 | xargs -0 md5sum > md5.txt
You can’t perform that action at this time.
0 commit comments