From 159ee8a42f2ad9216267a1da0217427346d1d331 Mon Sep 17 00:00:00 2001 From: Andrew Gerrand Date: Mon, 13 Feb 2012 21:18:16 +1100 Subject: [PATCH] misc/dist: add binary distribution packaging script for linux R=golang-dev, bradfitz, iant CC=golang-dev https://golang.org/cl/5639064 --- misc/dist/linux/dist.bash | 55 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 misc/dist/linux/dist.bash diff --git a/misc/dist/linux/dist.bash b/misc/dist/linux/dist.bash new file mode 100755 index 00000000000..9270782ad92 --- /dev/null +++ b/misc/dist/linux/dist.bash @@ -0,0 +1,55 @@ +#!/usr/bin/env 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. + +set -e + +TAG=$1 +if [ "$TAG" == "" ]; then + echo >&2 'usage: dist.bash ' + exit 2 +fi + +GOOS=${GOOS:-linux} +GOARCH=${GOARCH:-amd64} + +ROOT=/tmp/godist.linux.$GOARCH +rm -rf $ROOT +mkdir -p $ROOT +pushd $ROOT>/dev/null + +# clone Go distribution +echo "Preparing new GOROOT" +hg clone -q https://code.google.com/p/go go +pushd go > /dev/null +hg update $TAG + +# get version +pushd src > /dev/null +echo "Building dist tool to get VERSION" +./make.bash --dist-tool 2>&1 | sed 's/^/ /' >&2 +../bin/tool/dist version > ../VERSION +popd > /dev/null +VERSION="$(cat VERSION | awk '{ print $1 }')" +echo " Version: $VERSION" + +# remove mercurial stuff +rm -rf .hg* + +# build Go +echo "Building Go" +unset GOROOT +export GOOS +export GOARCH +export GOROOT_FINAL=/usr/local/go +pushd src > /dev/null +./all.bash 2>&1 | sed 's/^/ /' >&2 +popd > /dev/null +popd > /dev/null + +# tar it up +DEST=go.$VERSION.$GOOS-$GOARCH.tar.gz +echo "Writing tarball: $ROOT/$DEST" +tar czf $DEST go +popd > /dev/null