internal/rosa: self-host stage0 tarball
All checks were successful
Test / Create distribution (push) Successful in 2m26s
Test / Sandbox (push) Successful in 5m22s
Test / Hakurei (push) Successful in 6m37s
Test / ShareFS (push) Successful in 6m39s
Test / Hpkg (push) Successful in 7m10s
Test / Sandbox (race detector) (push) Successful in 7m15s
Test / Hakurei (race detector) (push) Successful in 8m15s
Test / Flake checks (push) Successful in 1m51s
All checks were successful
Test / Create distribution (push) Successful in 2m26s
Test / Sandbox (push) Successful in 5m22s
Test / Hakurei (push) Successful in 6m37s
Test / ShareFS (push) Successful in 6m39s
Test / Hpkg (push) Successful in 7m10s
Test / Sandbox (race detector) (push) Successful in 7m15s
Test / Hakurei (race detector) (push) Successful in 8m15s
Test / Flake checks (push) Successful in 1m51s
This replaces gentoo stage3 tarballs. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
@@ -83,6 +83,10 @@ const (
|
||||
// stages only. This preset and its direct output must never be exposed.
|
||||
gcc
|
||||
|
||||
// Stage0 is a tarball containing all compile-time dependencies of artifacts
|
||||
// part of the [Std] toolchain.
|
||||
Stage0
|
||||
|
||||
// _presetEnd is the total number of presets and does not denote a preset.
|
||||
_presetEnd
|
||||
)
|
||||
|
||||
39
internal/rosa/stage0.go
Normal file
39
internal/rosa/stage0.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package rosa
|
||||
|
||||
import "hakurei.app/internal/pkg"
|
||||
|
||||
func (t Toolchain) newStage0() pkg.Artifact {
|
||||
musl, compilerRT, runtimes, clang := t.NewLLVM()
|
||||
return t.New("rosa-stage0", 0, []pkg.Artifact{
|
||||
musl,
|
||||
compilerRT,
|
||||
runtimes,
|
||||
clang,
|
||||
|
||||
t.Load(Bzip2),
|
||||
|
||||
t.Load(Patch),
|
||||
t.Load(Make),
|
||||
t.Load(CMake),
|
||||
t.Load(Ninja),
|
||||
|
||||
t.Load(Libffi),
|
||||
t.Load(Python),
|
||||
t.Load(Perl),
|
||||
t.Load(Diffutils),
|
||||
t.Load(Bash),
|
||||
t.Load(Gawk),
|
||||
t.Load(Coreutils),
|
||||
t.Load(Findutils),
|
||||
|
||||
t.Load(KernelHeaders),
|
||||
}, nil, nil, `
|
||||
umask 377
|
||||
tar \
|
||||
-vjc \
|
||||
-C / \
|
||||
-f /work/stage0-`+triplet()+`.tar.bz2 \
|
||||
system bin usr/bin/env
|
||||
`)
|
||||
}
|
||||
func init() { artifactsF[Stage0] = Toolchain.newStage0 }
|
||||
@@ -16,7 +16,9 @@ func (t Toolchain) newToybox(suffix, script string) pkg.Artifact {
|
||||
), nil, stage0Concat(t, []string{},
|
||||
"ROSA_CHECK=make USER=cure tests",
|
||||
), `
|
||||
ln -s ../system/bin/bash /bin/ || true
|
||||
chmod +w /bin/
|
||||
ln -sf ../system/bin/bash /bin/
|
||||
|
||||
cd /usr/src/toybox
|
||||
chmod +w kconfig tests
|
||||
rm \
|
||||
|
||||
Reference in New Issue
Block a user