aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/state.go
AgeCommit message (Collapse)Author
5 daysinternal/rosa: LLVM-specific arch nameOphestra
This is different from linuxArch for PowerPC. While the alternative usually works fine, compiling compiler-rt builtins produces no output with linuxArch. The musl installation also uses this name. Signed-off-by: Ophestra <cat@gensokyo.uk>
5 daysinternal/rosa/llvm: move native toolsOphestra
This enables cross-compilation of the LLVM toolchain itself. Signed-off-by: Ophestra <cat@gensokyo.uk>
7 daysinternal/rosa: cross-compile special caseOphestra
For cross-specific options in packages. Signed-off-by: Ophestra <cat@gensokyo.uk>
7 daysinternal/rosa/make: pre-configure scriptOphestra
Sometimes helpful for changing the environment. Signed-off-by: Ophestra <cat@gensokyo.uk>
7 daysinternal/rosa: bootstrap cmake in two stepsOphestra
This enables cross-compilation via the standard CMake helper. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa/make: optionally omit --with-sysrootOphestra
Similar to the other autoconf-specific flags, this makes some configure scripts pretending to be autoconf unhappy. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa: cross-only native toolsOphestra
For situations where a package uses a just-built program as part of its own build process. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa: insert musl when cross-compilingOphestra
This is otherwise never added to the cross root. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa/make: optionally omit target flagOphestra
Similar to the previous change, this does not work on some configure scripts pretending to be autoconf. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa/make: optionally omit program name flagsOphestra
This does not work on some configure scripts pretending to be autoconf. Signed-off-by: Ophestra <cat@gensokyo.uk>
9 daysinternal/rosa: bootstrap make in two stepsOphestra
This enables the test suite in the second make stage. This change also fixes a typo in the second stage make build script. Signed-off-by: Ophestra <cat@gensokyo.uk>
9 daysinternal/rosa: optionally bypass cross-compilationOphestra
Cross-compilation is not applicable to everything, and it is quite wasteful rebuilding the same thing for every architecture when it is just using host tools to create arch-independent files. Signed-off-by: Ophestra <cat@gensokyo.uk>
9 daysinternal/rosa: initial cross-compilation supportOphestra
This successfully cross-compiles the toolchain. More work is needed to support cross-compilation on all native helpers and existing packages. Signed-off-by: Ophestra <cat@gensokyo.uk>
11 daysinternal/rosa: remove triple from environmentOphestra
This is cleaner and prepares for cross-compilation support. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-09-27internal/rosa: separate source override methodOphestra
This is useful for using a prepared source tarball without the underlying filesystem available. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-09-05internal/rosa: separate native tools from librariesOphestra
This removes most redundant runtime arguments and is useful for cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-29pkg: move from internalOphestra
Closes #43. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-27internal/rosa: resolve output defersOphestra
This makes behaviour identical to source. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-25internal/rosa: read-only access to built-insOphestra
This removes potential footguns caused by mutable builtins without requiring unnecessary clones. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-11internal/rosa: improve nil-exec error reportingOphestra
This panics with a more descriptive error instead of relying on the SIGSEGV handler. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-10internal/rosa: improve helper bindingsOphestra
This uses more intuitive names for some arguments and inverts their default value. Slices and nil-capable strings replace skip arguments. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-10internal/rosa: optionally block packages from early stagesOphestra
This helps avoid inadvertently increasing bootstrap input count. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-30internal/rosa: remove legacy exec helperOphestra
This change also adds a fourth stage to the bootstrap machinery, offering more correct toolchain validation that works around LLVM dynamic linking flaws. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-25internal/rosa: remove xz utils hackOphestra
This replaces all xz invocations with the native decompressor. This also significantly cleans up the Gentoo stage3 bootstrap path. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-24internal/rosa/package/zstd: use zstd-compressed tarballOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-19internal/rosa: optionally exclude toolchain in azaleaOphestra
This is useful for edge cases where programs rely on gcc bugs to behave correctly. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-18internal/rosa/state: patch output-only packagesOphestra
This is useful for common patched source code. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-14internal/rosa/meson: optionally use muonOphestra
This is a much faster implementation free of python dependency hell, however currently fails to handle symbol visibility correctly, so unable to default to on. This change also cleans up some meson arguments. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-10internal/rosa: apply patches in specified orderOphestra
This seems more intuitive than letting the filesystem decide, and having to use awkward names. 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-28internal/rosa: handle nil sourceOphestra
Source is not always required. This improves flexibility. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-22internal/rosa/meson: skip specific test suitesOphestra
For disabling specific broken or flaky tests. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-20internal/rosa: read overridden version string from sourceOphestra
This is more correct than the hardcoded string and is generally more robust against relative paths. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-09internal/rosa: expose supported architecturesOphestra
This information is useful to external tooling and makes a lot more sense in this package than cmd/mbf. This change also fixes non-native artifact resolution during clean. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-09internal/rosa: remove external toolchain referenceOphestra
This should have used toolchain passed as the argument and was mistakenly never changed when migrating to late evaluation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-08all: apply modernisersOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-04internal/pkg: remove tar built-in decompressorOphestra
This is replaced by decompressArtifact and is no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-02internal/rosa: populate opts of cloned SOphestra
This was missed when migrating opts into S. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-30internal/rosa: annotate blocked updatesOphestra
These situations, while unfortunate, are inevitable at a larger scale. This change enables annotation and optional hiding of blocked updates. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27internal/rosa/package: cairoOphestra
Required by sway, which is required by vm test suite. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-25internal/rosa: resolve runtime for overlay extrasOphestra
This is generally for system image creation, so this behaviour makes more sense. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-25internal/rosa/package: dbOphestra
For iproute2. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-23internal/rosa/package: migrate system imageOphestra
The overlay argument also enables migration of stage0. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-23internal/rosa: remove unused helpersOphestra
These are no longer needed after migration. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-22internal/rosa: IR-curable source overrideOphestra
This creates a tarball in-memory for overriding hakurei-source. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/package: migrate bisonOphestra
This is the final remaining trivial legacy artifact. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/package: migrate tamagoOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa: expose in-place behaviour in generic helperOphestra
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-21internal/rosa/package: migrate nssOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>