On 10/29/2010 12:24 AM, Oleksandr Gavenko wrote:
On 28.10.2010 20:10, Robert McDougall wrote:
In running Make, I find targets being remade that shouldn't have to be
remade; being considered younger than the prerequisites from which
they've just been made. It seems to happen especially with
prerequisites created by `touch`: e.g.:
$ cat Makefile
all : bar baz
bar baz : foo
cp $< $@
foo :
touch $@
$ rm foo bar baz
$ make
touch foo
cp foo bar
cp foo baz
$ make
cp foo bar
cp foo baz
$ make
cp foo bar
cp foo baz
$ make
cp foo bar
cp foo baz
$ make
cp foo bar
cp foo baz
$ make
cp foo bar
$ make
make: Nothing to be done for `all'.
Sleeping helps, but you have to sleep for quite a while; even 2 seconds
may not be enough:
do you build on FAT fs?
It knows by lesser time precision (exactly 2 sec).
Try example on NTFS.
If your files are on a server, of course, you need synchronization
between the server and local system clocks, at least daily.
--
Tim Prince
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple