]> Cypherpunks.ru repositories - gostls13.git/blob - src/run.bat
build: disable cgo on windows
[gostls13.git] / src / run.bat
1 :: Copyright 2012 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 @echo off
5
6 :: Keep environment variables within this script
7 :: unless invoked with --no-local.
8 if x%1==x--no-local goto nolocal
9 if x%2==x--no-local goto nolocal
10 setlocal
11 :nolocal
12
13 set GOBUILDFAIL=0
14
15 :: we disallow local import for non-local packages, if %GOROOT% happens
16 :: to be under %GOPATH%, then some tests below will fail
17 set GOPATH=
18
19 rem TODO avoid rebuild if possible
20
21 if x%1==x--no-rebuild goto norebuild
22 echo # Building packages and commands.
23 go install -a -v std
24 if errorlevel 1 goto fail
25 echo.
26 :norebuild
27
28 :: we must unset GOROOT_FINAL before tests, because runtime/debug requires
29 :: correct access to source code, so if we have GOROOT_FINAL in effect,
30 :: at least runtime/debug test will fail.
31 set GOROOT_FINAL=
32
33 :: get CGO_ENABLED
34 go env > env.bat
35 if errorlevel 1 goto fail
36 call env.bat
37 del env.bat
38 echo.
39
40 echo # Testing packages.
41 go test std -short -timeout=120s
42 if errorlevel 1 goto fail
43 echo.
44
45 echo # runtime -cpu=1,2,4
46 go test runtime -short -timeout=120s -cpu=1,2,4
47 if errorlevel 1 goto fail
48 echo.
49
50 echo # sync -cpu=10
51 go test sync -short -timeout=120s -cpu=10
52 if errorlevel 1 goto fail
53 echo.
54
55 if not "%GOHOSTOS%-%GOOS%-%GOARCH%-%CGO_ENABLED%" == "windows-windows-amd64-1" goto norace
56 echo # Testing race detector.
57 go test -race -i flag
58 if errorlevel 1 goto fail
59 go test -race -short flag
60 if errorlevel 1 goto fail
61 echo.
62 :norace
63
64 echo # ..\misc\dashboard\builder ..\misc\goplay
65 go build ..\misc\dashboard\builder ..\misc\goplay
66 if errorlevel 1 goto fail
67 echo.
68
69 echo # ..\test\bench\go1
70 go test ..\test\bench\go1
71 if errorlevel 1 goto fail
72 echo.
73
74 :: cgo tests
75 :: issue 4955 - cgo is broken
76 goto nocgo
77 if x%CGO_ENABLED% == x0 goto nocgo
78 echo # ..\misc\cgo\life
79 go run %GOROOT%\test\run.go - ..\misc\cgo\life
80 if errorlevel 1 goto fail
81 echo.
82
83 echo # ..\misc\cgo\stdio
84 go run %GOROOT%\test\run.go - ..\misc\cgo\stdio
85 if errorlevel 1 goto fail
86 echo.
87
88 echo # ..\misc\cgo\test
89 go test ..\misc\cgo\test
90 if errorlevel 1 goto fail
91 echo.
92 :nocgo
93
94 echo # ..\doc\progs
95 go run %GOROOT%\test\run.go - ..\doc\progs
96 if errorlevel 1 goto fail
97 echo.
98
99 :: TODO: The other tests in run.bash.
100
101
102 set OLDGOMAXPROCS=%GOMAXPROCS%
103
104 echo # ..\test
105 cd ..\test
106 set FAIL=0
107 set GOMAXPROCS=
108 go run run.go
109 if errorlevel 1 set FAIL=1
110 cd ..\src
111 echo.
112 if %FAIL%==1 goto fail
113
114 set GOMAXPROCS=%OLDGOMAXPROCS%
115 set OLDGOMAXPROCS=
116
117 echo # Checking API compatibility.
118 go tool api -c ..\api\go1.txt -next ..\api\next.txt -except ..\api\except.txt
119 if errorlevel 1 goto fail
120 echo.
121
122 echo ALL TESTS PASSED
123 goto end
124
125 :fail
126 set GOBUILDFAIL=1
127
128 :end