aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-01-28 01:22:42 +0900
committerOphestra <cat@gensokyo.uk>2026-01-28 01:22:42 +0900
commit66118ba9419b52f0c993b7ce715807fde7e9e07e (patch)
tree8ef5fe70cda58d4a8d4c55a806d43d8830d86170 /internal
parent823ba08dbcb0bb5c5c5e012198a511f57bf53240 (diff)
internal/rosa: gawk artifact
Replaces broken awk in busybox. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
-rw-r--r--internal/rosa/all.go1
-rw-r--r--internal/rosa/gnu.go22
2 files changed, 23 insertions, 0 deletions
diff --git a/internal/rosa/all.go b/internal/rosa/all.go
index 7d9fde5b..18ea6cad 100644
--- a/internal/rosa/all.go
+++ b/internal/rosa/all.go
@@ -19,6 +19,7 @@ const (
Coreutils
Diffutils
Fuse
+ Gawk
Gettext
Git
Go
diff --git a/internal/rosa/gnu.go b/internal/rosa/gnu.go
index e3fe7ae3..c5a5d2cd 100644
--- a/internal/rosa/gnu.go
+++ b/internal/rosa/gnu.go
@@ -248,3 +248,25 @@ make DESTDIR=/work install
)))
}
func init() { artifactsF[Gperf] = Toolchain.newGperf }
+
+func (t Toolchain) newGawk() pkg.Artifact {
+ const (
+ version = "5.3.2"
+ checksum = "uIs0d14h_d2DgMGYwrPtegGNyt_bxzG3D6Fe-MmExx_pVoVkQaHzrtmiXVr6NHKk"
+ )
+ return t.New("gawk-"+version, false, []pkg.Artifact{
+ t.Load(Make),
+ }, nil, nil, `
+cd "$(mktemp -d)"
+/usr/src/gawk/configure \
+ --prefix=/system \
+ --build="${ROSA_TRIPLE}"
+make "-j$(nproc)"
+make DESTDIR=/work install
+`, pkg.Path(AbsUsrSrc.Append("gawk"), true, pkg.NewHTTPGetTar(
+ nil, "https://ftp.gnu.org/gnu/gawk/gawk-"+version+".tar.gz",
+ mustDecode(checksum),
+ pkg.TarGzip,
+ )))
+}
+func init() { artifactsF[Gawk] = Toolchain.newGawk }