diff options
Diffstat (limited to 'meta/recipes-devtools/go/go-1.9/0005-cmd-go-make-GOROOT-precious-by-default.patch')
-rw-r--r-- | meta/recipes-devtools/go/go-1.9/0005-cmd-go-make-GOROOT-precious-by-default.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/meta/recipes-devtools/go/go-1.9/0005-cmd-go-make-GOROOT-precious-by-default.patch b/meta/recipes-devtools/go/go-1.9/0005-cmd-go-make-GOROOT-precious-by-default.patch new file mode 100644 index 0000000000..6e93bcb6ce --- /dev/null +++ b/meta/recipes-devtools/go/go-1.9/0005-cmd-go-make-GOROOT-precious-by-default.patch | |||
@@ -0,0 +1,41 @@ | |||
1 | From 44f961975dac6cf464a77b5f6dd0c47cc192c4fd Mon Sep 17 00:00:00 2001 | ||
2 | From: Matt Madison <matt@madison.systems> | ||
3 | Date: Wed, 13 Sep 2017 08:19:52 -0700 | ||
4 | Subject: [PATCH 5/7] cmd/go: make GOROOT precious by default | ||
5 | |||
6 | For OE builds, we never want packages that have | ||
7 | already been installed into the build root to be | ||
8 | modified, so prevent the go build tool from checking | ||
9 | if they should be rebuilt. | ||
10 | |||
11 | Also add an environment variable to override this | ||
12 | behavior, just for building the Go runtime. | ||
13 | |||
14 | Upstream-Status: Pending | ||
15 | |||
16 | Signed-off-by: Matt Madison <matt@madison.systems> | ||
17 | --- | ||
18 | src/cmd/go/internal/load/pkg.go | 7 +++++++ | ||
19 | 1 file changed, 7 insertions(+) | ||
20 | |||
21 | diff --git a/src/cmd/go/internal/load/pkg.go b/src/cmd/go/internal/load/pkg.go | ||
22 | index 60de666..2660d3f 100644 | ||
23 | --- a/src/cmd/go/internal/load/pkg.go | ||
24 | +++ b/src/cmd/go/internal/load/pkg.go | ||
25 | @@ -1530,6 +1530,13 @@ func isStale(p *Package) (bool, string) { | ||
26 | return true, "build ID mismatch" | ||
27 | } | ||
28 | |||
29 | + // For OE builds, make anything in GOROOT non-stale, | ||
30 | + // to prevent a package build from overwriting the | ||
31 | + // build root. | ||
32 | + if p.Goroot && os.Getenv("GOROOT_OVERRIDE") != "1" { | ||
33 | + return false, "GOROOT-resident packages do not get rebuilt" | ||
34 | + } | ||
35 | + | ||
36 | // Package is stale if a dependency is. | ||
37 | for _, p1 := range p.Internal.Deps { | ||
38 | if p1.Stale { | ||
39 | -- | ||
40 | 2.7.4 | ||
41 | |||