aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/cmake.go
AgeCommit message (Collapse)Author
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-20internal/rosa/cmake: 4.2.3 to 4.3.0Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-08internal/rosa/cmake: bake in CMAKE_INSTALL_LIBDIROphestra
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-08internal/rosa/cmake: pass correct prefixOphestra
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-08internal/rosa/cmake: pass parallel argument for makeOphestra
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-07internal/rosa/cmake: optionally use makefileOphestra
This breaks the dependency loop in zlib. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-05internal/rosa: populate Anitya project idsOphestra
This enables release monitoring for all applicable projects. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-05internal/rosa: provide package metadataOphestra
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-02internal/rosa/cmake: enable checkOphestra
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-02internal/rosa/cmake: 4.2.1 to 4.2.3Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-02internal/rosa/make: migrate to helper interfaceOphestra
This also updates all affected artifacts to use new behaviour. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-01internal/rosa/cmake: migrate to helper interfaceOphestra
This change also removes some unused options. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-01internal/rosa/make: split build and checkOphestra
Doing these together breaks far too many buggy makefiles. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-16internal/rosa/cmake: optional variant stringOphestra
This improves consistency with other helpers and removes the usually unnecessary variant suffix. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-12internal/rosa/make: configurable configure and installOphestra
This makes the helper useful for non-autotools build systems. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-09internal/rosa: rename stage0 toolchainOphestra
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-07internal/rosa/cmake: expose earlier build scriptOphestra
This allows for more flexible build setups. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-31internal/rosa: improve cmake interfaceOphestra
This should make the call site look better for new artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-30internal/rosa: chmod via patch helperOphestra
This works around the zfs overlay mount overhead and significantly reduces I/O in general. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-29internal/rosa: flags for toolchain-dependent artifactOphestra
This is much cleaner to add extra flags to. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-27internal/pkg: exclusive artifactsOphestra
This alleviates scheduler overhead when curing many artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-25internal/rosa: lazy initialise all artifactsOphestra
This improves performance, though not as drastically as lazy initialising llvm. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-24internal/rosa: stage3 special case helperOphestra
This makes it cleaner to specify non-stage3 and stage3-exclusive dependencies. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-21internal/rosa/cmake: chmod entire source treeOphestra
This works around builds that traverse out of the appended pathname. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-19internal/rosa/cmake: use hardcoded build directoryOphestra
This eliminates some nondeterminism. Still getting 3-stage non-determinism in runtimes and clang, though. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-19internal/rosa: parallel cmake bootstrapOphestra
This takes a very long time otherwise. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-19internal/rosa: cmake abstractionOphestra
This is a helper for generating cure script for a cmake-based project. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-19internal/rosa: cmake artifactOphestra
This is required for compiling the toolchain and many other programs. Signed-off-by: Ophestra <cat@gensokyo.uk>