summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/go
diff options
context:
space:
mode:
authorMatt Madison <matt@madison.systems>2018-03-04 13:09:34 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-06 06:43:10 -0800
commit8701fe54a801705a99136f3a5d2afb5e47d37a29 (patch)
tree62a0f3a58f9572898317f1f7616376775c1fe9d9 /meta/recipes-devtools/go
parent3ffafcd9cf18051074b3a6298f754f34768e36dc (diff)
downloadpoky-8701fe54a801705a99136f3a5d2afb5e47d37a29.tar.gz
go: disable PIE CFLAGS for nativesdk and cross-canadian builds
The statically-linked Go code in the toolchain is not compatible with PIE, so disable its use in the C compiler during the toolchain build. (From OE-Core rev: cc7b179917c715b29822200fe91ecd755a5750e6) Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/go')
-rw-r--r--meta/recipes-devtools/go/go-cross-canadian.inc6
-rw-r--r--meta/recipes-devtools/go/go-cross-canadian_1.9.bb4
-rw-r--r--meta/recipes-devtools/go/go-target.inc3
3 files changed, 6 insertions, 7 deletions
diff --git a/meta/recipes-devtools/go/go-cross-canadian.inc b/meta/recipes-devtools/go/go-cross-canadian.inc
index e630b83df8..ea68b8875d 100644
--- a/meta/recipes-devtools/go/go-cross-canadian.inc
+++ b/meta/recipes-devtools/go/go-cross-canadian.inc
@@ -12,13 +12,13 @@ export GOTOOLDIR_BOOTSTRAP = "${STAGING_LIBDIR_NATIVE}/${HOST_SYS}/go/pkg/tool/$
12export GOROOT_FINAL = "${libdir}/go" 12export GOROOT_FINAL = "${libdir}/go"
13export CGO_CFLAGS = "${CFLAGS}" 13export CGO_CFLAGS = "${CFLAGS}"
14export CGO_LDFLAGS = "${LDFLAGS}" 14export CGO_LDFLAGS = "${LDFLAGS}"
15export GO_LDFLAGS = '-linkmode external -extld ${HOST_PREFIX}gcc -extldflags "--sysroot=${STAGING_DIR_HOST} ${HOST_CC_ARCH} ${LDFLAGS}"' 15export GO_LDFLAGS = '-linkmode external -extld ${HOST_PREFIX}gcc -extldflags "--sysroot=${STAGING_DIR_HOST} ${SECURITY_NOPIE_CFLAGS} ${HOST_CC_ARCH} ${LDFLAGS}"'
16 16
17do_configure[noexec] = "1" 17do_configure[noexec] = "1"
18 18
19do_compile() { 19do_compile() {
20 export CC_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}" 20 export CC_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
21 export CXX_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gxx --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}" 21 export CXX_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gxx --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
22 cd src 22 cd src
23 ./make.bash --host-only --no-banner 23 ./make.bash --host-only --no-banner
24 cd ${B} 24 cd ${B}
diff --git a/meta/recipes-devtools/go/go-cross-canadian_1.9.bb b/meta/recipes-devtools/go/go-cross-canadian_1.9.bb
index 0306fdf684..367a967056 100644
--- a/meta/recipes-devtools/go/go-cross-canadian_1.9.bb
+++ b/meta/recipes-devtools/go/go-cross-canadian_1.9.bb
@@ -3,8 +3,8 @@ require go-${PV}.inc
3 3
4export GOHOSTOS_CROSS = "${HOST_GOOS}" 4export GOHOSTOS_CROSS = "${HOST_GOOS}"
5export GOHOSTARCH_CROSS = "${HOST_GOARCH}" 5export GOHOSTARCH_CROSS = "${HOST_GOARCH}"
6export CC_FOR_TARGET = "${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}" 6export CC_FOR_TARGET = "${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
7export CXX_FOR_TARGET = "${HOST_PREFIX}g++ --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}" 7export CXX_FOR_TARGET = "${HOST_PREFIX}g++ --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
8 8
9do_compile_prepend() { 9do_compile_prepend() {
10 export GOBIN="${B}/bin" 10 export GOBIN="${B}/bin"
diff --git a/meta/recipes-devtools/go/go-target.inc b/meta/recipes-devtools/go/go-target.inc
index 3bc32f3bec..29a1344675 100644
--- a/meta/recipes-devtools/go/go-target.inc
+++ b/meta/recipes-devtools/go/go-target.inc
@@ -14,8 +14,7 @@ GO_LDFLAGS = ""
14GO_LDFLAGS_class-nativesdk = "-linkmode external" 14GO_LDFLAGS_class-nativesdk = "-linkmode external"
15export GO_LDFLAGS 15export GO_LDFLAGS
16 16
17SECURITY_CFLAGS = "${SECURITY_NOPIE_CFLAGS}" 17CC_append_class-nativesdk = " ${SECURITY_NOPIE_CFLAGS}"
18SECURITY_LDFLAGS = ""
19 18
20do_configure[noexec] = "1" 19do_configure[noexec] = "1"
21 20