#!/usr/bin/env bash | |
# Copyright 2009 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 | |
if [ "$1" = "--no-env" ]; then | |
# caller has already run env.bash | |
shift | |
else | |
. ./env.bash | |
fi | |
unset MAKEFLAGS # single-threaded make | |
unset CDPATH # in case user has it set | |
# no core files, please | |
ulimit -c 0 | |
# allow make.bash to avoid double-build of everything | |
rebuild=true | |
if [ "$1" = "--no-rebuild" ]; then | |
rebuild=false | |
shift | |
fi | |
xcd() { | |
echo | |
echo --- cd $1 | |
builtin cd "$GOROOT"/src/$1 | |
} | |
if $rebuild; then | |
(xcd pkg | |
gomake clean | |
time gomake | |
gomake install | |
) || exit $i | |
fi | |
(xcd pkg | |
gomake test | |
) || exit $? | |
(xcd pkg/sync; | |
if $rebuild; then | |
gomake clean; | |
time gomake | |
fi | |
GOMAXPROCS=10 gomake test | |
) || exit $? | |
[ "$GOARCH" == arm ] || | |
(xcd cmd/gofmt | |
if $rebuild; then | |
gomake clean; | |
time gomake | |
fi | |
time gomake smoketest | |
) || exit $? | |
(xcd cmd/ebnflint | |
if $rebuild; then | |
gomake clean; | |
time gomake | |
fi | |
time gomake test | |
) || exit $? | |
[ "$GOARCH" == arm ] || | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../misc/cgo/stdio | |
gomake clean | |
./test.bash | |
) || exit $? | |
[ "$GOARCH" == arm ] || | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../misc/cgo/life | |
gomake clean | |
./test.bash | |
) || exit $? | |
(xcd pkg/exp/ogle | |
gomake clean | |
time gomake ogle | |
) || exit $? | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../doc/progs | |
time ./run | |
) || exit $? | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../doc/codelab/wiki | |
gomake clean | |
gomake | |
gomake test | |
) || exit $? | |
for i in ../misc/dashboard/builder ../misc/goplay | |
do | |
(xcd $i | |
gomake clean | |
gomake | |
) || exit $? | |
done | |
[ "$GOARCH" == arm ] || | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../test/bench | |
./timing.sh -test | |
) || exit $? | |
[ "$GOHOSTOS" == windows ] || | |
(xcd ../test | |
./run | |
) || exit $? | |
echo | |
echo ALL TESTS PASSED |