Bootstrap [1]
As mentioned in the Go 1.20 release notes, Go 1.22 now requires the final point 
release of Go 1.20 or later for bootstrap.
We expect that Go 1.24 will require the final point release of Go 1.22 or later 
for bootstrap.

The default recipe for bootstrap is the go-binary-native as can be seen in:
meta/conf/distro/include/tcmode-default.inc:68:PREFERRED_PROVIDER_go-native ?= 
"go-binary-native"

Currently if we change it to use the old go-native and compile the 
go1.4-bootstrap-20170531
it fails:

| Building Go cmd/dist using 
/build/workdir/tmp-glibc/work/x86_64-linux/go-native/1.22.3-r0/go1.4/go. 
(go1.4-bootstrap-20170531 linux/amd64)
| can't load package: package ./cmd/dist: found packages build.go (main) and 
notgo120.go (building_Go_requires_Go_1_20_6_or_later) in 
/build/workdir/tmp-glibc/work/x86_64-linux/go-native/1.22.3-r0/go/src/cmd/dist

This has been broken for some time but as we used go-binary-native by default 
it went unnoticed.

[1] https://go.dev/doc/go1.22#bootstrap

Signed-off-by: Jose Quaresma <jose.quare...@foundries.io>
---
 meta/recipes-devtools/go/go-native_1.22.4.bb | 58 --------------------
 1 file changed, 58 deletions(-)
 delete mode 100644 meta/recipes-devtools/go/go-native_1.22.4.bb

diff --git a/meta/recipes-devtools/go/go-native_1.22.4.bb 
b/meta/recipes-devtools/go/go-native_1.22.4.bb
deleted file mode 100644
index ddf25b2c9b..0000000000
--- a/meta/recipes-devtools/go/go-native_1.22.4.bb
+++ /dev/null
@@ -1,58 +0,0 @@
-# This recipe builds a native Go (written in Go) by first building an old Go 
1.4
-# (written in C). However this old Go does not support all hosts platforms.
-
-require go-${PV}.inc
-
-inherit native
-
-SRC_URI += 
"https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4";
-SRC_URI[bootstrap.sha256sum] = 
"f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52"
-
-export GOOS = "${BUILD_GOOS}"
-export GOARCH = "${BUILD_GOARCH}"
-CC = "${@d.getVar('BUILD_CC').strip()}"
-
-GOMAKEARGS ?= "--no-banner"
-
-do_configure() {
-       cd ${WORKDIR}/go1.4/go/src
-       CGO_ENABLED=0 GOROOT=${WORKDIR}/go1.4/go ./make.bash
-}
-
-do_compile() {
-       export GOROOT_FINAL="${libdir_native}/go"
-       export GOROOT_BOOTSTRAP="${WORKDIR}/go1.4/go"
-
-       cd src
-       ./make.bash ${GOMAKEARGS}
-       cd ${B}
-}
-do_compile[cleandirs] += "${GOTMPDIR} ${B}/bin"
-
-make_wrapper() {
-       rm -f ${D}${bindir}/$2$3
-       cat <<END >${D}${bindir}/$2$3
-#!/bin/bash
-here=\`dirname \$0\`
-export GOROOT="${GOROOT:-\`readlink -f \$here/../lib/go\`}"
-\$here/../lib/go/bin/$1 "\$@"
-END
-       chmod +x ${D}${bindir}/$2
-}
-
-do_install() {
-       install -d ${D}${libdir}/go
-       cp --preserve=mode,timestamps -R ${B}/pkg ${D}${libdir}/go/
-       install -d ${D}${libdir}/go/src
-       (cd ${S}/src; for d in *; do \
-               [ -d $d ] && cp -a ${S}/src/$d ${D}${libdir}/go/src/; \
-       done)
-       find ${D}${libdir}/go/src -depth -type d -name testdata -exec rm -rf {} 
\;
-       install -d ${D}${bindir} ${D}${libdir}/go/bin
-       for f in ${B}/bin/*
-       do
-               base=`basename $f`
-               install -m755 $f ${D}${libdir}/go/bin
-               make_wrapper $base $base
-       done
-}
-- 
2.45.2

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#200920): 
https://lists.openembedded.org/g/openembedded-core/message/200920
Mute This Topic: https://lists.openembedded.org/mt/106762998/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to