a / build.sh
yetey's picture
Upload 45 files
5757554 verified
#!/bin/bash
export GOPROXY=https://goproxy.io
go get
export CGO_ENABLED=0
PKG=aurora
targets=(
"windows/amd64"
"linux/amd64"
"darwin/amd64"
"windows/386"
"linux/386"
"darwin/386"
"linux/arm"
"linux/arm64"
"linux/s390x"
)
upxPath=$(command -v upx)
for target in "${targets[@]}"; do
GOOS=${target%/*}
GOARCH=${target#*/}
outputDir="bin/${GOOS}_${GOARCH}"
outputFile="${outputDir}/${PKG}"
archiveName="${PKG}-${GOOS}-${GOARCH}.tar.gz"
mkdir -p $(dirname ${outputFile})
GOOS=$GOOS GOARCH=$GOARCH go build -ldflags="-s -w -extldflags '-static'" -o ${outputFile} *.go
if [ -n "$upxPath" ]; then
$upxPath -9 ${outputFile}
fi
# Archive the binary
if [ "$GOOS" = "windows" ]; then
zip -j "${outputDir}/${PKG}-${GOOS}-${GOARCH}.zip" "${outputFile}"
else
tar -C "${outputDir}" -czf "${outputDir}/${archiveName}" "${PKG}"
fi
done