diff --git a/internal/rosa/llvm.go b/internal/rosa/llvm.go index f1eb7981..18db52a2 100644 --- a/internal/rosa/llvm.go +++ b/internal/rosa/llvm.go @@ -70,11 +70,20 @@ func (t Toolchain) newLLVMVariant(variant string, attr *llvmAttr) pkg.Artifact { func (t Toolchain) newCompilerRT() (pkg.Artifact, string) { muslHeaders, _ := t.newMusl(true) - return t.newLLVMVariant("compiler-rt", &llvmAttr{ - env: stage0ExclConcat(t, []string{}, + return t.NewPackage("llvm", llvmVersion, llvmSource, &PackageAttr{ + Patches: llvmPatches, + NonStage0: []pkg.Artifact{ + muslHeaders, + }, + Env: stage0ExclConcat(t, []string{}, "LDFLAGS="+earlyLDFLAGS(false), ), - cmake: []KV{ + Flag: TExclusive, + }, &CMakeHelper{ + Variant: "compiler-rt", + Append: []string{"compiler-rt"}, + + Cache: []KV{ {"CMAKE_BUILD_TYPE", "Release"}, {"LLVM_HOST_TRIPLE", `"${ROSA_TRIPLE}"`}, @@ -95,11 +104,7 @@ func (t Toolchain) newCompilerRT() (pkg.Artifact, string) { {"COMPILER_RT_BUILD_PROFILE", "OFF"}, {"COMPILER_RT_BUILD_XRAY", "OFF"}, }, - append: []string{"compiler-rt"}, - nonStage0: []pkg.Artifact{ - muslHeaders, - }, - script: ` + Script: ` mkdir -p "/work/system/lib/clang/` + llvmVersionMajor + `/lib/" ln -s \ "../../../${ROSA_TRIPLE}" \ @@ -112,7 +117,11 @@ ln -s \ "clang_rt.crtend-` + linuxArch() + `.o" \ "/work/system/lib/${ROSA_TRIPLE}/crtendS.o" `, - }), llvmVersion + }, + Python, + + KernelHeaders, + ), llvmVersion } func init() { artifactsM[LLVMCompilerRT] = Metadata{