Enhancing the Golang support in Yocto Project - part 1

We have been using the Golang here at O.S. Systems for multiple projects, especially our UpdateHub project which is on heavy development. Because of this work we have identified a few areas where the Golang support could be improved on Yocto Project, mainly:

Multiple layers for providing support for Golang, like oe-meta-go, meta-golang, meta-virtualization and others;

Different levels of quality of integration of Golang on those layers;

Lack of SDK support on the OpenEmbedded-Core current integration.

After evaluating the current Golang support on OpenEmbedded-Core (added on the Pyro development cycle), oe-meta-go and meta-golang, we found that Matt Madison <matt@madison.systems> has done an outstanding job on meta-golang layer lately, so we contacted him to work on integrating his work back to OpenEmbedded-Core and we have succeed!

Short log of changes

So far, we have already merged a number of improvements on OpenEmbedded-Core, which can be seen below:

Matt Madison (4): go.bbclass: exported function cleanup go.bbclass: separate ${S} and ${B} go.bbclass: add do_unpack function to handle common cases go.bbclass: add GO_INSTALL_FILTEROUT variable Otavio Salvador (8): goarch.bbclass: Stop passing True as second argument of d.getVar go.bbclass: Fix binary installation path detection go: Remove Go 1.6 and 1.7 releases goarch.bbclass: Add support for ARMv5 go.bbclass: Use a global Go build flags go.bbclass: Enable parallel build go.bbclass: Use an auxiliary variable to add the build dependencies go-dep: Add 0.3.0 release

Now we are working on integrating the SDK support and dynamic linking onto OpenEmbedded-Core. Stay tuned for more! ;-)