internal/rosa: dtc artifact
All checks were successful
Test / Create distribution (push) Successful in 1m0s
Test / Sandbox (push) Successful in 2m57s
Test / Hakurei (push) Successful in 4m11s
Test / ShareFS (push) Successful in 4m21s
Test / Hpkg (push) Successful in 4m55s
Test / Sandbox (race detector) (push) Successful in 5m16s
Test / Hakurei (race detector) (push) Successful in 6m15s
Test / Flake checks (push) Successful in 1m36s

Required by qemu.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-02-17 00:54:34 +09:00
parent a3515a6ef5
commit 16966043c7
2 changed files with 36 additions and 0 deletions

View File

@@ -21,6 +21,7 @@ const (
CMake CMake
Coreutils Coreutils
Curl Curl
DTC
Diffutils Diffutils
Findutils Findutils
Flex Flex
@@ -130,6 +131,7 @@ func ResolveName(name string) (p PArtifact, ok bool) {
"cmake": CMake, "cmake": CMake,
"coreutils": Coreutils, "coreutils": Coreutils,
"curl": Curl, "curl": Curl,
"dtc": DTC,
"diffutils": Diffutils, "diffutils": Diffutils,
"findutils": Findutils, "findutils": Findutils,
"flex": Flex, "flex": Flex,

34
internal/rosa/dtc.go Normal file
View File

@@ -0,0 +1,34 @@
package rosa
import "hakurei.app/internal/pkg"
func (t Toolchain) newDTC() pkg.Artifact {
const (
version = "1.7.2"
checksum = "vUoiRynPyYRexTpS6USweT5p4SVHvvVJs8uqFkkVD-YnFjwf6v3elQ0-Etrh00Dt"
)
return t.NewViaMeson("dtc", version, t.NewPatchedSource(
"dtc", version, pkg.NewHTTPGetTar(
nil, "https://git.kernel.org/pub/scm/utils/dtc/dtc.git/snapshot/"+
"dtc-v"+version+".tar.gz",
mustDecode(checksum),
pkg.TarGzip,
), false,
), &MesonAttr{
// works around buggy test:
// fdtdump-runtest.sh /usr/src/dtc/tests/fdtdump.dts
Writable: true,
Configure: [][2]string{
{"Dyaml", "disabled"},
{"Dstatic-build", "true"},
},
},
t.Load(Flex),
t.Load(Bison),
t.Load(M4),
t.Load(Coreutils),
t.Load(Diffutils),
)
}
func init() { artifactsF[DTC] = Toolchain.newDTC }