summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch
diff options
context:
space:
mode:
authorMatt Madison <matt@madison.systems>2017-09-12 09:50:21 -0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-09-12 23:55:29 +0100
commit9060b87711ffc5892c343165236ec40e5e3478e6 (patch)
treeb3b1d79264f22f000140d703849ba8ae4d41e010 /meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch
parent2a7a37e70d3709a0e2ca96d0341bbde102ee9978 (diff)
downloadpoky-9060b87711ffc5892c343165236ec40e5e3478e6.tar.gz
go: split out go-runtime into separate recipe
Reorganize the Go toolchain build to split out the Go standard runtime libraries into a separate recipe. This simplifies the extension to crosssdk and cross-canadian builds. * Adds a patch to the go build tool to prevent it from trying to rebuild anything in GOROOT, which is now resident in the target sysroot. * 'go' bb and inc files are now for building the compiler for the target only. * 'go-cross' bb and inc files are now just for the cross-compiler. * Adds virtual/<prefix> PROVIDES for the compiler and runtime * Removes testdata directories from the sysroot during staging, as they are unnecessary and can cause strip errors (some of the test files are ELF files). * Re-enables pacakage QA checks, adding selective INSANE_SKIP settings where needed. (From OE-Core rev: d2a7af7cd834e218c39d43ee3fa0c14d4f748727) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch')
-rw-r--r--meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch b/meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch
new file mode 100644
index 0000000000..28a7a34773
--- /dev/null
+++ b/meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch
@@ -0,0 +1,21 @@
1Prevent GOROOT-resident packages from being rebuilt
2
3Signed-off-by: Matt Madison <matt@madison.systems>
4Upstream-Status: Pending
5
6--- go.orig/src/cmd/go/pkg.go
7+++ go/src/cmd/go/pkg.go
8@@ -1496,6 +1496,13 @@ func isStale(p *Package) (bool, string)
9 return true, "build ID mismatch"
10 }
11
12+ // For OE builds, make anything in GOROOT non-stale,
13+ // to prevent a package build from overwriting the
14+ // build root.
15+ if p.Goroot && os.Getenv("GOROOT_OVERRIDE") != "1" {
16+ return false, "GOROOT-resident packages do not get rebuilt"
17+ }
18+
19 // Package is stale if a dependency is.
20 for _, p1 := range p.deps {
21 if p1.Stale {