diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2018-10-29 16:21:15 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-11-14 11:14:39 +0000 |
commit | 88ac8e533438532ff6cad3285cdd16479e70642d (patch) | |
tree | 82f7a723bee4a9281731970032d7cb0b671f4f1f /meta/recipes-devtools/go/go_1.9.bb | |
parent | 07999325f94a60546212d37ffc9f4de7a3943214 (diff) | |
download | poky-88ac8e533438532ff6cad3285cdd16479e70642d.tar.gz |
go 1.9/1.11: fix textrel qa warning for non mips arch
While building go itself, the go build system does not support
to set `-buildmode=pie' from environment.
Add GOBUILDMODE to support it which make PIE executables the default
build mode, as PIE executables are required as of Yocto
But mips doesn't support -buildmode=pie, so skip the QA checking for
mips and its variants
(From OE-Core rev: d11cb2ea0abfca4a5958ff4647f22a5b203113e5)
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/go/go_1.9.bb')
-rw-r--r-- | meta/recipes-devtools/go/go_1.9.bb | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/meta/recipes-devtools/go/go_1.9.bb b/meta/recipes-devtools/go/go_1.9.bb index 7da7897cf5..c23ea0c1ae 100644 --- a/meta/recipes-devtools/go/go_1.9.bb +++ b/meta/recipes-devtools/go/go_1.9.bb | |||
@@ -5,6 +5,7 @@ export GO_TARGET_INSTALL = "cmd" | |||
5 | export GO_FLAGS = "-a" | 5 | export GO_FLAGS = "-a" |
6 | export CC_FOR_TARGET = "${CC}" | 6 | export CC_FOR_TARGET = "${CC}" |
7 | export CXX_FOR_TARGET = "${CXX}" | 7 | export CXX_FOR_TARGET = "${CXX}" |
8 | export GOBUILDMODE="" | ||
8 | 9 | ||
9 | do_compile() { | 10 | do_compile() { |
10 | export GOBIN="${B}/bin" | 11 | export GOBIN="${B}/bin" |
@@ -16,9 +17,12 @@ do_compile() { | |||
16 | cd ${B} | 17 | cd ${B} |
17 | } | 18 | } |
18 | 19 | ||
19 | # for aarch64 ends with textrel in ${PN} | 20 | # Add pie to GOBUILDMODE to satisfy "textrel" QA checking, but mips |
20 | # http://errors.yoctoproject.org/Errors/Details/185634/ | 21 | # doesn't support -buildmode=pie, so skip the QA checking for mips and its |
21 | # ERROR: QA Issue: ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/bin/go' has relocations in .text | 22 | # variants. |
22 | # ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/pkg/tool/linux_arm64/trace' has relocations in .text | 23 | python() { |
23 | # ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/pkg/tool/linux_arm64/pprof' has relocations in .text [textrel] | 24 | if 'mips' in d.getVar('TARGET_ARCH'): |
24 | INSANE_SKIP_${PN} += "textrel" | 25 | d.appendVar('INSANE_SKIP_%s' % d.getVar('PN'), " textrel") |
26 | else: | ||
27 | d.setVar('GOBUILDMODE', 'pie') | ||
28 | } | ||