aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-01-26 21:56:09 +0900
committerOphestra <cat@gensokyo.uk>2026-01-26 21:56:36 +0900
commit76c657177dfabd69a867d9677f6305fcc142b4b6 (patch)
treeecb425260b37c3809657289fb478bf619d6a655f
parent4356f978aa32d903b70f8408375a609091eb0ddb (diff)
internal/rosa: patch ignore whitespace
This makes it work better with patches emitted by git. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--internal/rosa/kernel.go2
-rw-r--r--internal/rosa/llvm.go2
-rw-r--r--internal/rosa/rosa.go11
3 files changed, 10 insertions, 5 deletions
diff --git a/internal/rosa/kernel.go b/internal/rosa/kernel.go
index a61b85eb..96e3bffe 100644
--- a/internal/rosa/kernel.go
+++ b/internal/rosa/kernel.go
@@ -23,7 +23,7 @@ export LLVM=1
export HOSTLDFLAGS="${LDFLAGS}"
cd /usr/src/linux
`+script, pkg.Path(AbsUsrSrc.Append("linux"), true, t.NewPatchedSource(
- "kernel", pkg.NewHTTPGetTar(
+ "kernel", version, pkg.NewHTTPGetTar(
nil,
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/"+
"snapshot/linux-"+version+".tar.gz",
diff --git a/internal/rosa/llvm.go b/internal/rosa/llvm.go
index 6e413bd5..59d8046f 100644
--- a/internal/rosa/llvm.go
+++ b/internal/rosa/llvm.go
@@ -171,7 +171,7 @@ cp -r /system/include /usr/include && rm -rf /system/include
}
return t.NewViaCMake("llvm", version, variant, t.NewPatchedSource(
- "llvmorg", pkg.NewHTTPGetTar(
+ "llvmorg", version, pkg.NewHTTPGetTar(
nil, "https://github.com/llvm/llvm-project/archive/refs/tags/"+
"llvmorg-"+version+".tar.gz",
mustDecode(checksum),
diff --git a/internal/rosa/rosa.go b/internal/rosa/rosa.go
index 312e16b1..df1ed9f8 100644
--- a/internal/rosa/rosa.go
+++ b/internal/rosa/rosa.go
@@ -275,7 +275,7 @@ ln -vs ../usr/bin /work/bin
// NewPatchedSource returns [pkg.Artifact] of source with patches applied. If
// passthrough is true, source is returned as is for zero length patches.
func (t Toolchain) NewPatchedSource(
- name string,
+ name, version string,
source pkg.Artifact,
passthrough bool,
patches ...[2]string,
@@ -293,13 +293,18 @@ func (t Toolchain) NewPatchedSource(
}
paths[0] = pkg.Path(AbsUsrSrc.Append(name), false, source)
- aname := name + "-src"
+ aname := name + "-" + version + "-src"
script := `
cp -r /usr/src/` + name + `/. /work/.
chmod -R +w /work && cd /work
`
if len(paths) > 1 {
- script += `cat /usr/src/` + name + `-patches/* | patch -p 1`
+ script += `
+cat /usr/src/` + name + `-patches/* | \
+ patch \
+ -p 1 \
+ --ignore-whitespace
+`
aname += "-patched"
}
return t.New(aname, stage3Concat(t, []pkg.Artifact{},