summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2022-01-01 12:29:54 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-01-05 17:18:11 +0000
commita587be1d18fc55fe57d1aa5aa7c9e26af887109e (patch)
tree19cf769e0f7939fcb0ad5dfec98abced64276698
parent0f018da9416648ea50cbccc3d4424f0b8a9352b6 (diff)
downloadopenembedded-core-contrib-a587be1d18fc55fe57d1aa5aa7c9e26af887109e.tar.gz
go: log build id computations
go writes build-specific ids into binaries it produces and has a custom system for calculating them from file hashes, environment variables and other inputs (not that dissimilar to sstate cache, actually). This can go wrong :) in various ways (for purposes of reproducibility in particular), so this enables useful logs to see what happens and why. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/go.bbclass2
-rw-r--r--meta/recipes-devtools/go/go-common.inc2
2 files changed, 4 insertions, 0 deletions
diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass
index aa54b4a08c..5c1fdd7d5f 100644
--- a/meta/classes/go.bbclass
+++ b/meta/classes/go.bbclass
@@ -2,6 +2,8 @@ inherit goarch
GO_PARALLEL_BUILD ?= "${@oe.utils.parallel_make_argument(d, '-p %d')}"
+export GODEBUG = "gocachehash=1"
+
GOROOT:class-native = "${STAGING_LIBDIR_NATIVE}/go"
GOROOT:class-nativesdk = "${STAGING_DIR_TARGET}${libdir}/go"
GOROOT = "${STAGING_LIBDIR}/go"
diff --git a/meta/recipes-devtools/go/go-common.inc b/meta/recipes-devtools/go/go-common.inc
index dfccebdb83..5bbf35b787 100644
--- a/meta/recipes-devtools/go/go-common.inc
+++ b/meta/recipes-devtools/go/go-common.inc
@@ -37,6 +37,8 @@ export GO386 ?= "${TARGET_GO386}"
export GOMIPS ?= "${TARGET_GOMIPS}"
export GOROOT_FINAL ?= "${libdir}/go"
+export GODEBUG = "gocachehash=1"
+
do_compile:prepend() {
BUILD_CC=${BUILD_CC}
}