>
however other tasks (like hacking with Freetype being onesubcomponent which happens to be hacked on; or having Freetype being
build by various toolchains) might plainly break if you do that. And Iguess you'll prefer a sub-efficient correct package over a
over-optimized broken one.
Can you give a use-case of this point? because I don't see how this could ever happen. If you are hacking on a sub-component, clearly something must change and thus can be tracked using the dependency tree. If in the case, you make a change, and something isn't recompiled, doesn't this imply the dependency tree is incomplete or incorrect? In which case, it doesn't matter what option you choose (sub-efficient or "over-optimised" as you put it), if your dependency tree is incorrect, the build will not function correctly.