From 25d9edfc64a6e75f9384999416afd4791b6a716d Mon Sep 17 00:00:00 2001 From: Ophestra Date: Thu, 21 May 2026 18:47:05 +0900 Subject: [PATCH] internal/rosa/package: migrate tamago Signed-off-by: Ophestra --- internal/rosa/package/tamago.az | 50 +++++++++++++++++++++++++++++++++ internal/rosa/state.go | 1 + internal/rosa/tamago.go | 50 --------------------------------- 3 files changed, 51 insertions(+), 50 deletions(-) create mode 100644 internal/rosa/package/tamago.az delete mode 100644 internal/rosa/tamago.go diff --git a/internal/rosa/package/tamago.az b/internal/rosa/package/tamago.az new file mode 100644 index 00000000..fa96c880 --- /dev/null +++ b/internal/rosa/package/tamago.az @@ -0,0 +1,50 @@ +package tamago { + description = "a Go toolchain extended with support for bare metal execution"; + website = "https://github.com/usbarmory/tamago-go"; + anitya = 388872; + + version* = "1.26.3"; + source = remoteGitHub { + suffix = "usbarmory/tamago-go"; + tag = "tamago-go"+version; + checksum = "-nH3MjAzDDLTeJ2hRKYJcJwo5-Ikci4zOHfB8j1vKn7zrF9TS6zYaoLi8qohGwAE"; + }; + + env = [ + "CC=cc", + "GOCACHE=/tmp/gocache", + "CGO_ENABLED=0", + ]; + + enterSource = true; + + exec = generic { + inPlace = true; + build = ` +mkdir /work/system/ +cp -r . /work/system/tamago +cd /work/system/tamago/src +chmod -R +w .. + +sed -i \ + 's,/lib/ld-musl-` + linuxArch + `.so.1,/system/bin/linker,' \ + cmd/link/internal/` + arch + `/obj.go +sed -i \ + 's/cpu.X86.HasAVX512VBMI/& \&\& cpu.X86.HasPOPCNT/' \ + internal/runtime/gc/scan/scan_amd64.go + +rm \ + os/root_unix_test.go \ + cmd/cgo/internal/testsanitizers/tsan_test.go \ + cmd/cgo/internal/testsanitizers/cshared_test.go + +set +u +. ./make.bash "$@" --no-banner +set -u +`; + check = "bash run.bash --no-rebuild\n"; + install = "../bin/go tool dist banner # print build info"; + }; + + inputs = [ bash, go ]; +} diff --git a/internal/rosa/state.go b/internal/rosa/state.go index 3b4295f6..3fae800c 100644 --- a/internal/rosa/state.go +++ b/internal/rosa/state.go @@ -453,6 +453,7 @@ func (s *S) getFrame() azalea.Frame { k("unversioned"): Unversioned, k("triple"): s.triple(), + k("arch"): s.arch, k("linuxArch"): s.linuxArch(), k("earlyLDFLAGS"): s.earlyLDFLAGS(false), diff --git a/internal/rosa/tamago.go b/internal/rosa/tamago.go deleted file mode 100644 index 74c8b680..00000000 --- a/internal/rosa/tamago.go +++ /dev/null @@ -1,50 +0,0 @@ -package rosa - -import "hakurei.app/internal/pkg" - -func (t Toolchain) newTamaGo() (pkg.Artifact, string) { - const ( - version = "1.26.3" - checksum = "-nH3MjAzDDLTeJ2hRKYJcJwo5-Ikci4zOHfB8j1vKn7zrF9TS6zYaoLi8qohGwAE" - ) - return t.New("tamago-go"+version, 0, t.Append(nil, - _bash, - _go, - ), nil, []string{ - "CC=cc", - "GOCACHE=/tmp/gocache", - "CGO_ENABLED=0", - }, ` -mkdir /work/system # "${TMPDIR}" -cp -r /usr/src/tamago /work/system -cd /work/system/tamago/src -chmod -R +w .. - -sed -i \ - 's,/lib/ld-musl-`+t.linuxArch()+`.so.1,/system/bin/linker,' \ - cmd/link/internal/`+t.arch+`/obj.go -sed -i \ - 's/cpu.X86.HasAVX512VBMI/& \&\& cpu.X86.HasPOPCNT/' \ - internal/runtime/gc/scan/scan_amd64.go - -rm \ - os/root_unix_test.go \ - cmd/cgo/internal/testsanitizers/tsan_test.go \ - cmd/cgo/internal/testsanitizers/cshared_test.go - -./all.bash -`, pkg.Path(AbsUsrSrc.Append("tamago"), false, newFromGitHub( - "usbarmory/tamago-go", - "tamago-go"+version, - checksum, - ))), version -} -func init() { - native.mustRegister(Toolchain.newTamaGo, &Metadata{ - Name: "tamago", - Description: "a Go toolchain extended with support for bare metal execution", - Website: "https://github.com/usbarmory/tamago-go", - - ID: 388872, - }) -}