diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 9b4872a..4a2c9ac 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -51,6 +51,7 @@ const ( Pygments Python Rsync + Sed Setuptools Toybox Wayland @@ -129,6 +130,7 @@ func ResolveName(name string) (p PArtifact, ok bool) { "pygments": Pygments, "python": Python, "rsync": Rsync, + "sed": Sed, "setuptools": Setuptools, "toybox": Toybox, "wayland": Wayland, diff --git a/internal/rosa/gnu.go b/internal/rosa/gnu.go index e414247..9aa9142 100644 --- a/internal/rosa/gnu.go +++ b/internal/rosa/gnu.go @@ -50,6 +50,30 @@ make DESTDIR=/work install } func init() { artifactsF[M4] = Toolchain.newM4 } +func (t Toolchain) newSed() pkg.Artifact { + const ( + version = "4.9" + checksum = "pe7HWH4PHNYrazOTlUoE1fXmhn2GOPFN_xE62i0llOr3kYGrH1g2_orDz0UtZ9Nt" + ) + return t.New("sed-"+version, false, []pkg.Artifact{ + t.Load(Make), + t.Load(Gawk), + }, nil, nil, ` +cd "$(mktemp -d)" +/usr/src/sed/configure \ + --prefix=/system \ + --build="${ROSA_TRIPLE}" +make "-j$(nproc)" check +make DESTDIR=/work install +`, pkg.Path(AbsUsrSrc.Append("sed"), false, pkg.NewHTTPGetTar( + nil, + "https://ftp.gnu.org/gnu/sed/sed-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ))) +} +func init() { artifactsF[Sed] = Toolchain.newSed } + func (t Toolchain) newAutoconf() pkg.Artifact { const ( version = "2.72"