Going home from FOSDEM I took a look at the build system to see if there are any low-hanging fruit to reduce build times.
Since it is executed every time,
tools/update_xmllists.sh seems like an obvious place to start. And indeed, parallelizing the generation of tag maps (using GNU parallel) cuts down the time to do so considerably:
On my laptop (NVME SSD) this removes ~7 seconds of 27 seconds total, and on my (admittedly dated) PC using a regular hard drive it cuts 20 seconds of 65 seconds total time.
So, based on a relatively trivial change this could benefit most users of the build system.
But maybe this is the wrong direction I'm taking? That script in particular has neither well-defined dependencies on files, nor does it produce clearly defined products. Maybe we should split it into 4 independent scripts that are only called by the Makefile when a dependency changes?
@reinhard: I think you know the build system best - what's your opinion on this?