[Scons-users] cache not working as expected for a recompile in another directory
johannes.abt at advantest.com
Mon Nov 30 08:59:41 EST 2015
On Thu, Nov 19, 2015 at 3:02 PM, William Blevins <wblevins001 at gmail.com> wrote:
> I thought about this some more, and I don't think I have enough information about your configuration.
> Question: Is the original case?
> A/<copy of all other code>
> B/<copy of all other code>
> A/B/<copy of code>
> A/C/<copy of code>
It's the first one.
> Regardless, a Node's signature also depends on it's dependencies, so just because a file has is binary equal it may not mean that all it's dependencies are...
Though if the build signatures of the dependencies are identical?
Meanwhile, I have I retraced all the intermediate results in SCons.Node.Node.get_binfo. Some identical files showed different signatures! I guessed that the signature of of some of the dependencies (header files) were _not_ recalculated every time. They signature of the dependency must have been calculated (and stored somewhere!) before the final changes to the header files. And not been recalculated since. I removed the .sconsign.dblite and -- voila -- everything is fine now!
I believe that some tests of mine with "--implicit-cache" that I had forgotten about have led to this problem. Though when I wanted to reproduce the problem, I did not seed. Do I have to specifiy '--max-drift=1' additionaly?
> Have you tried scons --debug=explain to tell you why it's rebuilding a file?
I'm sorry, I read your mail too late. I have already deleted the .sconsign.dblite. What a pity.
More information about the Scons-users