package rosa import "hakurei.app/internal/pkg" // NewLibffi returns a [pkg.Artifact] containing an installation of libffi. func (t Toolchain) NewLibffi() pkg.Artifact { const ( version = "3.4.5" checksum = "apIJzypF4rDudeRoI_n3K7N-zCeBLTbQlHRn9NSAZqdLAWA80mR0gXPTpHsL7oMl" ) return t.New("libffi-"+version, []pkg.Artifact{ t.NewMake(), t.NewKernelHeaders(), }, nil, nil, ` cd "$(mktemp -d)" /usr/src/libffi/configure \ --prefix=/system \ --build="${ROSA_TRIPLE}" make "-j$(nproc)" check make DESTDIR=/work install `, pkg.Path(AbsUsrSrc.Append("libffi"), false, pkg.NewHTTPGetTar( nil, "https://github.com/libffi/libffi/releases/download/"+ "v"+version+"/libffi-"+version+".tar.gz", mustDecode(checksum), pkg.TarGzip, ))) }