Recursive `make` and `-j`
ibobev
22 points
8 comments
September 30, 2026
Related Discussions
Found 5 related stories in 81.9ms across 8,145 title embeddings via pgvector HNSW
- Making erikschoster · 317 pts · July 22, 2026 · 48% similar
- Fuck it, make it anyway JayOtter · 559 pts · September 12, 2026 · 40% similar
- Indirect Calling of Nested Functions on GCC Without Executable Stack uecker · 72 pts · August 29, 2026 · 40% similar
- You are a 1000x maker, and you can't think of how to make your stack 10x better? thunderbong · 11 pts · September 28, 2026 · 39% similar
- Zig's Incremental Compilation Internals garyhtou · 218 pts · July 28, 2026 · 39% similar
Discussion Highlights (3 comments)
fragmede
Don't do it! https://accu.org/journals/overload/14/71/miller_2004/ Recursive Make Considered Harmful By Peter Miller
stabbles
The `-j` is meant for the top-level invocation only, and the $(MAKE) pattern is standard. The `+` or $(MAKE) "tricks" to ensure the jobserver is inherited in submake and any other subprocess are no longer needed in gmake 4.4 (from 2022) because it defaults to a FIFO instead of pipes. The author should just upgrade gmake :).
kazinator
How it works is that the top-level invocation runs the job server, and the children feed requests to it. The top-level controls the parallelism.