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 {

View File

@@ -0,0 +1,56 @@
package meson {
description = "an open source build system";
website = "https://mesonbuild.com";
anitya = 6472;
version* = "1.11.1";
source = remoteGitHub {
suffix = "mesonbuild/meson";
tag = version;
checksum = "uvILRxdopwc6Dy17UbIeClcQr0qHqyTaqyk1M9OqWKN9PwB9N6UVAiyN8kSSz3r2";
};
env = [
"CMAKE_MAKE_PROGRAM=ninja",
];
exec = pip {
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
`;
};
inputs = [
python-setuptools,
pkg-config,
cmake,
ninja,
python-pytest,
];
runtime = [
python,
pkg-config,
cmake,
ninja,
];
}

View File

@@ -104,7 +104,6 @@ var (
MPFR = H("mpfr")
Make = H("make")
Mesa = H("mesa")
Meson = H("meson")
Mksh = H("mksh")
MuslFts = H("musl-fts")
MuslObstack = H("musl-obstack")