diff options
Diffstat (limited to 'src/race.bash')
-rwxr-xr-x | src/race.bash | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/race.bash b/src/race.bash new file mode 100755 index 0000000..e2b96bc --- /dev/null +++ b/src/race.bash @@ -0,0 +1,48 @@ +#!/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. +# https://golang.org/doc/articles/race_detector.html + +set -e + +function usage { + echo 'race detector is only supported on linux/amd64, linux/ppc64le, linux/arm64, freebsd/amd64, netbsd/amd64, darwin/amd64, and darwin/arm64' 1>&2 + exit 1 +} + +case $(uname) in +"Darwin") + if [ $(uname -m) != "x86_64" ] && [ $(uname -m) != "arm64" ]; then + usage + fi + ;; +"Linux") + if [ $(uname -m) != "x86_64" ] && [ $(uname -m) != "ppc64le" ] && [ $(uname -m) != "aarch64" ]; then + usage + fi + ;; +"FreeBSD") + if [ $(uname -m) != "amd64" ]; then + usage + fi + ;; +"NetBSD") + if [ $(uname -m) != "amd64" ]; 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 tool dist test -race |