Yet more investigation has got me to the point where I don't get nasty
surprises with timestamps.
It appears that this function in Node/FS.py:
def changed_timestamp_then_content(self, target, prev_ni):
if not self.changed_timestamp_match(target, prev_ni):
try:
self.get_ninfo().csig = prev_ni.csig
except AttributeError:
pass
return False
return self.changed_content(target, prev_ni)
has the rather unexpected (to me) result of occasionally overwriting the
calculated signature in your node info when your build has fetched something
from the cache. I have now modified my 'is the file corrupt' check so that it
avoids overwriting the csig if there already is one.
I freely admit to being extremely confused about timestamps now. I think
probably they should be avoided like the plague, but that makes the build quite
slow as it's doing a lot of unnecessary calculations.
So my question here is really - is the changeed_timestamp_then_content actually
doing the right thing?
_______________________________________________
Scons-dev mailing list
[email protected]
http://two.pairlist.net/mailman/listinfo/scons-dev