Hi Martin,

Martin Buchholz said the following on 12/22/09 12:53:
On Mon, Dec 21, 2009 at 18:42, David Holmes - Sun Microsystems
<[email protected]> wrote:
Igor Nekrestyanov said the following on 12/22/09 11:45:
Check the output of "gnumake -dd" looking for everything related to files
in question. It will tell you why rules are not fired.
Surprisingly the answer was because "Foo.cpp does not exist" which of course
is nonsense.

I'm guessing this must be some kind of NFS caching issue. I rsync the
updated files to the build location and then run the build on another
machine.

If the problem goes away if you add a
sleep 30
after the NFS copy, you are probably right.
NFS has always worked thus.

No it's not that simple. If I update 5 files the first build reports the 1st is missing, the second reports the 2nd is missing and so forth and a lot longer than 30 seconds has passed in between. :(

It is just like the consistency considerations with the
java memory model, except that the cache lifetimes
are typically much longer.

You mean I need to declare my files as volatile ? ;-)

You can fix it by rsyncing to the machine where the
build will happen, so that there will be no caching
of stale bits.

Will have to try that.

Cheers,
David

Martin

Reply via email to