diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-02-23 18:07:38 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-02-23 18:07:38 +0900 |
| commit | a5fea4686e39f2770dae4ba34031fdd5eb0c6704 (patch) | |
| tree | 3236aba2baba57f9f63ee41635c28780a57d484b /internal | |
| parent | ae8c365c0f474b5c678701c95795677c20dc22b7 (diff) | |
internal/rosa: make toolchain optional
The final Rosa OS image does not need the toolchain.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/rosa/rosa.go | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/internal/rosa/rosa.go b/internal/rosa/rosa.go index 53442ce0..b2511f82 100644 --- a/internal/rosa/rosa.go +++ b/internal/rosa/rosa.go @@ -225,6 +225,8 @@ const ( TExclusive = 1 << iota // TEarly hints for an early variant of [Toybox] to be used when available. TEarly + // TNoToolchain excludes the LLVM toolchain. + TNoToolchain ) var ( @@ -309,15 +311,18 @@ mkdir -vp /work/system/bin if flag&TEarly != 0 { toybox = toyboxEarly } - support = slices.Concat(extra, []pkg.Artifact{ - cureEtc{newIANAEtc()}, - musl, - compilerRT, - runtimes, - clang, + std := []pkg.Artifact{cureEtc{newIANAEtc()}, musl} + toolchain := []pkg.Artifact{compilerRT, runtimes, clang} + utils := []pkg.Artifact{ boot.Load(Mksh), boot.Load(toybox), - }) + } + + if flag&TNoToolchain != 0 { + toolchain = nil + } + + support = slices.Concat(extra, std, toolchain, utils) env = fixupEnviron(env, []string{ EnvTriplet + "=" + triplet(), lcMessages, |
