aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/llvm.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-04-13 23:38:11 +0900
committerOphestra <cat@gensokyo.uk>2026-04-13 23:38:11 +0900
commit46f98d12d6350b3efc403872cd1b1015aec0607c (patch)
tree261925faf6425e8af675b9be5f97a439926a0c6f /internal/rosa/llvm.go
parent503c7f953c412d220365aa50ffef31f331d37f6c (diff)
internal/rosa/llvm: remove conditional flags in helper
The llvm helper is a remnant from very early days, and ended up not being very useful, but was never removed. This change begins its removal, without changing the resulting artifacts for now. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/llvm.go')
-rw-r--r--internal/rosa/llvm.go69
1 files changed, 21 insertions, 48 deletions
diff --git a/internal/rosa/llvm.go b/internal/rosa/llvm.go
index 9d7b3da5..1db7e6d7 100644
--- a/internal/rosa/llvm.go
+++ b/internal/rosa/llvm.go
@@ -114,54 +114,6 @@ func (t Toolchain) newLLVMVariant(variant string, attr *llvmAttr) pkg.Artifact {
cmakeAppend := []string{"llvm"}
if attr.append != nil {
cmakeAppend = attr.append
- } else {
- cache = append(cache, []KV{
- {"LLVM_ENABLE_LIBCXX", "ON"},
- {"LLVM_USE_LINKER", "lld"},
-
- {"LLVM_INSTALL_BINUTILS_SYMLINKS", "ON"},
- {"LLVM_INSTALL_CCTOOLS_SYMLINKS", "ON"},
-
- {"LLVM_LIT_ARGS", "'--verbose'"},
- }...)
- }
-
- if attr.pr&llvmProjectClang != 0 {
- cache = append(cache, []KV{
- {"CLANG_DEFAULT_LINKER", "lld"},
- {"CLANG_DEFAULT_CXX_STDLIB", "libc++"},
- {"CLANG_DEFAULT_RTLIB", "compiler-rt"},
- {"CLANG_DEFAULT_UNWINDLIB", "libunwind"},
- }...)
- }
- if attr.pr&llvmProjectLld != 0 {
- script += `
-ln -s ld.lld /work/system/bin/ld
-`
- }
- if attr.pr&llvmRuntimeCompilerRT != 0 {
- if attr.append == nil {
- cache = append(cache, []KV{
- {"COMPILER_RT_USE_LLVM_UNWINDER", "ON"},
- }...)
- }
- }
- if attr.pr&llvmRuntimeLibunwind != 0 {
- cache = append(cache, []KV{
- {"LIBUNWIND_USE_COMPILER_RT", "ON"},
- }...)
- }
- if attr.pr&llvmRuntimeLibcxx != 0 {
- cache = append(cache, []KV{
- {"LIBCXX_HAS_MUSL_LIBC", "ON"},
- {"LIBCXX_USE_COMPILER_RT", "ON"},
- }...)
- }
- if attr.pr&llvmRuntimeLibcxxABI != 0 {
- cache = append(cache, []KV{
- {"LIBCXXABI_USE_COMPILER_RT", "ON"},
- {"LIBCXXABI_USE_LLVM_UNWINDER", "ON"},
- }...)
}
return t.NewPackage("llvm", llvmVersion, newFromGitHub(
@@ -294,6 +246,12 @@ ln -s \
),
pr: llvmRuntimeLibunwind | llvmRuntimeLibcxx | llvmRuntimeLibcxxABI,
cmake: slices.Concat([]KV{
+ {"LIBUNWIND_USE_COMPILER_RT", "ON"},
+ {"LIBCXX_HAS_MUSL_LIBC", "ON"},
+ {"LIBCXX_USE_COMPILER_RT", "ON"},
+ {"LIBCXXABI_USE_COMPILER_RT", "ON"},
+ {"LIBCXXABI_USE_LLVM_UNWINDER", "ON"},
+
// libc++ not yet available
{"CMAKE_CXX_COMPILER_WORKS", "ON"},
@@ -315,6 +273,19 @@ ln -s \
"LDFLAGS="+earlyLDFLAGS(false),
),
cmake: slices.Concat([]KV{
+ {"LLVM_ENABLE_LIBCXX", "ON"},
+ {"LLVM_USE_LINKER", "lld"},
+
+ {"LLVM_INSTALL_BINUTILS_SYMLINKS", "ON"},
+ {"LLVM_INSTALL_CCTOOLS_SYMLINKS", "ON"},
+
+ {"LLVM_LIT_ARGS", "'--verbose'"},
+
+ {"CLANG_DEFAULT_LINKER", "lld"},
+ {"CLANG_DEFAULT_CXX_STDLIB", "libc++"},
+ {"CLANG_DEFAULT_RTLIB", "compiler-rt"},
+ {"CLANG_DEFAULT_UNWINDLIB", "libunwind"},
+
{"LLVM_TARGETS_TO_BUILD", target},
{"CMAKE_CROSSCOMPILING", "OFF"},
{"CXX_SUPPORTS_CUSTOM_LINKER", "ON"},
@@ -325,6 +296,8 @@ ln -s \
runtimes,
},
script: `
+ln -s ld.lld /work/system/bin/ld
+
ln -s clang /work/system/bin/cc
ln -s clang++ /work/system/bin/c++