Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Matt Madison <matt@madison.systems>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH v4 10/13] go: disable PIE CFLAGS for nativesdk and cross-canadian builds
Date: Fri,  2 Mar 2018 12:33:11 -0800	[thread overview]
Message-ID: <20180302203314.32737-11-matt@madison.systems> (raw)
In-Reply-To: <20180302203314.32737-1-matt@madison.systems>

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.

Signed-off-by: Matt Madison <matt@madison.systems>
---
 meta/recipes-devtools/go/go-cross-canadian.inc | 6 +++---
 meta/recipes-devtools/go/go-target.inc         | 3 +--
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-devtools/go/go-cross-canadian.inc b/meta/recipes-devtools/go/go-cross-canadian.inc
index 7a39e4509b..1d6453712e 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/$
 export GOROOT_FINAL = "${libdir}/go"
 export CGO_CFLAGS = "${CFLAGS}"
 export CGO_LDFLAGS = "${LDFLAGS}"
-export GO_LDFLAGS = '-v -linkmode external -extld ${HOST_PREFIX}gcc -extldflags "--sysroot=${STAGING_DIR_HOST} ${HOST_CC_ARCH} ${LDFLAGS}"'
+export GO_LDFLAGS = '-v -linkmode external -extld ${HOST_PREFIX}gcc -extldflags "--sysroot=${STAGING_DIR_HOST} ${SECURITY_NOPIE_CFLAGS} ${HOST_CC_ARCH} ${LDFLAGS}"'
 
 do_configure[noexec] = "1"
 
 do_compile() {
-	export CC_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}"
-	export CXX_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gxx --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE}"
+	export CC_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gcc --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
+	export CXX_FOR_${HOST_GOOS}_${HOST_GOARCH}="${HOST_PREFIX}gxx --sysroot=${STAGING_DIR_HOST}${SDKPATHNATIVE} ${SECURITY_NOPIE_CFLAGS}"
 	cd src
 	./make.bash --host-only --no-banner
 	cd ${B}
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 = ""
 GO_LDFLAGS_class-nativesdk = "-linkmode external"
 export GO_LDFLAGS
 
-SECURITY_CFLAGS = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS = ""
+CC_append_class-nativesdk = " ${SECURITY_NOPIE_CFLAGS}"
 
 do_configure[noexec] = "1"
 
-- 
2.14.1



  parent reply	other threads:[~2018-03-02 20:33 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-02 20:33 [PATCH v4 00/13] go1.10 update and misc improvements Matt Madison
2018-03-02 20:33 ` [PATCH v4 01/13] go: update go 1.9 -> go 1.10 Matt Madison
2018-03-02 20:33 ` [PATCH v4 02/13] go: set GOMIPS envrionment variable Matt Madison
2018-03-02 20:33 ` [PATCH v4 03/13] go.bbclass: rename GO_TMPDIR -> GOTMPDIR Matt Madison
2018-03-02 20:33 ` [PATCH v4 04/13] go.bbclass: remove debug-related commands Matt Madison
2018-03-02 20:33 ` [PATCH v4 05/13] go.bbclass: don't stage test data with sources Matt Madison
2018-03-02 20:33 ` [PATCH v4 06/13] go.bbclass: ptest cleanup and improvements Matt Madison
2018-03-02 20:33 ` [PATCH v4 07/13] goarch.bbclass: disable shared runtime for nativesdk builds Matt Madison
2018-03-02 20:33 ` [PATCH v4 08/13] go: move common settings to go-common.inc Matt Madison
2018-03-02 20:33 ` [PATCH v4 09/13] go.bbclass, goarch.bbclass: update SECURITY_CFLAGS Matt Madison
2018-03-02 20:33 ` Matt Madison [this message]
2018-03-02 20:33 ` [PATCH v4 11/13] packagegroup-go-sdk-target: add go-runtime-staticdev Matt Madison
2018-03-02 20:33 ` [PATCH v4 12/13] go-runtime: remove unneeded nativesdk override, rename variable Matt Madison
2018-03-02 20:33 ` [PATCH v4 13/13] go-cross-canadian: remove verbosity setting from GO_LDFLAGS Matt Madison
2018-03-03 16:40 ` [PATCH v4 00/13] go1.10 update and misc improvements Khem Raj
2018-03-03 17:44   ` Matt Madison
2018-03-03 19:59     ` Khem Raj
2018-03-03 22:45       ` Otavio Salvador
2018-03-04  2:28         ` Khem Raj
2018-03-04 20:46           ` Otavio Salvador
2018-03-04 21:10             ` Matt Madison
2018-03-05 11:22             ` Burton, Ross
2018-03-03 16:53 ` Richard Purdie
2018-03-03 17:23   ` Matt Madison

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180302203314.32737-11-matt@madison.systems \
    --to=matt@madison.systems \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox