From 7239bf746acb27f8b116e0fbf1b6e40ec12d40d3 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 22 Nov 2016 21:04:27 +0000 Subject: [PATCH] re PR go/77910 (go: open zversion.go: no such file or directory) PR go/77910 cmd/go: don't check standard packages when using gccgo This copies https://golang.org/cl/33295 to libgo. This fixes GCC PR 77910. Reviewed-on: https://go-review.googlesource.com/33471 From-SVN: r242724 --- gcc/go/gofrontend/MERGE | 2 +- libgo/go/cmd/go/pkg.go | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 212b9e9c7f5..5ff8b8df065 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -7593cc83a03999331c5e2dc65a9306c5fe57dfd0 +e66f30e862cb5d02b9d55bf44ac439bb8fc4ea19 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/libgo/go/cmd/go/pkg.go b/libgo/go/cmd/go/pkg.go index d1292a132d2..ea223d6203d 100644 --- a/libgo/go/cmd/go/pkg.go +++ b/libgo/go/cmd/go/pkg.go @@ -523,6 +523,11 @@ func disallowInternal(srcDir string, p *Package, stk *importStack) *Package { return p } + // We can't check standard packages with gccgo. + if buildContext.Compiler == "gccgo" && p.Standard { + return p + } + // The stack includes p.ImportPath. // If that's the only thing on the stack, we started // with a name given on the command line, not an @@ -1588,7 +1593,7 @@ func computeBuildID(p *Package) { // Include the content of runtime/internal/sys/zversion.go in the hash // for package runtime. This will give package runtime a // different build ID in each Go release. - if p.Standard && p.ImportPath == "runtime/internal/sys" { + if p.Standard && p.ImportPath == "runtime/internal/sys" && buildContext.Compiler != "gccgo" { data, err := ioutil.ReadFile(filepath.Join(p.Dir, "zversion.go")) if err != nil { fatalf("go: %s", err) -- 2.30.2