From: Matthew Dempsky Date: Mon, 4 Oct 2021 23:42:13 +0000 (-0700) Subject: cmd/dist: omit cmd/cgo from toolchain1 X-Git-Tag: go1.18beta1~1061 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=81b7ec1ad5b50b8e73a63b44d8c2538154def535;p=gostls13.git cmd/dist: omit cmd/cgo from toolchain1 We don't need cmd/cgo for building go_bootstrap or toolchain2, so skip building it as part of toolchain1. This allows cmd/cgo to assume a current go/ast; e.g., that ast.IndexListExpr exists (needed for next CL). Change-Id: I642bba780bf273e6ea9c6e7c5d5d7ccfe86bf462 Reviewed-on: https://go-review.googlesource.com/c/go/+/353884 Trust: Matthew Dempsky Reviewed-by: Ian Lance Taylor --- diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go index 39f016e315..dca5464e56 100644 --- a/src/cmd/dist/build.go +++ b/src/cmd/dist/build.go @@ -1359,7 +1359,7 @@ func cmdbootstrap() { } // To recap, so far we have built the new toolchain - // (cmd/asm, cmd/cgo, cmd/compile, cmd/link) + // (cmd/asm, cmd/compile, cmd/link) // using Go 1.4's toolchain and go command. // Then we built the new go command (as go_bootstrap) // using the new toolchain and our own build logic (above). diff --git a/src/cmd/dist/buildtool.go b/src/cmd/dist/buildtool.go index 320c62f850..8d1c914f30 100644 --- a/src/cmd/dist/buildtool.go +++ b/src/cmd/dist/buildtool.go @@ -33,7 +33,6 @@ import ( var bootstrapDirs = []string{ "cmd/asm", "cmd/asm/internal/...", - "cmd/cgo", "cmd/compile", "cmd/compile/internal/...", "cmd/internal/archive", @@ -102,6 +101,7 @@ func bootstrapBuildTools() { mkbuildcfg(pathf("%s/src/internal/buildcfg/zbootstrap.go", goroot)) mkobjabi(pathf("%s/src/cmd/internal/objabi/zbootstrap.go", goroot)) + mkzdefaultcc("", pathf("%s/src/cmd/cgo/zdefaultcc.go", goroot)) // Use $GOROOT/pkg/bootstrap as the bootstrap workspace root. // We use a subdirectory of $GOROOT/pkg because that's the @@ -134,12 +134,6 @@ func bootstrapBuildTools() { } xmkdirall(dst) - if path == "cmd/cgo" { - // Write to src because we need the file both for bootstrap - // and for later in the main build. - mkzdefaultcc("", pathf("%s/zdefaultcc.go", src)) - mkzdefaultcc("", pathf("%s/zdefaultcc.go", dst)) - } return nil }