internal/rosa: key metadata by string

For upcoming azalea integration. The API is quite ugly right now to ease migration.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-05-17 13:07:12 +09:00
parent c2ff9c9fa5
commit 30eb0d6a61
95 changed files with 1514 additions and 1567 deletions

View File

@@ -2,14 +2,16 @@ package rosa
import "hakurei.app/internal/pkg"
func (t Toolchain) newNinja() (pkg.Artifact, string) {
func (t Toolchain) newNinja(s *S) (pkg.Artifact, string) {
const (
version = "1.13.2"
checksum = "ygKWMa0YV2lWKiFro5hnL-vcKbc_-RACZuPu0Io8qDvgQlZ0dxv7hPNSFkt4214v"
)
return t.New("ninja-"+version, 0, []pkg.Artifact{
t.Load(Python),
t.Load(Bash),
python, _ := s.Load(t, Python)
bash, _ := s.Load(t, Bash)
return s.New(t, "ninja-"+version, 0, []pkg.Artifact{
python,
bash,
}, nil, nil, `
cd "$(mktemp -d)"
python3 /usr/src/ninja/configure.py \
@@ -28,7 +30,7 @@ cp ninja /work/system/bin/
"googletest-1.16.0.tar.gz",
"NjLGvSbgPy_B-y-o1hdanlzEzaYeStFcvFGxpYV3KYlhrWWFRcugYhM3ZMzOA9B_",
pkg.TarGzip,
)), pkg.Path(AbsUsrSrc.Append("ninja"), true, t.NewPatchedSource(
)), pkg.Path(AbsUsrSrc.Append("ninja"), true, s.NewPatchedSource(t,
"ninja", version, newFromGitHub(
"ninja-build/ninja",
"v"+version,
@@ -37,7 +39,7 @@ cp ninja /work/system/bin/
))), version
}
func init() {
artifactsM[Ninja] = Metadata{
native.MustRegister(&Artifact{
f: Toolchain.newNinja,
Name: "ninja",
@@ -45,5 +47,5 @@ func init() {
Website: "https://ninja-build.org/",
ID: 2089,
}
})
}