diff options
| author | Dave Cheney <dave@cheney.net> | 2013-01-28 21:05:25 +1100 |
|---|---|---|
| committer | Dave Cheney <dave@cheney.net> | 2013-01-28 21:05:25 +1100 |
| commit | b53e95ac2efa287d5932acc4a2dbf68bdb2a5659 (patch) | |
| tree | 448a517265b4ea794d3271dfaa550c5333d64878 /src/race.bash | |
| parent | 1da07a783ee31a25980f13d7d483be8afe70da95 (diff) | |
| download | go-b53e95ac2efa287d5932acc4a2dbf68bdb2a5659.tar.xz | |
src: add race.bash
Add race.bash so anyone with suitable hardware can run a race detector build. race.bash can be called from the dashboard builder by passing -cmd="race.bash".
Original source for race.bash is here, http://code.google.com/p/go-wiki/wiki/DashboardBuilders
TODO: add race.bat for windows/amd64
R=dvyukov, minux.ma, adg, rsc
CC=fullung, golang-dev
https://golang.org/cl/7179052
Diffstat (limited to 'src/race.bash')
| -rwxr-xr-x | src/race.bash | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/race.bash b/src/race.bash new file mode 100755 index 0000000000..3cdc5e10c1 --- /dev/null +++ b/src/race.bash @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# Copyright 2013 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. + +# race.bash tests the standard library under the race detector. +# http://golang.org/doc/articles/race_detector.html + +set -e + +function usage { + echo 'race detector is only supported on linux/amd64 and darwin/amd64' 1>&2 + exit 1 +} + +case $(uname) in +"Darwin") + # why Apple? why? + if sysctl machdep.cpu.extfeatures | grep -qv EM64T; then + usage + fi + ;; +"Linux") + if [ $(uname -m) != "x86_64" ]; then + usage + fi + ;; +*) + usage + ;; +esac + +if [ ! -f make.bash ]; then + echo 'race.bash must be run from $GOROOT/src' 1>&2 + exit 1 +fi +. ./make.bash --no-banner +go install -race std +go test -race -short std +go test -race -run=nothingplease -bench=.* -benchtime=.1s -cpu=4 std |
