cat
a5d9f76f50
internal/rosa/cmake: use DESTDIR instead of --prefix
...
Turns out --prefix is deeply broken, and DESTDIR works even when using ninja.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-27 15:45:58 +09:00
cat
e5a4094298
internal/rosa: remove unused helpers
...
These are no longer needed after migration.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-23 14:00:18 +09:00
cat
9d7a27d8ac
internal/rosa/package: migrate ninja
...
The ninja package predates all abstractions currently available. This migration causes rebuilds due to the old package being nonreproducible.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-21 16:48:10 +09:00
cat
6546ddc64b
internal/rosa: expose in-place behaviour in generic helper
...
This change also combines the createDir and wantsDir methods, and replaces the non-inplace target of the generic helper with a deterministic path.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-21 16:11:38 +09:00
cat
cbf18b302d
internal/rosa/package: migrate nss
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-21 15:36:10 +09:00
cat
6e8bfa6c4c
internal/rosa/package: migrate cmake
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-19 18:42:54 +09:00
cat
8807cbc730
internal/rosa: create metadata alongside artifact
...
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-19 00:44:24 +09:00
cat
34822925e1
internal/rosa: migrate GNU software
...
These are quite trivial, so migrate them in one pass.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-18 21:23:19 +09:00
cat
38bc2c7508
internal/rosa: pass stage alongside state
...
This cleans up many function signatures.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-17 17:50:30 +09:00
cat
30eb0d6a61
internal/rosa: key metadata by string
...
For upcoming azalea integration. The API is quite ugly right now to ease migration.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-17 15:56:53 +09:00
cat
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
cat
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
cat
2cd6b35bee
internal/rosa/cmake: run tests
...
This uses the standard CMake test target.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-05-01 03:04:59 +09:00
cat
6ffaac96e3
internal/rosa/cmake: 4.3.1 to 4.3.2
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-23 12:28:34 +09:00
cat
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
cat
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
cat
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
cat
d717c41bbe
internal/rosa/cmake: 4.3.0 to 4.3.1
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-03 10:45:07 +09:00
cat
52b1a5a725
internal/rosa: use type P in helper interface
...
This is easier to type and serialises correctly.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-31 23:45:01 +09:00
cat
a6600be34a
all: use filepath
...
This makes package check portable, and removes nonportable behaviour from package pkg, pipewire, and system. All other packages remain nonportable due to their nature. No latency increase was observed due to this change on amd64 and arm64 linux.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-30 18:24:53 +09:00
cat
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
cat
7035b4b598
internal/rosa/cmake: 4.2.3 to 4.3.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-20 16:39:57 +09:00
cat
d1423d980d
internal/rosa/cmake: bake in CMAKE_INSTALL_LIBDIR
...
There is never a good reason to set this to anything else, and the default value of lib64 breaks everything. This did not manifest on LLVM (which the CMake helper was initially written for) because it did not use this value.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-08 01:20:41 +09:00
cat
104da0f66a
internal/rosa/cmake: pass correct prefix
...
This can change build output similar to autotools --prefix and DESTDIR, but was not clearly indicated to do so.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-08 01:04:02 +09:00
cat
d996d9fbb7
internal/rosa/cmake: pass parallel argument for make
...
This uses the default value for each build system, which is parallel for ninja but not for make.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-08 00:55:58 +09:00
cat
af7a6180a1
internal/rosa/cmake: optionally use makefile
...
This breaks the dependency loop in zlib.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-07 22:47:30 +09:00
cat
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
cat
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
cat
c83905f311
internal/rosa/cmake: enable check
...
CMake was packaged very early, before the current infrastructure existed to support this. This change patches out broken tests and enables the test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:12:20 +09:00
cat
b7cc14f296
internal/rosa/cmake: 4.2.1 to 4.2.3
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:09:21 +09:00
cat
cc60e0d15d
internal/rosa/make: migrate to helper interface
...
This also updates all affected artifacts to use new behaviour.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 01:24:50 +09:00
cat
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
cat
51d3df2419
internal/rosa/make: split build and check
...
Doing these together breaks far too many buggy makefiles.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 14:41:34 +09:00
cat
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
cat
1791b604b5
internal/rosa/make: configurable configure and install
...
This makes the helper useful for non-autotools build systems.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-12 01:19:40 +09:00
cat
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
cat
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
cat
47490823be
internal/rosa: improve cmake interface
...
This should make the call site look better for new artifacts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 02:42:01 +09:00
cat
bc3dd6fbb0
internal/rosa: chmod via patch helper
...
This works around the zfs overlay mount overhead and significantly reduces I/O in general.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 00:29:44 +09:00
cat
9d9b7294a4
internal/rosa: flags for toolchain-dependent artifact
...
This is much cleaner to add extra flags to.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 20:44:43 +09:00
cat
eb67e5e0a8
internal/pkg: exclusive artifacts
...
This alleviates scheduler overhead when curing many artifacts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-27 01:23:50 +09:00
cat
20790af71e
internal/rosa: lazy initialise all artifacts
...
This improves performance, though not as drastically as lazy initialising llvm.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-25 01:43:18 +09:00
cat
d9ebaf20f8
internal/rosa: stage3 special case helper
...
This makes it cleaner to specify non-stage3 and stage3-exclusive dependencies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-24 12:23:35 +09:00
cat
641942a4e3
internal/rosa/cmake: chmod entire source tree
...
This works around builds that traverse out of the appended pathname.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-21 07:26:36 +09:00
cat
3ec15bcdf1
internal/rosa/cmake: use hardcoded build directory
...
This eliminates some nondeterminism. Still getting 3-stage non-determinism in runtimes and clang, though.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-19 22:51:34 +09:00
cat
6a01a55d7e
internal/rosa: parallel cmake bootstrap
...
This takes a very long time otherwise.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-19 03:21:29 +09:00
cat
3a4f20b759
internal/rosa: cmake abstraction
...
This is a helper for generating cure script for a cmake-based project.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-19 02:20:37 +09:00
cat
83fb80d710
internal/rosa: cmake artifact
...
This is required for compiling the toolchain and many other programs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-19 01:36:38 +09:00