1
0
forked from rosa/hakurei

internal/rosa/llvm: use llvm build system

This removes the multistep bootstrap hack. Stage0 exceptions are also eliminated for a later change to bring the stage0 distribution down to just a bare toolchain, toybox and shell. This change also enables dynamic linking and ThinLTO.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-05-01 03:09:49 +09:00
parent 2cd6b35bee
commit fc66f0bb47
10 changed files with 172 additions and 301 deletions

View File

@@ -16,9 +16,7 @@ import (
type PArtifact int
const (
CompilerRT PArtifact = iota
LLVMRuntimes
Clang
LLVM PArtifact = iota
// EarlyInit is the Rosa OS init program.
EarlyInit
@@ -77,7 +75,6 @@ const (
LibXau
Libbsd
Libcap
Libclc
Libdrm
Libev
Libexpat
@@ -174,12 +171,13 @@ const (
// PresetUnexportedStart is the first unexported preset.
PresetUnexportedStart
llvmSource = iota - 1
buildcatrust
buildcatrust = iota - 1
utilMacros
// Musl is a standalone libc that does not depend on the toolchain.
Musl
// muslHeaders is a system installation of [Musl] headers.
muslHeaders
// gcc is a hacked-to-pieces GCC toolchain meant for use in intermediate
// stages only. This preset and its direct output must never be exposed.