summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/go/go-runtime.inc
Commit message (Collapse)AuthorAgeFilesLines
* go: Export correct GO386 value for targetPaul Barker2017-10-161-0/+1
| | | | | | | | | | | | When compiling go code for the target we need to ensure that GO386 is exported and set appropriately. This controls whether sse/sse2 instructions are used to implement floating-point operations or not. (From OE-Core rev: eba5fd5f594d65d311fa7564fa4b243248cb212a) Signed-off-by: Paul Barker <pbarker@toganlabs.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go-runtime: prevent host leakage into target objectsMatt Madison2017-10-071-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | When building for a target whose architecture matches the build host's, the second pass through make.bash to build the shareable runtime would also overwrite the target's static cgo library with host-compatibile binaries. Fix this by running the host-side build once and target-only passes of make.bash twice, for static and shareable. This ensures that what gets installed is target-compatible. Also fix an issue with x86-64 targets running MUSL by removing the pre-built (for glibc) objects for the race detector runtime before building. [YOCTO #12136] (From OE-Core rev: 070f4af529c84a3c8c0b1ffc7b138bdd9e8439b7) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go: fix linking issues for nativesdk buildsMatt Madison2017-09-211-0/+5
| | | | | | | | | | | | | Switch to using an external linker for nativesdk go, go-runtime, and go package builds, which works more reliably when building 32-bit SDKs. (From OE-Core rev: f76779f7ef6636355a5aa5741a736f5234a67fdb) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go-runtime: build the Go runtime as a shared libraryMatt Madison2017-09-141-2/+22
| | | | | | | | | | | | If the target architecture supports, it build the Go runtime as a shared library in addition to building the static libraries. (From OE-Core rev: f562b5e91c12ab67140de537ea269fe1ac85a764) 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>
* go-runtime: extend to nativesdk buildsMatt Madison2017-09-141-0/+3
| | | | | | | | | | Missed this when addding SDK support. (From OE-Core rev: ee80c21d12d12dc262d4b02aaaef3b57253b25df) 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>
* go: split out go-runtime into separate recipeMatt Madison2017-09-121-0/+58
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>