mirror of
https://github.com/rclone/rclone.git
synced 2024-11-28 03:09:48 +08:00
65 lines
1.2 KiB
Bash
Executable File
65 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
# This uses gox from https://github.com/mitchellh/gox
|
|
# Make sure you've run gox -build-toolchain - not required for go >= 1.5
|
|
|
|
if [ "$1" == "" ]; then
|
|
echo "Syntax: $0 Version"
|
|
exit 1
|
|
fi
|
|
VERSION="$1"
|
|
|
|
rm -rf build
|
|
|
|
# Disable CGO and dynamic builds on all platforms (including build patform)
|
|
export CGO_ENABLED=0
|
|
|
|
# Arch pairs we build for
|
|
# gox -osarch-list - for definitive list
|
|
# go tool dist list - or this
|
|
|
|
OSARCH="\
|
|
windows/386
|
|
windows/amd64
|
|
darwin/386
|
|
darwin/amd64
|
|
linux/386
|
|
linux/amd64
|
|
linux/arm
|
|
linux/arm64
|
|
freebsd/386
|
|
freebsd/amd64
|
|
freebsd/arm
|
|
netbsd/386
|
|
netbsd/amd64
|
|
netbsd/arm
|
|
openbsd/386
|
|
openbsd/amd64
|
|
plan9/386
|
|
plan9/amd64
|
|
solaris/amd64"
|
|
|
|
# Make space separated
|
|
OSARCH=${OSARCH//$'\n'/ }
|
|
|
|
gox --ldflags "-s -X github.com/ncw/rclone/fs.Version=${VERSION}" -output "build/{{.Dir}}-${VERSION}-{{.OS}}-{{.Arch}}/{{.Dir}}" -osarch "${OSARCH}"
|
|
|
|
mv build/rclone-${VERSION}-darwin-amd64 build/rclone-${VERSION}-osx-amd64
|
|
mv build/rclone-${VERSION}-darwin-386 build/rclone-${VERSION}-osx-386
|
|
|
|
cd build
|
|
|
|
for d in `ls`; do
|
|
cp -a ../MANUAL.txt $d/README.txt
|
|
cp -a ../MANUAL.html $d/README.html
|
|
cp -a ../rclone.1 $d/
|
|
zip -r9 $d.zip $d
|
|
d_current=${d/-${VERSION}/-current}
|
|
ln $d.zip $d_current.zip
|
|
rm -rf $d
|
|
done
|
|
|
|
cd ..
|