<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><blockquote type="cite">One thing we do in our Makefiles is "find . -name '*.pyc' | xargs rm".<br>It avoids all sorts of nasty and hard to track down bugs (consider what<br>happens if you move a .py file from one place in your source tree to<br>another and leave the old .pyc behind).<br></blockquote><br>How often do you move files around in the source tree? Meanwhile, *every* <br>time you run make, you take a performance hit on every Python module in <br>your project, whether it has moved or not.<br><br>Seems to me like a fairly heavy-handed response for something quite rare, <br>but I suppose that depends on how often you run make.<br></blockquote></div><br><div>If the performance hit doesn't really matter.  </div><div><br></div><div>Then simply walk the build tree, compare time date stamps, anything that doesn't match up in the make directory, gets deleted.  Anything that has different Date Created / Date Modified time from the build tree match, get's deleted.</div><div><br></div><div>This way, we are preserving any files that should be identical.  But there should be some mechanism documented to forcibly clear the build cache.</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">           </span>- Benjamin</div><div><br></div></body></html>