From 2275712df152b73ce49b36bdf9f8d744c68c9c50 Mon Sep 17 00:00:00 2001 From: Matt Madison Date: Wed, 13 Sep 2017 14:54:03 -0300 Subject: 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 --- meta/classes/goarch.bbclass | 10 ++++++++++ 1 file changed, 10 insertions(+) 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" -- cgit 1.2.3-korg