syncthing/build.sh

109 lines
1.6 KiB
Bash
Raw Normal View History

2014-03-17 17:15:59 +00:00
#!/usr/bin/env bash
set -euo pipefail
IFS=$'\n\t'
2013-12-21 23:16:49 +00:00
2015-01-21 23:59:08 +00:00
STTRACE=${STTRACE:-}
2014-11-19 11:02:47 +00:00
script() {
name="$1"
shift
go run "script/$name.go" "$@"
}
build() {
go run build.go "$@"
}
case "${1:-default}" in
default)
build
2014-03-02 22:55:08 +00:00
;;
2014-08-11 09:54:48 +00:00
clean)
build "$@"
;;
2014-08-18 20:05:26 +00:00
tar)
build "$@"
;;
2014-08-18 20:05:26 +00:00
assets)
build "$@"
2014-03-22 20:33:18 +00:00
;;
2014-08-18 20:05:26 +00:00
xdr)
build "$@"
;;
2014-08-18 20:05:26 +00:00
translate)
build "$@"
;;
deb)
build "$@"
;;
setup)
build "$@"
;;
test)
ulimit -t 600 &>/dev/null || true
ulimit -d 512000 &>/dev/null || true
ulimit -m 512000 &>/dev/null || true
LOGGER_DISCARD=1 build test
;;
bench)
LOGGER_DISCARD=1 build bench | script benchfilter
2014-03-02 22:55:08 +00:00
;;
prerelease)
go run script/authors.go
build transifex
2015-05-30 11:05:37 +00:00
pushd man ; ./refresh.sh ; popd
2017-06-01 10:09:20 +00:00
git add -A gui man
git commit -m 'gui, man: Update docs & translations'
;;
2014-08-18 20:05:26 +00:00
noupgrade)
build -no-upgrade tar
2014-03-02 22:55:08 +00:00
;;
2014-08-18 20:05:26 +00:00
all)
2015-12-08 08:33:34 +00:00
platforms=(
darwin-amd64 dragonfly-amd64 freebsd-amd64 linux-amd64 netbsd-amd64 openbsd-amd64 solaris-amd64 windows-amd64
freebsd-386 linux-386 netbsd-386 openbsd-386 windows-386
linux-arm linux-arm64 linux-ppc64 linux-ppc64le
2015-12-08 08:33:34 +00:00
)
for plat in "${platforms[@]}"; do
echo Building "$plat"
goos="${plat%-*}"
goarch="${plat#*-}"
dist="tar"
if [[ $goos == "windows" ]]; then
dist="zip"
fi
build -goos "$goos" -goarch "$goarch" "$dist"
echo
done
2014-07-31 07:08:08 +00:00
;;
2016-01-09 23:31:55 +00:00
test-xunit)
ulimit -t 600 &>/dev/null || true
ulimit -d 512000 &>/dev/null || true
ulimit -m 512000 &>/dev/null || true
(GOPATH="$(pwd)/Godeps/_workspace:$GOPATH" go test -v -race ./lib/... ./cmd/... || true) > tests.out
go2xunit -output tests.xml -fail < tests.out
;;
2014-03-02 22:55:08 +00:00
*)
echo "Unknown build command $1"
2014-03-02 22:55:08 +00:00
;;
esac