[Scons-users] Prioritization of builds

Brian Cody brian.j.cody at gmail.com
Fri Jan 15 13:02:53 EST 2016


Hello fellow sconsians,

Let's say I have 1000 targets to build. There are some dependencies between
them but over all there's a considerable amount of parallelism possible.
Now let's say 10 of those targets require the use of a licensed tool which
can only run one at a time. I use a side effect to enforce that with those
10 targets. I typically run with -j12 or so, one for each virtual core
available. This works, and I'm happy.

Except.. Those 10 builds I mentioned just happen to be very slow. The final
target built will always be one of those ten. That's fine. However, the
build will take much longer than necessary if it doesn't happen to start
building those targets early. And doing that would require that their
dependencies are also built early. However for some reason, these targets
seem to always get started towards the end of the build.

Today this is a minor annoyance. It may be adding 30 seconds to a 1 minute
30 second build. Looking in my crystal ball this problem will be getting
much much worse with some of the new targets that are coming.

Is there a known way to influence the order at which targets are built
without introducing phony dependencies or side effects? So if A and B are
both ready to built right now, and one job-doer becomes available, is there
any way I can cause SCons to pick them up in a particular order? Maybe by
influencing a container holding onto targets?

Thank you!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20160115/1d5070fe/attachment.html>


More information about the Scons-users mailing list