blob: 8dc8bdf8e2891956ae2a8f0c7abacc57acbd6c0f [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001# This recipe is for bootstrapping our go-cross from a prebuilt binary of Go from golang.org.
2
3SUMMARY = "Go programming language compiler (upstream binary for bootstrap)"
4HOMEPAGE = " http://golang.org/"
5LICENSE = "BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
7
8PROVIDES = "go-native"
9
10# Checksums available at https://go.dev/dl/
11SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
12SRC_URI[go_linux_amd64.sha256sum] = "c9c08f783325c4cf840a94333159cc937f05f75d36a8b307951d5bd959cf2ab8"
13SRC_URI[go_linux_arm64.sha256sum] = "9df122d6baf6f2275270306b92af3b09d7973fb1259257e284dba33c0db14f1b"
14SRC_URI[go_linux_ppc64le.sha256sum] = "fbc6c7d1d169bbdc82223d861d2fadc6add01c126533d3efbba3fdca9b362035"
15
16UPSTREAM_CHECK_URI = "https://golang.org/dl/"
17UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
18
19S = "${WORKDIR}/go"
20
21inherit goarch native
22
23do_compile() {
24 :
25}
26
27make_wrapper() {
28 rm -f ${D}${bindir}/$1
29 cat <<END >${D}${bindir}/$1
30#!/bin/bash
31here=\`dirname \$0\`
32export GOROOT="${GOROOT:-\`readlink -f \$here/../lib/go\`}"
33\$here/../lib/go/bin/$1 "\$@"
34END
35 chmod +x ${D}${bindir}/$1
36}
37
38do_install() {
39 find ${S} -depth -type d -name testdata -exec rm -rf {} +
40
41 install -d ${D}${bindir} ${D}${libdir}/go
42 cp --preserve=mode,timestamps -R ${S}/ ${D}${libdir}/
43
44 for f in ${S}/bin/*
45 do
46 make_wrapper `basename $f`
47 done
48}