Finally rebasing LLVM for LF OS again ^^'
And what are all of you up to?
littlefox@LF-DebPC:~/tmp/lf-os_amd64/src/llvm (lf-os)$ g.
On branch lf-os
Your branch and 'origin/lf-os' have diverged,
and have 45063 and 8 different commits each, respectively.
(use "git pull" if you want to integrate the remote branch with yours)
nothing to commit, working tree clean
🙃
we are approaching the linking stage o_o
oh that was unexpectedly fast
I did not expect to crash clang o_o
and of course it's a release build /o\
anyway ... at least I can finally prove I need 128G of memory in my desktop.
@littlefox@gotosocial-dev.svc.0x0a.network Reminds me of the time not too long ago when Debian devs considered dropping Firefox on x86 because some processes in the build (IIRC it was a linker) needed more than 4GB of RAM and with a 32bit arch that doesn't really work. Someone found an optimization that reduced the RAM consumption enough to make it work again, but yeah…
@airtower linking was surprisingly painless here ^^
But I default to clang and lld, so maybe that's why. ld.bfd (the GNU binutils linker) is very bad with memory
@littlefox Reminds me I need to poke a certain someone to please apply my patch that makes their patched kernel tree build with LLVM again, and I don’t want to keep rebasing it. Cross-compiling is so much nicer with LLVM.
@airtower @littlefox debian’s package tooling/infrastructure certainly needs some work… cross compiling on amd64 should’ve been trivial
not that i think requiring gigabytes of memory at link time due to LTO is reasonable either, but that’s what usually happens with large amounts of C++ (one exception being Qt due to its modularity)
@mia@movsw.0x0.st @littlefox@gotosocial-dev.svc.0x0a.network I don't have strong feelings on it, but I see the point of the Debian system of building on the target arch (except for bootstrapping) to make sure one arch doesn't end up depending on another.
If I'm building a kernel for my phone though… I haven't actually tried building on the phone, but I suspect it'd take at least much longer than cross-compiling, and who knows, it might hit RAM limits (3GB isn't that much, especially with active GUI session). It'd definitely fill up internal storage to an annoying degree.
@airtower @littlefox once i was too lazy to set up the sailfish SDK so i mounted my phone’s filesystem over USB and compiled stuff on my desktop using the qemu binfmt wrapper
@mia @littlefox Nice! pmbootstrap
does non-cross-compile package builds that way, minus the USB mount.
need more CPUs /o\
debug build acquired!
$ du -xhd 0 /opt/lf_os/toolchain*
190M /opt/lf_os/toolchain
2.7G /opt/lf_os/toolchain-18.2.1
(the Release 18.2.1 was already a few megabytes more than the old one, but yea .. Debug build LLVM is fun - and the build directory is 14G)
I don't see how that crash could be LF OS-related /o\
third time building LLVM today ..hmpf
fourth time compiling
at least it's getting warm in my room..