]> Cypherpunks.ru repositories - gostls13.git/commitdiff
cmd/compile/internal/importer,go/internal/gcimporter: use the 'go' command from build...
authorBryan C. Mills <bcmills@google.com>
Fri, 14 Apr 2023 16:48:26 +0000 (16:48 +0000)
committerGopher Robot <gobot@golang.org>
Mon, 24 Apr 2023 18:46:00 +0000 (18:46 +0000)
Also set GOROOT explicitly in case it is set to something else in the
caller's environment.

Updates #59598.
Fixes #59637.

Change-Id: I5599ed1183b23187fc3b976786f3c320d42ef4f3
Reviewed-on: https://go-review.googlesource.com/c/go/+/484756
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Bryan Mills <bcmills@google.com>
Reviewed-by: Michael Matloob <matloob@golang.org>
(cherry picked from commit 750e91152bbd1cb2869660ddb80f2b3adcfd1f9b)
Reviewed-on: https://go-review.googlesource.com/c/go/+/484758
Auto-Submit: Dmitri Shuralyov <dmitshur@google.com>

src/cmd/compile/internal/importer/gcimporter.go
src/go/internal/gcimporter/gcimporter.go

index 5d948f03c8a33f928432f030b90f27227c50689e..490cdf94dfad5c0138a122eaed2c5a4804389411 100644 (file)
@@ -39,8 +39,9 @@ func lookupGorootExport(pkgDir string) (string, bool) {
                )
                f, _ = exportMap.LoadOrStore(pkgDir, func() (string, bool) {
                        listOnce.Do(func() {
-                               cmd := exec.Command("go", "list", "-export", "-f", "{{.Export}}", pkgDir)
+                               cmd := exec.Command(filepath.Join(build.Default.GOROOT, "bin", "go"), "list", "-export", "-f", "{{.Export}}", pkgDir)
                                cmd.Dir = build.Default.GOROOT
+                               cmd.Env = append(os.Environ(), "PWD="+cmd.Dir, "GOROOT="+build.Default.GOROOT)
                                var output []byte
                                output, err := cmd.Output()
                                if err != nil {
index 2140a9f98c2c4a2f855f130c92e4aa151aaadd97..284389aae73f4d3781ed6485186a6328de1f3ef6 100644 (file)
@@ -42,8 +42,9 @@ func lookupGorootExport(pkgDir string) (string, bool) {
                )
                f, _ = exportMap.LoadOrStore(pkgDir, func() (string, bool) {
                        listOnce.Do(func() {
-                               cmd := exec.Command("go", "list", "-export", "-f", "{{.Export}}", pkgDir)
+                               cmd := exec.Command(filepath.Join(build.Default.GOROOT, "bin", "go"), "list", "-export", "-f", "{{.Export}}", pkgDir)
                                cmd.Dir = build.Default.GOROOT
+                               cmd.Env = append(cmd.Environ(), "GOROOT="+build.Default.GOROOT)
                                var output []byte
                                output, err := cmd.Output()
                                if err != nil {