Skip to content

Commit 121e5e6

Browse files
committed
chore(build): generate TGZ archive for UNIX-like system
- UNIX-like system: use TGZ archive format - Windows system: continue using ZIP format
1 parent a87e191 commit 121e5e6

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

build/build.inc.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
export GOPROXY=https://goproxy.cn,direct
22
export CGO_ENABLED=0
3-
TMP='/tmp'
43
OUTDIR='../output'
54
MAINNAME='ehfs'
65
MOD=$(go list ../src/)
76
BASEMOD=mjpclab.dev/ghfs/src
87
source ./build.inc.version.sh
9-
LICENSE='../LICENSE'
108
getLdFlags() {
119
echo "-s -w -X $BASEMOD/version.appVer=$VERSION -X $BASEMOD/version.appArch=${ARCH:-$(go env GOARCH)}"
1210
}

build/build.sh

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,16 @@ for build in "$@"; do
2020
fi
2121
OS_SUFFIX="${arg[2]}"
2222

23-
BIN="$TMP/$MAINNAME$(go env GOEXE)"
24-
rm -f "$BIN"
23+
TMP=$(mktemp -d)
24+
2525
echo "Building: $GOOS$OS_SUFFIX $ARCH"
26-
go build -ldflags "$(getLdFlags)" -o "$BIN" ../main.go
26+
go build -ldflags "$(getLdFlags)" -o "$TMP/$MAINNAME$(go env GOEXE)" ../main.go
27+
cp ../LICENSE "$TMP"
2728

28-
OUT="$OUTDIR/$MAINNAME-$VERSION-$GOOS$OS_SUFFIX-$GOARCH$ARCH_OPT".zip
29-
zip -j "$OUT" "$BIN" "$LICENSE"
29+
OUTFILE="$OUTDIR/$MAINNAME-$VERSION-$GOOS$OS_SUFFIX-$GOARCH$ARCH_OPT"
30+
if [ "$GOOS" == "windows" ]; then
31+
zip -qrj "${OUTFILE}.zip" "$TMP/"
32+
else
33+
tar --owner=0 --group=0 -zcf "${OUTFILE}.tar.gz" -C "$TMP" $(ls -A1 "$TMP")
34+
fi
3035
done

0 commit comments

Comments
 (0)