aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetter Rasmussen2016-02-21 20:32:54 +0100
committerPetter Rasmussen2016-02-21 20:32:54 +0100
commit701c7f1991ae765a51b0b7404d1edbb2dc523055 (patch)
treef88e066f3684e0632120f3d5e995d7348204219e
parentf6d407618394e26889c61e6e57c90a7a0d81a3a1 (diff)
downloadgdrive-701c7f1991ae765a51b0b7404d1edbb2dc523055.tar.bz2
Update build script
-rwxr-xr-x_release/build-all.sh29
-rw-r--r--_release/crosscompile.bash73
2 files changed, 7 insertions, 95 deletions
diff --git a/_release/build-all.sh b/_release/build-all.sh
index 414ae18..7f05036 100755
--- a/_release/build-all.sh
+++ b/_release/build-all.sh
@@ -1,18 +1,15 @@
#!/bin/bash
-# Load crosscompile environment
-source _release/crosscompile.bash
+APP_NAME="gdrive"
+PLATFORMS="darwin/386 darwin/amd64 darwin/arm darwin/arm64 dragonfly/amd64 freebsd/386 freebsd/amd64 freebsd/arm linux/386 linux/amd64 linux/arm linux/arm64 linux/ppc64 linux/ppc64le linux/mips64 linux/mips64le netbsd/386 netbsd/amd64 netbsd/arm openbsd/386 openbsd/amd64 openbsd/arm plan9/386 plan9/amd64 solaris/amd64 windows/386 windows/amd64"
-APP_NAME="drive"
-PLATFORMS="darwin/386 darwin/amd64 freebsd/386 freebsd/amd64 linux/386 linux/amd64 linux/arm linux/rpi windows/386 windows/amd64"
BIN_PATH="_release/bin"
# Initialize bin dir
mkdir -p $BIN_PATH
-rm $BIN_PATH/*
+rm $BIN_PATH/* 2> /dev/null
-
-# Build binary for each platform in parallel
+# Build binary for each platform
for PLATFORM in $PLATFORMS; do
GOOS=${PLATFORM%/*}
GOARCH=${PLATFORM#*/}
@@ -22,23 +19,11 @@ for PLATFORM in $PLATFORMS; do
BIN_NAME="${BIN_NAME}.exe"
fi
- # Raspberrypi seems to need arm5 binaries
- if [ $GOARCH == "rpi" ]; then
- export GOARM=5
- GOARCH="arm"
- else
- unset GOARM
- fi
-
- BUILD_CMD="go-${GOOS}-${GOARCH} build -ldflags '-w' -o ${BIN_PATH}/${BIN_NAME} $APP_NAME.go"
+ export GOOS=$GOOS
+ export GOARCH=$GOARCH go build
echo "Building $BIN_NAME"
- $BUILD_CMD &
-done
-
-# Wait for builds to complete
-for job in $(jobs -p); do
- wait $job
+ go build -ldflags '-w -s' -o ${BIN_PATH}/${BIN_NAME}
done
echo "All done"
diff --git a/_release/crosscompile.bash b/_release/crosscompile.bash
deleted file mode 100644
index ef38522..0000000
--- a/_release/crosscompile.bash
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/bash
-# Copyright 2012 The Go Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style
-# license that can be found in the LICENSE file.
-
-# support functions for go cross compilation
-
-type setopt >/dev/null 2>&1 && setopt shwordsplit
-PLATFORMS="darwin/386 darwin/amd64 freebsd/386 freebsd/amd64 freebsd/arm linux/386 linux/amd64 linux/arm windows/386 windows/amd64 openbsd/386 openbsd/amd64"
-
-function go-alias {
- GOOS=${1%/*}
- GOARCH=${1#*/}
- eval "function go-${GOOS}-${GOARCH} { ( GOOS=${GOOS} GOARCH=${GOARCH} go \"\$@\" ) }"
-}
-
-function go-crosscompile-build {
- GOOS=${1%/*}
- GOARCH=${1#*/}
- cd $(go env GOROOT)/src ; GOOS=${GOOS} GOARCH=${GOARCH} ./make.bash --no-clean 2>&1
-}
-
-function go-crosscompile-build-all {
- FAILURES=""
- for PLATFORM in $PLATFORMS; do
- CMD="go-crosscompile-build ${PLATFORM}"
- echo "$CMD"
- $CMD || FAILURES="$FAILURES $PLATFORM"
- done
- if [ "$FAILURES" != "" ]; then
- echo "*** go-crosscompile-build-all FAILED on $FAILURES ***"
- return 1
- fi
-}
-
-function go-all {
- FAILURES=""
- for PLATFORM in $PLATFORMS; do
- GOOS=${PLATFORM%/*}
- GOARCH=${PLATFORM#*/}
- CMD="go-${GOOS}-${GOARCH} $@"
- echo "$CMD"
- $CMD || FAILURES="$FAILURES $PLATFORM"
- done
- if [ "$FAILURES" != "" ]; then
- echo "*** go-all FAILED on $FAILURES ***"
- return 1
- fi
-}
-
-function go-build-all {
- FAILURES=""
- for PLATFORM in $PLATFORMS; do
- GOOS=${PLATFORM%/*}
- GOARCH=${PLATFORM#*/}
- SRCFILENAME=`echo $@ | sed 's/\.go//'`
- CURDIRNAME=${PWD##*/}
- OUTPUT=${SRCFILENAME:-$CURDIRNAME} # if no src file given, use current dir name
- CMD="go-${GOOS}-${GOARCH} build -o $OUTPUT-${GOOS}-${GOARCH} $@"
- echo "$CMD"
- $CMD || FAILURES="$FAILURES $PLATFORM"
- done
- if [ "$FAILURES" != "" ]; then
- echo "*** go-build-all FAILED on $FAILURES ***"
- return 1
- fi
-}
-
-for PLATFORM in $PLATFORMS; do
- go-alias $PLATFORM
-done
-
-unset -f go-alias