jobs/job: send ChildJob the context, not scheduler

Instead of passing the whole scheduler to the ChildJob, only pass the part that is used - the context. Reducing the amount of shared state makes it easier to follow what's going on, and will make it more economical to move to away from the 'fork' model later.

Note that we're already depending on this in the win32 POC !1298 (closed).

This doesn't make any difference to performance on Mac that I've noticed, by building base-files.bst in the debian-stretch-bst test repo that we use for our weekly performance comparison:

(bst) debian-stretch-bst :) /usr/bin/time -l bst --builders 8 build base-files/base-files.bst
Edited by Angelos Evripiotis

Merge request reports

Loading