123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- From 28ada8896b76d620240bafc22aa395071d601482 Mon Sep 17 00:00:00 2001
- From: Alex Kube <alexander.j.kube@gmail.com>
- Date: Wed, 23 Oct 2019 21:15:37 +0430
- Subject: [PATCH 3/9] cmd/go: Allow GOTOOLDIR to be overridden in the environment
- to allow for split host/target build roots
- Adapted to Go 1.13 from patches originally submitted to
- the meta/recipes-devtools/go tree by
- Matt Madison <matt@madison.systems>.
- Upstream-Status: Inappropriate [OE specific]
- Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
- ---
- src/cmd/dist/build.go | 4 +++-
- src/cmd/go/internal/cfg/cfg.go | 6 +++++-
- 2 files changed, 8 insertions(+), 2 deletions(-)
- diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
- index 9e50311..683ca6f 100644
- --- a/src/cmd/dist/build.go
- +++ b/src/cmd/dist/build.go
- @@ -244,7 +244,9 @@ func xinit() {
- workdir = xworkdir()
- xatexit(rmworkdir)
-
- - tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
- + if tooldir = os.Getenv("GOTOOLDIR"); tooldir == "" {
- + tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
- + }
- }
-
- // compilerEnv returns a map from "goos/goarch" to the
- diff --git a/src/cmd/go/internal/cfg/cfg.go b/src/cmd/go/internal/cfg/cfg.go
- index a3277a6..db96350 100644
- --- a/src/cmd/go/internal/cfg/cfg.go
- +++ b/src/cmd/go/internal/cfg/cfg.go
- @@ -60,7 +60,11 @@ func defaultContext() build.Context {
- // variables. This matches the initialization of ToolDir in
- // go/build, except for using ctxt.GOROOT rather than
- // runtime.GOROOT.
- - build.ToolDir = filepath.Join(ctxt.GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
- + if s := os.Getenv("GOTOOLDIR"); s != "" {
- + build.ToolDir = filepath.Clean(s)
- + } else {
- + build.ToolDir = filepath.Join(ctxt.GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
- + }
- }
-
- ctxt.GOPATH = envOr("GOPATH", ctxt.GOPATH)
- --
- 2.17.1 (Apple Git-112)
|