#!/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, openbsd/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
	;;
"OpenBSD")
	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
