From a3515a6ef5f26d2a3a863c727457ad5078b13576 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Tue, 17 Feb 2026 00:32:04 +0900 Subject: [PATCH] internal/rosa: bison artifact Required by dtc, which is required by qemu. Signed-off-by: Ophestra --- internal/rosa/all.go | 2 ++ internal/rosa/gnu.go | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/internal/rosa/all.go b/internal/rosa/all.go index edbc058..4d8e3d7 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -16,6 +16,7 @@ const ( Automake Bash Binutils + Bison Bzip2 CMake Coreutils @@ -124,6 +125,7 @@ func ResolveName(name string) (p PArtifact, ok bool) { "automake": Automake, "bash": Bash, "binutils": Binutils, + "bison": Bison, "bzip2": Bzip2, "cmake": CMake, "coreutils": Coreutils, diff --git a/internal/rosa/gnu.go b/internal/rosa/gnu.go index 0e9614e..a5a79a4 100644 --- a/internal/rosa/gnu.go +++ b/internal/rosa/gnu.go @@ -23,6 +23,23 @@ chmod +w tests/test-c32ispunct.sh && echo '#!/bin/sh' > tests/test-c32ispunct.sh } func init() { artifactsF[M4] = Toolchain.newM4 } +func (t Toolchain) newBison() pkg.Artifact { + const ( + version = "3.8.2" + checksum = "BhRM6K7URj1LNOkIDCFDctSErLS-Xo5d9ba9seg10o6ACrgC1uNhED7CQPgIY29Y" + ) + return t.NewViaMake("bison", version, pkg.NewHTTPGetTar( + nil, "https://ftpmirror.gnu.org/gnu/bison/bison-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), nil, + t.Load(M4), + t.Load(Diffutils), + t.Load(Sed), + ) +} +func init() { artifactsF[Bison] = Toolchain.newBison } + func (t Toolchain) newSed() pkg.Artifact { const ( version = "4.9"