From: Matt Madison Date: Wed, 13 Sep 2017 17:54:03 +0000 (-0300) Subject: goarch.bbclass: identify archs with Go dynamic linking support X-Git-Tag: 2017-10~225 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=2275712df152b73ce49b36bdf9f8d744c68c9c50;p=openembedded-core.git goarch.bbclass: identify archs with Go dynamic linking support Go only supports shared libraries for some architectures, so add a variable for use elsewhere that gets a non-null value only for those architectures. Signed-off-by: Matt Madison Signed-off-by: Otavio Salvador Signed-off-by: Richard Purdie --- diff --git a/meta/classes/goarch.bbclass b/meta/classes/goarch.bbclass index 0c22f80518..bfba3c9723 100644 --- a/meta/classes/goarch.bbclass +++ b/meta/classes/goarch.bbclass @@ -11,6 +11,16 @@ TARGET_GOARM = "${@go_map_arm(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES') TARGET_GOTUPLE = "${TARGET_GOOS}_${TARGET_GOARCH}" GO_BUILD_BINDIR = "${@['bin/${HOST_GOTUPLE}','bin'][d.getVar('BUILD_GOTUPLE') == d.getVar('HOST_GOTUPLE')]}" +# Go supports dynamic linking on a limited set of architectures. +# See the supportsDynlink function in go/src/cmd/compile/internal/gc/main.go +GO_DYNLINK = "" +GO_DYNLINK_arm = "1" +GO_DYNLINK_aarch64 = "1" +GO_DYNLINK_x86 = "1" +GO_DYNLINK_x86-64 = "1" +GO_DYNLINK_powerpc64 = "1" +GO_DYNLINK_class-native = "" + # define here because everybody inherits this class # COMPATIBLE_HOST_linux-gnux32 = "null"