aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal
AgeCommit message (Collapse)Author
23 hoursinternal/rosa/package/qemu: enable ppc64le targetOphestra
This removes the broken test preventing this target from being used. This change also fixes the meson helper and uses linuxArch for the qemu suffix. Signed-off-by: Ophestra <cat@gensokyo.uk>
24 hoursinternal/rosa: add ppc64le constantsOphestra
This enables the ppc64le target. Signed-off-by: Ophestra <cat@gensokyo.uk>
25 hoursinternal/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>
26 hoursinternal/rosa/package/stage0: enable cross-buildOphestra
This does not actually need any special treatment when cross-building, it just needs to mount the correct artifacts, and the packaging remains identical to native builds. Signed-off-by: Ophestra <cat@gensokyo.uk>
26 hoursinternal/rosa/package/toybox: cross-compile via wrapperOphestra
This works around the rather janky Makefile not properly supporting additional CC flags for cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
27 hoursinternal/rosa/llvm: move native toolsOphestra
This enables cross-compilation of the LLVM toolchain itself. Signed-off-by: Ophestra <cat@gensokyo.uk>
27 hoursinternal/rosa/package/stage0: remove sourceOphestra
The source artifact here is superfluous and works around an old azalea limitation where non-passthrough packages must have a source artifact. Signed-off-by: Ophestra <cat@gensokyo.uk>
27 hoursinternal/rosa: use native toolchain for patchingOphestra
This must bypass the cross-compiling infrastructure, a patched source tree is not arch-specific. Signed-off-by: Ophestra <cat@gensokyo.uk>
27 hoursinternal/rosa/package/musl: move patches to shared sourceOphestra
This avoids having two source artifacts and also possible future divergence if a patch modifies some header. Signed-off-by: Ophestra <cat@gensokyo.uk>
27 hoursinternal/rosa/package/mksh: enable cross-compilationOphestra
This only required setting C compiler invocation via the environment. Signed-off-by: Ophestra <cat@gensokyo.uk>
30 hoursinternal/rosa/package/gcc: use mirrors.kernel.orgOphestra
This was missed when migrating GNU source tarball URLs due to this specific tarball not being available via GNU infrastructure. Signed-off-by: Ophestra <cat@gensokyo.uk>
30 hoursinternal/rosa: disable invalid cross-compilationOphestra
There is no reason to cross-compile the bootstrap go toolchain, or the toolchain itself in general. Signed-off-by: Ophestra <cat@gensokyo.uk>
46 hoursinternal/rosa: update packagesOphestra
The elfutils fix has entered a release, the backport patch has been removed. The libconfig patch has been updated to remove newly added broken glibc-dependent tests. Kernel headers remain unchanged. Kernel configuration was updated via the new cross-compilation infrastructure. The toolchain was updated, causing a large amount of rebuilds. QEMU riscv64 cross compilation still crashes clang. PipeWire is updated, however WirePlumber remains vulnerable. The PipeWire maintainers are not treating this vulnerability as a vulnerability, and an upstream release is not coming. This change backports the fix for now. The included patch is slopped by its author, but there is nothing I can do to change that fact. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa/package/hakurei: enable additional cross-compilationOphestra
For cross-compiling Rosa OS. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa/package/qemu: enable cross-compilationOphestra
Support for hexagon had to be disabled due to link failure of a host-side tool. The riscv64 cross target currently fails due to a compiler crash. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa: cross-compile special caseOphestra
For cross-specific options in packages. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa/make: pre-configure scriptOphestra
Sometimes helpful for changing the environment. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa: disable CTestTestStopTimeOphestra
This test has become incredibly flaky. Remove it here to prevent it from repeatedly breaking rebuilds. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa: bootstrap cmake in two stepsOphestra
This enables cross-compilation via the standard CMake helper. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa/kernel: enable cross-compilationOphestra
This also reinstates riscv64 support via cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 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>
4 dayscmd/dist: cross-compile via clangOphestra
The cross-compiled sysroot can now be provided by internal/rosa. Unfortunately pkg-config still had to be configured externally to avoid making any assumptions about the prefix. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/package/x: use binutils for xcb cross-compilationOphestra
This works around libtool relink jank. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/package/gcc: enable all binutils targetsOphestra
GNU libtool is incredibly buggy and does not play nice with lld. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa: set pkg-config libdirOphestra
We do not want to put up with the pkg-config wrappers. This does what the wrappers would have done. CMake does this automatically, but not meson and autotools. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/package/ncurses: add cross bootstrapOphestra
This provides the native tic program. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/package/pcre2: switch to cmakeOphestra
GNU libtool breaks cross-compilation by insisting on using the native libc when relinking. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/make: set --with-sysrootOphestra
This does not have any effect so far, but it feels best to set this to avoid running into more autotools jank. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 daysinternal/rosa/meson: support cross-compilationOphestra
Meson does not want to play nice and accept arguments or environment variables for cross-compiling configuration, so a so-called mfile had to be generated and placed here. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 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>
4 daysinternal/rosa: insert musl when cross-compilingOphestra
This is otherwise never added to the cross root. Signed-off-by: Ophestra <cat@gensokyo.uk>
4 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>
4 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>
5 daysinternal/dbus: add cleanupOphestra
This prevents leaking the test process in the test suite. Signed-off-by: Ophestra <cat@gensokyo.uk>
5 daysinternal/rosa/make: set target and program nameOphestra
This helps some configure scripts behave correctly. Signed-off-by: Ophestra <cat@gensokyo.uk>
5 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>
5 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>
5 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>
6 daysinternal/rosa/package/git: disable flaky testOphestra
This was discovered during mass rebuilds caused by the previous change. Signed-off-by: Ophestra <cat@gensokyo.uk>
6 daysinternal/rosa: remove triple from environmentOphestra
This is cleaner and prepares for cross-compilation support. Signed-off-by: Ophestra <cat@gensokyo.uk>
6 daysinternal/rosa/package/muon: do line bufferingOphestra
This gets rid of the stuttery logging behaviour and should also slightly reduce memory usage. Signed-off-by: Ophestra <cat@gensokyo.uk>
7 daysinternal/rosa: update hakureiOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysext: add additional constantsOphestra
This removes the syscall cutoff thresholds, instead declaring all syscall number constants in package ext. This also removes two constants from package container which were inadvertently exported for 386 and amd64. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/rosa: update packagesOphestra
Kernel headers changed due to a documentation change in random.h, causing rebuilds. Kernel source is now fetched from cdn.kernel.org. A newly broken libarchive test has been disabled. A flaky git test has been discovered while rebuilding for curl and has been disabled. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/system: file-based big lockOphestra
Simultaneous commits or reverts can race if they have overlapping targets. This big lock synchronises entry into the Commit and Revert critical sections across all cmd/hakurei processes. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/testsuite: lock tracer threadOphestra
This avoids getting the goroutine preempted and scheduled onto a thread other than the tracer. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 dayscmd/hakurei/testsuite: improve sandbox reportingOphestra
This avoids swallowing error messages from failed container startups. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/outcome: world-executable runtime/tmpdirOphestra
This does not reduce security, and saves the trouble of the additional ACL setup/teardowns. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 dayscmd/hakurei/testsuite: synchronise after terminationOphestra
This ensures that cmd/hakurei has finished cleanup and terminated before validating the outcome of that cleanup. Signed-off-by: Ophestra <cat@gensokyo.uk>
8 daysinternal/testsuite: drop ESRCH on detachOphestra
Getting ESRCH here is harmless, and has the same effect of detaching successfully, so drop it to avoid spurious test failures. Signed-off-by: Ophestra <cat@gensokyo.uk>