internal/rosa/package: migrate meson
All checks were successful
Test / Create distribution (push) Successful in 1m6s
Test / Sandbox (push) Successful in 2m48s
Test / ShareFS (push) Successful in 3m45s
Test / Hakurei (push) Successful in 3m55s
Test / Sandbox (race detector) (push) Successful in 5m28s
Test / Hakurei (race detector) (push) Successful in 6m31s
Test / Flake checks (push) Successful in 1m22s

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-05-19 18:24:07 +09:00
parent ff44060763
commit a770d62b9b
3 changed files with 58 additions and 63 deletions

View File

@@ -3,70 +3,10 @@ package rosa
import (
"slices"
"strings"
"hakurei.app/internal/pkg"
)
func (t Toolchain) newMeson() (pkg.Artifact, string) {
const (
version = "1.11.1"
checksum = "uvILRxdopwc6Dy17UbIeClcQr0qHqyTaqyk1M9OqWKN9PwB9N6UVAiyN8kSSz3r2"
)
return t.NewPackage("meson", version, newFromGitHub(
"mesonbuild/meson",
version,
checksum,
), &PackageAttr{
Env: []string{
"CMAKE_MAKE_PROGRAM=ninja",
},
}, &PipHelper{
EnterSource: true,
Check: `
cd 'test cases'
rm -rf \
'common/32 has header' \
'common/66 vcstag' \
'common/153 wrap file should not failed' \
'common/184 openmp' \
'common/189 check header' \
'linuxlike/6 subdir include order' \
'linuxlike/9 compiler checks with dependencies' \
'linuxlike/13 cmake dependency' \
'frameworks/15 llvm' \
'frameworks/29 blocks'
cd ..
python3 ./run_project_tests.py \
-v \
` + jobsFlagE + ` \
--failfast \
--backend=ninja
`,
},
PythonSetuptools,
PkgConfig,
CMake,
Ninja,
PythonPyTest,
), version
}
func init() {
native.mustRegister(Toolchain.newMeson, &Metadata{
Name: "meson",
Description: "an open source build system",
Website: "https://mesonbuild.com/",
Dependencies: P{
Python,
PkgConfig,
CMake,
Ninja,
},
ID: 6472,
})
}
// Meson is the meson package used by [MesonHelper].
var Meson = H("meson")
// MesonHelper is the [Meson] build system helper.
type MesonHelper struct {