1
0
mirror of https://github.com/golang/go synced 2024-11-25 15:17:58 -07:00
go/src/cmd/dist
Dmitri Shuralyov aa2e8b9ce2 cmd/dist: update tryDirs list to match make scripts
The $HOME/sdk/go1.17 and $HOME/go1.17 paths were initially added as
places to look for a bootstrap toolchain to make.{bash,bat,rc} scripts
and in cmd/dist (CL 370274). Those two go1.17 directories have since
been updated in the make scripts to go1.20.6 (CL 512275) and later on
to go1.22.6 (CL 606156), but the same list in cmd/dist was missed.

Fix the inconsistency now. But maybe cmd/dist doesn't need to maintain
this logic, if it's required to be invoked via one of the make scripts,
since they're responsible for setting GOROOT_BOOTSTRAP?

For #64751.

Change-Id: I0988005c559014791363138f2f722cc1f9a78bcf
Reviewed-on: https://go-review.googlesource.com/c/go/+/607821
Reviewed-by: Ian Lance Taylor <iant@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
2024-08-27 17:23:37 +00:00
..
build_test.go cmd/dist: set go version in bootstrap go.mod file 2024-08-22 17:24:29 +00:00
build.go cmd/dist: set go version in bootstrap go.mod file 2024-08-22 17:24:29 +00:00
buildgo.go cmd/dist: more robust cleanup 2023-06-13 20:44:00 +00:00
buildruntime.go cmd/dist,internal: add GOARM64 environment variable 2024-03-06 01:33:19 +00:00
buildtag_test.go cmd/dist: add buildtag parsing test 2021-11-25 00:02:52 +00:00
buildtag.go cmd/dist: implement //go:build parsing 2021-10-28 03:35:04 +00:00
buildtool.go cmd/dist: update tryDirs list to match make scripts 2024-08-27 17:23:37 +00:00
doc.go all: gofmt main repo 2022-04-11 16:34:30 +00:00
exec.go all: update build tags to require/assume Go 1.20 2023-07-20 21:52:09 +00:00
imports.go
main.go internal/platform,cmd/dist: export the list of supported platforms 2023-06-22 19:44:52 +00:00
notgo122.go cmd/dist: require Go 1.22.6 as minimum bootstrap toolchain 2024-08-20 17:52:42 +00:00
quoted.go all: add missing copyright header 2022-11-09 14:05:53 +00:00
README cmd/dist: require Go 1.22.6 as minimum bootstrap toolchain 2024-08-20 17:52:42 +00:00
supported_test.go all: fix a large number of comments 2024-03-26 19:58:28 +00:00
sys_default.go all: drop old +build lines 2023-10-19 23:33:27 +00:00
sys_windows.go all: fix Microsoft links 2023-09-12 16:42:41 +00:00
test.go cmd/link, runtime: support library mode on wasip1 2024-08-13 21:27:50 +00:00
testjson_test.go cmd/dist: flush incomplete lines in -json mode 2023-05-19 20:13:24 +00:00
testjson.go all: remove redundant string conversions when formatting []byte with %s 2024-03-07 20:46:32 +00:00
util_gc.go all: drop old +build lines 2023-10-19 23:33:27 +00:00
util_gccgo.go all: drop old +build lines 2023-10-19 23:33:27 +00:00
util.go cmd/dist: default to GOARM=7 on all non-arm systems 2023-02-23 17:50:29 +00:00
vfp_arm.s all: drop old +build lines 2023-10-19 23:33:27 +00:00
vfp_default.s all: drop old +build lines 2023-10-19 23:33:27 +00:00

This program, dist, is the bootstrapping tool for the Go distribution.

As of Go 1.5, dist and other parts of the compiler toolchain are written
in Go, making bootstrapping a little more involved than in the past.
The approach is to build the current release of Go with an earlier one.

The process to install Go 1.x, for x ≥ 24, is:

1. Build cmd/dist with Go 1.22.6.
2. Using dist, build Go 1.x compiler toolchain with Go 1.22.6.
3. Using dist, rebuild Go 1.x compiler toolchain with itself.
4. Using dist, build Go 1.x cmd/go (as go_bootstrap) with Go 1.x compiler toolchain.
5. Using go_bootstrap, build the remaining Go 1.x standard library and commands.

Because of backward compatibility, although the steps above say Go 1.22.6,
in practice any release ≥ Go 1.22.6 but < Go 1.x will work as the bootstrap base.
Releases ≥ Go 1.x are very likely to work as well.

See https://go.dev/s/go15bootstrap for more details about the original bootstrap
and https://go.dev/issue/54265 for details about later bootstrap version bumps.