EmperorFool
Deity
Each include file is used in almost all the hundred source files, once you process the transitive references.
That is very sad. Most of the work I do on BULL is in the .cpp files, and any header file changes tend to be adding a new function for my use. Thus I can typically get away with recompiling just the .cpp files I'm changing.
Since I'm only using my own mfMaker.py script to generate dependencies, this works fine and catches the rare case what I do requires a little more recompilation. You may want to give that limited dependency thing a shot. Just know that if you add new constants to CvEnums.h you need a full rebuild.