[jamming] HDRGRIST
matthew conte
matt at baisoku.org
Sun May 13 18:20:18 PDT 2007
I encountered a dependency issue in our build system recently. We have a
system whereby Scheme-based object descriptions are used to generate C++
header files; these header files are then used to build several
libraries and applications under a single source tree. Occasionally,
code changes in the object descriptions would not retrigger source
rebuilds in one particular application, leading to link errors.
Probing a littler further into this, it appears the issue was caused by
multiple identically-named header files in different physical locations;
in this case, the name of the file was "StdAfx.h". Different copies of
this file in different locations had different #includes, causing only
one of the files' dependency graphs to be bound internally in Jam for
the name "StdAfx.h".
Briefly scanning Jambase, i found that HDRGRIST, when set, would seem to
solve the issue. I ran some quick tests, adding a rule which set
HDRGRIST = $(SOURCE_GRIST), piggy-backed this off of SUBDIRRULES, and it
seemed to solve all of my problems.
So i guess my question is, why is HDRGRIST unset in Jambase? What
horrible corner case am i creating by setting this? I can't seem to
reason through any drawback to this addition.
Regards,
--Matt.
More information about the jamming
mailing list