diff --git a/internal/rosa/toybox.go b/internal/rosa/toybox.go index 1bd118d..aa646db 100644 --- a/internal/rosa/toybox.go +++ b/internal/rosa/toybox.go @@ -7,19 +7,24 @@ func (t Toolchain) newToybox(suffix, script string) pkg.Artifact { version = "0.8.13" checksum = "rZ1V1ATDte2WeQZanxLVoiRGdfPXhMlEo5-exX-e-ml8cGn9qOv0ABEUVZpX3wTI" ) - return t.New("toybox-"+version+suffix, TEarly, stage0Concat(t, []pkg.Artifact{}, - t.Load(Make), - t.Load(Bash), - t.Load(Gzip), + return t.NewViaMake("toybox"+suffix, version, pkg.NewHTTPGetTar( + nil, + "https://landley.net/toybox/downloads/toybox-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), &MakeAttr{ + Writable: true, + OmitDefaults: true, + InPlace: true, + SkipConfigure: true, + + ScriptEarly: ` +LDFLAGS="${LDFLAGS} -static" - t.Load(KernelHeaders), - ), nil, stage0Concat(t, []string{}, - "ROSA_CHECK=make USER=cure tests", - ), ` chmod +w /bin/ ln -rs "$(which bash)" /bin/ || true -cd /usr/src/toybox +cd /usr/src/toybox` + suffix + ` chmod +w kconfig tests rm \ tests/du.test \ @@ -32,21 +37,25 @@ make defconfig sed -i \ 's/^CONFIG_TOYBOX_ZHELP=y$/CONFIG_TOYBOX_ZHELP=0/' \ .config -`+script+` -make \ - "-j$(nproc)" \ - LDFLAGS="${LDFLAGS} -static" -${ROSA_CHECK} -PREFIX=/work/system/bin make install_flat +make "-j$(nproc)" +`, + ScriptConfigured: script, + CheckName: "USER=cure tests", + SkipCheck: t.isStage0(), + ScriptInstall: "PREFIX=/work/system/bin make install_flat", + Script: ` mkdir -p /work/usr/bin ln -s ../../system/bin/env /work/usr/bin -`, pkg.Path(AbsUsrSrc.Append("toybox"), true, pkg.NewHTTPGetTar( - nil, - "https://landley.net/toybox/downloads/toybox-"+version+".tar.gz", - mustDecode(checksum), - pkg.TarGzip, - ))) +`, + + Flag: TEarly, + }, + t.Load(Bash), + t.Load(Gzip), + + t.Load(KernelHeaders), + ) } func init() { artifactsF[Toybox] = func(t Toolchain) pkg.Artifact {