and some applications like net-misc/wget v1.21.3-r1 have dependencies with gcc-v12
libatomic.so.1 => /usr/lib/gcc/mipsel-unknown-linux-gnu/12/libatomic.so.1
Yep, they use the
__atomic_ builtins introduced in GCC-4.8 instead of the Intel
__sync_ ones. If it does not depend on other libraries, you should be able to use the latest version even with older compiler versions. (Even on 32-bit MIPS, libatomic should support 64-bit atomic ops, but it uses internal locking primitives for these I think.)
hardly tested
hardly tested != tested hard
hardly tested == tested only little
- I can re-use 2007, 2008, 2009 stages
- and it's what I practically have ready on hands
Okay, that makes ample sense to me too.
I can put gcc v7.4.0 and v8.4.0 on both Catalyst and my-builder
I would only bother with GCC 8.4.0
or 11.3.0 at this point. Also check the
patches OpenWRT applies to GCC.
Again, it is rather simple to implement utilities to check memory usage, say as an interposing library (that calls e.g.
getrusage() for maxrss and checks
/proc/self/maps for mappings after each
mmap() call) you use via LD_PRELOAD; the issue with GCC is its
peak memory use, so normal process statistics utilities like top are unlikely to capture that accurately.
All I'd need is verify no surprises in the
/proc/self/maps format on MIPS, i.e. a copy of
cat /proc/self/maps output on MIPS, really.