diff options
author | Matt Madison <matt@madison.systems> | 2017-09-12 09:50:21 -0300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-09-12 23:55:29 +0100 |
commit | 9060b87711ffc5892c343165236ec40e5e3478e6 (patch) | |
tree | b3b1d79264f22f000140d703849ba8ae4d41e010 /meta/recipes-devtools/go/go-1.8/make-goroot-precious.patch | |
parent | 2a7a37e70d3709a0e2ca96d0341bbde102ee9978 (diff) | |
download | poky-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.patch | 21 |
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 @@ | |||
1 | Prevent GOROOT-resident packages from being rebuilt | ||
2 | |||
3 | Signed-off-by: Matt Madison <matt@madison.systems> | ||
4 | Upstream-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 { | ||