1:: Copyright 2013 The Go Authors. All rights reserved. 2:: Use of this source code is governed by a BSD-style 3:: license that can be found in the LICENSE file. 4 5:: race.bash tests the standard library under the race detector. 6:: https://golang.org/doc/articles/race_detector.html 7 8@echo off 9 10setlocal 11 12if exist make.bat goto ok 13echo race.bat must be run from go\src 14:: cannot exit: would kill parent command interpreter 15goto end 16:ok 17 18set GOROOT=%CD%\.. 19call make.bat --dist-tool >NUL 20if errorlevel 1 goto fail 21.\cmd\dist\dist env -w -p >env.bat 22if errorlevel 1 goto fail 23call env.bat 24del env.bat 25 26if %GOHOSTARCH% == amd64 goto continue 27echo Race detector is only supported on windows/amd64. 28goto fail 29 30:continue 31call make.bat --no-banner --no-local 32if %GOBUILDFAIL%==1 goto end 33echo # go install -race std 34go install -race std 35if errorlevel 1 goto fail 36 37go tool dist test -race 38 39if errorlevel 1 goto fail 40goto succ 41 42:fail 43set GOBUILDFAIL=1 44echo Fail. 45goto end 46 47:succ 48echo All tests passed. 49 50:end 51if x%GOBUILDEXIT%==x1 exit %GOBUILDFAIL% 52 53