On 6/20/24 12:07 PM, Jack wrote: > Again, I don't know if it matters in this case, but my understanding is > that MAKEOPTS only affects jobs using make. I don't know if there are > equivalent controls for ninja or other build systems. Might that be > relevant here? If you run top, limit to running jobs and show the full > command, does that give any hints?
It's an incomplete understanding. ninja has the equivalent: NINJAOPTS. Other build systems can define their own eclass variables too. If a build system that doesn't use Make has no override, the ebuild will extract the -j value *alone* from MAKEOPTS and use it. Potentially load-average as well, if the other build system supports load averages. Other make-compatible flags in MAKEOPTS will get ignored. e.g inherit multiprocessing src_compile() { my_build_system -j$(makeopts_jobs) } So, setting MAKEOPTS is usually sufficient to affect parallel compilation in all ebuilds. -- Eli Schwartz
OpenPGP_0x84818A6819AF4A9B.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature