[Cook] strange behaviour

Peter Miller peterm at platypus.net
Mon Nov 4 08:52:07 EST 2002


Aryeh M. Friedman writes...
> If I am using the full project build as Peter recommends in the manual
> (only tiny variant in that it loops on lib/lib%.a_obj vs. just making
> it for one lib) why does it take a couple of cooks for it to think
> that all the targets are upto date.

Are these operations happening within a second?

File time stamp resolution is only one second, so if it builds a library
and links an executable which depends on it all in the same second, then
they both have the same time stamp, and cook thinks they _could_ be
out-of-date.

To force the time stamps to be obviously up-to-date (i.e. timestamp(lib)
< timestamp(executable)) put
	set time-adjust;
at the top of your cookbook.

This didn't used to be a problem when machines were slow, and a compile
of an empty file (let alone any of the gcc sources) took well over a
second.  I remember one operating system, now long gone, which had a 4
second resolution on file time stamps, but they avoided the Y2038
problem!

Regards
Peter Miller <millerp at canb.auug.org.au>
/\/\*        http://www.canb.auug.org.au/~millerp/ 



More information about the Cook-users mailing list