aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBryan C. Mills <bcmills@google.com>2022-04-01 15:36:17 -0400
committerBryan Mills <bcmills@google.com>2022-04-05 14:18:19 +0000
commit5210a7128563e64952d432a0efd2d38c32cd090c (patch)
treef96bcb2ff9fc2a97ce999ae772ec75b38f37eb51 /src
parent592078ff3f7d938b2fbcd98ddcb72e0d2748fdb1 (diff)
downloadgo-5210a7128563e64952d432a0efd2d38c32cd090c.tar.xz
run.bat: use cmd/dist instead of 'go install' to rebuild std and cmd
cmd/dist may set and/or unset variables before building, and at any rate it is fragile to run 'go install' before sourcing env.bat. The build-stamp information embedded by the 'go' command is currently sensitive to whether CGO_* variables are implicit or explicit, so running 'go install' before env.bat may cause stamped metadata to become stale. (Explicitly setting to the default arguably ought to produce the same metadata as leaving the variables unset, but that's a separate issue and a bigger cleanup.) Moreover, run.bat is supposed to parallel run.bash, and run.bash already hasn't invoked 'go install' itself since CL 6531! For #52009 Change-Id: Ie35217913f02cc7e0c3f9b12874abd7416473478 Reviewed-on: https://go-review.googlesource.com/c/go/+/398060 Trust: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/run.bat18
1 files changed, 6 insertions, 12 deletions
diff --git a/src/run.bat b/src/run.bat
index edcaf52659..1f16c493bb 100644
--- a/src/run.bat
+++ b/src/run.bat
@@ -24,26 +24,20 @@ set GOBIN=
set GOFLAGS=
set GO111MODULE=
-rem TODO avoid rebuild if possible
-
-if x%1==x--no-rebuild goto norebuild
-echo ##### Building packages and commands.
-..\bin\go install -a -v std cmd
-if errorlevel 1 goto fail
-echo.
-:norebuild
-
:: get CGO_ENABLED
..\bin\go env > env.bat
if errorlevel 1 goto fail
call env.bat
del env.bat
-echo.
-..\bin\go tool dist test
+if x%1==x--no-rebuild goto norebuild
+..\bin\go tool dist test --rebuild
if errorlevel 1 goto fail
-echo.
+goto end
+:norebuild
+..\bin\go tool dist test
+if errorlevel 1 goto fail
goto end
:fail