internal/rosa/make: migrate to helper interface
All checks were successful
Test / Create distribution (push) Successful in 1m8s
Test / Sandbox (push) Successful in 2m55s
Test / Hakurei (push) Successful in 5m3s
Test / ShareFS (push) Successful in 5m13s
Test / Hpkg (push) Successful in 5m56s
Test / Hakurei (race detector) (push) Successful in 6m18s
Test / Sandbox (race detector) (push) Successful in 2m37s
Test / Flake checks (push) Successful in 1m43s

This also updates all affected artifacts to use new behaviour.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-03-01 23:54:40 +09:00
parent 9deaf853f0
commit cc60e0d15d
41 changed files with 698 additions and 740 deletions

View File

@@ -21,7 +21,9 @@ chmod -R +w /work/usr/src/linux/
func init() { artifactsF[KernelSource] = Toolchain.newKernelSource }
func (t Toolchain) newKernelHeaders() pkg.Artifact {
return t.NewViaMake("kernel-headers", kernelVersion, kernelSource, &MakeAttr{
return t.NewPackage("kernel-headers", kernelVersion, kernelSource, &PackageAttr{
Flag: TEarly,
}, &MakeHelper{
SkipConfigure: true,
SkipCheck: true,
@@ -33,23 +35,15 @@ func (t Toolchain) newKernelHeaders() pkg.Artifact {
"INSTALL_HDR_PATH=/work/system",
"headers_install",
},
ScriptInstall: "\n",
Flag: TEarly,
Install: "# headers installed during make",
},
t.Load(Rsync),
Rsync,
)
}
func init() { artifactsF[KernelHeaders] = Toolchain.newKernelHeaders }
func (t Toolchain) newKernel() pkg.Artifact {
return t.NewViaMake("kernel", kernelVersion, kernelSource, &MakeAttr{
OmitDefaults: true,
SkipConfigure: true,
// Build, install, and boot kernel before running kselftest on it.
SkipCheck: true,
return t.NewPackage("kernel", kernelVersion, kernelSource, &PackageAttr{
Env: []string{
"PATH=/system/sbin",
},
@@ -60,29 +54,6 @@ install -Dm0400 \
install -Dm0500 \
/usr/src/.installkernel \
/sbin/installkernel
`,
Make: []string{
"-f /usr/src/kernel/Makefile",
"O=/tmp/kbuild",
"LLVM=1",
"KBUILD_BUILD_VERSION='1-Rosa'",
"KBUILD_BUILD_TIMESTAMP='2106-02-07 06:28:15 UTC'",
"KBUILD_BUILD_USER=kbuild",
"KBUILD_BUILD_HOST=localhost",
"all",
},
ScriptInstall: `
make \
"-j$(nproc)" \
-f /usr/src/kernel/Makefile \
O=/tmp/kbuild \
LLVM=1 \
INSTALL_PATH=/work \
install \
INSTALL_MOD_PATH=/work \
modules_install
rm -v /work/lib/modules/` + kernelVersion + `/build
`,
Paths: []pkg.ExecPath{
@@ -97,29 +68,61 @@ cp -av "$2" "$4"
cp -av "$3" "$4"
`))),
},
},
t.Load(Flex),
t.Load(Bison),
t.Load(M4),
t.Load(Tar),
t.Load(Perl),
t.Load(BC),
t.Load(Sed),
t.Load(Gawk),
t.Load(Coreutils),
t.Load(Diffutils),
t.Load(Python),
t.Load(XZ),
t.Load(Zlib),
t.Load(Gzip),
t.Load(Bzip2),
t.Load(Zstd),
t.Load(Kmod),
t.Load(Elfutils),
t.Load(OpenSSL),
t.Load(UtilLinux),
t.Load(KernelHeaders),
Flag: TExclusive,
}, &MakeHelper{
OmitDefaults: true,
SkipConfigure: true,
// Build, install, and boot kernel before running kselftest on it.
SkipCheck: true,
Make: []string{
"-f /usr/src/kernel/Makefile",
"O=/tmp/kbuild",
"LLVM=1",
"KBUILD_BUILD_VERSION='1-Rosa'",
"KBUILD_BUILD_TIMESTAMP='2106-02-07 06:28:15 UTC'",
"KBUILD_BUILD_USER=kbuild",
"KBUILD_BUILD_HOST=localhost",
"all",
},
Install: `
make \
"-j$(nproc)" \
-f /usr/src/kernel/Makefile \
O=/tmp/kbuild \
LLVM=1 \
INSTALL_PATH=/work \
install \
INSTALL_MOD_PATH=/work \
modules_install
rm -v /work/lib/modules/` + kernelVersion + `/build
`,
},
Flex,
Bison,
M4,
Tar,
Perl,
BC,
Sed,
Gawk,
Coreutils,
Diffutils,
Python,
XZ,
Zlib,
Gzip,
Bzip2,
Zstd,
Kmod,
Elfutils,
OpenSSL,
UtilLinux,
KernelHeaders,
)
}
func init() { artifactsF[Kernel] = Toolchain.newKernel }