17-10-2025 04:03 PM
mach is the top level of the firefox build system. It calls configure, make and whatever else.
It should be possible to give mach a dry-run option (just like make accepts -n) whereby it tells what it would do in a normal run. It should then be ok to run the output of mach --dry-run, or parts of it, as a script.
Whereas, not only is there a lack of a dry-run option, makefiles such as client.mk are written to resist being run directly from the command line. All this makes it difficult to zero in on a problem occurring four or so levels down in the build.
19-11-2025 03:34 AM
This is a valid point — a mach --dry-run mode would be extremely helpful for anyone working with Firefox’s layered build system. Since mach orchestrates multiple steps (configure, make, Python tooling, etc.), having a way to preview the full execution chain would make debugging much easier, especially when the issue originates several levels deep.
Right now, the lack of a dry-run option combined with makefiles like client.mk resisting direct invocation definitely creates friction for developers who just want to isolate a failing step. A dry-run mode—even if limited to printing intended subcommands—would bring mach closer to how make -n helps in traditional build workflows.
—
I usually document build-related tools & Android app workflows on this site: pixellabzone.com/
19-11-2025 11:42 PM
Along with this, the apparent policy that developers should not run configure, make etc directly should be revised. This would assume that mach is smarter than any developer and it is not so.