0f795712b0
internal/rosa/llvm: enable LLVM_BUILD_TESTS
...
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-03 20:05:30 +09:00
7e2210ff71
internal/rosa/llvm: provide runtimes early in stage0
...
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-03 19:48:49 +09:00
e024d3184a
internal/rosa/clang: install cpp symlink
...
Required by some buggy autotools scripts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-03 00:41:23 +09:00
2c7ae67a67
internal/rosa/llvm: LIT args helper
...
This is useful for other projects using LIT.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-02 22:17:57 +09:00
041b505c2e
internal/rosa/cmake: implicit CMAKE_BUILD_TYPE
...
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-02 21:53:38 +09:00
e6debce649
internal/rosa/llvm: make source independently available
...
This is unfortunately still required, due to the monorepo nature of LLVM.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-02 21:47:01 +09:00
aa26b86fce
internal/rosa/llvm: skip multiple-compile-threads-basic on arm64
...
This intermittently crashes.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-02 12:39:46 +09:00
a57a8fd5d8
internal/rosa/llvm: skip unwind_leaffunction on arm64
...
This unexpectedly passes.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-02 05:53:00 +09:00
0efd742e8a
internal/rosa/llvm: enable libclc as a runtime
...
Enabling this as a project is deprecated.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-01 05:17:02 +09:00
445d95023b
internal/rosa: global preset flags
...
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-01 03:42:48 +09:00
fc66f0bb47
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 >
2026-05-01 03:36:58 +09:00
520c36db6d
internal/rosa: respect preferred job count
...
This discontinues use of nproc, and also overrides detection behaviour in ninja.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 18:49:36 +09:00
5c2345128e
internal/rosa/llvm: autodetect stage0 target
...
This is fine, now that stages beyond stage0 have explicit target.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 03:10:26 +09:00
78f9676b1f
internal/rosa/llvm: centralise llvm source
...
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-14 03:03:06 +09:00
5b5b676132
internal/rosa/cmake: remove variant
...
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-14 02:57:47 +09:00
78383fb6e8
internal/rosa/llvm: migrate libclc
...
This eliminates newLLVMVariant.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 02:40:13 +09:00
e97f6a393f
internal/rosa/llvm: migrate runtimes and clang
...
This eliminates most newLLVM family of functions.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 02:07:13 +09:00
eeffefd22b
internal/rosa/llvm: migrate compiler-rt helper
...
This also removes unused dependencies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 01:12:56 +09:00
ac825640ab
internal/rosa/llvm: migrate musl
...
This removes the pointless special treatment given to musl.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 00:35:42 +09:00
a7f7ce1795
internal/rosa/llvm: migrate compiler-rt
...
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-14 00:19:33 +09:00
38c639e35c
internal/rosa/llvm: remove project/runtime helper
...
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-14 00:03:23 +09:00
b2cb13e94c
internal/rosa/llvm: centralise patches
...
This enables easier reuse of the patchset.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 23:52:44 +09:00
46f98d12d6
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 >
2026-04-13 23:38:11 +09:00
83b0e32c55
internal/rosa: helpers for common url formats
...
This cleans up call site of NewPackage.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 18:02:57 +09:00
081d6b463c
internal/rosa/llvm: libclc artifact
...
This is built independently of llvm build system to avoid having to build llvm again.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 22:57:04 +09:00
68a2f0c240
internal/rosa/llvm: remove unused field
...
This change also renames confusingly named flags field and corrects its doc comment.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:13:26 +09:00
7319c7adf9
internal/rosa/llvm: use latest version on arm64
...
This also removes arch-specific patches because they were not useful.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 01:07:25 +09:00
e9c890cbb2
internal/rosa/llvm: enable cross compilation
...
This now passes the test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 00:59:14 +09:00
6f924336fc
internal/rosa/llvm: increase stack size
...
Some aarch64 regression tests fail intermittently on the default size.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 00:56:51 +09:00
0243f3ffbd
internal/rosa/stage0: add riscv64 tarball
...
This had not yet passed all test suites because emulator is prohibitively slow.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-06 13:57:43 +09:00
2548a681e9
internal/rosa: key-value type
...
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-26 16:23:15 +09:00
a720efc32d
internal/rosa/llvm: arch-specific versions
...
This enables temporarily avoiding a broken release on specific targets.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-15 15:06:36 +09:00
400540cd41
internal/rosa/llvm: arch-specific patches
...
Broken aarch64 tests in LLVM seem unlikely to be fixed soon.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-15 11:37:24 +09:00
49163758c8
internal/rosa/llvm: 22.1.0 to 22.1.1
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 16:08:49 +09:00
b3f0360a05
internal/rosa: populate runtime dependencies
...
This also removes manually resolved indirect dependencies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-13 13:23:30 +09:00
7fb42ba49d
internal/rosa/llvm: set LLVM_LIT_ARGS
...
This replaces the progress bar, which was worse than useless.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-10 02:05:11 +09:00
8c64812b34
internal/rosa: add zlib runtime dependency
...
For transitioning to dynamically linking zlib.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-08 02:36:09 +09:00
9c9befb4c9
internal/rosa/llvm: separate major version
...
For pathname formatting at compile time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-05 22:59:51 +09:00
fcdf9ecee4
internal/rosa/llvm: 21.1.8 to 22.1.0
...
New patch should not be affected next time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-05 22:42:27 +09:00
f14ab80253
internal/rosa: populate Anitya project ids
...
This enables release monitoring for all applicable projects.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-05 21:32:15 +09:00
9989881dd9
internal/rosa/llvm: populate metadata
...
This enables use of release monitoring for LLVM.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-05 21:27:33 +09:00
d2c6d486b0
internal/rosa: provide package metadata
...
This had to be done out-of-band because there was no way to efficiently represent these within Artifact.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-05 00:20:27 +09:00
1440195c3f
internal/rosa/llvm: pass patches via helper
...
This was missed while migrating LLVM to the new interface.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 01:30:14 +09:00
9deaf853f0
internal/rosa/cmake: migrate to helper interface
...
This change also removes some unused options.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 23:50:22 +09:00
42c93a57a4
internal/rosa: fix patches
...
Turns out alacritty clobbers output. It turns tabs into spaces and also removes whitespace-only lines for some reason.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 02:12:09 +09:00
5e4bf23e0c
internal/rosa/musl: migrate to make helper
...
This is much cleaner and eliminates the early ugliness.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-22 15:53:41 +09:00
74dee11822
internal/rosa/cmake: optional variant string
...
This improves consistency with other helpers and removes the usually unnecessary variant suffix.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 12:44:40 +09:00
bb097536d4
internal/rosa: remove libcxxabi hack
...
This was caused by stack overflow which was resolved many commits ago.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 21:59:09 +09:00
e1b8607101
internal/rosa: rename stage0 toolchain
...
This is stage0 relative to Rosa OS, and stage3 relative to the toolchain it is compiled on (Gentoo in this case). Referring to the toolchain itself as stage3 is counterintuitive and misleading.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 00:55:07 +09:00
697c91e04d
internal/rosa/cmake: expose earlier build script
...
This allows for more flexible build setups.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 13:23:13 +09:00