summaryrefslogtreecommitdiffstats
path: root/meta/classes/go.bbclass
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-12-15 00:49:56 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-12-18 22:52:24 +0000
commitd059b90fc0e2a224c51ce946a8842183c1a39e6b (patch)
tree0894a61922f4c8f18554fdfb6b4a9bd409461bf0 /meta/classes/go.bbclass
parent5a5795349b49cdb595d80c019798555dc798703f (diff)
downloadpoky-d059b90fc0e2a224c51ce946a8842183c1a39e6b.tar.gz
go.bbclass: Use external linker for native packages
go 1.15 has reworked internal linker, which has resulted in regressions in OE where native binaries generated using internal linker in some cases result in corruption during populate_sysroot e.g. glide-native crashing when used after relocation. This improved reliability of native binaries working especially when they use cgo or pie build modes (From OE-Core rev: daf4856ea3ccafc05c808a34d4c6af2bfafea12f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Otavio Salvador <otavio.salvador@ossystems.com.br> Cc: Konrad Weihmann <kweihmann@outlook.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/go.bbclass')
-rw-r--r--meta/classes/go.bbclass1
1 files changed, 1 insertions, 0 deletions
diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass
index a9e31b50ea..5b26378a4e 100644
--- a/meta/classes/go.bbclass
+++ b/meta/classes/go.bbclass
@@ -40,6 +40,7 @@ GO_RPATH_LINK_class-native = "${@'-Wl,-rpath-link=${STAGING_LIBDIR_NATIVE}/go/pk
40GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS}" 40GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS}"
41GO_LINKMODE ?= "" 41GO_LINKMODE ?= ""
42GO_LINKMODE_class-nativesdk = "--linkmode=external" 42GO_LINKMODE_class-nativesdk = "--linkmode=external"
43GO_LINKMODE_class-native = "--linkmode=external"
43GO_LDFLAGS ?= '-ldflags="${GO_RPATH} ${GO_LINKMODE} -extldflags '${GO_EXTLDFLAGS}'"' 44GO_LDFLAGS ?= '-ldflags="${GO_RPATH} ${GO_LINKMODE} -extldflags '${GO_EXTLDFLAGS}'"'
44export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -trimpath" 45export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -trimpath"
45export GOPATH_OMIT_IN_ACTIONID ?= "1" 46export GOPATH_OMIT_IN_ACTIONID ?= "1"