On Wednesday, March 13, 2019 3:40:18 PM EDT Christopher Larson wrote: > How would bitbake respond to an ‘export’ line with the empty string? I.e. > can you do an actual conditional export the way we do conditional inherits, > so it still is only exported for arm, even if the value is set to the empty > string for others?
I thought about doing this but did not attempt it. I will give it a go and see how it looks and works. I am still curious to hear from Richard on this as if it is deterministic it is the simplistic and easiest to read approach. MarkA > > On Wed, Mar 13, 2019 at 10:57 AM Mark Asselstine < > > [email protected]> wrote: > > When building GO packages for ARM (v5, v6, v7) it is expected that the > > GOARM env variable is set during the build. Not having GOARM exported > > will result in GO binaries which can't be executed on the target > > (terminate with segfault). Per https://github.com/golang/go/wiki/GoArm > > > > We already have the logic in goarch.bbclass to determine the correct > > value of GOARM (see GOARM_TARGET), but currently this is only used to > > build go itself (go-cross_1.*.bb requires go-cross.inc --> export > > GOARM = "${TARGET_GOARM}"). > > > > Here we export GOARM but we do it such that it is only exported if we > > are building for 'arm' and only when recipes requiring/inheriting > > go.bbclass are be used to build for the target. > > > > Signed-off-by: Mark Asselstine <[email protected]> > > --- > > > > Richard, > > > > MarkH and I were debating this one some. He was suggesting I add > > 'GOARM ?= ""' so as not to leave things undefined for non-arm target > > builds. I however, like the behavior of this as submitted here as > > non-arm target builds don't get polluted with a useless export in > > their do_compile scripts and such. The question is as presented here > > is the behavior deterministic? > > > > > > meta/classes/go.bbclass | 3 +++ > > > > 1 file changed, 3 insertions(+) > > > > diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass > > index af331f8..72e2c29 100644 > > --- a/meta/classes/go.bbclass > > +++ b/meta/classes/go.bbclass > > @@ -8,6 +8,9 @@ GOROOT = "${STAGING_LIBDIR}/go" > > > > export GOROOT > > export GOROOT_FINAL = "${libdir}/go" > > > > +GOARM_arm_class-target = "${TARGET_GOARM}" > > +export GOARM > > + > > > > DEPENDS_GOLANG_class-target = "virtual/${TUNE_PKGARCH}-go > > > > virtual/${TARGET_PREFIX}go-runtime" > > > > DEPENDS_GOLANG_class-native = "go-native" > > DEPENDS_GOLANG_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk > > > > virtual/${TARGET_PREFIX}go-runtime" > > -- > > 2.7.4 > > > > -- > > _______________________________________________ > > Openembedded-core mailing list > > [email protected] > > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
