This example is certainly simple, thanks. The Makefile isn't telling make that the rule for making c from d will also update b. Make caches modification times and doesn't know to invalidate its cache of b's time.
-----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Herbert Euler Sent: Monday, June 09, 2008 02:36 To: bug-make@gnu.org Subject: RE: File timing bug Hi, Perhaps due to my long and annoying description, one has difficulty in understanding what the problem I encountered was. Here I would provide a much shorter description. GNU Automake generates dependency tree like this in Makefile.in: [EMAIL PROTECTED]:~/tmp/k$ cat Makefile a: b cat b>a b: c c: d date>b cp b c [EMAIL PROTECTED]:~/tmp/k$ Its intention is to regenerate `a' when `d' is updated. But this does not work, since it requires `make' to be executed twice: [EMAIL PROTECTED]:~/tmp/k$ make date>b cp b c [EMAIL PROTECTED]:~/tmp/k$ make cat b>a [EMAIL PROTECTED]:~/tmp/k$ However, I noticed that if the Makefile looks like this: [EMAIL PROTECTED]:~/tmp/k$ cat Makefile a: b cat b>a b: c cp c b c: d date>c [EMAIL PROTECTED]:~/tmp/k$ Everything works as expected: [EMAIL PROTECTED]:~/tmp/k$ touch d [EMAIL PROTECTED]:~/tmp/k$ make date>c cp c b cat b>a [EMAIL PROTECTED]:~/tmp/k$ Is this a bug in GNU make, or a bug in GNU Automake? Regards, Guanpeng Xu _________________________________________________________________ Discover the new Windows Vista http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make