From 7360250a0f3694d1090e009ec344b2f18fc98514 Mon Sep 17 00:00:00 2001 From: Amy Fong Date: Tue, 6 Oct 2015 14:41:10 -0400 Subject: Backport go-cross: fix the bug of cross building error submitted to upstream https://github.com/errordeveloper/oe-meta-go go-cross: fix the bug of cross building error When a package's recipe inherit "cross" bbclass, its CC and CXX are defined as the host native gcc and g++ instead of the host cross toolchain, fot this case, CC_FOR_TARGET and CXX_FOR_TARGET should be defined the same with CC and CXX, instead they are should be define as host cross toolchain's CC and CXX, otherwise, it will build failed for target arm architecture as below: | # Building packages and commands for linux/arm. | + CC='gcc ' | + bitbake_build/tmp/work/x86_64-wrs-linux-gnueabi/go-cross/1.4-r0/go/pkg/tool/linux_amd64/go_bootstrap install -ccflags '' -gcflags '' -ldflags '' -v std | runtime | errors | sync/atomic | unicode | unicode/utf8 | math | sort | encoding | unicode/utf16 | container/list | crypto/subtle | runtime/cgo | container/ring | image/color | runtime/race | # runtime/cgo | gcc: error: unrecognized command line option '-marm' Signed-off-by: fupan li Signed-off-by: Amy Fong Signed-off-by: Bruce Ashfield --- recipes-devtools/go-cross/go-cross_1.3.bb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'recipes-devtools') diff --git a/recipes-devtools/go-cross/go-cross_1.3.bb b/recipes-devtools/go-cross/go-cross_1.3.bb index 87231428..9ecc295d 100644 --- a/recipes-devtools/go-cross/go-cross_1.3.bb +++ b/recipes-devtools/go-cross/go-cross_1.3.bb @@ -5,6 +5,8 @@ DESCRIPTION = "\ HOMEPAGE = "https://golang.org/" LICENSE = "BSD-3-Clause" +DEPENDS = "virtual/${TARGET_PREFIX}gcc" + SRC_URI = "http://golang.org/dl/go${PV}.src.tar.gz" S = "${WORKDIR}/go/" @@ -44,8 +46,8 @@ do_compile() { ## TODO: consider setting GO_EXTLINK_ENABLED export CC="${BUILD_CC}" - export CC_FOR_TARGET="${CC}" - export CXX_FOR_TARGET="${CXX}" + export CC_FOR_TARGET="${TARGET_PREFIX}gcc ${TARGET_CC_ARCH} --sysroot=${STAGING_DIR_TARGET}" + export CXX_FOR_TARGET="${TARGET_PREFIX}g++ ${TARGET_CC_ARCH} --sysroot=${STAGING_DIR_TARGET}" export GO_CCFLAGS="${HOST_CFLAGS}" export GO_LDFLAGS="${HOST_LDFLAGS}" -- cgit v1.2.3-54-g00ecf