aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--cmd/mbf/main.go2
-rw-r--r--internal/rosa/all.go1
-rw-r--r--internal/rosa/gnu.go22
3 files changed, 25 insertions, 0 deletions
diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go
index fc618180..8aead566 100644
--- a/cmd/mbf/main.go
+++ b/cmd/mbf/main.go
@@ -166,6 +166,8 @@ func main() {
p = rosa.Diffutils
case "fuse":
p = rosa.Fuse
+ case "gawk":
+ p = rosa.Gawk
case "gettext":
p = rosa.Gettext
case "git":
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 }