aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--internal/rosa/kernel.go45
1 files changed, 25 insertions, 20 deletions
diff --git a/internal/rosa/kernel.go b/internal/rosa/kernel.go
index 5aef20e8..e9c9dee8 100644
--- a/internal/rosa/kernel.go
+++ b/internal/rosa/kernel.go
@@ -4,35 +4,40 @@ import "hakurei.app/internal/pkg"
const kernelVersion = "6.12.73"
+var kernelSource = pkg.NewHTTPGetTar(
+ nil, "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/"+
+ "snapshot/linux-"+kernelVersion+".tar.gz",
+ mustDecode("29oUBJKF1ULIv1-XQLpEUUc3LgjUSmyvOSskG37MYUcBlBjMk7RcbCTLrD7UfSM6"),
+ pkg.TarGzip,
+)
+
func (t Toolchain) newKernelSource() pkg.Artifact {
- const checksum = "29oUBJKF1ULIv1-XQLpEUUc3LgjUSmyvOSskG37MYUcBlBjMk7RcbCTLrD7UfSM6"
return t.New("kernel-"+kernelVersion+"-src", 0, nil, nil, nil, `
mkdir -p /work/usr/src/
cp -r /usr/src/linux /work/usr/src/
chmod -R +w /work/usr/src/linux/
-`, pkg.Path(AbsUsrSrc.Append("linux"), false, pkg.NewHTTPGetTar(
- nil, "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/"+
- "snapshot/linux-"+kernelVersion+".tar.gz",
- mustDecode(checksum),
- pkg.TarGzip,
- )))
+`, pkg.Path(AbsUsrSrc.Append("linux"), false, kernelSource))
}
func init() { artifactsF[KernelSource] = Toolchain.newKernelSource }
func (t Toolchain) newKernelHeaders() pkg.Artifact {
- return t.New("kernel-headers-"+kernelVersion, TEarly, []pkg.Artifact{
- t.Load(Make),
- t.Load(Rsync),
+ return t.NewViaMake("kernel-headers", kernelVersion, kernelSource, &MakeAttr{
+ SkipConfigure: true,
- t.Load(KernelSource),
- }, nil, nil, `
-cd /usr/src/linux
-make \
- "-j$(nproc)" \
- LLVM=1 \
- HOSTLDFLAGS="${LDFLAGS}" \
- INSTALL_HDR_PATH=/work/system \
- headers_install
-`)
+ SkipCheck: true,
+ Make: []string{
+ "-f /usr/src/kernel-headers/Makefile",
+ "O=/tmp/kbuild",
+ "LLVM=1",
+ `HOSTLDFLAGS="${LDFLAGS}"`,
+ "INSTALL_HDR_PATH=/work/system",
+ "headers_install",
+ },
+ ScriptInstall: "\n",
+
+ Flag: TEarly,
+ },
+ t.Load(Rsync),
+ )
}
func init() { artifactsF[KernelHeaders] = Toolchain.newKernelHeaders }