]> Cypherpunks repositories - gostls13.git/commit
cmd/go: don't warn about GOROOT equal to GOPATH when both are the empty string
authorBryan C. Mills <bcmills@google.com>
Mon, 20 Nov 2023 20:20:58 +0000 (15:20 -0500)
committerGopher Robot <gobot@golang.org>
Mon, 20 Nov 2023 22:45:34 +0000 (22:45 +0000)
commit841e63e480ca2626e0cd0bbf8df31f8c6d8ee597
tree3520de8e980150bf9678c4ffd64e81e23f754569
parentaf1242932e121f510ad04282277740cceff2e550
cmd/go: don't warn about GOROOT equal to GOPATH when both are the empty string

As of Go 1.19, runtime.GOROOT() reports the empty string if the binary
was built with -trimpath. cmd/go/internal/cfg uses the path of the go
command executable to reverse-engineer the correct GOROOT setting,
but that means that cmd/go's "GOPATH set to GOROOT" warning needs to
use cfg.GOROOT instead of runtime.GOROOT().

In addition, if we fail to find the GOROOT then there is no point in
complaining about GOPATH also being empty: the missing GOROOT will stop
everything right away anyway, so there is no point confusing the user
with an additional warning about GOPATH.

Updates #51461.
Updates #18678.
Updates #3207.

Change-Id: Id7d0f4dc2f229c202dfda4e6e8af5dea909bb16f
Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,gotip-windows-amd64-longtest
Reviewed-on: https://go-review.googlesource.com/c/go/+/543955
Reviewed-by: Michael Matloob <matloob@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
src/cmd/go/main.go
src/cmd/go/testdata/script/goroot_executable_trimpath.txt