aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/llvm.go
AgeCommit message (Collapse)Author
2026-07-13internal/rosa: remove gawkOphestra
This change fully eliminates gawk. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-11internal/rosa/package/python: early bootstrap variantOphestra
This avoids pulling in python's insane dependency tree into the bootstrap path. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-09internal/rosa: respect preferred loadavg targetOphestra
This generally improves build performance and system responsiveness. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-01internal/rosa: create /bin symlinks via helperOphestra
This centralises the workaround for surprisingly common buggy scripts with nonstandard hardcoded paths. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-17internal/rosa/llvm: 22.1.7 to 22.1.8Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-04internal/rosa/llvm: 22.1.6 to 22.1.7Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/package: migrate llvm patchesOphestra
LLVM itself is unlikely to ever be migrated due to complexity of the bootstrap, so migrate patches instead. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/package: migrate nssOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/llvm: 22.1.5 to 22.1.6Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20internal/rosa: remove global handlesOphestra
These no longer serve any purpose. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19internal/rosa: create metadata alongside artifactOphestra
This enables deferring evaluation of azalea-based packages and fixes the longstanding quirk of version being disjoint from other metadata. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: pass stage alongside stateOphestra
This cleans up many function signatures. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: key metadata by stringOphestra
For upcoming azalea integration. The API is quite ugly right now to ease migration. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-12internal/rosa/llvm: 22.1.4 to 22.1.5Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-12internal/rosa/llvm: set exclusive bitOphestra
This was missed when improving bootstrap. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-07internal/rosa: configurable architectureOphestra
This enables curing via binfmt. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-05internal/rosa/llvm: update configuration for early runtimesOphestra
These were never updated when the bootstrap was moved to stage0-only. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-05internal/rosa/llvm: exclude benchmarksOphestra
These are being built despite LLVM_BUILD_BENCHMARKS defaulting to off. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-03internal/rosa/llvm: enable LLVM_BUILD_TESTSOphestra
This arranges for tests to be built early, and is more efficient towards the end of the build. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-03internal/rosa/llvm: provide runtimes early in stage0Ophestra
The LLVM build system fails to handle a dynamically linked toolchain correctly, and leaks the system installation during builds. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-03internal/rosa/clang: install cpp symlinkOphestra
Required by some buggy autotools scripts. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/llvm: LIT args helperOphestra
This is useful for other projects using LIT. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/cmake: implicit CMAKE_BUILD_TYPEOphestra
Lack of this behaviour is a holdover from when the helper was first split from the (now removed) LLVM helper. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/llvm: make source independently availableOphestra
This is unfortunately still required, due to the monorepo nature of LLVM. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/llvm: skip multiple-compile-threads-basic on arm64Ophestra
This intermittently crashes. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/llvm: skip unwind_leaffunction on arm64Ophestra
This unexpectedly passes. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa/llvm: enable libclc as a runtimeOphestra
Enabling this as a project is deprecated. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa: global preset flagsOphestra
These changes preset behaviour globally. Useful for ad hoc workarounds for development or bootstrapping on resource-constrained systems. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa/llvm: use llvm build systemOphestra
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>
2026-04-15internal/rosa: respect preferred job countOphestra
This discontinues use of nproc, and also overrides detection behaviour in ninja. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: autodetect stage0 targetOphestra
This is fine, now that stages beyond stage0 have explicit target. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: centralise llvm sourceOphestra
This avoids having to sidestep the NewPackage name formatting machinery to take the cache fast path. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/cmake: remove variantOphestra
This has no effect outside formatting of name and is a remnant of the old llvm helpers. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: migrate libclcOphestra
This eliminates newLLVMVariant. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: migrate runtimes and clangOphestra
This eliminates most newLLVM family of functions. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: migrate compiler-rt helperOphestra
This also removes unused dependencies. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: migrate muslOphestra
This removes the pointless special treatment given to musl. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: migrate compiler-rtOphestra
The newLLVM family of functions predate the package system. This change migrates compiler-rt without changing any resulting artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-14internal/rosa/llvm: remove project/runtime helperOphestra
More remnants from early days, these are not reusable at all but that was not known at the time. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-13internal/rosa/llvm: centralise patchesOphestra
This enables easier reuse of the patchset. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-13internal/rosa/llvm: remove conditional flags in helperOphestra
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>
2026-04-13internal/rosa: helpers for common url formatsOphestra
This cleans up call site of NewPackage. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-12internal/rosa/llvm: libclc artifactOphestra
This is built independently of llvm build system to avoid having to build llvm again. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-10internal/rosa/llvm: remove unused fieldOphestra
This change also renames confusingly named flags field and corrects its doc comment. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-10internal/rosa/llvm: use latest version on arm64Ophestra
This also removes arch-specific patches because they were not useful. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-10internal/rosa/llvm: enable cross compilationOphestra
This now passes the test suite. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-10internal/rosa/llvm: increase stack sizeOphestra
Some aarch64 regression tests fail intermittently on the default size. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-06internal/rosa/stage0: add riscv64 tarballOphestra
This had not yet passed all test suites because emulator is prohibitively slow. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26internal/rosa: key-value typeOphestra
This type is used very frequently. The new type is much easier to type and can receive helper methods eventually if needed. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-15internal/rosa/llvm: arch-specific versionsOphestra
This enables temporarily avoiding a broken release on specific targets. Signed-off-by: Ophestra <cat@gensokyo.uk>