<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>In m3-sys\cm3, incremental build always rebuilds cm3, never produces the same thing.<BR>
 <BR>
I know exactly why. My modification to Olaf's timestamping (which I think he approved,<BR>
but perhaps didn't realize this outcome).<BR>
Because we generate a source file with the current time, and it always changes.<BR>
 <BR>
Is this ok with people?<BR>I know it has downsides, but it might be ok.<BR>
You know:<BR>
  1) incremental build should really never do anything, never writing anything, fast<BR>
      which is important -- never write, or be fast? both?<BR>
  2) You might want to compare two full builds and determine they are identical; the less of this sort of thing the better<BR>
<BR>If not, what do people suggest for a way to determine when to update the time?<BR>
The logic before I think was essentially never, unless you went and deleted a specific file.<BR>
Perhaps that is right, once it is discovered and publicized.<BR>
Perhaps another output directory is needed -- say <cvsroot>/<target> -- that upgrade and make-dist, perhaps, know to delete, and maybe realclean...of cm3? deletes? Hey, maybe just declare an output, with "..", in the m3makefile, so merely clean and realclean update the time, but incremental builds do not? This seems obviously the way to go right now, but still slightly debatable. Like, maybe an accurate timestamp is needed. Maybe if any other source or .lib changes, the timestamp should change -- so, like, m3_back/m3_link could regenerate the file, except that might be too late.<BR>
 <BR>
Should "now" be less granular than a second? That mitigates the problem but i think is not satisfactory.<BR>Should "now" be overridable on the command line or with an environment variable?<BR>
 <BR>
 - Jay<BR><br /><hr />Shed those extra pounds with MSN and The Biggest Loser!! <a href='http://biggestloser.msn.com/' target='_new'>Learn more.</a></body>
</html>